Files
open-insight/LSL2/OIEVENT/OPTIONS/ORDER.ORDER_DETAIL.json
2024-03-25 15:12:53 -07:00

11 lines
15 KiB
JSON

{
"header": {
"version": 1,
"type": "record"
},
"body": {
"record1": {
"<1>": "declare function relational_call, start_window, msg, entid, repository\r\ndeclare function key_sort, send_event, rowexists, Get_Status\r\ndeclare subroutine make.list,obj_Appwindow, Btree.Extract, ErrMsg\r\n\r\n$insert logical\r\n$insert msg_equates\r\n$insert quote_equ\r\n$insert popup_equates\r\n\r\nSelpos = .order_detail->selpos\r\nColumn = SelPos<1>\r\nRow = SelPos<2>\r\nbegin case\r\n\tcase Column = 1 ;* quote\r\n\t\tCustNo = .cust_no->text\r\n \r\n\t\tif CustNo NE '' THEN\r\n\t\t\tColData = get_property( @window:'.ORDER_DETAIL', 'COLDATA' )\r\n\t\t\tCurQuote = ColData<1,Row>\r\n\t\t\tOrderNo = .order_no->text\r\n\t \r\n\t\t\t* * * * * * New code 12/8/04 JCH\r\n\t\t\t\tIF OrderNo NE '' THEN\r\n\t\t\t\t\tIF CurQuote = '' THEN\r\n\t\t\t \r\n\t\t\t\t\t\tOPEN 'DICT.QUOTE' TO DictVar THEN\r\n\t\t\t\t\t\t\tSearchString = 'CUST_NO':@VM:CustNo:@VM:@FM\r\n\t\t\t\t\t\t\tSearchString := 'STATUS':@VM:'=O':@FM\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tBtree.Extract(SearchString, 'QUOTE', DictVar, QuoteKeys, '', Flag)\r\n\t\t\t\t\t\t\tIF Get_Status(errCode) THEN\r\n\t\t\t\t\t\t\t\tMsg(@window, MsgUp)\r\n\t\t\t\t\t\t\t\tErrMsg(errCode)\r\n\t\t\t\t\t\t\t\tRETURN 0\r\n\t\t\t\t\t\t\tEND\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tIF QuoteKeys = '' THEN\r\n\t\t\t\t\t\t\t\tErrMsg('No Quotes on file for customer ':CustNo)\r\n\t\t\t\t\t\t\t\tRETURN 0\r\n\t\t\t\t\t\t\tEND\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tIF INDEX(QuoteKeys,@VM,1) THEN\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tQuoteKeys := @VM\r\n\t\t\t\t\t\t\t\tCONVERT @VM TO @RM IN QuoteKeys\r\n\t\t\t\t\t\t\t\tCALL V119('S','','D','R',QuoteKeys,'')\r\n\t\t\t\t\t\t\t\tIF Get_Status(errCode) THEN DEBUG\r\n\t\t\t\t\t\t\t\tCONVERT @RM TO @VM IN QuoteKeys\r\n\t\t\t\t\t\t\t\tQuoteKeys[-1,1] = ''\t\t\t\t\t;* Strip trailing delimiter\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tTypeOver = ''\r\n\t\t\t\t\t\t\t\tTypeOver<PDISPLAY$> = QuoteKeys\r\n\t\t\t\t\t\t\t\tTypeOver<PSELECT$>\t= 1\t\t\t\t;* Single value select\r\n\t\t\t\t\t\t\t\tTypeOver<PTITLE$>\t= 'Open Quotes for ':OCONV(CustNo,'[XLATE_CONV,COMPANY*CO_NAME]')\r\n\r\n\t\t\t\t\t\t\t\tQuoteKey = Popup(@WINDOW,TypeOver,'QUOTE')\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tEND ELSE\r\n\t\t\t\t\t\t\t\tQuoteKey = QuoteKeys\r\n\t\t\t\t\t\t\tEND\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tIF QuoteKey NE '' THEN\r\n\t\t\t\t\t\t\t\tobj_Appwindow('LUValReturn',QuoteKey:@RM:@window:'.ORDER_DETAIL':@RM:SelPos)\r\n\t\t\t\t\t\t\tEND\r\n\t\t\t \tEND\t;* end of dict open\r\n\t\t\t \tEND ELSE\r\n\t\t\t \t\tobj_Appwindow('ViewRelated','QUOTE2':@RM:CurQuote)\r\n\t\t\t \tEND\r\n\t\t\t \tRETURN 0\r\n\t\t\t\tEND\t;*End of check for Order No and Cust No filled in\r\n\r\n\t \t* * * * * * End of New code 12/8/04 JCH\r\n\t \t* * * * * * * * * * Following code is dead\r\n\t /*\r\n\t if rowexists( 'ORDER', OrderNo ) else\r\n\t * order doesn't exists check to see if cur quote num is valid\r\n Tvar = iconv( CurQuote, '[WIN_QUOTE_NUM_VALID]' )\r\n\t if status() then\r\n\t return 0\r\n\t end\r\n\t end\r\n\t * row one = call window with current key\r\n\t\t\t* row two = call window with no keys\r\n\t\t\t* row three = call window with all active keys for customer\r\n\t\t\t* row four = call popup allowing choice\r\n\t\t\tPopupId = entid( @appid<1>, 'POPUP', '', 'QUOTE_LOOKUP_OPTS' )\r\n\t\t\t*DispOverride = xlate( 'SYSREPOSPOPUPS', 'LSL2**QUOTE_LOOKUP_OPTS', pdisplay$, 'X' )\r\n *DispOverride<1,-1> = 'View PSN'\r\n\t\t\tChoosenRow = repository( 'EXECUTE', PopupId, @window, '' )\r\n\t\t\tif ChoosenRow = 1 then\r\n\t\t\t ;* go view current quote\r\n\t\t\t if CurQuote then\r\n\t\t\t RetVal = start_window( 'QUOTE', @window, CurQuote:'*CENTER', '', '' ) \r\n\t\t\t end else\r\n\t\t\t MsgInfo = ''\r\n\t\t\t Text = 'You have not entered a quote number...' \r\n\t\t\t MsgInfo<mtext$> = Text\r\n\t\t\t MsgInfo<micon$> = 'H'\r\n\t\t\t Void = msg( '', MsgInfo )\r\n\t\t\t return 0\r\n\t\t\t end\r\n\t\t\tend else\r\n\t\t\t if ChoosenRow = 2 then\r\n\t\t\t * call quote window\r\n\t\t\t RetVal = start_window( 'QUOTE', @window, '*Choosing*Order', '', '' )\r\n\t\t\t end else\r\n\t\t\t\t if ChoosenRow = 3 then\r\n\t\t\t\t * call quote window with all active\r\n\t\t\t\t OpenKeys = xlate( 'COMPANY', CustNo, 'OPEN_QUOTE_KEYS', 'X' )\r\n\t\t\t\t if OpenKeys then\r\n\t\t \t\t RetVal = start_window( 'QUOTE', @window, OpenKeys:'*Choosing*Order', '', '' )\r\n\t\t\t\t end else\r\n\t\t\t\t gosub CustErr\r\n\t\t\t\t return 0\r\n\t\t\t\t end\r\n\t\t\t\t end else\r\n\t\t\t\t if ChoosenRow = 4 then\r\n\t\t\t\t ;* show all open in popup allowing choice\r\n\t\t \t\t\t OpenKeys = xlate( 'COMPANY', CustNo, 'OPEN_QUOTE_KEYS', 'X' )\r\n\t\t\t\t\t if OpenKeys then\r\n\t\t\t\t\t convert @vm to @fm in OpenKeys\r\n\t\t\t \t\t OpenKeys = key_sort( OpenKeys, 'QUOTE', '#ENTRY_DATE', 1, '', '' )\r\n\t\t\t \t\t make.list( 0, OpenKeys, '', '' )\r\n\t\t \t\t PopupId = entid( @appid<1>, 'POPUP', '', 'SHOW_QUOTES' )\r\n\t\t\t\t\t Override = ''\r\n\t\t\t\t\t Override<pselect$> = 1\r\n\t\t \t \t\t ChoosenRow = repository( 'EXECUTE', PopupId, @window, Override )\r\n\t\t \t \t\t if ChoosenRow then\r\n\t\t ColData<1,Row> = ChoosenRow\r\n\t\t Void = set_property( @window:'.ORDER_DETAIL', 'COLDATA', ColData )\r\n\t\t end\r\n\t\t \t end else\r\n\t\t\t\t\t gosub CustErr\r\n\t\t\t\t\t return 0\r\n\t\t\t\t\t end\r\n\t\t\t\t\t end;* user canceled\r\n\t\t\t\t\t \r\n\t\t\t\t end\r\n\t\t\t\tend\r\n\t\t\tend \r\n\t\t\t*/\r\n\t\t\t* * * * * * * * * * Preceding code is dead\r\n\t\t\t \r\n end else\r\n MsgRec = ''\r\n MsgRec<mtext$> = 'You must enter a customer first...' \r\n MsgRec<micon$> = 'H'\r\n Void = msg( '', MsgRec ) \r\n end\r\n case Column = 2\r\n\t\tCustNo = .cust_no->text\r\n\t\tif CustNo then\r\n\t\t * row one = call window with current key\r\n\t\t\t* row two = call window with no keys\r\n\t\t\t* row three = call window with all keys for customer\r\n\t\t\t* row four = call popup allowing choice\r\n\t\t\tColData = get_property( @window:'.ORDER_DETAIL', 'COLDATA' )\r\n\t\t\tCurProdSpecID = ColData<1,Row>\r\n\t\t\tif CurProdSpecID then\r\n\t\t\t if rowexists( 'ORDER', .order_no->text ) else\r\n\t\t\t Tvar = iconv( CurProdSpecID, '[WIN_PROD_SPEC_NUM_VALID]' )\r\n\t\t\t if status() then\r\n\t\t\t return 0\r\n\t\t\t end\r\n\t\t\t end\r\n\t\t\tend\r\n\t\t\tPopupId = entid( @appid<1>, 'POPUP', '', 'PROD_SPEC_LOOKUP_OPTS' )\r\n\t\t\tChoosenRow = repository( 'EXECUTE', PopupId, @window, '' )\r\n\t\t\tif ChoosenRow = 1 then\r\n\t\t\t ;* go view current prod spec\r\n\t\t\t if CurProdSpecID then\r\n\t\t\t RetVal = start_window( 'PROD_SPEC', @window, CurProdSpecID:'*Choosing*Order**CENTER', '', '' ) \r\n\t\t\t\tend else\r\n\t\t\t\t MsgInfo = ''\r\n\t\t\t\t Text = 'You have not entered a product specification number...' \r\n\t\t\t\t MsgInfo<mtext$> = Text\r\n\t\t\t\t MsgInfo<micon$> = 'H'\r\n\t\t\t\t Void = msg( '', MsgInfo )\r\n\t\t\t\t return 0\r\n\t\t end\r\n\t\t end else\r\n\t\t if ChoosenRow = 2 then\r\n\t\t\t * call customer prod spec window\r\n\t\t\t\t\tRetVal = start_window( 'PROD_SPEC', @window, '*Choosing*Order*':CustNo:'*CENTER', '', '' )\r\n\t\t\t\tend else\r\n\t\t\t\t if ChoosenRow = 3 then\r\n\t\t\t\t * call product specification window with all\r\n\t\t\t\t\t\tOpenKeys = xlate( 'COMPANY', CustNo, 'PROD_SPEC_KEYS', 'X' )\r\n\t\t\t\t\t\tif OpenKeys then\r\n\t\t\t\t\t\t\tconvert @vm to @fm in OpenKeys\r\n\t\t\t\t\t OpenKeys = key_sort( OpenKeys, 'PROD_SPEC', '#ENTRY_DATE', 1 )\t\t\t\t\t\r\n\t\t\t\t\t convert @fm to @vm in OpenKeys\r\n\t\t\t\t RetVal = start_window( 'PROD_SPEC', @window, OpenKeys:'*Choosing*Order**CENTER', '', '' )\r\n\t\t\t\t\t\tend else\r\n\t\t\t\t\t\t gosub CustErr2\r\n\t\t\t\t\t\t return 0\r\n\t\t\t\t\t\tend\r\n\t\t\t\t\tend else\r\n\t\t\t\t\t if ChoosenRow = 4 then\r\n\t\t\t\t\t ;* show all open in popup allowing choice\r\n\t\t\t\t \t\t\tOpenKeys = xlate( 'COMPANY', CustNo, 'PROD_SPEC_KEYS', 'X' )\r\n\t\t\t\t\t\t\tif OpenKeys then\r\n\t\t\t\t\t\t\t convert @vm to @fm in OpenKeys\r\n\t\t\t\t\t\t OpenKeys = key_sort( OpenKeys, 'PROD_SPEC', '#ENTRY_DATE', 1 )\t\t\t\r\n\t\t\t\t\t \tmake.list( 0, OpenKeys, '', '' )\r\n\t\t\t\t \t\tPopupId = entid( @appid<1>, 'POPUP', '', 'PROD_SPEC_SINGLE' )\r\n\t\t\t\t \t \t\tChoosenRow = repository( 'EXECUTE', PopupId, @window, '' )\r\n\t\t\t\t \t \t\tif ChoosenRow then\r\n\t\t\t\t\t\t\t\t\tColData<1,Row> = ChoosenRow\r\n\t\t\t\t\t\t\t\t\tVoid = set_property( @window:'.ORDER_DETAIL', 'COLDATA', ColData )\r\n\t\t\t\t end\r\n\t\t\t\t \tend else\r\n\t\t\t\t\t\t\t gosub CustErr2\r\n\t\t\t\t\t\t\t return 0\r\n\t\t\t\t\t\t\tend\r\n\t\t\t\t\t end ;* user canceled\r\n\t\t\t\t end\r\n\t\t\t end\r\n\t\t end \r\n\t\tend else\r\n\t\t MsgRec = ''\r\n\t\t MsgRec<mtext$> = 'You must enter a customer first...' \r\n\t\t MsgRec<micon$> = 'H'\r\n\t\t Void = msg( '', MsgRec ) \r\n\t\tend\r\n\r\n case Column = 3\r\n Schedules = .order_detail->array<3>\r\n swap @vm:@vm with '' in Schedules\r\n if Schedules[-1,1] = @vm then Schedules[-1,1] = ''\r\n \tPopupId = entid( @appid<1>, 'POPUP', '', 'ORDER_GOTO_SCHED' )\r\n\t\tChoosenRow = repository( 'EXECUTE', PopupId, @window, '' )\r\n\t\tif ChoosenRow then\r\n\t\t\tif ChoosenRow = 1 then ;* view current\r\n\t\t\t Keys = Schedules<1,Row>\r\n\t end else\r\n\t if ChoosenRow = 2 then ;* all\r\n\t Keys = Schedules\r\n\t end\r\n\t end\r\n\t Void = start_window( 'SCHEDULE', @window, Keys, '', '' )\r\n end\r\n case Column = 6\r\n * WAFER INVENTORY\r\n CustNo = .cust_no->text\r\n if CustNo then\r\n ColData = get_property( @window:'.ORDER_DETAIL', 'COLDATA' )\r\n\t CurWafInv = ColData<1,Row>\r\n\t OrderNo = .order_no->text\r\n\t if rowexists( 'ORDER', OrderNo ) else\r\n\t * order doesn't exists check to see if cur wafer inventory num is valid\r\n Tvar = iconv( CurWafInv, '[WIN_WAF_INV_NUM_VALID]' )\r\n\t if status() then\r\n\t return 0\r\n\t end\r\n\t end\r\n\t * row one = call window with current key\r\n\t\t\t* row two = call window with no keys\r\n\t\t\t* row three = call window with all active keys for customer\r\n\t\t\t* row four = call popup allowing choice\r\n\t\t\tPopupId = entid( @appid<1>, 'POPUP', '', 'WAF_INV_LOOKUP_OPTS' )\r\n\t\t\tChoosenRow = repository( 'EXECUTE', PopupId, @window, '' )\r\n\t\t\tif ChoosenRow = 1 then\r\n\t\t\t ;* go view current wafer inventory\r\n\t\t\t if CurWafInv then\r\n\t\t\t RetVal = start_window( 'WAFER_INV', @window, CurWafInv:'*CENTER', '', '' ) \r\n\t\t\t end else\r\n\t\t\t MsgInfo = ''\r\n\t\t\t Text = 'You have not entered a wafer inventory number...' \r\n\t\t\t MsgInfo<mtext$> = Text\r\n\t\t\t MsgInfo<micon$> = 'H'\r\n\t\t\t Void = msg( '', MsgInfo )\r\n\t\t\t return 0\r\n\t\t\t end\r\n\t\t\tend else\r\n\t\t\t if ChoosenRow = 2 then\r\n\t\t\t * call wafer inventory window\r\n\t\t\t RetVal = start_window( 'WAFER_INV', @window, '*Choosing*Order', '', '' )\r\n\t\t\t end else\r\n\t\t\t\t if ChoosenRow = 3 then\r\n\t\t\t\t * call wafer inventory window with all active\r\n\t\t\t\t OpenKeys = xlate( 'COMPANY', CustNo, 'OPEN_WAF_INV_KEYS', 'X' )\r\n\t\t\t\t if OpenKeys then\r\n\t\t \t\t RetVal = start_window( 'WAFER_INV', @window, OpenKeys:'*Choosing*Order', '', '' )\r\n\t\t\t\t end else\r\n\t\t\t\t gosub CustErr3\r\n\t\t\t\t return 0\r\n\t\t\t\t end\r\n\t\t\t\t end else\r\n\t\t\t\t if ChoosenRow = 4 then\r\n\t\t\t\t ;* show all open in popup allowing choice\r\n\t\t \t\t\t OpenKeys = xlate( 'COMPANY', CustNo, 'OPEN_WAF_INV_KEYS', 'X' )\r\n\t\t\t\t\t if OpenKeys then\r\n\t\t\t\t\t convert @vm to @fm in OpenKeys\r\n\t\t\t \t\t OpenKeys = key_sort( OpenKeys, 'WAFER_INV', '#ENTRY_DATE', 1, '', '' )\r\n\t\t\t \t\t make.list( 0, OpenKeys, '', '' )\r\n\t\t \t\t PopupId = entid( @appid<1>, 'POPUP', '', 'SHOW_WAF_INV' )\r\n\t\t\t\t\t Override = ''\r\n\t\t\t\t\t Override<pselect$> = 1\r\n\t\t \t \t\t ChoosenRow = repository( 'EXECUTE', PopupId, @window, Override )\r\n\t\t \t \t\t if ChoosenRow then\r\n\t\t ColData<1,Row> = ChoosenRow\r\n\t\t Void = set_property( @window:'.ORDER_DETAIL', 'COLDATA', ColData )\r\n\t\t end\r\n\t\t \t end else\r\n\t\t\t\t\t gosub CustErr3\r\n\t\t\t\t\t return 0\r\n\t\t\t\t\t end\r\n\t\t\t\t\t end;* user canceled\r\n\t\t\t\t\t \r\n\t\t\t\t end\r\n\t\t\t\tend\r\n\t\t\tend \r\n end else\r\n MsgRec = ''\r\n MsgRec<mtext$> = 'You must enter a customer first...' \r\n MsgRec<micon$> = 'H'\r\n Void = msg( '', MsgRec ) \r\n end\r\n \r\n \r\n \r\n case Otherwise$\r\nend case\r\nRETURN 0\r\n*===========================================================================*\r\nCustErr:\r\n Text = 'There are currently no OPEN quotes for '\t\t \r\n Text:= oconv( CustNo, '[XLATE_CONV,COMPANY*CO_NAME]' ) \r\n MsgInfo = ''\r\n MsgInfo<mtext$> = Text\r\n MsgInfo<micon$> = 'H'\r\n Void = msg( '', MsgInfo )\r\nreturn 0\r\n*===========================================================================*\r\nCustErr2:\r\n Text = 'There are no PSNs for '\t\t \r\n Text:= oconv( CustNo, '[XLATE_CONV,COMPANY*CO_NAME]' ) \r\n MsgInfo = ''\r\n MsgInfo<mtext$> = Text\r\n MsgInfo<micon$> = 'H'\r\n Void = msg( '', MsgInfo )\r\nreturn 0\r\n*===========================================================================*\r\nCustErr3:\r\n Text = 'There are no Wafer Inventory records for '\t\t \r\n Text:= oconv( CustNo, '[XLATE_CONV,COMPANY*CO_NAME]' ) \r\n MsgInfo = ''\r\n MsgInfo<mtext$> = Text\r\n MsgInfo<micon$> = 'H'\r\n Void = msg( '', MsgInfo )\r\nreturn 0\r\n*===========================================================================*\r\n"
}
}
}