on 09-12-2014 6:36 AM
Hi,
Please find attached parameter prompt and formula:
For 2nd & 3rd parameter I have set optional value = True, to display all records. Date range is mandatory, others if selected records should get filtered or else all records within date range should get displayed.
Formula used:
{PDOC_PRO_INDENT_TRACKING_A.REQUISITION_DATE} >= {?Reqdate}
and
{PDOC_PRO_INDENT_TRACKING_A.REQUISITION_DATE} <= {?Reqdate}
and
if not (hasvalue(({?ReqCode - REQUISITIONER_CODE})))
then true
else if
hasvalue({?ReqCode - REQUISITIONER_CODE})
then
{PDOC_PRO_INDENT_TRACKING_A.REQUISITIONER_CODE} = {?ReqCode - REQUISITIONER_CODE}
and
if not (hasvalue(({?ReqCode - REQUISITION_NO})))
then true
else if
hasvalue({?ReqCode - REQUISITION_NO})
then
{PDOC_PRO_INDENT_TRACKING_A.REQUISITION_NO} = {?ReqCode - REQUISITION_NO}
and
if not (hasvalue(({?PartNo})))
then true
else if
hasvalue({?PartNo}) then
{PDOC_PRO_INDENT_TRACKING_A.PART_NO}={?PartNo}
________________________________________________________________________________________
Based on the above formula records are not getting filtered correctly.
Please suggest me a formula to filter records correctly.
Thanks,
Karan Sheth
Hi Karan,
Please see if this works:
{PDOC_PRO_INDENT_TRACKING_A.REQUISITION_DATE} IN {?Reqdate}
AND
(
(not (hasvalue({?ReqCode - REQUISITIONER_CODE})) OR {PDOC_PRO_INDENT_TRACKING_A.REQUISITIONER_CODE} = {?ReqCode - REQUISITIONER_CODE})
and
(not (hasvalue({?ReqCode - REQUISITION_NO})) OR {PDOC_PRO_INDENT_TRACKING_A.REQUISITION_NO} = {?ReqCode - REQUISITION_NO})
and
(not (hasvalue({?PartNo})) OR {PDOC_PRO_INDENT_TRACKING_A.PART_NO}={?PartNo})
)
-Abhilash
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Abhilash,
Thanks a lot. It works.
Can you please explain me the below code:
What is the function of OR in the below code?
(not (hasvalue({?ReqCode - REQUISITIONER_CODE})) OR {PDOC_PRO_INDENT_TRACKING_A.REQUISITIONER_CODE} = {?ReqCode - REQUISITIONER_CODE})
and
(not (hasvalue({?ReqCode - REQUISITION_NO})) OR {PDOC_PRO_INDENT_TRACKING_A.REQUISITION_NO} = {?ReqCode - REQUISITION_NO})
and
(not (hasvalue({?PartNo})) OR {PDOC_PRO_INDENT_TRACKING_A.PART_NO}={?PartNo})
Thanks,
Karan Sheth
(not (hasvalue({?ReqCode - REQUISITIONER_CODE})) OR {PDOC_PRO_INDENT_TRACKING_A.REQUISITIONER_CODE} = {?ReqCode - REQUISITIONER_CODE})
IF you leave the prompt blank, this part of the statement returns TRUE:
not (hasvalue({?ReqCode - REQUISITIONER_CODE})).
and hence it returns all possible data for this field.
If you select a value in the prompt, this part of the statement executes:
{PDOC_PRO_INDENT_TRACKING_A.REQUISITIONER_CODE} = {?ReqCode - REQUISITIONER_CODE}
and hence it evaluates against each row and checks whether the value matches the prompt value chosen.
-Abhilash
User | Count |
---|---|
88 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.