Forum Discussion

KWelsh8144's avatar
KWelsh8144
Helper II
7 years ago
Solved

Replacing a value in direct query mode

Hi, is it possible to add a column and add dax that would include something like.. if text.contains([date], "1800" then "" else ([date])? The problem is there is a default date in the view I'm using and we are unable to update the view or build a new one at this time. The default date replaces anything that has a null value.  I am trying to make the default date show as null, but I'm not sure how to do that in direct query mode. Is this possible?

  • Anonymous's avatar
    Anonymous
    7 years ago

    KWelsh8144 ,

    Please perform the steps below.

    1. Make sure you have changed the type of DueDate field to Text in Power BI Query Editor.


    2. Load data to Data view of Power BI Desktop, then create the following column.

    Updated Due Date = if(find("1899",vProjects[DueDate],1,0)>0, BLANK(),vProjects[DueDate])


    3. Change the data type of the new column  to Date.


    Regards,
    Lyida

9 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    KWelsh8144,

    Please use the DAX as below.

    Column = IF(FIND("1800",'Table'[Date],1,0)>0,"",'Table'[Date])



    Regards,
    Lydia

  • Anonymous Thanks - however that turn is returning an error that stats "Expressions that yield variant data-type cannot be used to define calculated columns." How can I fix that? The date that I'm trying to get rid of is actually 12/30/1899. So I tried with "1899" and also "12/30/1899" but neither are working. I'm not sure why it's throwing the error.

  • Anonymous's avatar
    Anonymous
    Not applicable

    KWelsh8144,

    Make sure the data type of your field is text rather than date.

    Regards,
    Lydia

  • Anonymous So I changed the data type to text, but then it gives me a long date with time. For example, it now shows as: May 16 2018 12:00AM. I also use the dates in the filters, so its appear as a drop down list instead of a 'slider' style now that i've changed it to text. Is there anyway to 1) make the date only show as 05/16/2018  and 2) so that the dates can be used in a filter the way the other dates are with a date range/slider instead of a dropdown

  • Anonymous's avatar
    Anonymous
    Not applicable

    KWelsh8144 ,

    Click on your date field, then change data type and format under modeling tab.


    Regards,
    Lydia

  • Anonymous If I change the new column you indicated I needed, to show the invalid dates as null like mentioned above, to a date, it shows the invalid date as 1/1/1900 now.

     

    This was the new column's dax i used:

    **Updated Due Date = if(find("1899",vProjects[DueDate],1,0)>0, "",vProjects[DueDate])
     
    If i change that column to date, the dates with "1899" show as 01/01/1900. What can I do?
  • Anonymous's avatar
    Anonymous
    Not applicable

    KWelsh8144 ,

    Please perform the steps below.

    1. Make sure you have changed the type of DueDate field to Text in Power BI Query Editor.


    2. Load data to Data view of Power BI Desktop, then create the following column.

    Updated Due Date = if(find("1899",vProjects[DueDate],1,0)>0, BLANK(),vProjects[DueDate])


    3. Change the data type of the new column  to Date.


    Regards,
    Lyida