ready for UAT
final commit added PSN to reactor maintenance report query dialog
This commit is contained in:
parent
8b0eb3e468
commit
333cf0b8e2
@ -5,7 +5,7 @@
|
||||
},
|
||||
"body": {
|
||||
"record1": {
|
||||
"<1>": "declare subroutine btree.extract, update_index, rlist, end_dialog\r\ndeclare subroutine activate_save_select\r\ndeclare function msg, key_sort, utility, fieldcount, ex_vm_rem\r\n$insert lsl_users_equ\r\n$insert msg_equates\r\n$insert rlist_equates\r\n\r\nWithStmt = ''\r\n\r\nGrid = .grid->check\r\nif Grid then\r\n Grid = 'GRID '\r\nend else\r\n Grid = ''\r\nend\r\n\r\nStartDateFrom = .start_date_from->text\r\nStartDateThru = .start_date_thru->text\r\nReactors = .reactors->array\r\nReactors = ex_vm_rem(Reactors)\r\n\r\nif StartDateFrom = '' Or StartDateThru = '' then\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'You must enter a date from and thru...'\r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\n return 0\r\nend\r\n\r\nBegDteNum = Iconv(StartDateFrom,'D')\r\nEndDteNum = Iconv(StartDateThru,'D')\r\nDteDifNum = EndDteNum - BegDteNum\r\nIf DteDifNum < 0 Then\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'Date From can not be greater than Date Thru...'\r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\n return 0\r\nend\r\n\r\nProblemCategories = .react_probs_cat->array\r\nProblemCategories = ex_vm_rem(ProblemCategories<1>)\r\nServiceIDs = .react_servs->array\r\nServiceIDs = ex_vm_rem(ServiceIDs<1>)\r\n\r\nParameterString = ''\r\nParameterString := StartDateFrom:'*'\r\nParameterString := StartDateThru:'*'\r\nParameterString := Reactors:'*'\r\nParameterString := ProblemCategories:'*'\r\nParameterString := ServiceIDs:'*'\r\nParameterString := Grid\r\n\r\nend_dialog( @window, ParameterString )\r\nreturn 0\r\n"
|
||||
"<1>": "declare subroutine btree.extract, update_index, rlist, end_dialog\r\ndeclare subroutine activate_save_select\r\ndeclare function msg, key_sort, utility, fieldcount, ex_vm_rem\r\n$insert lsl_users_equ\r\n$insert msg_equates\r\n$insert rlist_equates\r\n\r\nWithStmt = ''\r\n/*\r\nGrid = .grid->check\r\nif Grid then\r\n Grid = 'GRID '\r\nend else\r\n Grid = ''\r\nend\r\n*/\r\nStartDateFrom = .start_date_from->text\r\nStartDateThru = .start_date_thru->text\r\nReactors = .reactors->array\r\nReactors = ex_vm_rem(Reactors)\r\n\r\nif StartDateFrom = '' Or StartDateThru = '' then\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'You must enter a date from and thru...'\r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\n return 0\r\nend\r\n\r\nBegDteNum = Iconv(StartDateFrom,'D')\r\nEndDteNum = Iconv(StartDateThru,'D')\r\nDteDifNum = EndDteNum - BegDteNum\r\nIf DteDifNum < 0 Then\r\n MsgInfo = ''\r\n MsgInfo<mtext$> = 'Date From can not be greater than Date Thru...'\r\n MsgInfo<micon$> = '!'\r\n Void = msg( '', MsgInfo )\r\n return 0\r\nend\r\n\r\nProblemCategories = .react_probs_cat->array\r\nProblemCategories = ex_vm_rem(ProblemCategories<1>)\r\nServiceIDs = .react_servs->array\r\nServiceIDs = ex_vm_rem(ServiceIDs<1>)\r\nPSNs = .EDT_PSNS->ARRAY\r\nPSNs = ex_vm_rem(PSNs<1>)\r\n\r\nParameterString = ''\r\nParameterString := StartDateFrom:'*'\r\nParameterString := StartDateThru:'*'\r\nParameterString := Reactors:'*'\r\nParameterString := ProblemCategories:'*'\r\nParameterString := ServiceIDs:'*'\r\nParameterString := PSNs:'*'\r\nParameterString := .chk_include_ri_ids->check:'*'\r\nParameterString := .chk_include_inj_settings->check:'*'\r\nParameterString := .chk_include_reactor_ratios->check\r\n\r\nend_dialog( @window, ParameterString )\r\nreturn 0\r\n"
|
||||
}
|
||||
}
|
||||
}
|
11
LSL2/OIEVENT/CLICK/REACTOR_LOG_SRPT1.PUB_LU_PSNS.json
Normal file
11
LSL2/OIEVENT/CLICK/REACTOR_LOG_SRPT1.PUB_LU_PSNS.json
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"header": {
|
||||
"version": 1,
|
||||
"type": "record"
|
||||
},
|
||||
"body": {
|
||||
"record1": {
|
||||
"<1>": "declare function send_event, post_event\r\n\r\nVoid = send_event( @window:'.EDT_PSNS', 'OPTIONS' )\r\nVoid = post_event( @window:'.EDT_PSNS', 'LOSTFOCUS' )\r\nRETURN 1"
|
||||
}
|
||||
}
|
||||
}
|
11
LSL2/OIEVENT/OPTIONS/REACTOR_LOG_SRPT1.EDT_PSNS.json
Normal file
11
LSL2/OIEVENT/OPTIONS/REACTOR_LOG_SRPT1.EDT_PSNS.json
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"header": {
|
||||
"version": 1,
|
||||
"type": "record"
|
||||
},
|
||||
"body": {
|
||||
"record1": {
|
||||
"<1>": "declare function entid, repository, send_event\r\ndeclare subroutine rlist\r\n$insert popup_equates\r\n$insert rlist_equates\r\n\r\nSelPos = .EDT_PSNS->selpos\r\nCurRow = SelPos<2>\r\nPopRec = entid( @appid<1>, 'POPUP', '', 'SHOW_PROD_SPEC' )\r\nOverRide = ''\r\nOverRide<pselect$> = 2\r\nStmt = 'SELECT PROD_SPEC BY-DSND SEQ'\r\nrlist( Stmt, target_activelist$, '', '', '' )\r\nChoosen = repository( 'EXECUTE', PopRec, @window, OverRide )\r\nif Choosen then\r\n convert @fm to @vm in Choosen\r\n\tCurArray = .EDT_PSNS->array\r\n\tCurArray = delete( CurArray, 1, CurRow, 0 )\r\n\tCurArray = insert( CurArray, 1, CurRow, 0, Choosen )\r\n\t.EDT_PSNS->Array = CurArray \r\nend\r\nRETURN 0"
|
||||
}
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
226
LSL2/POPUP/REACTOR_RATIOS.json
Normal file
226
LSL2/POPUP/REACTOR_RATIOS.json
Normal file
@ -0,0 +1,226 @@
|
||||
{
|
||||
"header": {
|
||||
"version": 1,
|
||||
"type": "record"
|
||||
},
|
||||
"body": {
|
||||
"record1": {
|
||||
"<1>": "-1",
|
||||
"<2>": "-1",
|
||||
"<3>": "-1",
|
||||
"<4>": "-1",
|
||||
"<5>": "-2",
|
||||
"<6>": {
|
||||
"<6,1>": {
|
||||
"<6,1,1>": "Tahoma",
|
||||
"<6,1,2>": "-11",
|
||||
"<6,1,3>": "400",
|
||||
"<6,1,4>": "0",
|
||||
"<6,1,5>": "0",
|
||||
"<6,1,6>": "5",
|
||||
"<6,1,7>": "0",
|
||||
"<6,1,8>": "39",
|
||||
"<6,1,9>": "0",
|
||||
"<6,1,10>": "0",
|
||||
"<6,1,11>": "0",
|
||||
"<6,1,12>": "0",
|
||||
"<6,1,13>": "11",
|
||||
"<6,1,14>": "2",
|
||||
"<6,1,15>": "0",
|
||||
"<6,1,16>": "21"
|
||||
}
|
||||
},
|
||||
"<7>": "REACTOR_RATIOS",
|
||||
"<8>": {
|
||||
"<8,1>": {
|
||||
"<8,1,1>": {
|
||||
"<8,1,1,1>": "BY REACTOR_NO BY-DSND RATIO_SET_DTM",
|
||||
"<8,1,1,2>": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"<9>": {
|
||||
"<9,1>": {
|
||||
"<9,1,1>": "REACTOR_NO",
|
||||
"<9,1,2>": "6",
|
||||
"<9,1,3>": "C",
|
||||
"<9,1,4>": "C",
|
||||
"<9,1,5>": "MD0",
|
||||
"<9,1,6>": "Reactor No"
|
||||
},
|
||||
"<9,2>": {
|
||||
"<9,2,1>": "RATIO_SET_DTM",
|
||||
"<9,2,2>": "16",
|
||||
"<9,2,3>": "C",
|
||||
"<9,2,4>": "C",
|
||||
"<9,2,5>": "DT/^S",
|
||||
"<9,2,6>": "Ratio Set Dtm"
|
||||
},
|
||||
"<9,3>": {
|
||||
"<9,3,1>": "RATIO_1",
|
||||
"<9,3,2>": "7",
|
||||
"<9,3,3>": "C",
|
||||
"<9,3,4>": "C",
|
||||
"<9,3,5>": "MD3,",
|
||||
"<9,3,6>": "Ratio 1"
|
||||
},
|
||||
"<9,4>": {
|
||||
"<9,4,1>": "RATIO_2",
|
||||
"<9,4,2>": "7",
|
||||
"<9,4,3>": "C",
|
||||
"<9,4,4>": "C",
|
||||
"<9,4,5>": "MD3,",
|
||||
"<9,4,6>": "Ratio 2"
|
||||
},
|
||||
"<9,5>": {
|
||||
"<9,5,1>": "RATIO_3",
|
||||
"<9,5,2>": "7",
|
||||
"<9,5,3>": "C",
|
||||
"<9,5,4>": "C",
|
||||
"<9,5,5>": "MD3,",
|
||||
"<9,5,6>": "Ratio 3"
|
||||
},
|
||||
"<9,6>": {
|
||||
"<9,6,1>": "RATIO_4",
|
||||
"<9,6,2>": "7",
|
||||
"<9,6,3>": "C",
|
||||
"<9,6,4>": "C",
|
||||
"<9,6,5>": "MD3,",
|
||||
"<9,6,6>": "Ratio 4"
|
||||
},
|
||||
"<9,7>": {
|
||||
"<9,7,1>": "RATIO_5",
|
||||
"<9,7,2>": "7",
|
||||
"<9,7,3>": "C",
|
||||
"<9,7,4>": "C",
|
||||
"<9,7,5>": "MD3,",
|
||||
"<9,7,6>": "Ratio 5"
|
||||
},
|
||||
"<9,8>": {
|
||||
"<9,8,1>": "RATIO_6",
|
||||
"<9,8,2>": "7",
|
||||
"<9,8,3>": "C",
|
||||
"<9,8,4>": "C",
|
||||
"<9,8,5>": "MD3,",
|
||||
"<9,8,6>": "Ratio 6"
|
||||
},
|
||||
"<9,9>": {
|
||||
"<9,9,1>": "RATIO_7",
|
||||
"<9,9,2>": "7",
|
||||
"<9,9,3>": "C",
|
||||
"<9,9,4>": "C",
|
||||
"<9,9,5>": "MD3,",
|
||||
"<9,9,6>": "Ratio 7"
|
||||
},
|
||||
"<9,10>": {
|
||||
"<9,10,1>": "RATIO_8",
|
||||
"<9,10,2>": "7",
|
||||
"<9,10,3>": "C",
|
||||
"<9,10,4>": "C",
|
||||
"<9,10,5>": "MD3,",
|
||||
"<9,10,6>": "Ratio 8"
|
||||
},
|
||||
"<9,11>": {
|
||||
"<9,11,1>": "RATIO_9",
|
||||
"<9,11,2>": "7",
|
||||
"<9,11,3>": "C",
|
||||
"<9,11,4>": "C",
|
||||
"<9,11,5>": "MD3,",
|
||||
"<9,11,6>": "Ratio 9"
|
||||
},
|
||||
"<9,12>": {
|
||||
"<9,12,1>": "RATIO_10",
|
||||
"<9,12,2>": "7",
|
||||
"<9,12,3>": "C",
|
||||
"<9,12,4>": "C",
|
||||
"<9,12,5>": "MD3,",
|
||||
"<9,12,6>": "Ratio 10"
|
||||
},
|
||||
"<9,13>": {
|
||||
"<9,13,1>": "RATIO_11",
|
||||
"<9,13,2>": "7",
|
||||
"<9,13,3>": "C",
|
||||
"<9,13,4>": "C",
|
||||
"<9,13,5>": "MD3,",
|
||||
"<9,13,6>": "Ratio 11"
|
||||
},
|
||||
"<9,14>": {
|
||||
"<9,14,1>": "RATIO_12",
|
||||
"<9,14,2>": "7",
|
||||
"<9,14,3>": "C",
|
||||
"<9,14,4>": "C",
|
||||
"<9,14,5>": "MD3,",
|
||||
"<9,14,6>": "Ratio 12"
|
||||
},
|
||||
"<9,15>": {
|
||||
"<9,15,1>": "RATIO_13",
|
||||
"<9,15,2>": "7",
|
||||
"<9,15,3>": "C",
|
||||
"<9,15,4>": "C",
|
||||
"<9,15,5>": "MD3,",
|
||||
"<9,15,6>": "Ratio 13"
|
||||
},
|
||||
"<9,16>": {
|
||||
"<9,16,1>": "RATIO_14",
|
||||
"<9,16,2>": "7",
|
||||
"<9,16,3>": "C",
|
||||
"<9,16,4>": "C",
|
||||
"<9,16,5>": "MD3,",
|
||||
"<9,16,6>": "Ratio 14"
|
||||
},
|
||||
"<9,17>": {
|
||||
"<9,17,1>": "RATIO_15",
|
||||
"<9,17,2>": "7",
|
||||
"<9,17,3>": "C",
|
||||
"<9,17,4>": "C",
|
||||
"<9,17,5>": "MD3,",
|
||||
"<9,17,6>": "Ratio 15"
|
||||
},
|
||||
"<9,18>": {
|
||||
"<9,18,1>": "RATIO_16",
|
||||
"<9,18,2>": "7",
|
||||
"<9,18,3>": "C",
|
||||
"<9,18,4>": "C",
|
||||
"<9,18,5>": "MD3,",
|
||||
"<9,18,6>": "Ratio 16"
|
||||
}
|
||||
},
|
||||
"<10>": "T",
|
||||
"<11>": "1",
|
||||
"<12>": "Reactor Injector Settings",
|
||||
"<13>": "1",
|
||||
"<14>": "F",
|
||||
"<15>": "1",
|
||||
"<16>": "1",
|
||||
"<17>": "1",
|
||||
"<18>": "1",
|
||||
"<19>": "1",
|
||||
"<20>": "1",
|
||||
"<21>": "1",
|
||||
"<22>": "0",
|
||||
"<23>": "0",
|
||||
"<24>": "0",
|
||||
"<25>": "0",
|
||||
"<26>": "",
|
||||
"<27>": "",
|
||||
"<28>": "",
|
||||
"<29>": "0",
|
||||
"<30>": "1",
|
||||
"<31>": "0",
|
||||
"<32>": "0",
|
||||
"<33>": "1",
|
||||
"<34>": "15400411",
|
||||
"<35>": "16777215",
|
||||
"<36>": "",
|
||||
"<37>": "",
|
||||
"<38>": "",
|
||||
"<39>": "",
|
||||
"<40>": "-2",
|
||||
"<41>": "1000",
|
||||
"<42>": "",
|
||||
"<43>": "",
|
||||
"<44>": "",
|
||||
"<45>": ""
|
||||
}
|
||||
}
|
||||
}
|
@ -9,7 +9,7 @@
|
||||
"<2>": "-1",
|
||||
"<3>": "-1",
|
||||
"<4>": "-1",
|
||||
"<5>": "16777215",
|
||||
"<5>": "-2",
|
||||
"<6>": {
|
||||
"<6,1>": {
|
||||
"<6,1,1>": "Tahoma",
|
||||
@ -30,27 +30,27 @@
|
||||
"<6,1,16>": "21"
|
||||
}
|
||||
},
|
||||
"<7>": "REACTOR_LOG",
|
||||
"<7>": "REACTOR_INJECTOR_SETTINGS",
|
||||
"<8>": {
|
||||
"<8,1>": {
|
||||
"<8,1,1>": {
|
||||
"<8,1,1,1>": "WITH INJ_SET_REACT_NO NE \"\" BY REACTOR BY-DSND INJ_SET_DTM ",
|
||||
"<8,1,1,1>": "BY REACTOR BY-DSND INJ_SET_DTM ",
|
||||
"<8,1,1,2>": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"<9>": {
|
||||
"<9,1>": {
|
||||
"<9,1,1>": "REACTOR",
|
||||
"<9,1,1>": "REACTOR_NO",
|
||||
"<9,1,2>": "4",
|
||||
"<9,1,3>": "C",
|
||||
"<9,1,4>": "C",
|
||||
"<9,1,5>": "MD0",
|
||||
"<9,1,6>": "Reactor"
|
||||
"<9,1,6>": "Reactor No"
|
||||
},
|
||||
"<9,2>": {
|
||||
"<9,2,1>": "INJ_TYPE_DESC",
|
||||
"<9,2,2>": "8",
|
||||
"<9,2,2>": "25",
|
||||
"<9,2,3>": "C",
|
||||
"<9,2,4>": "C",
|
||||
"<9,2,5>": "[CONV_CODE_DESC,REACT_INJ_TYPE]",
|
||||
@ -65,12 +65,44 @@
|
||||
"<9,3,6>": "Inj Set Dtm"
|
||||
},
|
||||
"<9,4>": {
|
||||
"<9,4,1>": "INJ_SET_DISP",
|
||||
"<9,4,2>": "26",
|
||||
"<9,4,1>": "INJECTOR_1",
|
||||
"<9,4,2>": "16",
|
||||
"<9,4,3>": "C",
|
||||
"<9,4,4>": "C",
|
||||
"<9,4,5>": "",
|
||||
"<9,4,6>": "Inj Set Disp"
|
||||
"<9,4,5>": "MD3",
|
||||
"<9,4,6>": "Injector 1"
|
||||
},
|
||||
"<9,5>": {
|
||||
"<9,5,1>": "INJECTOR_2",
|
||||
"<9,5,2>": "16",
|
||||
"<9,5,3>": "C",
|
||||
"<9,5,4>": "C",
|
||||
"<9,5,5>": "MD3",
|
||||
"<9,5,6>": "Injector 2"
|
||||
},
|
||||
"<9,6>": {
|
||||
"<9,6,1>": "INJECTOR_3",
|
||||
"<9,6,2>": "16",
|
||||
"<9,6,3>": "C",
|
||||
"<9,6,4>": "C",
|
||||
"<9,6,5>": "MD3",
|
||||
"<9,6,6>": "Injector 3"
|
||||
},
|
||||
"<9,7>": {
|
||||
"<9,7,1>": "INJECTOR_4",
|
||||
"<9,7,2>": "16",
|
||||
"<9,7,3>": "C",
|
||||
"<9,7,4>": "C",
|
||||
"<9,7,5>": "MD3",
|
||||
"<9,7,6>": "Injector 4"
|
||||
},
|
||||
"<9,8>": {
|
||||
"<9,8,1>": "INJECTOR_5",
|
||||
"<9,8,2>": "16",
|
||||
"<9,8,3>": "C",
|
||||
"<9,8,4>": "C",
|
||||
"<9,8,5>": "MD3",
|
||||
"<9,8,6>": "Injector 5"
|
||||
}
|
||||
},
|
||||
"<10>": "T",
|
||||
@ -98,7 +130,17 @@
|
||||
"<32>": "0",
|
||||
"<33>": "1",
|
||||
"<34>": "15400411",
|
||||
"<35>": "16777215"
|
||||
"<35>": "16777215",
|
||||
"<36>": "",
|
||||
"<37>": "",
|
||||
"<38>": "",
|
||||
"<39>": "",
|
||||
"<40>": "-2",
|
||||
"<41>": "1000",
|
||||
"<42>": "",
|
||||
"<43>": "",
|
||||
"<44>": "",
|
||||
"<45>": ""
|
||||
}
|
||||
}
|
||||
}
|
@ -132,7 +132,24 @@
|
||||
"<25>": "0",
|
||||
"<26>": "",
|
||||
"<27>": "",
|
||||
"<28>": ""
|
||||
"<28>": "",
|
||||
"<29>": "0",
|
||||
"<30>": "0",
|
||||
"<31>": "0",
|
||||
"<32>": "0",
|
||||
"<33>": "0",
|
||||
"<34>": "-2",
|
||||
"<35>": "-2",
|
||||
"<36>": "",
|
||||
"<37>": "",
|
||||
"<38>": "",
|
||||
"<39>": "",
|
||||
"<40>": "-2",
|
||||
"<41>": "1000",
|
||||
"<42>": "",
|
||||
"<43>": "",
|
||||
"<44>": "",
|
||||
"<45>": ""
|
||||
}
|
||||
}
|
||||
}
|
@ -767,8 +767,8 @@ ReactNo = Get_Property(@WINDOW:'.REACT_NO','DEFPROP')
|
||||
|
||||
IF ReactNo NE '' THEN
|
||||
|
||||
TypeOver = ''
|
||||
TypeOver<PDISPLAY$> = 'WITH INJ_SET_REACT_NO = ':ReactNo:' BY-DSND INJ_SET_DTM'
|
||||
TypeOver = ''
|
||||
TypeOver<PDISPLAY$> = 'WITH REACTOR_NO = ':ReactNo:' BY-DSND INJ_SET_DTM'
|
||||
|
||||
void = Popup(@WINDOW,TypeOver,'REACT_INJ_SETTINGS')
|
||||
|
||||
@ -1107,3 +1107,4 @@ return
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -6,17 +6,19 @@ COMPILE SUBROUTINE Print_Reactor_Maint1(Dummy)
|
||||
*/
|
||||
|
||||
|
||||
DECLARE SUBROUTINE Utility, ErrMsg, Set_Status, Set_Printer, RList
|
||||
DECLARE FUNCTION Set_Printer, Get_Printer, Msg, Get_Status, Printer_Select, obj_Install, Dialog_Box
|
||||
DECLARE SUBROUTINE Utility, ErrMsg, Set_Status, Set_Printer, RList, Push.Select, Pop.Select, Run_Report
|
||||
DECLARE FUNCTION Set_Printer, Get_Printer, Msg, Get_Status, Printer_Select, obj_Install, Dialog_Box
|
||||
DECLARE FUNCTION Reactor_Services
|
||||
|
||||
$INSERT OIPRINT_EQUATES
|
||||
$INSERT INVOICE_EQU
|
||||
$INSERT APPCOLORS
|
||||
$INSERT MSG_EQUATES
|
||||
|
||||
|
||||
EQU TAB$ TO \09\
|
||||
EQU TARGET_ACTIVELIST$ TO 5
|
||||
Equ BASE_NUM_COLS$ to 9
|
||||
Equ REPORT_WIDTH$ to 14670
|
||||
EQU TAB$ TO \09\
|
||||
EQU TARGET_ACTIVELIST$ TO 5
|
||||
|
||||
ErrorTitle = 'Error in stored procedure Print_Reactor_Maint'
|
||||
|
||||
@ -32,23 +34,24 @@ OPEN 'DICT.REACTOR_LOG' TO @DICT ELSE
|
||||
RETURN
|
||||
END
|
||||
|
||||
|
||||
Params = Dialog_Box( 'REACTOR_LOG_SRPT1', @WINDOW, '*CENTER' )
|
||||
|
||||
IF Params = 'CANCEL' OR Params = '' THEN
|
||||
RETURN
|
||||
END
|
||||
|
||||
|
||||
CONVERT '*' TO @FM IN Params
|
||||
|
||||
StartDateFrom = Params<1>
|
||||
StartDateThru = Params<2>
|
||||
Reactors = Params<3>
|
||||
ProblemCats = Params<4>
|
||||
ServiceIDs = Params<5>
|
||||
|
||||
WithStmt = ''
|
||||
StartDateFrom = Params<1>
|
||||
StartDateThru = Params<2>
|
||||
Reactors = Params<3>
|
||||
ProblemCats = Params<4>
|
||||
ServiceIDs = Params<5>
|
||||
PSNs = Params<6>
|
||||
IncludeReactItemIds = Params<7>
|
||||
IncludeInjSettings = Params<8>
|
||||
IncludeReactRatios = Params<9>
|
||||
WithStmt = ''
|
||||
|
||||
IF StartDateFrom AND StartDateThru THEN
|
||||
WithStmt:= 'WITH START_DATE FROM "':StartDateFrom:'" TO "':StartDateThru:'"'
|
||||
@ -79,6 +82,12 @@ IF ServiceIDs <> '' THEN
|
||||
WithStmt :=' AND WITH REACT_SERV_ID = ':ServiceIDs
|
||||
END
|
||||
|
||||
IF PSNs <> '' THEN
|
||||
SWAP @VM WITH "' '" IN PSNs
|
||||
PSNs = "'":PSNs:"'"
|
||||
WithStmt :=' AND WITH PROD_SPEC_NO = ':PSNs
|
||||
END
|
||||
|
||||
IF Reactors <> '' THEN
|
||||
SWAP "'" WITH '' IN Reactors
|
||||
SWAP " " WITH ", " IN Reactors
|
||||
@ -120,9 +129,9 @@ PageInfo<7> = LETTER ;* Pagesize
|
||||
|
||||
PageSetup = '1' ;* Landscape = 1
|
||||
PrintSetup = '2' ;* Preview Normal
|
||||
PrintPath = Printer_Select()
|
||||
PrintSetup<1, 2> = 0
|
||||
|
||||
If PrintPath EQ '' then return
|
||||
PrintPath = ''
|
||||
|
||||
stat = Set_Printer('INIT',FileName,Title,PageInfo,PageSetup,PrintSetup,PrintPath)
|
||||
IF stat < 0 THEN GOTO OIPrintErr
|
||||
@ -151,18 +160,41 @@ FirstPass = 1
|
||||
LastRecord = 0
|
||||
FirstLine = 1
|
||||
|
||||
* Make Column Heading
|
||||
NumCols = BASE_NUM_COLS$
|
||||
// 14670 width to work with
|
||||
|
||||
colHead = '' ; colFmt = ''
|
||||
colHead<1,1> = 'R' ; colFmt<1,1> = '^360'
|
||||
colHead<1,2> = 'Problem Cat Desc' ; colFmt<1,2> = '<1800'
|
||||
colHead<1,3> = 'Serv':CRLF$:'ID' ; colFmt<1,3> = '^540'
|
||||
colHead<1,4> = 'Reactor Svc Desc' ; colFmt<1,4> = '<3600'
|
||||
colHead<1,5> = 'Tech' ; colFmt<1,5> = '^1080'
|
||||
colHead<1,6> = 'Reactor Item ID' ; colFmt<1,6> = '<2160'
|
||||
colHead<1,7> = 'Notes' ; colFmt<1,7> = '<3600'
|
||||
colHead<1,8> = 'Start' ; colFmt<1,8> = '^810'
|
||||
colHead<1,9> = 'Hrs' ; colFmt<1,9> = '>720'
|
||||
* Make Column Heading
|
||||
If IncludeReactItemIds then
|
||||
NumCols += 1
|
||||
end
|
||||
|
||||
If IncludeInjSettings then
|
||||
NumCols += 1
|
||||
end
|
||||
|
||||
If IncludeReactRatios then
|
||||
NumCols += 1
|
||||
end
|
||||
|
||||
colHead = '' ; colFmt = ''
|
||||
colHead<1,-1> = 'R' ; colFmt<1,-1> = '^':(REPORT_WIDTH$ * (.050 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'PSN' ; colFmt<1,-1> = '^':(REPORT_WIDTH$ * (.049 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Problem Cat Desc' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * (.117 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Serv':CRLF$:'ID' ; colFmt<1,-1> = '^':(REPORT_WIDTH$ * (.073 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Reactor Svc Desc' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * (.258 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Tech' ; colFmt<1,-1> = '^':(REPORT_WIDTH$ * (.068 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
If IncludeReactItemIds then
|
||||
colHead<1,-1> = 'Reactor Item ID' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * ( 1 / NumCols) )
|
||||
end
|
||||
If IncludeInjSettings then
|
||||
colHead<1,-1> = 'Inj Settings' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * ( 1 / NumCols) - 50 )
|
||||
end
|
||||
If IncludeReactRatios then
|
||||
colHead<1,-1> = 'Ratios' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * ( 1 / NumCols) + 150 )
|
||||
end
|
||||
colHead<1,-1> = 'Notes' ; colFmt<1,-1> = '<':(REPORT_WIDTH$ * (.248 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Start' ; colFmt<1,-1> = '^':(REPORT_WIDTH$ * (.079 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
colHead<1,-1> = 'Hrs' ; colFmt<1,-1> = '>':(REPORT_WIDTH$ * (.043 * (BASE_NUM_COLS$ / NumCols) ) )
|
||||
|
||||
* Zero Accumulators For Each Break
|
||||
|
||||
@ -207,26 +239,45 @@ END
|
||||
@RECCOUNT += 1
|
||||
|
||||
* CALCULATE VALUE(S) FOR COLUMN(S)
|
||||
|
||||
S.ATID = {@ID}
|
||||
|
||||
S.Reactor={REACTOR}
|
||||
|
||||
S.React_Prob_Cat_Desc = {REACT_PROB_CAT_DESC}
|
||||
S.React_Serv_ID = {REACT_SERV_ID}
|
||||
S.React_Serv_Desc = {REACT_SERV_DESC}
|
||||
S.Tech = {TECH_SIG}
|
||||
S.Notes = {NOTES}
|
||||
S.StartDTM = OCONV({START_DATE},'D2/'):' ':OCONV({START_TIME},'MTS')
|
||||
S.Elapsed_Hours = {ELAPSED_HOURS}
|
||||
S.React_Item_IDS = {REACT_ITEM_IDS}
|
||||
|
||||
S.Reactor = {REACTOR}
|
||||
S.PSN = {PROD_SPEC_NO}
|
||||
S.React_Prob_Cat_Desc = {REACT_PROB_CAT_DESC}
|
||||
S.React_Serv_ID = {REACT_SERV_ID}
|
||||
S.React_Serv_Desc = {REACT_SERV_DESC}
|
||||
S.Tech = {TECH_SIG}
|
||||
S.Notes = {NOTES}
|
||||
S.StartDTM = OCONV({START_DATE},'D2/'):' ':OCONV({START_TIME},'MTS')
|
||||
S.Elapsed_Hours = {ELAPSED_HOURS}
|
||||
S.React_Item_IDS = {REACT_ITEM_IDS}
|
||||
Push.Select(f1, f2, f3, f4)
|
||||
S.InjSettings = ''
|
||||
InjSettings = OConv(Reactor_Services('GetInjectorSettingsByReactorLog', @ID), 'MD3,')
|
||||
NumSettings = DCount(InjSettings, @VM)
|
||||
If NumSettings GT 0 then
|
||||
For SettingIndex = 1 to NumSettings
|
||||
S.InjSettings<0, SettingIndex> = 'Inj ':SettingIndex:': ':InjSettings<0, SettingIndex>
|
||||
Next SettingIndex
|
||||
end
|
||||
Pop.Select(f1, f2, f3, f4)
|
||||
Push.Select(f1, f2, f3, f4)
|
||||
S.ReactorRatios = ''
|
||||
ReactorRatios = OConv(Reactor_Services('GetRatiosByReactorLog', @ID), 'MD3,')
|
||||
NumRatios = DCount(ReactorRatios, @VM)
|
||||
If NumRatios GT 0 then
|
||||
For RatioIndex = 1 to NumRatios
|
||||
S.ReactorRatios<0, RatioIndex> = 'Ratio ':RatioIndex:': ':ReactorRatios<0, RatioIndex>
|
||||
Next RatioIndex
|
||||
end
|
||||
Pop.Select(f1, f2, f3, f4)
|
||||
SWAP @VM WITH CRLF$ IN S.React_Prob_Cat_Desc
|
||||
SWAP @VM WITH CRLF$ IN S.React_Serv_ID
|
||||
SWAP @VM WITH CRLF$ IN S.React_Serv_Desc
|
||||
SWAP @VM WITH CRLF$ IN S.Notes
|
||||
SWAP @VM WITH CRLF$ IN S.React_Item_IDS
|
||||
|
||||
SWAP @VM WITH CRLF$ IN S.InjSettings
|
||||
SWAP @VM WITH CRLF$ IN S.ReactorRatios
|
||||
|
||||
* TEST FOR CONTROL BREAK(S)
|
||||
|
||||
@ -277,10 +328,6 @@ IF LastRecord THEN
|
||||
|
||||
GOSUB PrintTable
|
||||
|
||||
*status = Set_Printer('TEXT','')
|
||||
*status = Set_Printer('TEXT',@RECCOUNT:' Records Processed')
|
||||
|
||||
|
||||
GOTO Bail
|
||||
|
||||
END
|
||||
@ -301,16 +348,25 @@ END
|
||||
|
||||
* Print Detail Line
|
||||
|
||||
colData = ""
|
||||
colData<1,1> = S.Reactor
|
||||
colData<1,2> = S.React_Prob_Cat_Desc
|
||||
colData<1,3> = S.React_Serv_ID
|
||||
colData<1,4> = S.React_Serv_Desc
|
||||
colData<1,5> = S.Tech
|
||||
colData<1,6> = S.React_Item_IDS
|
||||
colData<1,7> = S.Notes
|
||||
colData<1,8> = S.StartDTM
|
||||
colData<1,9> = OCONV(S.Elapsed_Hours,'MD2')
|
||||
colData = ""
|
||||
colData<1,-1> = S.Reactor
|
||||
colData<1,-1> = S.PSN
|
||||
colData<1,-1> = S.React_Prob_Cat_Desc
|
||||
colData<1,-1> = S.React_Serv_ID
|
||||
colData<1,-1> = S.React_Serv_Desc
|
||||
colData<1,-1> = S.Tech
|
||||
If IncludeReactItemIds then
|
||||
colData<1,-1> = S.React_Item_IDS
|
||||
end
|
||||
If IncludeInjSettings then
|
||||
colData<1,-1> = S.InjSettings
|
||||
end
|
||||
If IncludeReactRatios then
|
||||
colData<1,-1> = S.ReactorRatios
|
||||
end
|
||||
colData<1,-1> = S.Notes
|
||||
colData<1,-1> = S.StartDTM
|
||||
colData<1,-1> = OCONV(S.Elapsed_Hours,'MD2')
|
||||
|
||||
GOSUB PrintTable
|
||||
|
||||
@ -342,7 +398,6 @@ RETURN
|
||||
PrintTable:
|
||||
* * * * * *
|
||||
|
||||
|
||||
stat = Set_Printer('CALCTABLE',colFmt:@FM:colData)
|
||||
TableSize = Get_Printer('CALCTABLE')
|
||||
TableHeight = TableSize<2>
|
||||
@ -375,278 +430,3 @@ END
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
/*
|
||||
|
||||
* ZERO ACCUMULATORS FOR EACH BREAK
|
||||
|
||||
Elapsed_Hours.Reactor.Total=0
|
||||
Elapsed_Hours.Reactor.Count=0
|
||||
Elapsed_Hours.Grand.Total=0
|
||||
Elapsed_Hours.Grand.Count=0
|
||||
|
||||
* NULL PREVIOUS BREAK BUCKETS
|
||||
|
||||
Prev.Reactor=''
|
||||
Last.Reactor.Break = 1
|
||||
|
||||
* * * * * * *
|
||||
READRECORD:
|
||||
* * * * * * *
|
||||
|
||||
IF @RECCOUNT GE 10 THEN
|
||||
Last.Record=1
|
||||
Reactor.Break=1
|
||||
REACTOR=Prev.Reactor
|
||||
REACTOR=Prev.Reactor
|
||||
GOTO BREAKS
|
||||
END
|
||||
*
|
||||
*
|
||||
* ZERO BREAK FLAGS TO FALSE
|
||||
*
|
||||
Reactor.Break=0
|
||||
*
|
||||
*
|
||||
READNEXT @ID, WHICH.VALUE ELSE
|
||||
IF STATUS() GT 0 THEN
|
||||
STATX = SET_FSERROR()
|
||||
RETURN
|
||||
END
|
||||
IF @FILE.ERROR<1> EQ 421 THEN
|
||||
STATX = SET_FSERROR()
|
||||
GOTO READRECORD
|
||||
END
|
||||
IF @FILE.ERROR<1> NE 111 THEN
|
||||
@ANS = @FILE.ERROR<1>
|
||||
STATX = SEND_DYN( {RLIST_TEXT_4} )
|
||||
READERR += 1
|
||||
GOTO READRECORD
|
||||
END
|
||||
Last.Record=1
|
||||
Reactor.Break=1
|
||||
REACTOR=Prev.Reactor
|
||||
END
|
||||
@FILE.ERROR.MODE=0
|
||||
|
||||
S.ATID = @ID
|
||||
|
||||
IF FirstPass AND Last.Record THEN
|
||||
STATX = SEND_DYN( {RLIST_TEXT_2} )
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF Last.Record THEN GOTO BREAKS
|
||||
|
||||
IF @REDUCTION.DONE THEN
|
||||
READO @RECORD FROM FILE.IN, @ID ELSE
|
||||
@FILE.ERROR.MODE = 0
|
||||
IF STATUS() GT 0 THEN
|
||||
STATX = SET_FSERROR()
|
||||
RETURN
|
||||
END
|
||||
IF @FILE.ERROR<1> NE 100 THEN
|
||||
READERR += 1
|
||||
END
|
||||
GOTO READRECORD
|
||||
END
|
||||
END
|
||||
|
||||
@RECCOUNT += 1
|
||||
|
||||
|
||||
* CALCULATE VALUE(S) FOR COLUMN(S)
|
||||
|
||||
S.ATID={@ID}
|
||||
I.ATID=S.ATID
|
||||
S.Reactor={REACTOR}
|
||||
I.Reactor=S.Reactor
|
||||
S.Reactor1={REACTOR}
|
||||
I.Reactor1=S.Reactor1
|
||||
M.REACT_PROB_CAT_DESC={REACT_PROB_CAT_DESC}<1,WHICH.VALUE> ; P.REACT_PROB_CAT_DESC=1 ; C.REACT_PROB_CAT_DESC=7
|
||||
|
||||
* INITIALIZE MULTIVALUE BREAK CHECK VARIABLE
|
||||
|
||||
S.REACT_PROB_CAT_DESC = M.REACT_PROB_CAT_DESC
|
||||
M.REACT_SERV_ID={REACT_SERV_ID}<1,WHICH.VALUE> ; P.REACT_SERV_ID=1 ; C.REACT_SERV_ID=7
|
||||
|
||||
* INITIALIZE MULTIVALUE BREAK CHECK VARIABLE
|
||||
|
||||
S.REACT_SERV_ID = M.REACT_SERV_ID
|
||||
M.REACT_SERV_DESC={REACT_SERV_DESC}<1,WHICH.VALUE> ; P.REACT_SERV_DESC=1 ; C.REACT_SERV_DESC=7
|
||||
|
||||
* INITIALIZE MULTIVALUE BREAK CHECK VARIABLE
|
||||
|
||||
S.REACT_SERV_DESC = M.REACT_SERV_DESC
|
||||
S.TECH_SIG={TECH_SIG}
|
||||
I.TECH_SIG=S.TECH_SIG
|
||||
M.NOTES=FMT({NOTES},"T#20") ; P.NOTES=1 ; C.NOTES=7
|
||||
|
||||
* INITIALIZE TEXT BREAK CHECK VARIABLE(S)
|
||||
|
||||
S.NOTES = M.NOTES
|
||||
S.START_DATE={START_DATE}
|
||||
I.START_DATE=S.START_DATE
|
||||
S.Elapsed_Hours={Elapsed_Hours}
|
||||
I.Elapsed_Hours=S.Elapsed_Hours
|
||||
|
||||
PREVIOUS.MARK.LEVEL=0
|
||||
|
||||
* TEST FOR CONTROL BREAK(S)
|
||||
|
||||
IF (S.Reactor NE Prev.Reactor) OR Reactor.Break THEN
|
||||
REACTOR=Prev.Reactor
|
||||
Prev.Reactor=S.Reactor
|
||||
Reactor.Break+=1
|
||||
END
|
||||
|
||||
|
||||
IF FirstPass THEN
|
||||
FirstPass=0
|
||||
GOTO DETAIL
|
||||
END
|
||||
|
||||
* * * * * *
|
||||
BREAKS:
|
||||
* * * * * *
|
||||
|
||||
* PRINT BREAK TOTAL(S) AND ACCUMULATE TOTAL(S)
|
||||
|
||||
IF Reactor.Break THEN
|
||||
STATX = SEND_DYN("")
|
||||
PRINTLINE = ""
|
||||
PRINTLINE := FMT("***" : "", "R#14") : TAB$
|
||||
|
||||
PRINTLINE := SPACE(14) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(24) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(14) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
|
||||
PRINTLINE := SPACE(11) : TAB$
|
||||
|
||||
PRINTLINE := FMT(OCONV(Elapsed_Hours.Reactor.Total ,"MD2") , "R#16")
|
||||
STATX = SEND_DYN( PRINTLINE )
|
||||
STATX = SEND_DYN("")
|
||||
|
||||
Elapsed_Hours.Grand.Total+=Elapsed_Hours.Reactor.Total
|
||||
Elapsed_Hours.Reactor.Total=0
|
||||
Elapsed_Hours.Grand.Count+=Elapsed_Hours.Reactor.Count
|
||||
Elapsed_Hours.Reactor.Count=0
|
||||
END
|
||||
|
||||
* PERFORM LAST RECORD OUTPUT IF DONE
|
||||
|
||||
IF Last.Record THEN
|
||||
STATX = SEND_DYN("")
|
||||
PRINTLINE = ""
|
||||
PRINTLINE := FMT("***" : "", "R#14") : TAB$
|
||||
PRINTLINE := SPACE(14) : TAB$
|
||||
PRINTLINE := SPACE(24) : TAB$
|
||||
PRINTLINE := SPACE(14) : TAB$
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
PRINTLINE := SPACE(20) : TAB$
|
||||
PRINTLINE := SPACE(11) : TAB$
|
||||
PRINTLINE := FMT(OCONV(Elapsed_Hours.Grand.Total ,"MD2") , "R#16")
|
||||
STATX = SEND_DYN( PRINTLINE )
|
||||
STATX = SEND_DYN("")
|
||||
@ANS=@RECCOUNT
|
||||
STATX = SEND_DYN( {RLIST_TEXT_1} )
|
||||
IF READERR THEN
|
||||
@ANS=READERR
|
||||
STATX = SEND_DYN( {RLIST_TEXT_3} )
|
||||
END
|
||||
RETURN
|
||||
END
|
||||
|
||||
* * * * * * *
|
||||
DETAIL:
|
||||
* * * * * * *
|
||||
|
||||
* REMOVE APPROPRIATE VALUE FROM MULTI-VALUED COLUMN(S)
|
||||
|
||||
NEW.MARK.LEVEL=0
|
||||
|
||||
IF C.REACT_PROB_CAT_DESC GE PREVIOUS.MARK.LEVEL THEN
|
||||
REMOVE I.REACT_PROB_CAT_DESC FROM M.REACT_PROB_CAT_DESC AT P.REACT_PROB_CAT_DESC SETTING C.REACT_PROB_CAT_DESC
|
||||
S.REACT_PROB_CAT_DESC=I.REACT_PROB_CAT_DESC
|
||||
END
|
||||
IF C.REACT_PROB_CAT_DESC GT NEW.MARK.LEVEL THEN NEW.MARK.LEVEL=C.REACT_PROB_CAT_DESC
|
||||
|
||||
IF C.REACT_SERV_ID GE PREVIOUS.MARK.LEVEL THEN
|
||||
REMOVE I.REACT_SERV_ID FROM M.REACT_SERV_ID AT P.REACT_SERV_ID SETTING C.REACT_SERV_ID
|
||||
S.REACT_SERV_ID=I.REACT_SERV_ID
|
||||
END
|
||||
IF C.REACT_SERV_ID GT NEW.MARK.LEVEL THEN NEW.MARK.LEVEL=C.REACT_SERV_ID
|
||||
|
||||
IF C.REACT_SERV_DESC GE PREVIOUS.MARK.LEVEL THEN
|
||||
REMOVE I.REACT_SERV_DESC FROM M.REACT_SERV_DESC AT P.REACT_SERV_DESC SETTING C.REACT_SERV_DESC
|
||||
S.REACT_SERV_DESC=I.REACT_SERV_DESC
|
||||
END
|
||||
IF C.REACT_SERV_DESC GT NEW.MARK.LEVEL THEN NEW.MARK.LEVEL=C.REACT_SERV_DESC
|
||||
|
||||
IF C.NOTES GE PREVIOUS.MARK.LEVEL THEN
|
||||
REMOVE I.NOTES FROM M.NOTES AT P.NOTES SETTING C.NOTES
|
||||
S.NOTES=I.NOTES
|
||||
END
|
||||
IF C.NOTES GT NEW.MARK.LEVEL THEN NEW.MARK.LEVEL=C.NOTES
|
||||
|
||||
|
||||
* DO CONVERSIONS IF ANY
|
||||
|
||||
IF S.Reactor NE "" THEN S.Reactor=OCONV(S.Reactor,"MD0")
|
||||
IF S.Reactor1 NE "" THEN S.Reactor1=OCONV(S.Reactor1,"MD0")
|
||||
IF S.REACT_SERV_ID NE "" THEN S.REACT_SERV_ID=OCONV(S.REACT_SERV_ID,"MD0")
|
||||
IF S.START_DATE NE "" THEN S.START_DATE=OCONV(S.START_DATE,"D2/")
|
||||
IF S.Elapsed_Hours NE "" THEN S.Elapsed_Hours=OCONV(S.Elapsed_Hours,"MD2")
|
||||
|
||||
* ACCUMULATE TOTAL(S)
|
||||
|
||||
IF NUM(I.Elapsed_Hours) AND I.Elapsed_Hours NE "" THEN
|
||||
Elapsed_Hours.Reactor.Total+=I.Elapsed_Hours
|
||||
Elapsed_Hours.Reactor.Count+=1
|
||||
I.Elapsed_Hours=''
|
||||
END
|
||||
|
||||
* PRINT DETAIL LINE
|
||||
|
||||
PRINTLINE = ""
|
||||
PRINTLINE := FMT( S.Reactor, "R#14") : TAB$
|
||||
PRINTLINE := FMT( S.Reactor1, "R#14") : TAB$
|
||||
PRINTLINE := FMT( S.REACT_PROB_CAT_DESC, "L#24") : TAB$
|
||||
PRINTLINE := FMT( S.REACT_SERV_ID, "R#14") : TAB$
|
||||
PRINTLINE := FMT( S.REACT_SERV_DESC, "L#20") : TAB$
|
||||
PRINTLINE := FMT( S.TECH_SIG, "L#20") : TAB$
|
||||
PRINTLINE := FMT( S.NOTES, "L#20") : TAB$
|
||||
PRINTLINE := FMT( S.START_DATE, "R#11") : TAB$
|
||||
PRINTLINE := FMT( S.Elapsed_Hours, "R#16")
|
||||
STATX = SEND_DYN( PRINTLINE )
|
||||
|
||||
IF NEW.MARK.LEVEL THEN
|
||||
S.Reactor=''
|
||||
S.Reactor1=''
|
||||
S.REACT_PROB_CAT_DESC=''
|
||||
S.REACT_SERV_ID=''
|
||||
S.REACT_SERV_DESC=''
|
||||
S.TECH_SIG=''
|
||||
S.NOTES=''
|
||||
S.START_DATE=''
|
||||
S.Elapsed_Hours=''
|
||||
PREVIOUS.MARK.LEVEL=NEW.MARK.LEVEL
|
||||
GOTO DETAIL
|
||||
END
|
||||
|
||||
GOTO READRECORD
|
||||
|
||||
END
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
@ -165,7 +165,7 @@ Event WINDOW.OMNIEVENT(Message, Param1, Param2, Param3, Param4)
|
||||
CtrlMap = Get_Property(@Window, 'CTRLMAP')
|
||||
For each Ctrl in CtrlMap using @FM setting fPos
|
||||
CtrlType = Get_Property(Ctrl, 'TYPE')
|
||||
If Not( (Ctrl EQ @Window:'.OLE_EDT_NOTES') or (Ctrl EQ @Window:'.PUB_ADD_COMMENT') or (Ctrl EQ @Window:'.NEW_BUTTON') or (Ctrl EQ @Window:'.PRINT_ROOT_CAUSE') or (Ctrl EQ @Window:'.BUTTON_18') or (Ctrl EQ @Window:'.LU_RL_NO') or (CtrlType EQ 'STATIC') or (Ctrl EQ @Window:'.TECH_SIGN') or (CtrlType EQ 'WINDOW') or (Ctrl EQ @Window:'.PHX_BTN_CLEAR') or (Ctrl EQ @Window:'.TAB') or (IndexC(Ctrl, 'QBF', 1) GT 0) or (Ctrl EQ @Window:'.REACTOR_LOG_NO') or (CtrlType EQ 'GROUPBOX') ) then
|
||||
If Not( (Ctrl EQ @Window:'.OLE_EDT_NOTES') or (Ctrl EQ @Window:'.PUB_ADD_COMMENT') or (Ctrl EQ @Window:'.NEW_BUTTON') or (Ctrl EQ @Window:'.PRINT_ROOT_CAUSE') or (Ctrl EQ @Window:'.BUTTON_18') or (Ctrl EQ @Window:'.LU_RL_NO') or (CtrlType EQ 'STATIC') or (Ctrl EQ @Window:'.TECH_SIGN') or (CtrlType EQ 'WINDOW') or (Ctrl EQ @Window:'.PHX_BTN_CLEAR') or (Ctrl EQ @Window:'.TAB') or (IndexC(Ctrl, 'QBF', 1) GT 0) or (Ctrl EQ @Window:'.REACTOR_LOG_NO') or (CtrlType EQ 'GROUPBOX') or (Ctrl EQ @Window:'.INJ_SETTING_HIST') or (Ctrl EQ @Window:'.PUB_RATIO_HISTORY') ) then
|
||||
Set_Property(Ctrl, 'ENABLED', (Signature EQ ''))
|
||||
end
|
||||
Next Ctrl
|
||||
@ -281,3 +281,4 @@ UpdateNotes:
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
@ -184,17 +184,17 @@ Service SignReactorLog(ReactorLogID, UserID)
|
||||
end
|
||||
If ErrorMsg EQ '' then
|
||||
// Check if injector settings have been entered
|
||||
ReactInjSetting = ReactorLogRec<REACTOR_LOG_INJ_SETTING$>
|
||||
If ReactInjSetting NE '' then
|
||||
plParms = 'REACT_STATE':@RM
|
||||
plParms := ReactorNo:@RM
|
||||
plParms := REACT_STATE_CURR_INJ_RL_ID$:@RM
|
||||
plParms := ReactorLogID:@RM
|
||||
obj_Post_Log('Create',plParms)
|
||||
If Get_Status(ErrCode) then
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling obj_Post_Log("Create"). Error code: ':ErrCode:'.'
|
||||
end
|
||||
end
|
||||
* ReactInjSetting = ReactorLogRec<REACTOR_LOG_INJ_SETTING$>
|
||||
* If ReactInjSetting NE '' then
|
||||
* plParms = 'REACT_STATE':@RM
|
||||
* plParms := ReactorNo:@RM
|
||||
* plParms := REACT_STATE_CURR_INJ_RL_ID$:@RM
|
||||
* plParms := ReactorLogID:@RM
|
||||
* obj_Post_Log('Create',plParms)
|
||||
* If Get_Status(ErrCode) then
|
||||
* ErrorMsg = 'Error in ':Service:' service. Error calling obj_Post_Log("Create"). Error code: ':ErrCode:'.'
|
||||
* end
|
||||
* end
|
||||
If ErrorMsg EQ '' then
|
||||
// Check reactor prevent maintenance records
|
||||
CurServices = ReactorLogRec<REACTOR_LOG_REACT_SERV_ID$>
|
||||
@ -974,3 +974,4 @@ ClearCursors:
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
@ -167,3 +167,4 @@ write '' on SysListsTable, ListsId else
|
||||
end
|
||||
return 0
|
||||
|
||||
|
||||
|
@ -55,8 +55,12 @@ $Insert IQS_VIOL_DATA_EQUATES
|
||||
$Insert FEATURE_FLAGS_EQUATES
|
||||
$Insert REACT_PROB_CAT_EQUATES
|
||||
$Insert NICA_ORDERS_EQUATES
|
||||
$Insert REACTOR_INJECTOR_SETTINGS_EQUATES
|
||||
$Insert REACTOR_RATIOS_EQUATES
|
||||
$Insert REACT_STATE_EQUATES
|
||||
|
||||
Equ WOCust$ to 2
|
||||
Equ WOCust$ to 2
|
||||
Equ SECONDS_IN_DAY$ to 86400
|
||||
|
||||
// Uptime Percentage Equates
|
||||
Equ PRODUCTIVE$ to 1
|
||||
@ -68,13 +72,13 @@ Equ ENG$ to 5
|
||||
Declare subroutine Error_Services, Reactor_Services, Memory_Services, RList, Database_Services, SRP_JSON
|
||||
Declare subroutine Excel_Services, Schedule_Services, Logging_Services, Set_Status, obj_React_Status, Errmsg
|
||||
Declare subroutine Obj_Notes, Btree.Extract, SRP_Fastarray, Delay, Mona_Services, SRP_List, Msg, Rds_Services
|
||||
Declare subroutine React_Assign_Conv, Nica_Orders_Services, obj_React_Mode, Reactor_Log_Services
|
||||
Declare subroutine React_Assign_Conv, Nica_Orders_Services, obj_React_Mode, Reactor_Log_Services, obj_Post_Log
|
||||
Declare function SRP_Array, Reactor_Services, Memory_Services, Database_Services, SRP_Sort_Array, Excel_Services
|
||||
Declare function SRP_Math, SRP_Hash, SRP_JSON, Epi_Part_Services, Schedule_Services, Date_Services, Environment_Services
|
||||
Declare function Logging_Services, GetCommandLine, NextKey, Reactor_Log_Services, SRP_DateTime, ole_getwebpage
|
||||
Declare function Datetime, Reactor_Modes_Services, Work_Order_Services, React_Mode_NG_Services, Lsl_Users_Services
|
||||
Declare function SRP_Time, Rds_Services, SRP_Fastarray, Httpclient_Services, SRP_List, Utility, Memberof, Error_Services
|
||||
Declare function Nica_Orders_Services, Max
|
||||
Declare function Nica_Orders_Services, Max, RTI_CreateGUID
|
||||
|
||||
// Report paths for various performance report services.
|
||||
TemplatesFolder = Environment_Services('GetApplicationRootPath') : '\Reports\Scheduler\Templates\'
|
||||
@ -2116,6 +2120,15 @@ Service CreateReactModeChange(UserID, ReactNo, Mode, ModeSubCat, ModeText, Force
|
||||
RLRec<reactor_log_react_util_id$> = NewRUKey
|
||||
RLRec<reactor_log_react_prob_cat_id$> = ModeSubCatID
|
||||
|
||||
CurrWoNo = Xlate('CONFIG', 'WO_DAILY_SCHED':ReactNo, 'F2', 'X')
|
||||
CurrWoNo = CurrWoNo[1, 'F ']
|
||||
If CurrWoNo NE '' then
|
||||
CurrPSNo = Xlate('WO_LOG', CurrWoNo, 'PS_NO', 'X')
|
||||
end else
|
||||
CurrPSNo = ''
|
||||
end
|
||||
RLRec<REACTOR_LOG_PROD_SPEC_NO$> = CurrPSNo
|
||||
|
||||
Database_Services('WriteDataRow', 'REACTOR_LOG', NewRLKey, RLRec)
|
||||
If Error_Services('NoError') then
|
||||
Database_Services('WriteDataRow', 'REACT_UTIL', NewRUKey, RUtilRec)
|
||||
@ -3738,6 +3751,7 @@ Service GetActiveProveInProgresses(ReactNo)
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetActiveProveInOrderIds(ReactNo)
|
||||
|
||||
If ReactNo NE '' then
|
||||
@ -3760,6 +3774,495 @@ Service GetIdleStartupRequired(ReactNo)
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetCurrentInjectorSettings(ReactorNo)
|
||||
|
||||
ErrorMsg = ''
|
||||
CurrInjSettings = ''
|
||||
If ReactorNo NE '' then
|
||||
If RowExists('REACTOR', ReactorNo) then
|
||||
Open 'DICT.REACTOR_INJECTOR_SETTINGS' to hDict then
|
||||
Query = 'REACTOR_NO':@VM:ReactorNo:@FM
|
||||
Query := 'ACTIVE':@VM:True$:@FM
|
||||
KeyList = ''
|
||||
Option = 'E'
|
||||
Flag = ''
|
||||
Btree.Extract(Query, 'REACTOR_INJECTOR_SETTINGS', hDict, KeyList, Option, Flag)
|
||||
If Flag EQ 0 then
|
||||
Begin Case
|
||||
Case DCount(KeyList, @VM) EQ 0
|
||||
CurrInjSettings<0, 1> = ''
|
||||
CurrInjSettings<0, 2> = ''
|
||||
CurrInjSettings<0, 3> = ''
|
||||
CurrInjSettings<0, 4> = ''
|
||||
CurrInjSettings<0, 5> = ''
|
||||
Case DCount(KeyList, @VM) EQ 1
|
||||
SettingsRec = Database_Services('ReadDataRow', 'REACTOR_INJECTOR_SETTINGS', KeyList)
|
||||
If Error_Services('NoError') then
|
||||
CurrInjSettings<0, 1> = SettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_1$>
|
||||
CurrInjSettings<0, 2> = SettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_2$>
|
||||
CurrInjSettings<0, 3> = SettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_3$>
|
||||
CurrInjSettings<0, 4> = SettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_4$>
|
||||
CurrInjSettings<0, 5> = SettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_5$>
|
||||
end
|
||||
Case DCount(KeyList, @VM) GT 1
|
||||
ErrorMsg = 'Error in ':Service:' service. Multiple active REACTOR_INJECTOR_SETTINGS records returned.'
|
||||
End Case
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling Btree.Extract.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening DICT.REACTOR_INJECTOR_SETTINGS.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR, ':ReactorNo:', does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorNo passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = CurrInjSettings
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetCurrentRatios(ReactorNo)
|
||||
|
||||
ErrorMsg = ''
|
||||
CurrRatios = ''
|
||||
If ReactorNo NE '' then
|
||||
If RowExists('REACTOR', ReactorNo) then
|
||||
Open 'DICT.REACTOR_RATIOS' to hDict then
|
||||
Query = 'REACTOR_NO':@VM:ReactorNo:@FM
|
||||
Query := 'ACTIVE':@VM:True$:@FM
|
||||
KeyList = ''
|
||||
Option = 'E'
|
||||
Flag = ''
|
||||
Btree.Extract(Query, 'REACTOR_RATIOS', hDict, KeyList, Option, Flag)
|
||||
If Flag EQ 0 then
|
||||
NumRatios = ''
|
||||
ReactorType = Xlate('REACTOR', ReactorNo, REACTOR_REACT_TYPE$, 'X')
|
||||
Begin Case
|
||||
Case ReactorNo EQ 73
|
||||
// OpenInsight needs to be updated to support reactor type HTR+, which requires 16 ratios.
|
||||
NumRatios = 16
|
||||
Case ReactorType EQ 'ASM' or ReactorType EQ 'ASM+'
|
||||
NumRatios = 10
|
||||
Case ReactorType EQ 'HTR'
|
||||
NumRatios = 12
|
||||
Case Otherwise$
|
||||
ErrorMsg = 'Error in ':Service:' service. Error determining number '
|
||||
ErrorMsg := 'of Ratios required for reactor ':ReactorNo:'.'
|
||||
End Case
|
||||
If ErrorMsg EQ '' then
|
||||
Begin Case
|
||||
Case DCount(KeyList, @VM) EQ 0
|
||||
For RatioIndex = 1 to NumRatios
|
||||
CurrRatios<0, RatioIndex> = ''
|
||||
Next RatioIndex
|
||||
Case DCount(KeyList, @VM) EQ 1
|
||||
SettingsRec = Database_Services('ReadDataRow', 'REACTOR_RATIOS', KeyList)
|
||||
If Error_Services('NoError') then
|
||||
For RatioIndex = 0 to (NumRatios - 1)
|
||||
CurrRatios<0, RatioIndex + 1> = SettingsRec<REACTOR_RATIOS.RATIO_1$ + RatioIndex>
|
||||
Next RatioIndex
|
||||
end
|
||||
Case DCount(KeyList, @VM) GT 1
|
||||
ErrorMsg = 'Error in ':Service:' service. Multiple active REACTOR_RATIOS records returned.'
|
||||
End Case
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling Btree.Extract.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening DICT.REACTOR_RATIOS.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR, ':ReactorNo:', does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorNo passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = CurrRatios
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetRatiosByReactorLog(ReactorLogId)
|
||||
|
||||
RatiosKey = ''
|
||||
Ratios = ''
|
||||
ErrorMsg = ''
|
||||
ReactorNo = ''
|
||||
If ReactorLogId NE '' then
|
||||
If RowExists('REACTOR_LOG', ReactorLogId) then
|
||||
Query = 'SELECT REACTOR_RATIOS WITH REACTOR_LOG_ID EQ ':Quote(ReactorLogId)
|
||||
Query := ' BY-DSND RATIO_SET_DTM'
|
||||
RList(Query, TARGET_ACTIVELIST$)
|
||||
ErrCode = ''
|
||||
If Not(Get_Status(ErrCode)) then
|
||||
If @RecCount GT 0 then
|
||||
ReadNext RatiosKey else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error looking up reactor '
|
||||
ErrorMsg := 'ratios associated with REACTOR_LOG ':ReactorLogId:'.'
|
||||
end
|
||||
ClearSelect TARGET_ACTIVELIST$
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error looking up reactor '
|
||||
ErrorMsg := 'ratios associated with REACTOR_LOG ':ReactorLogId:'.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR_LOG ':ReactorLogId:' does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorLogId passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
If RatiosKey NE '' then
|
||||
RatiosRec = Database_Services('ReadDataRow', 'REACTOR_RATIOS', RatiosKey)
|
||||
If Error_Services('NoError') then
|
||||
If ReactorNo EQ '' then ReactorNo = Xlate('REACTOR_LOG', ReactorLogId, 'REACTOR', 'X')
|
||||
If ReactorNo NE '' then
|
||||
NumRatios = Reactor_Services('GetNumRatios', ReactorNo)
|
||||
For RatioIndex = 0 to (NumRatios - 1)
|
||||
Ratios<0, RatioIndex + 1> = RatiosRec<REACTOR_RATIOS.RATIO_1$ + RatioIndex>
|
||||
Next RatioIndex
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null Reactor in REACTOR_LOG ':ReactorLogId:'.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error reading REACTOR_RATIOS record ':RatiosKey:'.'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = Ratios
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetInjectorSettingsByReactorLog(ReactorLogId)
|
||||
|
||||
ReactInjSetKey = ''
|
||||
InjSettings = ''
|
||||
ErrorMsg = ''
|
||||
If ReactorLogId NE '' then
|
||||
If RowExists('REACTOR_LOG', ReactorLogId) then
|
||||
Query = 'SELECT REACTOR_INJECTOR_SETTINGS WITH REACTOR_LOG_ID EQ ':Quote(ReactorLogId)
|
||||
Query := ' BY-DSND INJ_SET_DTM'
|
||||
RList(Query, TARGET_ACTIVELIST$)
|
||||
ErrCode = ''
|
||||
If Not(Get_Status(ErrCode)) then
|
||||
If @RecCount GT 0 then
|
||||
ReadNext ReactInjSetKey else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error looking up reactor injector '
|
||||
ErrorMsg := 'settings associated with REACTOR_LOG ':ReactorLogId:'.'
|
||||
end
|
||||
ClearSelect TARGET_ACTIVELIST$
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error looking up reactor injector '
|
||||
ErrorMsg := 'settings associated with REACTOR_LOG ':ReactorLogId:'.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR_LOG ':ReactorLogId:' does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorLogId passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
If ReactInjSetKey NE '' then
|
||||
ReactInjSetRec = Database_Services('ReadDataRow', 'REACTOR_INJECTOR_SETTINGS', ReactInjSetKey)
|
||||
If Error_Services('NoError') then
|
||||
For InjIndex = 0 to 4
|
||||
InjSettings<0, InjIndex + 1> = ReactInjSetRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_1$ + InjIndex>
|
||||
Next InjIndex
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error reading REACTOR_INJECTOR_SETTINGS record ':ReactInjSetKey:'.'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = InjSettings
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service SetNewInjectorSettings(ReactorNo, InjSettings)
|
||||
|
||||
// Injector settings should be passed in internal format (MD3)
|
||||
ErrorMsg = ''
|
||||
If ReactorNo NE '' then
|
||||
If RowExists('REACTOR', ReactorNo) then
|
||||
If InjSettings NE '' then
|
||||
If DCount(InjSettings, @VM) EQ 5 then
|
||||
For each InjSetting in InjSettings using @VM setting vPos
|
||||
If InjSettings EQ '' then ErrorMsg = 'Error in ':Service:' service. Injector setting ':vPos:' is missing.'
|
||||
Until ErrorMsg NE ''
|
||||
Next InjSetting
|
||||
If ErrorMsg EQ '' then
|
||||
CurrInjSettings = Reactor_Services('GetCurrentInjectorSettings', ReactorNo)
|
||||
If (CurrInjSettings NE InjSettings) then
|
||||
CurrRlId = Xlate('CONFIG', 'REACT_MODE':ReactorNo, 8, 'X')
|
||||
If CurrRlId NE '' then
|
||||
Query = 'REACTOR_NO':@VM:ReactorNo:@FM:'ACTIVE':@VM:True$:@FM
|
||||
Open 'DICT.REACTOR_INJECTOR_SETTINGS' to hDict then
|
||||
Option = 'E'
|
||||
ActiveInjSettingsKeys = ''
|
||||
Flag = ''
|
||||
Btree.Extract(Query, 'REACTOR_INJECTOR_SETTINGS', hDict, ActiveInjSettingsKeys, Option, Flag)
|
||||
If Flag EQ 0 then
|
||||
If ActiveInjSettingsKeys NE '' then
|
||||
Open 'REACTOR_INJECTOR_SETTINGS' to hTable then
|
||||
For each ActiveInjSettingsKey in ActiveInjSettingsKeys using @VM
|
||||
WriteV False$ on hTable, ActiveInjSettingsKey, REACTOR_INJECTOR_SETTINGS.ACTIVE$ else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error setting previous injector '
|
||||
ErrorMsg := 'settings to inactive. File error: ':@File_Error
|
||||
end
|
||||
Until ErrorMsg NE ''
|
||||
Next ActiveInjSettingsKey
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening REACTOR_INJECTOR_SETTINGS to '
|
||||
ErrorMsg := 'invalidate previous settings.'
|
||||
end
|
||||
end
|
||||
If ErrorMsg EQ '' then
|
||||
NewInjSettingsKey = RTI_CreateGUID()
|
||||
If NewInjSettingsKey NE '' then
|
||||
NewInjSettingsRec = ''
|
||||
NewInjSettingsRec<REACTOR_INJECTOR_SETTINGS.REACTOR_LOG_ID$> = CurrRlId
|
||||
NewInjSettingsRec<REACTOR_INJECTOR_SETTINGS.REACTOR_NO$> = ReactorNo
|
||||
NewInjSettingsRec<REACTOR_INJECTOR_SETTINGS.INJ_SET_DTM$> = Datetime()
|
||||
NewInjSettingsRec<REACTOR_INJECTOR_SETTINGS.ACTIVE$> = True$
|
||||
For InjIndex = 0 to 4
|
||||
NewInjSettingsRec<REACTOR_INJECTOR_SETTINGS.INJECTOR_1$ + InjIndex> = InjSettings<0, InjIndex + 1>
|
||||
Next InjIndex
|
||||
Database_Services('WriteDataRow', 'REACTOR_INJECTOR_SETTINGS', NewInjSettingsKey, NewInjSettingsRec)
|
||||
If Error_Services('NoError') then
|
||||
plParms = 'REACT_STATE':@RM
|
||||
plParms := ReactorNo:@RM
|
||||
plParms := REACT_STATE_CURR_INJ_RL_ID$:@RM
|
||||
plParms := CurrRlId:@RM
|
||||
obj_Post_Log('Create',plParms)
|
||||
If Get_Status(ErrCode) then
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling obj_Post_Log("Create"). '
|
||||
ErrorMsg := 'Error code: ':ErrCode:'.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = Error_Services('GetMessage')
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error creating new REACTOR_INJECTOR_SETTINGS record.'
|
||||
end
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling Btree.Extract.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening DICT.REACTOR_INJECTOR_SETTINGS'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error reading current REACTOR_LOG Id.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Input InjSettings are the same as the current InjSettings.'
|
||||
end
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. All five injector settings are required.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null InjSettings passed into service.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR, ':ReactorNo:', does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorNo passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = True$
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
Response = False$
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service SetNewRatios(ReactorNo, Ratios)
|
||||
|
||||
// Ratios should be passed in internal format (MD3)
|
||||
ErrorMsg = ''
|
||||
If ReactorNo NE '' then
|
||||
If RowExists('REACTOR', ReactorNo) then
|
||||
If Ratios NE '' then
|
||||
Ratios = SRP_Array('Clean', Ratios, 'Trim', @VM)
|
||||
NumRatios = Reactor_Services('GetNumRatios', ReactorNo)
|
||||
If Error_Services('NoError') then
|
||||
If DCount(Ratios, @VM) EQ NumRatios then
|
||||
For each Ratio in Ratios using @VM setting vPos
|
||||
Begin Case
|
||||
Case Ratio EQ ''
|
||||
ErrorMsg = 'Error in ':Service:' service. Ratio ':vPos:' is missing.'
|
||||
Case OConv(Ratio, 'MD3') LT 30
|
||||
ErrorMsg = 'Error in ':Service:' service. Invalid Ratio value. Ratio ':vPos:' is less than 30.'
|
||||
Case OConv(Ratio, 'MD3') GT 100
|
||||
ErrorMsg = 'Error in ':Service:' service. Invalid Ratio value. Ratio ':vPos:' is greater than 100.'
|
||||
End Case
|
||||
Until ErrorMsg NE ''
|
||||
Next Ratio
|
||||
If ErrorMsg EQ '' then
|
||||
CurrRatios = Reactor_Services('GetCurrentRatios', ReactorNo)
|
||||
If (CurrRatios NE Ratios) then
|
||||
CurrRlId = Xlate('CONFIG', 'REACT_MODE':ReactorNo, 8, 'X')
|
||||
If CurrRlId NE '' then
|
||||
Query = 'REACTOR_NO':@VM:ReactorNo:@FM:'ACTIVE':@VM:True$:@FM
|
||||
Open 'DICT.REACTOR_RATIOS' to hDict then
|
||||
Option = 'E'
|
||||
ActiveRatiosKeys = ''
|
||||
Flag = ''
|
||||
Btree.Extract(Query, 'REACTOR_RATIOS', hDict, ActiveRatiosKeys, Option, Flag)
|
||||
If Flag EQ 0 then
|
||||
If ActiveRatiosKeys NE '' then
|
||||
Open 'REACTOR_RATIOS' to hTable then
|
||||
For each ActiveRatiosKey in ActiveRatiosKeys using @VM
|
||||
WriteV False$ on hTable, ActiveRatiosKey, REACTOR_RATIOS.ACTIVE$ else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error setting previous ratios '
|
||||
ErrorMsg := 'record to inactive. File error: ':@File_Error
|
||||
end
|
||||
Until ErrorMsg NE ''
|
||||
Next ActiveRatiosKey
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening REACTOR_RATIOS table to '
|
||||
ErrorMsg := 'invalidate previous ratios.'
|
||||
end
|
||||
end
|
||||
If ErrorMsg EQ '' then
|
||||
NewRatiosKey = RTI_CreateGUID()
|
||||
If NewRatiosKey NE '' then
|
||||
NewRatiosRec = ''
|
||||
NewRatiosRec<REACTOR_RATIOS.REACTOR_LOG_ID$> = CurrRlId
|
||||
NewRatiosRec<REACTOR_RATIOS.REACTOR_NO$> = ReactorNo
|
||||
NewRatiosRec<REACTOR_RATIOS.RATIO_SET_DTM$> = Datetime()
|
||||
NewRatiosRec<REACTOR_RATIOS.ACTIVE$> = True$
|
||||
For RatioIndex = 0 to (NumRatios - 1)
|
||||
NewRatiosRec<REACTOR_RATIOS.RATIO_1$ + RatioIndex> = Ratios<0, RatioIndex + 1>
|
||||
Next RatioIndex
|
||||
Database_Services('WriteDataRow', 'REACTOR_RATIOS', NewRatiosKey, NewRatiosRec)
|
||||
If Error_Services('NoError') then
|
||||
plParms = 'REACT_STATE':@RM
|
||||
plParms := ReactorNo:@RM
|
||||
plParms := REACT_STATE_CURR_RATIO_RL_ID$:@RM
|
||||
plParms := CurrRlId:@RM
|
||||
obj_Post_Log('Create',plParms)
|
||||
If Get_Status(ErrCode) then
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling obj_Post_Log("Create"). '
|
||||
ErrorMsg = 'Error code: ':ErrCode:'.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = Error_Services('GetMessage')
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error creating new REACTOR_RATIOS record.'
|
||||
end
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error calling Btree.Extract.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error opening DICT.REACTOR_RATIOS'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error reading current REACTOR_LOG Id.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Input Ratios are the same as the current Ratios.'
|
||||
end
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Reactor ':ReactorNo:' requires ':NumRatios:' values '
|
||||
ErrorMsg := 'for ratios. Only ':DCount(Ratios, @VM):' were supplied.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Error determining number of required ratios '
|
||||
ErrorMsg := 'for reactor ':ReactorNo:'. Error message: ':Error_Services("GetMessage")
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null Ratios passed into service.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR, ':ReactorNo:', does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorNo passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = True$
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
Response = False$
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
|
||||
Service GetNumRatios(ReactorNo)
|
||||
|
||||
ErrorMsg = ''
|
||||
NumRatios = ''
|
||||
If (ReactorNo NE '') then
|
||||
If RowExists('REACTOR', ReactorNo) then
|
||||
ReactorType = Xlate('REACTOR', ReactorNo, REACTOR_REACT_TYPE$, 'X')
|
||||
Begin Case
|
||||
Case ReactorNo EQ 73
|
||||
// OpenInsight needs to be updated to support reactor type HTR+, which requires 16 ratios.
|
||||
NumRatios = 16
|
||||
Case ReactorType EQ 'ASM' or ReactorType EQ 'ASM+'
|
||||
NumRatios = 10
|
||||
Case ReactorType EQ 'HTR'
|
||||
NumRatios = 12
|
||||
Case Otherwise$
|
||||
ErrorMsg = 'Error in ':Service:' service. Error determining number '
|
||||
ErrorMsg := 'of Ratios required for reactor ':ReactorNo:'.'
|
||||
End Case
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. REACTOR, ':ReactorNo:', does not exist.'
|
||||
end
|
||||
end else
|
||||
ErrorMsg = 'Error in ':Service:' service. Null ReactorNo passed into service.'
|
||||
end
|
||||
|
||||
If ErrorMsg EQ '' then
|
||||
Response = NumRatios
|
||||
end else
|
||||
Error_Services('Add', ErrorMsg)
|
||||
end
|
||||
|
||||
end service
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Internal GoSubs
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -6,13 +6,13 @@ COMPILE FUNCTION REACT_STATE(EntID,Event,Parm1,Parm2,Parm3,Parm4,Parm5)
|
||||
10/8/2009 - John C. Henry, J.C. Henry & Co., Inc.
|
||||
*/
|
||||
|
||||
DECLARE SUBROUTINE Set_Property, ErrMsg, obj_AppWindow
|
||||
|
||||
DECLARE FUNCTION Get_Property, Send_Message, Start_Window
|
||||
DECLARE SUBROUTINE Set_Property, ErrMsg, obj_AppWindow, Error_Services
|
||||
DECLARE FUNCTION Get_Property, Send_Message, Start_Window, Reactor_Services, Error_Services
|
||||
|
||||
$INSERT APPCOLORS
|
||||
$INSERT LOGICAL
|
||||
$INSERT REACT_STATE_EQUATES
|
||||
|
||||
$INSERT POPUP_EQUATES
|
||||
|
||||
EQU CRLF$ TO \0D0A\
|
||||
EQU TAB$ TO \09\
|
||||
@ -24,6 +24,8 @@ EQU COL$RI_SERIAL_NO TO 4
|
||||
EQU COL$RI_INST_DTM TO 5
|
||||
EQU COL$RI_RL_NO TO 6
|
||||
|
||||
Equ POPUP_WHITE$ to 15400411
|
||||
Equ POPUP_GREEN$ to 16777215
|
||||
|
||||
ErrTitle = 'Error in REACT_STATE commuter module'
|
||||
ErrorMsg = ''
|
||||
@ -31,27 +33,29 @@ ErrorMsg = ''
|
||||
Result = ''
|
||||
|
||||
BEGIN CASE
|
||||
CASE EntID = @WINDOW
|
||||
BEGIN CASE
|
||||
CASE Event = 'CLEAR' ; GOSUB Clear
|
||||
CASE Event = 'CREATE' ; GOSUB Create
|
||||
CASE Event = 'CLOSE' ; GOSUB Close
|
||||
CASE Event = 'WRITE' ; GOSUB Write
|
||||
CASE Event = 'READ' ; GOSUB Read
|
||||
CASE Event[1,3] = 'QBF' ; GOSUB Refresh
|
||||
END CASE
|
||||
|
||||
CASE EntID = @WINDOW:'.CURR_RI_TYPE' AND Event = 'DBLCLK' ; GOSUB ReactItemDC
|
||||
|
||||
CASE 1
|
||||
|
||||
ErrorMsg = 'Unknown Parameters ':EntID:' - ':Event:' passed to commuter'
|
||||
ErrMsg('Application Message':@SVM:ErrorMsg)
|
||||
|
||||
CASE EntID = @WINDOW
|
||||
BEGIN CASE
|
||||
CASE Event = 'CLEAR' ; GoSub Clear
|
||||
CASE Event = 'CREATE' ; GoSub Create
|
||||
CASE Event = 'CLOSE' ; GoSub Close
|
||||
CASE Event = 'WRITE' ; GoSub Write
|
||||
CASE Event = 'READ' ; GoSub Read
|
||||
CASE Event[1,3] = 'QBF' ; GoSub Refresh
|
||||
END CASE
|
||||
|
||||
CASE EntID = @WINDOW:'.CURR_RI_TYPE' AND Event = 'DBLCLK' ; GoSub ReactItemDC
|
||||
CASE EntId = @Window:'.PUB_INJECTOR_SETTING_HISTORY' and Event = 'CLICK' ; GoSub DisplayInjectorHistory
|
||||
Case EntId = @Window:'.PUB_RATIO_HISTORY' and Event = 'CLICK' ; GoSub DisplayRatioHistory
|
||||
|
||||
CASE Otherwise$
|
||||
|
||||
ErrorMsg = 'Unknown Parameters ':EntID:' - ':Event:' passed to commuter'
|
||||
ErrMsg('Application Message':@SVM:ErrorMsg)
|
||||
|
||||
END CASE
|
||||
|
||||
IF ErrorMsg NE '' THEN
|
||||
ErrMsg(ErrTitle:@SVM:ErrorMsg)
|
||||
ErrMsg(ErrTitle:@SVM:ErrorMsg)
|
||||
END
|
||||
|
||||
RETURN Result
|
||||
@ -61,17 +65,17 @@ RETURN Result
|
||||
* * * * * * *
|
||||
Create:
|
||||
* * * * * * *
|
||||
|
||||
obj_Appwindow('Create',@WINDOW)
|
||||
|
||||
|
||||
obj_Appwindow('Create',@WINDOW)
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
* * * * * * *
|
||||
Write:
|
||||
* * * * * * *
|
||||
|
||||
|
||||
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
@ -79,101 +83,173 @@ RETURN
|
||||
* * * * * * *
|
||||
Clear:
|
||||
* * * * * * *
|
||||
|
||||
*Send_Event(@WINDOW,'PAGE',1)
|
||||
|
||||
GOTO Refresh
|
||||
|
||||
|
||||
GOTO Refresh
|
||||
|
||||
RETURN
|
||||
|
||||
* * * * * * *
|
||||
Read:
|
||||
* * * * * * *
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
* * * * * * *
|
||||
Refresh:
|
||||
* * * * * * *
|
||||
|
||||
* QBF buttons
|
||||
|
||||
Ctrls = @WINDOW:'.QBF_FIRST_FIX':@RM ; Props = 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_PREV_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_ABS_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_NEXT_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_LAST_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_STOP_FIX' ; Props := 'ENABLED'
|
||||
|
||||
IF Get_Property(@WINDOW,'QBFLIST') = '' THEN
|
||||
Vals = 0:@RM:0:@RM:0:@RM:0:@RM:0:@RM:0
|
||||
END ELSE
|
||||
Vals = 1:@RM:1:@RM:1:@RM:1:@RM:1:@RM:1
|
||||
END
|
||||
|
||||
Set_Property(Ctrls,Props,Vals)
|
||||
|
||||
* Turn edit table symbolic column backgrounds to green
|
||||
|
||||
ETSymbolics = Get_Property(@WINDOW,'@ET_SYMBOLICS') ;* Loaded during 'Create' in obj_Appwindow
|
||||
|
||||
ETCtrls = ETSymbolics<1>
|
||||
ETCols = ETSymbolics<2>
|
||||
|
||||
FOR I = 1 TO COUNT(ETCtrls,@VM) + (ETCtrls NE '')
|
||||
ETCtrl = ETCtrls<1,I>
|
||||
ETList = Get_Property(ETCtrl,'LIST')
|
||||
FOR Line = 1 TO COUNT(ETList,@FM) + (ETList NE '')
|
||||
IF ETList<Line,1> NE '' THEN
|
||||
FOR N = 1 TO COUNT(ETCols<1,I>,@SVM) + (ETCols<1,I> NE '')
|
||||
stat = Send_Message(ETCtrl,'COLOR_BY_POS',ETCols<1,I,N>,Line,LS2_GREEN$)
|
||||
NEXT N
|
||||
END
|
||||
NEXT I
|
||||
NEXT I
|
||||
|
||||
|
||||
* QBF buttons
|
||||
|
||||
Ctrls = @WINDOW:'.QBF_FIRST_FIX':@RM ; Props = 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_PREV_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_ABS_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_NEXT_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_LAST_FIX':@RM ; Props := 'ENABLED':@RM
|
||||
Ctrls := @WINDOW:'.QBF_STOP_FIX' ; Props := 'ENABLED'
|
||||
|
||||
IF Get_Property(@WINDOW,'QBFLIST') = '' THEN
|
||||
Vals = 0:@RM:0:@RM:0:@RM:0:@RM:0:@RM:0
|
||||
END ELSE
|
||||
Vals = 1:@RM:1:@RM:1:@RM:1:@RM:1:@RM:1
|
||||
END
|
||||
|
||||
Set_Property(Ctrls,Props,Vals)
|
||||
|
||||
* Turn edit table symbolic column backgrounds to green
|
||||
|
||||
ETSymbolics = Get_Property(@WINDOW,'@ET_SYMBOLICS') ;* Loaded during 'Create' in obj_Appwindow
|
||||
|
||||
ETCtrls = ETSymbolics<1>
|
||||
ETCols = ETSymbolics<2>
|
||||
|
||||
FOR I = 1 TO COUNT(ETCtrls,@VM) + (ETCtrls NE '')
|
||||
ETCtrl = ETCtrls<1,I>
|
||||
ETList = Get_Property(ETCtrl,'LIST')
|
||||
FOR Line = 1 TO COUNT(ETList,@FM) + (ETList NE '')
|
||||
IF ETList<Line,1> NE '' THEN
|
||||
FOR N = 1 TO COUNT(ETCols<1,I>,@SVM) + (ETCols<1,I> NE '')
|
||||
stat = Send_Message(ETCtrl,'COLOR_BY_POS',ETCols<1,I,N>,Line,GREEN$)
|
||||
NEXT N
|
||||
END
|
||||
NEXT I
|
||||
NEXT I
|
||||
|
||||
ReactNo = Get_Property(@Window:'.REACT_NO', 'TEXT')
|
||||
If ReactNo NE '' then
|
||||
// Populate Current Injector Settings and Current Reactor Ratios
|
||||
InjSettings = OConv(Reactor_Services('GetCurrentInjectorSettings', ReactNo), 'MD3,')
|
||||
Set_Property(@Window:'.EDT_CURR_INJ_SETTINGS', 'ARRAY', InjSettings)
|
||||
Ratios = OConv(Reactor_Services('GetCurrentRatios', ReactNo), 'MD3,')
|
||||
Set_Property(@Window:'.EDT_CURR_RATIOS', 'ARRAY', Ratios)
|
||||
NumRatios = Reactor_Services('GetNumRatios', ReactNo)
|
||||
If Error_Services('NoError') then
|
||||
Set_Property(@Window:'.EDT_CURR_RATIOS', 'MINROWLIMIT', NumRatios)
|
||||
Set_Property(@Window:'.EDT_CURR_RATIOS', 'MAXROWLIMIT', NumRatios)
|
||||
end
|
||||
end
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
* * * * * * *
|
||||
ReactItemDC:
|
||||
* * * * * * *
|
||||
|
||||
CurrPos = Get_Property(EntID,'SELPOS')
|
||||
CurrCol = CurrPos<1>
|
||||
CurrRow = CurrPos<2>
|
||||
|
||||
CurrList = Get_Property(EntID,'LIST')
|
||||
|
||||
BEGIN CASE
|
||||
CASE CurrCol = COL$RI_NO
|
||||
RINo = CurrList<CurrRow,COL$RI_NO>
|
||||
IF RINo NE '' THEN
|
||||
obj_AppWindow('ViewRelated','REACT_ITEM':@RM:RINo)
|
||||
END
|
||||
|
||||
CASE CurrCol = COL$RI_RL_NO
|
||||
RLNo = CurrList<CurrRow,COL$RI_RL_NO>
|
||||
IF RLNo NE '' THEN
|
||||
Dummy = Start_Window( 'REACTOR_LOG', @WINDOW, RLNo:'*CENTER', '', '' )
|
||||
END
|
||||
|
||||
END CASE
|
||||
|
||||
|
||||
CurrPos = Get_Property(EntID,'SELPOS')
|
||||
CurrCol = CurrPos<1>
|
||||
CurrRow = CurrPos<2>
|
||||
|
||||
CurrList = Get_Property(EntID,'LIST')
|
||||
|
||||
BEGIN CASE
|
||||
CASE CurrCol = COL$RI_NO
|
||||
RINo = CurrList<CurrRow,COL$RI_NO>
|
||||
IF RINo NE '' THEN
|
||||
obj_AppWindow('ViewRelated','REACT_ITEM':@RM:RINo)
|
||||
END
|
||||
|
||||
CASE CurrCol = COL$RI_RL_NO
|
||||
RLNo = CurrList<CurrRow,COL$RI_RL_NO>
|
||||
IF RLNo NE '' THEN
|
||||
Dummy = Start_Window( 'REACTOR_LOG', @WINDOW, RLNo:'*CENTER', '', '' )
|
||||
END
|
||||
|
||||
END CASE
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
* * * * * * *
|
||||
Close:
|
||||
* * * * * * *
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
* * * * * * * * * * * *
|
||||
DisplayInjectorHistory:
|
||||
* * * * * * * * * * * *
|
||||
|
||||
ReactNo = Get_Property(@Window:'.REACT_NO','DEFPROP')
|
||||
If ReactNo NE '' then
|
||||
TypeOver = ''
|
||||
TypeOver<PDISPLAY$> = 'WITH REACTOR_NO = ':ReactNo:' BY-DSND INJ_SET_DTM'
|
||||
void = Popup(@Window,TypeOver,'REACT_INJ_SETTINGS')
|
||||
end
|
||||
|
||||
return
|
||||
|
||||
|
||||
* * * * * * * * * * * *
|
||||
DisplayRatioHistory:
|
||||
* * * * * * * * * * * *
|
||||
|
||||
ReactNo = Get_Property(@Window:'.REACT_NO','DEFPROP')
|
||||
If ReactNo NE '' then
|
||||
NumRatios = Reactor_Services('GetNumRatios', ReactNo)
|
||||
If Error_Services('NoError') then
|
||||
DisplayText = 'WITH REACTOR_NO EQ ':ReactNo:' BY-DSND RATIO_SET_DTM':@vm:''
|
||||
PopupRec = ""
|
||||
PopupRec<PFILE$> = "REACTOR_RATIOS"
|
||||
PopupRec<PDISPLAY$> = DisplayText
|
||||
PopupRec<PFORMAT$> = 'REACTOR_NO':@svm:'6':@svm:'C':@svm:'C':@svm:'MD0':@svm:'Reactor No'
|
||||
PopupRec<PFORMAT$, -1> = 'RATIO_SET_DTM':@svm:'16':@svm:'C':@svm:'C':@svm:'DT/^S':@svm:'Ratio Set Dtm'
|
||||
For RatioIndex = 1 to NumRatios
|
||||
PopupRec<PFORMAT$, -1> = 'RATIO_':RatioIndex:@svm:'7':@svm:'C':@svm:'C':@svm:'MD3,':@svm:'Ratio ':RatioIndex
|
||||
Next RatioIndex
|
||||
PopupRec<PMODE$> = 'T'
|
||||
PopupRec<PSELECT$> = True$
|
||||
PopupRec<PTITLE$> = 'Reactor Ratios'
|
||||
PopupRec<PFIELD$> = True$
|
||||
PopupRec<PTYPE$> = "F"
|
||||
PopupRec<PCOLHDR$> = True$
|
||||
PopupRec<PROWNUM$> = True$
|
||||
PopupRec<PROWBTN$> = True$
|
||||
PopupRec<PHGRID$> = True$
|
||||
PopupRec<PVGRID$> = True$
|
||||
PopupRec<PRESIZE$> = True$
|
||||
PopupRec<PBORDER$> = True$
|
||||
PopupRec<PBTNSBELOW$> = False$
|
||||
PopupRec<PSEARCH$> = False$
|
||||
PopupRec<PSORT$> = False$
|
||||
PopupRec<PLOCK$> = False$
|
||||
PopupRec<PSHOWMISSING$> = False$
|
||||
PopupRec<PPRINTABLE$> = True$
|
||||
PopupRec<PSHOWGAUGE$> = False$
|
||||
PopupRec<PCAPTUREESC$> = False$
|
||||
PopupRec<PGREENBAR$> = True$
|
||||
PopupRec<PODDROWCOLOR$> = POPUP_WHITE$
|
||||
PopupRec<PEVENROWCOLOR$> = POPUP_GREEN$
|
||||
Response = Popup(@Window, PopupRec, '')
|
||||
end else
|
||||
Error_Services('DisplayError')
|
||||
end
|
||||
end else
|
||||
Error_Services('Add', "Reactor number is missing")
|
||||
Error_Services('DisplayError')
|
||||
end
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
20
LSL2/STPROCINS/REACTOR_INJECTOR_SETTINGS_EQUATES.txt
Normal file
20
LSL2/STPROCINS/REACTOR_INJECTOR_SETTINGS_EQUATES.txt
Normal file
@ -0,0 +1,20 @@
|
||||
compile insert REACTOR_INJECTOR_SETTINGS_EQUATES
|
||||
/*----------------------------------------
|
||||
Author : Table Create Insert Routine
|
||||
Written : 31/03/2025
|
||||
Description : Insert for Table REACTOR_INJECTOR_SETTINGS
|
||||
----------------------------------------*/
|
||||
#ifndef __REACTOR_INJECTOR_SETTINGS_EQUATES__
|
||||
#define __REACTOR_INJECTOR_SETTINGS_EQUATES__
|
||||
|
||||
equ REACTOR_INJECTOR_SETTINGS.REACTOR_LOG_ID$ to 1
|
||||
equ REACTOR_INJECTOR_SETTINGS.REACTOR_NO$ to 2
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJ_SET_DTM$ to 3
|
||||
equ REACTOR_INJECTOR_SETTINGS.ACTIVE$ to 4
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJECTOR_1$ to 5
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJECTOR_2$ to 6
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJECTOR_3$ to 7
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJECTOR_4$ to 8
|
||||
equ REACTOR_INJECTOR_SETTINGS.INJECTOR_5$ to 9
|
||||
|
||||
#endif
|
@ -85,4 +85,5 @@ Equ REACTOR_LOG_WAFERS_REMOVED_RDS$ To 75
|
||||
Equ REACTOR_LOG_CHECKLIST_ACTIVE$ To 76
|
||||
Equ REACTOR_LOG_CHECKLIST_TYPE$ To 77
|
||||
Equ REACTOR_LOG_CHECKLIST_ORDER_ID$ To 78
|
||||
Equ REACTOR_LOG_PROD_SPEC_NO$ To 79
|
||||
|
||||
|
31
LSL2/STPROCINS/REACTOR_RATIOS_EQUATES.txt
Normal file
31
LSL2/STPROCINS/REACTOR_RATIOS_EQUATES.txt
Normal file
@ -0,0 +1,31 @@
|
||||
compile insert REACTOR_RATIOS_EQUATES
|
||||
/*----------------------------------------
|
||||
Author : Table Create Insert Routine
|
||||
Written : 31/03/2025
|
||||
Description : Insert for Table REACTOR_RATIOS
|
||||
----------------------------------------*/
|
||||
#ifndef __REACTOR_RATIOS_EQUATES__
|
||||
#define __REACTOR_RATIOS_EQUATES__
|
||||
|
||||
equ REACTOR_RATIOS.REACTOR_LOG_ID$ to 1
|
||||
equ REACTOR_RATIOS.REACTOR_NO$ to 2
|
||||
equ REACTOR_RATIOS.RATIO_SET_DTM$ to 3
|
||||
equ REACTOR_RATIOS.ACTIVE$ to 4
|
||||
equ REACTOR_RATIOS.RATIO_1$ to 5
|
||||
equ REACTOR_RATIOS.RATIO_2$ to 6
|
||||
equ REACTOR_RATIOS.RATIO_3$ to 7
|
||||
equ REACTOR_RATIOS.RATIO_4$ to 8
|
||||
equ REACTOR_RATIOS.RATIO_5$ to 9
|
||||
equ REACTOR_RATIOS.RATIO_6$ to 10
|
||||
equ REACTOR_RATIOS.RATIO_7$ to 11
|
||||
equ REACTOR_RATIOS.RATIO_8$ to 12
|
||||
equ REACTOR_RATIOS.RATIO_9$ to 13
|
||||
equ REACTOR_RATIOS.RATIO_10$ to 14
|
||||
equ REACTOR_RATIOS.RATIO_11$ to 15
|
||||
equ REACTOR_RATIOS.RATIO_12$ to 16
|
||||
equ REACTOR_RATIOS.RATIO_13$ to 17
|
||||
equ REACTOR_RATIOS.RATIO_14$ to 18
|
||||
equ REACTOR_RATIOS.RATIO_15$ to 19
|
||||
equ REACTOR_RATIOS.RATIO_16$ to 20
|
||||
|
||||
#endif
|
@ -30,4 +30,6 @@ Equ REACT_SERVS_NOTE_REQ$ To 19
|
||||
Equ REACT_SERVS_ASSOC_METRICS$ To 20
|
||||
Equ REACT_SERVS_IS_INTRUSIVE$ To 21
|
||||
Equ REACT_SERVS_INTR_MAINT_FLOW_ID$ To 22
|
||||
Equ REACT_SERVS_RATIO_SERVICE$ To 23
|
||||
Equ REACT_SERVS_REQ_INJECTOR_DATA$ To 24
|
||||
|
||||
|
@ -6,22 +6,23 @@ compile insert REACT_STATE_EQUATES
|
||||
----------------------------------------*/
|
||||
|
||||
|
||||
Equ REACT_STATE_REACT_NO$ To 0
|
||||
Equ REACT_STATE_MODE$ To 1
|
||||
Equ REACT_STATE_USER_ID$ To 2
|
||||
Equ REACT_STATE_SERVICE$ To 3
|
||||
Equ REACT_STATE_NOTE$ To 4
|
||||
Equ REACT_STATE_REACT_UTIL_ID$ To 5
|
||||
Equ REACT_STATE_REACT_LOG_ID$ To 6
|
||||
Equ REACT_STATE_SCHED_WO_NO$ To 7
|
||||
Equ REACT_STATE_PINNED_SUSCEPTOR$ To 8
|
||||
Equ REACT_STATE_DOPANT$ To 9
|
||||
Equ REACT_STATE_GRAPH_NO$ To 10
|
||||
Equ REACT_STATE_CURR_INJ_RL_ID$ To 11
|
||||
Equ REACT_STATE_RATIOS$ To 12
|
||||
Equ REACT_STATE_HRS_LAST_READ$ To 13
|
||||
Equ REACT_STATE_LL_SVC$ To 14
|
||||
Equ REACT_STATE_RESTRICTOR$ To 15
|
||||
Equ REACT_STATE_LAST_RDS_NO$ To 16
|
||||
Equ REACT_STATE_LAST_UNLOAD_DTM$ To 17
|
||||
Equ REACT_STATE_TUBE_PRESSURE$ To 18
|
||||
Equ REACT_STATE_REACT_NO$ To 0
|
||||
Equ REACT_STATE_MODE$ To 1
|
||||
Equ REACT_STATE_USER_ID$ To 2
|
||||
Equ REACT_STATE_SERVICE$ To 3
|
||||
Equ REACT_STATE_NOTE$ To 4
|
||||
Equ REACT_STATE_REACT_UTIL_ID$ To 5
|
||||
Equ REACT_STATE_REACT_LOG_ID$ To 6
|
||||
Equ REACT_STATE_SCHED_WO_NO$ To 7
|
||||
Equ REACT_STATE_PINNED_SUSCEPTOR$ To 8
|
||||
Equ REACT_STATE_DOPANT$ To 9
|
||||
Equ REACT_STATE_GRAPH_NO$ To 10
|
||||
Equ REACT_STATE_CURR_INJ_RL_ID$ To 11
|
||||
Equ REACT_STATE_RATIOS$ To 12
|
||||
Equ REACT_STATE_HRS_LAST_READ$ To 13
|
||||
Equ REACT_STATE_LL_SVC$ To 14
|
||||
Equ REACT_STATE_RESTRICTOR$ To 15
|
||||
Equ REACT_STATE_LAST_RDS_NO$ To 16
|
||||
Equ REACT_STATE_LAST_UNLOAD_DTM$ To 17
|
||||
Equ REACT_STATE_TUBE_PRESSURE$ To 18
|
||||
Equ REACT_STATE_CURR_RATIO_RL_ID$ To 19
|
||||
|
Loading…
x
Reference in New Issue
Block a user