Skip to main content

#Formulas26 人正在讨论

I have a formula field that assigns a code based on a picklist selection. This then populates a text field on a record created in a flow. 

 

I added a new code that starts with a zero (07). What I noticed though is when it populates the text field during record creation, it leaves the zero off the code.

How can I ensure that the zero remains? 

TEXT(IF( 

 

ISPICKVAL(Type_of_Grant__c, "Rent") 

|| 

ISPICKVAL(Type_of_Grant__c, "Utility") 

|| 

ISPICKVAL(Type_of_Grant__c, "Pharmacy") 

|| 

ISPICKVAL(Type_of_Grant__c, "Move-in") 

|| 

ISPICKVAL(Type_of_Grant__c, "Aging in Place") 

 

23, IF(ISPICKVAL(Type_of_Grant__c, "Other") && Funding_Source__c = "Marc Berman", 23, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-Security Deposit (Non-Subsidized)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-Security Deposit (Subsidized Housing)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-First Month's Rent (Non-Subsidized)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-First Month's Rent (Subsidized Housing)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-Utility (Non-Subsidized)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "PHP-Utility (Subsidized Housing)"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "STRMU-Rent"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "STRMU-Mortgage"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "STRMU-Utilities"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "C19R-Rent"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "C19R-Mortgage"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "C19R-Utilities"), 20, 

IF(ISPICKVAL(Type_of_Grant__c, "Measure A"), 07, 

IF(ISPICKVAL(Type_of_Grant__c, "DHSP Emergency Financial Assistance"), 20,

NULL)))))))))))))))))

 

 

#Formulas

2 个回答
  1. Steven Trumble (Strum Consulting) Forum Ambassador
    7月22日 00:24

    Two things: 

    1) your formula structure is quite strange. You are saying "if this condition, then return a number, but hten convert that number back to text" 

    If you want text, just return text immediately e.g.

    IF(ISPICKVAL(Type_of_Grant__c, "Other") && Funding_Source__c = "Marc Berman", 23,

    IF(ISPICKVAL(Type_of_Grant__c, "PHP-Security Deposit (Non-Subsidized)"), 20,

    can simply become:

    IF(ISPICKVAL(Type_of_Grant__c, "Other") && Funding_Source__c = "Marc Berman", "23",

    IF(ISPICKVAL(Type_of_Grant__c, "PHP-Security Deposit (Non-Subsidized)"), "20",

    Then you no longer need to wrap everything in a TEXT() function. 

     

    2) You should avoid multiple IF statements on picklist functions. It will massively increase your compile size. CASE() is far more efficient and easier to read. 

    CASE(

    Type_of_Grant__c,

    "Rent", "23",

    "Utility", "23",

    "Pharmacy", "23",

    "Move-in", "23",

    "Aging in Place", "23",

    "PHP-Security Deposit (Non-Subsidized)", "20",

    "PHP-Security Deposit (Subsidized Housing)", "20",

    "PHP-First Month's Rent (Non-Subsidized)", "20",

    "PHP-First Month's Rent (Subsidized Housing)", "20",

    "PHP-Utility (Non-Subsidized)", "20",

    "PHP-Utility (Subsidized Housing)", "20",

    "STRMU-Rent", "20",

    "STRMU-Mortgage", "20",

    "STRMU-Utilities", "20",

    "C19R-Rent", "20",

    "C19R-Mortgage", "20",

    "C19R-Utilities", "20",

    "Measure A", "07",

    "DHSP Emergency Financial Assistance", "20",

    "Other",

    IF(

    Funding_Source__c = "Marc Berman",

    "23",

    NULL

    ),

    NULL

    )

0/9000

When a meeting is marked complete we would like to see a 48 hr countdown or have a timestamp of some kind so we can see how much time has elapsed since the meeting has been held. This is a Task & Event Report.  Do you what is the simplest and easient way to accomplish this?  I tried adding a Summary Formula but I get a few errors not validating.  If you know which formula I should use, this will also be helpfull.  Thank you in advance. 

 

#Formulas

2 个回答
  1. 8月20日 09:50

    Hi Bertrum - the reason your Summary Formula will not validate is that summary formulas only work on aggregated, grouped values (Sum, Average, etc.), so they cannot reach into an individual row's date field like your meeting date. For a per-record 'time since the meeting' you want a Row-Level Formula instead - that is the report feature that can reference field values on each row, and it supports NOW() and date math. No custom field needed - a row-level formula lives only on the report. 

     

    Steps: 

    1. Edit the report. In the Columns pane, click the dropdown and choose Add Row-Level Formula. 

    2. Set the Formula Output Type to Number (0 decimals is fine). 

    3. Use one of these (insert your meeting date/time field from the field picker where I show End Date Time): 

     - Hours elapsed since the meeting: (NOW() - End Date Time) * 24 

     - 48-hour countdown, i.e. hours remaining: 48 - ((NOW() - End Date Time) * 24) 

     

    For an Event, that field is usually the End Date Time; for a generic Activity/Task report it is the Activity Date. Subtracting two date/times returns a number of DAYS, so multiplying by 24 gives you hours. 

     

    4. Name it something like 'Hours Since Meeting' or 'Hrs to 48h', save, and it appears as a column you can drop straight onto the dashboard. 

     

    Two things worth knowing: NOW() is evaluated when the report/dashboard REFRESHES, not as a live ticking clock - so schedule a dashboard refresh if you want it staying current. And a report allows a single row-level formula returning a number, so pick either the elapsed version or the countdown version. If you want it colour-coded (e.g. red once it passes 48h), add conditional formatting on that column at the dashboard component level. 

     

    If this helps, please mark it as the Best Answer so it helps the next person - thanks :)

0/9000

Hi,   I've set up a flow(Record-Triggered) to trigger email alerts to opportunity owners when the close date is 3 days before, on the same day, or 2 days past the specified date.

However, while debugging the flow, I’m encountering the following error: "The flow can’t run because nothing is connected to the Start element."

Sharing the screenshots below of the current configuration for your reference.   

3 个回答
  1. Jeff Weller (PARQA Inc.) Forum Ambassador
    2025年5月5日 10:09

    Hello, @Priyanka Salunkhe

     the error means your Flows Start element isn't connected. 

    1. Connect Start -In Flow Builder, drag an arrow from Start to your first decision element. 

    2 . Check Decision- 

    Due Today: CloseDate=TODAY() 

    Due in 3 Days: CloseDate-TODAY()+3 

    2 Days Past: ClosedDate=TODAY()-2 

    Link each to its Email Alter. 

    3. Connect Alters to End- Ensure each Email Alter connects to an End element. 

    4. Debug with an Opportunity (CloseDate today, Stage not 'Closed Won' or 'Closed Lost').

0/9000

Hello, 

 

I have a Formula field called Birthday this Year which just takes the value of the standard birthdate field and changes the year to this year:

DATE( YEAR( DATEVALUE( NOW() ) ) , MONTH( Birthdate ) , DAY( Birthdate ) )

 

I have a custom text field that I'm attempting to swap out the standard Birthdate field with in this formula above, but I can't get any output. I'm not sure if it's because the custom field is actually a text field, but there are properly formatted date values in that text field. Here's my formula: 

 

DATE( YEAR( DATEVALUE( NOW() ) ) , MONTH(DATEVALUE( Account.SL_BWM_Birthdate__c )) , DAY(DATEVALUE(Account.SL_BWM_Birthdate__c )))

 

Any ideas how I can transform a date in a text field into a date that's able to be pulled in above? 

 

Thanks,

Ashley

15 个回答
  1. 8月11日 11:58

    The key issue is likely the text-to-date conversion and whether the stored format matches what DATEVALUE expects. I recently tried a similar formula and found that checking the exact text format first made the fix much easier; keeping date fields as true dates is usually the simplest approach.

0/9000

Hi, 

I have a Date filter, Month and year, i am showing the last month filter ex: showing the July 2026 data in Aug 2026 month , meaning previous month, if i use the relative filter as previous month in the filter, will the filter in the date(MY Month) will automatically change when month is changed ?? using this relative filter previous month automatically change the filter value in the next month, ex: Sep, it will automatically select the aug 2026 data when month starts. Anyone please clarify, Thanks 

Last month default to dashboard and month filter has to be changed automatically

 

 

 

#Tableau Desktop & Web Authoring  #Reports & Dashboards  #Tableau  #Formulas  #Tableau Prep

6 个回答
  1. 8月8日 00:32

    This can be done by creating the below calculation, using LOOKUP() function:This can be done by creating the below calculation, using LOOKUP() function:For now, both July and August are in the view just so you can see that July's data for Quantity now lives in August's 'date'For now, both July and August are in the view just so you can see that July's data for Quantity now lives in August's 'date', as shown above.  But, we don't want to have to select two month's data at a time and yet, two month's of data MUST be in the view. somehow.  Screenshot 2026-08-07 at 5.18.22 PM.png

     

    So, we then change the Order Date filter that you originally had into again, a Relative Date filter, again displaying only most recent two months, as I did before:

    Screenshot 2026-08-07 at 5.19.54 PM.png

     

    Then, the question remains, how to show just the current month, but only with last month's data in the current month.  Again, another filter.  BTW, both of these are Table Calculations, so certain fields must be in the view somewhere in order for them to all function correctly and display correctly.  The new calculation will now filter the above result to only the last row in the view:

    Screenshot 2026-08-07 at 5.20.33 PM.pngIt is placed onto the Filters Card and in the dialog that pops up, it is set to TRUE.  So that you end up with a single row of data displaying the most current month's 'date' with the prior months 'data':Screenshot 2026-08-07 at 5.20.58 PM.pngExample workbook attached.  Again, these are table calculations, meaning they can be challenging to work with.  So, if you add additional dimensions, certain settings might need to be adjusted depending on what you end up actually doing with this method - that is accomplished by right-clicking the table calculation in the view and selecting Edit Table Calculation.

      

     

    As to it being automatic and adjusting for next month, it should based on the Relative Date filter..it would automatically adjust to September and pick up August's data. And so on. 

     

    If this response answered your question, please mark it as an Accepted Answer? 

    This way, others searching for similar solutions will find the answer faster in the future.

     

    Best, Don Wise (Tableau Ambassador)

0/9000

Any suggestions would be appreciated. Thanks. 

If conditions are met then the value in the field should be 1 of the 4 options. 

JMP Staff 

Early Adopter 

Software Admin 

Premier 

 

Here is my current formula where I'm getting the error (Error: Incorrect number of parameters for function 'IF()'. Expected 3, received 2) 

 

IF( 

 

  AND( 

 

    NOT(ISBLANK(ECUSTOMS__RPS_Date__c)), 

 

    NOT( 

 

      OR( 

 

        ECUSTOMS__IM_Status__c = "-", 

 

        ECUSTOMS__IM_Status__c = "Cleared", 

 

        ECUSTOMS__IM_Status__c = "False Hit", 

 

        ECUSTOMS__IM_Status__c = "Actioned", 

 

        ECUSTOMS__IM_Status__c = "Escalated", 

 

        ECUSTOMS__IM_Status__c = "Closed RPS", 

 

        ISBLANK(ECUSTOMS__IM_Status__c) 

 

      ) 

 

    ), 

 

    SAS_JMP_Employee__c = TRUE 

 

  ), 

 

  "01. JMP Staff", 

 

  

 

  

 

IF( 

 

  FALSE, 

 

  "02. Early Adopters", 

 

  

 

  

 

IF( 

 

  AND( 

 

    OR( 

 

      CONTAINS(ECUSTOMS__RPS_Status__c, "Red"), 

 

      CONTAINS(ECUSTOMS__RPS_Status__c, "Yellow") 

 

    ), 

 

    NOT( 

 

      OR( 

 

        ECUSTOMS__IM_Status__c = "-", 

 

        ECUSTOMS__IM_Status__c = "Cleared", 

 

        ECUSTOMS__IM_Status__c = "False Hit", 

 

        ECUSTOMS__IM_Status__c = "Actioned", 

 

        ECUSTOMS__IM_Status__c = "Escalated", 

 

        ECUSTOMS__IM_Status__c = "Closed RPS", 

 

        ISBLANK(ECUSTOMS__IM_Status__c) 

 

      ) 

 

    ), 

 

    INCLUDES(External_User_Audience__c, "Software Admin"), 

 

    AccountId <> "0015b00002KdPf4AAF" 

 

  ), 

 

  "03. Software Admin", 

 

  

 

  

 

IF( 

 

  AND( 

 

    NOT(ISBLANK(ECUSTOMS__RPS_Date__c)), 

 

    OR( 

 

      ECUSTOMS__RPS_Status__c <> "No Matches", 

 

      ECUSTOMS__RPS_RiskCountry_Status__c = "Alert" 

 

    ), 

 

    Sales_Region__c = "Strategic", 

 

    Assigned_Authorizations__c > 0, 

 

    NOT( 

 

      OR( 

 

        ECUSTOMS__IM_Status__c = "-", 

 

        ECUSTOMS__IM_Status__c = "Cleared", 

 

        ECUSTOMS__IM_Status__c = "False Hit", 

 

        ECUSTOMS__IM_Status__c = "Actioned", 

 

        ECUSTOMS__IM_Status__c = "Escalated", 

 

        ECUSTOMS__IM_Status__c = "Closed RPS", 

 

        ISBLANK(ECUSTOMS__IM_Status__c) 

 

      ) 

 

    ), 

 

    OR( 

 

      Account.RecordTypeName__c = "Site Account", 

 

      Account.RecordTypeName__c = "User Location", 

 

      Account.RecordTypeName__c = "Enterprise Account", 

 

      Account.RecordTypeName__c = "JMP Subscription", 

 

      Account.RecordTypeName__c = "Customer Account", 

 

      Account.RecordTypeName__c = "SAS Transitional", 

 

      Account.RecordTypeName__c = "Reseller Account", 

 

      Account.RecordTypeName__c = "Related Entity", 

 

      ISBLANK(Account.RecordTypeName__c) 

 

    ), 

 

    OR( 

 

      ISPICKVAL(Account.Account_Status__c, "Pending Approval"), 

 

      ISPICKVAL(Account.Account_Status__c, "Descartes Review"), 

 

      ISPICKVAL(Account.Account_Status__c, "Export Compliance Review"), 

 

      ISPICKVAL(Account.Account_Status__c, "Approved"), 

 

      ISPICKVAL(Account.Account_Status__c, "Waiting on Information"), 

 

      ISPICKVAL(Account.Account_Status__c, "eCommerce Approved"), 

 

      ISPICKVAL(Account.Account_Status__c, "MEQ Approved"), 

 

      ISBLANK(TEXT(Account.Account_Status__c)) 

 

    ) 

 

  ), 

 

  "04. Premier" 

)))) 

 

#Formulas

10 个回答
0/9000

Hi all,

 

I need to add a custom field (text-based formula) to the multi-line layout for Quote Line Items so that when colleagues are adding line items to quotes, they know which section of the quote to add items to.

 

However, when I click Edit Multi-Line Layout on the Page Layout, the field isn't listed as an available field.

 

Is there a way around this?

 

Appreciate any advice!

 

@Formulas - Help, Tips and Tricks 

11 个回答
  1. Eric Praud (Activ8 Solar Energies) Forum Ambassador
    2022年3月31日 10:08

    There's a padlock as it's a read-only field (formula).

    Now, it looks like formula fields are not available, so what you coudl do is to create a Text field that gets populated by a record-triggered flow with your formula.

    You can then show this text field in your multi-line layout

0/9000

Hi 

I am trying to create a formula in a report that will allow me to categorise the number of Users who have not logged  

 

IF(

   TODAY() - DATEVALUE(user.Last_Login) > 30,

   "No Login >30 Days",

   "Logged In ≤30 Days"

 

However, I get this error  - Warning

Error when encoding row-level formula: Field user.LAST_LOGIN does not exist. Check spelling. 

 

I don't understand as I selected it from a drop down option 

User Object - Last Login field

 

I don't understand why I am receiving this error. 

 

I want to create a report so that I  can display in a dashboard - % users not logged into SF in the past month 

 

 

 

#Formulas

2 个回答
  1. 7月20日 13:45

    Hi  

     

    I am working on it right now and I've got it to work - using this reference, but thank you for taking time to review 

     

    How to Calculate the Number Days that User Logged in Using Last Login API Name - ServiceMax Knowledge

     

     

     Number of Days since last login

    = (NOW() - LAST_LOGIN) 

     

    Login Status = IF(

        NOW() - LAST_LOGIN > 30,

        "Not Logged In for more than a Month",

        "Logged In - Active Users"

    Hi I am working on it right now and I've got it to work - using this reference, but thank you for taking time to review How to Calculate the Number Days that User Logged in Using Last Login API Name -

     

    Able to show 30% of Users are not actively using SF

0/9000
Checkout One of the best tool for EDB to PST Converter software to successfully restore emails from offline Exchange Server Database and export all mailbox to Outlook, Live Exchange. EDB to PST Converter Software,this application permits to convert EDB File to PST, EML, MSG and HTML with original method.This software, you can efficiently and easily restore and repair damaged, inaccessible or corrupt EDB database files and transform the same into Outlook PST.

This Software Supported MS Exchange server 2016, 2013, 2010, 2003, 2007, 2003, 2000 etc.

Read more information so visit here :-   http://www.filesrepairtool.com/edb-to-pst-converter.html

 
8 个回答
  1. 7月18日 11:52

    When all you need is to connect to the Exchange mailbox from your Outlook program, using an EDB to PST conversion tool will be the simplest solution for you. These tools work by scanning the Exchange database and exporting emails, contacts, calendars, and other attachments into the PST format. The best thing about it works when the Exchange server is not available.

     

    While comparing different options, I found that choosing a GainTools EDB to PST conversion Tool with mailbox preview, batch export and filtering features makes the process much easier, especially for larger databases. I tested one during an Exchange migration and the preview helped confirm that folders and email properties were intact before exporting. If the software also supports Office 365 or Live Exchange export, it can save additional migration work later. Always test the free trial first to confirm it reads the EDB file correctly before purchasing.

0/9000
3 个回答
  1. 7月13日 07:25

    AND(  

      NOT($Permission.Your_Custom_Permission_Name), 

      OR(  

        ISNEW(),  

        ISCHANGED(Email),  

        ISCHANGED(Phone)  

      ), Note: Replace Your_Custom_Permission_Name with the exact API Name of your custom permission, ensuring you do not include any spaces 

      ISBLANK(Email),  

      ISBLANK(Phone)

0/9000