Skip to main content
saurabhs0003
September 29, 2021
Question

Date and time filter in expressio rule

  • September 29, 2021
  • 7 replies
  • 0 views

Hi All, 

I have a column  name created date in db as datetime . When I am creating filter in expression rule as createddatefrom and createddateto . I am not able to filter it . 

Expression Rule:

a!queryFilter(
field: "createddate",
operator: "between",
value: {
todate(ri!createddatefrom),
todate(ri!createddatefrom)+ day()
},
applywhen: not(rule!APN_isEmpty(ri!createddatefrom))
),
a!queryFilter(
field: "createddate",
operator: "between",
value: {
todate(ri!createddateto),
todate(ri!createddateto) + day()
},
applywhen: not(rule!APN_isEmpty(ri!createddateto))
),

Please help and thanks in Advance

    7 replies

    stefanhelzle0001
    Brainy
    September 29, 2021

    Do you want to find all rows where the create date is between datefrom and dateto? If yes, what are the two filters doing? I think a single filter should do the job.

    a!queryFilter(
    field: "createddate",
    operator: "between",
    value: {
    todate(ri!createddatefrom),
    todate(ri!createddateto)
    },
    applywhen: and(
    not(rule!APN_isEmpty(ri!createddatefrom)),
    not(rule!APN_isEmpty(ri!createddateto)))
    ),
    

    saurabhs0003
    September 29, 2021

    Hi Stefan, 

    I have column in DB as datetime .. Will it work for the same or else i choose only date in Expression rule.

    saurabhs0003
    September 29, 2021

    aftre Implementing above , I am getting this error

    Expression evaluation error [evaluation ID = c8d53:7380c] in rule 'twm_alldecomsites' (called by rule 'twm_decomrequestssummary') at function a!queryEntity [line 3]: Cannot apply operator [BETWEEN] to field [createddate] when comparing to value [TypedValue[it=107,v={2021-09-01,2021-09-21}]].