cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
ericonline
Community Champion
Community Champion

IF NULL: This should be easy!!

Not sure why this doesn't work. Can you spot the issue?

I just want to check if the timestamp coming across ("Observation_Date_Time") is null or not. If its null, write "1970-1-1 00:00:00", otherwise convert the timestamp from unix to human readable.

Works fine without the IF statement. "Invalid Expression" error with the IF. 

if(
    items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    = null, //also tried = 0 //same error "invalid expression"
    '1970-1-1 00:00:00',
    addseconds(
        '1970-1-1',
        Div(
            items(
                'For_each_childRecord')?
                ['attributes']?
                ['Observation_Date_Time'],
            1000
        ),
        'yyyy-MM-dd hh:mm:ss'
    )
)  

 

1 ACCEPTED SOLUTION

Accepted Solutions

Hi @ericonline 

 

and what about

 

equals(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ,null)

equals(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ,'')

View solution in original post

10 REPLIES 10
ScottShearer
Super User III
Super User III

@ericonline
Have you tried checking for an empty string? Try two single quotes and it may work

If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Scott

Hi @ScottShearer 

Just pasted this in:

if(
    items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    = '',
    '1970-1-1 00:00:00',
    addseconds(
        '1970-1-1',
        Div(
            items(
                'For_each_childRecord')?
                ['attributes']?
                ['Observation_Date_Time'],
            1000
        ),
        'yyyy-MM-dd hh:mm:ss'
    )
)

Results:

image.png

Hi @ericonline 

 

write a compose action and check output for 

items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']

 

Regards,

Reza Dorrani

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

Hi @ericonline 

 

you can also try

 

empty(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time'])

which should return a true or a false 

Hi @RezaDorrani ,

 

The Compose action for the null record yeilds:

Note: All non-null Observation_Date_Time records showed the Unix time value

image.png

Clicking the link opens a blank browser window. Right click/view source, no content on the page. 

@ericonline 

 

perfect now try

 

equals(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ,null)

empty(items( 'For_each_childRecord')? ['attributes']? ['Observation_Date_Time'])

 

In compose actions to see the results

@RezaDorrani 

 

`empty()` failed all records in the Flow. 

 

Tried:

if(
    empty(
    items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ),
    '1970-1-1 00:00:00',
    addseconds(
        '1970-1-1',
        Div(
            items(
                'For_each_childRecord')?
                ['attributes']?
                ['Observation_Date_Time'],
            1000
        ),
        'yyyy-MM-dd hh:mm:ss'
    )
)

Results:

image.png

Hi @ericonline 

 

and what about

 

equals(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ,null)

equals(items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    ,'')

View solution in original post

@RezaDorrani

NICE!

`equals(XYZ,null)` worked. 

Solution:

if(
    equals(
    items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time'],
    null),
    '1970-1-1 00:00:00',
    addseconds(
        '1970-1-1',
        Div(
            items(
                'For_each_childRecord')?
                ['attributes']?
                ['Observation_Date_Time'],
            1000
        ),
        'yyyy-MM-dd hh:mm:ss'
    )
)

Results for the null-value timestamp record:

image.png

Thank you both for the Flow expertise! 

Take care!

Esoteric syntax! Would have loved to use: 

if(
    items(
        'For_each_childRecord')?
        ['attributes']?
        ['Observation_Date_Time']
    = null

Ah well, these are the types of things that make us valuable I guess. 

Thank you again Reza. I look forward to the TDGI event! 

Helpful resources

Announcements
MPA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MSFTBizAppsLaunchEvent

Experience what’s next for Power Virtual Agents

See the latest Power Automate innovations, updates, and demos from the Microsoft Business Applications Launch Event.

New Super Users

Meet the Power Automate Super Users!

Many congratulations to the Season 1 2021 Flownaut Crew!

Power Platform ISV STudio

Power Platform ISV Studio

ISV Studio is the go-to Power Platform destination for ISV’s to monitor & manage applications post-AppSource publish.

Users online (52,804)