[Stackoverflow] [Progress OpenEdge ABL] How to check all the values present in the smart field?

Status
Not open for further replies.
T

Thiru Malai

Guest
I have written a program for check all the smart fields whether its having some values or not but the problem i am facing here is have more than 17 smart fields on smart viewer screen and need to allow particular filter only to search the records so i cannot write a program like below..please advice what is the smart way to do

DEFINE VARIABLE de_part_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_product_family_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_shipping_info_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE dt_sched_date_from AS DATE NO-UNDO.
DEFINE VARIABLE dt_sched_date_to AS DATE NO-UNDO.
DEFINE VARIABLE de_word_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_seq_no AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_intseq AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_ordno_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE de_wolv_obj AS DECIMAL NO-UNDO.
DEFINE VARIABLE cPipeLinekey AS CHARACTER NO-UNDO.
DEFINE VARIABLE cPipeLinestatus AS CHARACTER NO-UNDO.


ASSIGN de_part_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_part)
de_product_family_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_product_family)
de_shipping_info_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_shipping_info)
cPipeLinekey = fi_PipeLineKey:SCREEN-VALUE IN FRAME {&FRAME-NAME}
cPipeLinestatus = fi_PipeLineStatus:SCREEN-VALUE IN FRAME {&FRAME-NAME}
de_word_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_worderid)
de_seq_no = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_Seq)
de_intseq = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_intseq)
de_ordno_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_ordno)
de_wolv_obj = DYNAMIC-FUNCTION('getKeyFieldValue' IN h_dynlookup_wolvid).
.
.
.
.
/* AND SO ON*/
IF de_part_obj <> 0.0 AND de_product_family_obj = 0.0 AND de_shipping_info_obj = 0.0 AND de_word_obj = 0.0 AND de_seq_no = 0.0 AND de_intseq = 0.0 AND de_ordno_obj = 0.0
AND de_wolv_obj = 0.0 AND cPipeLinekey = ? AND cPipeLinestatus = ? THEN TRUE /* Allow only de_part_obj <> 0.0 */

IF de_part_obj = 0.0 AND de_product_family_obj <> 0.0 AND de_shipping_info_obj = 0.0 AND de_word_obj = 0.0 AND de_seq_no = 0.0 AND de_intseq = 0.0 AND de_ordno_obj = 0.0
AND de_wolv_obj = 0.0 AND cPipeLinekey = ? AND cPipeLinestatus = ? THEN TRUE /* Allow only de_product_family_obj <> 0.0 */
.
.
.
.

/* up to cPipeLinestatus <> ? */

Continue reading...
 
Status
Not open for further replies.
Top