Files
open-insight/LSL2/OIEVENT/CLICK/RDS_QUERY.PERFORM_QUERY_BUTTON.json
2024-03-25 15:12:53 -07:00

11 lines
5.1 KiB
JSON

{
"header": {
"version": 1,
"type": "record"
},
"body": {
"record1": {
"<1>": "declare subroutine btree.extract, update_index, rlist, end_dialog\r\ndeclare function msg, key_sort, utility\r\n$insert msg_equates\r\n$insert lsl_users_equ\r\n\r\nopen 'DICT.RDS' to DictRDSTable else\r\n Void = msg( '', 'Unable to open DICT.RDS...' )\r\n return 0\r\nend\r\nSearchStr = ''\r\nReactors = .reactors->array<1>\r\nCustIds = .customer_info->array<1>\r\nDateInFrom = .date_in_from->text\r\nDateInThru = .date_in_thru->text\r\nDateOutFrom = .date_out_from->text\r\nDateOutThru = .date_out_thru->text\r\nTimeInFrom = .time_in_from->text\r\nTimeInThru = .time_in_thru->text\r\nTimeOutFrom = .time_out_from->text\r\nTimeOutThru = .time_out_thru->text\r\nRecCheck = .received_check->check\r\nPreEpiCheck = .pre_epi_check->check\r\nInProcessCheck = .in_process_check->check\r\nPostEpiCheck = .post_epi_check->check\r\nReadyShipCheck = .ready_ship_check->check\r\nShipCheck = .ship_check->check\r\nHoldCheck = .hold_check->check\r\nWo = .wo->array\r\nPo = .po->array\r\nLotNum = .lot_num->array\r\nPartNum = .part_num->array\r\nQuoteNos = .quote_nos->array\r\nPSN = .psn_nos->array\r\n\r\nswap @vm:@vm with '' in Wo\r\nif Wo[-1,1] = @vm then Wo[-1,1] = ''\r\nswap @vm:@vm with '' in Po\r\nif Po[-1,1] = @vm then Po[-1,1] = ''\r\nswap @vm:@vm with '' in LotNum\r\nif LotNum[-1,1] = @vm then LotNum[-1,1] = ''\r\nswap @vm:@vm with '' in PartNum\r\nif PartNum[-1,1] = @vm then PartNum[-1,1] = ''\r\nswap @vm:@vm with '' in CustIds\r\nif CustIds[-1,1] = @vm then CustIds[-1,1] = ''\r\nswap @vm:@vm with '' in QuoteNos\r\nif QuoteNos[-1,1] = @vm then QuoteNos[-1,1] = ''\r\nswap @vm:@vm with '' in Reactors\r\nif Reactors[-1,1] = @vm then Reactors[-1,1] = ''\r\nswap @vm:@vm with '' in PSN\r\nif PSN[-1,1] = @vm then PSN[-1,1] = ''\r\n*\r\nif PSN then\r\n SearchStr<-1> = 'PROD_SPEC_ID':@vm:PSN\r\nend\r\nif Reactors then\r\n SearchStr<-1> = 'REACTOR':@vm:Reactors\r\nend\r\nif CustIds then\r\n SearchStr<-1> = 'CUST_NO':@vm:CustIds\r\nend\r\nif DateInFrom and DateInThru then\r\n SearchStr<-1> = 'DATE_IN':@vm:DateInFrom:'...':DateInThru\r\nend else\r\n\tif DateInFrom then\r\n\t SearchStr<-1> = 'DATE_IN':@vm:'>=':DateInFrom\r\n\tend\r\n\tif DateInThru then\r\n\t SearchStr<-1> = 'DATE_IN':@vm:'<=':DateInThru\r\n\tend\r\nend\r\nif DateOutFrom and DateOutThru then\r\n SearchStr<-1> = 'DATE_OUT':@vm:DateOutFrom:'...':DateOutThru\r\nend else\r\n\tif DateOutFrom then\r\n\t SearchStr<-1> = 'DATE_OUT':@vm:'>=':DateOutFrom\r\n\tend\r\n\tif DateOutThru then\r\n\t SearchStr<-1> = 'DATE_OUT':@vm:'<=':DateOutThru\r\n\tend\r\nend\r\nif TimeInFrom and TimeInThru then\r\n SearchStr<-1> = 'TIME_IN':@vm:TimeInFrom:'...':TimeInThru\r\nend else\r\n\tif TimeInFrom then\r\n\t SearchStr<-1> = 'TIME_IN':@vm:'>=':TimeInFrom\r\n\tend\r\n\tif TimeInThru then\r\n\t SearchStr<-1> = 'TIME_IN':@vm:'<=':TimeInThru\r\n\tend\r\nend\r\nif TimeOutFrom and TimeOutThru then\r\n SearchStr<-1> = 'TIME_OUT':@vm:TimeOutFrom:'...':TimeOutThru\r\nend else\r\n\tif TimeOutFrom then\r\n\t SearchStr<-1> = 'TIME_OUT':@vm:'>=':TimeOutFrom\r\n\tend\r\n\tif TimeOutThru then\r\n\t SearchStr<-1> = 'TIME_OUT':@vm:'<=':TimeOutThru\r\n\tend\r\nend\r\n*\r\nStatusVar = ''\r\nif RecCheck then\r\n StatusVar<1,-1> = 'C'\r\nend\r\nif PreEpiCheck then\r\n StatusVar<1,-1> = 'E'\r\nend\r\nif InProcessCheck then\r\n StatusVar<1,-1> = 'I'\r\nend\r\nif PostEpiCheck then\r\n StatusVar<1,-1> = 'T'\r\nend\r\nif ReadyShipCheck then\r\n StatusVar<1,-1> = 'R'\r\nend\r\nif ShipCheck then\r\n StatusVar<1,-1> = 'S'\r\nend\r\nif StatusVar then\r\n SearchStr<-1> = 'STATUS':@vm:StatusVar\r\nend\r\n*\r\nif HoldCheck then\r\n SearchStr<-1> = 'HOLD':@vm:HoldCheck\r\nend\r\n*\r\nif Wo then\r\n SearchStr<-1> = 'WO':@vm:Wo\r\nend\r\nif Po then\r\n SearchStr<-1> = 'PO':@VM:Po\r\nend\r\nif LotNum <> '' then\r\n SearchStr<-1> = 'LOT_NUM':@vm:LotNum\r\nend\r\nif PartNum then\r\n SearchStr<-1> = 'PART_NUM':@vm:PartNum\r\nend\r\nif QuoteNos then\r\n SearchStr<-1> = 'QUOTE_NO':@vm:QuoteNos\r\nend\r\nif SearchStr then\r\n SearchStr := @fm\r\n Void = utility( 'CURSOR', 'H' )\r\n * do a btree.extract\r\n btree.extract( SearchStr, 'RDS', DictRDSTable, Keys, '', Flag )\r\n if Flag <> 0 then\r\n Void = msg( '', 'Error while extracting RDS records...' )\r\n return 0\r\n end\r\n if Keys then\r\n convert @vm to @fm in Keys\r\n Keys = key_sort( Keys, 'RDS', 'CUST_NAME':@fm:'WO':@fm:'RUN_ORDER_NUM', 0 )\r\n end_dialog( @window, Keys )\r\n end else\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'No records found meeting your criteria...' \r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\n end\r\n Void = utility( 'CURSOR', 'A' )\r\nend else\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'You have not entered any search criteria...' \r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\nend\r\nreturn 0\r\n\r\n"
}
}
}