open-insight/LSL2/STPROC/COMM_DIALOG_WO_CASS_QTY.txt
Infineon\StieberD 7762b129af pre cutover push
2024-09-04 20:33:41 -07:00

162 lines
3.1 KiB
Plaintext

COMPILE FUNCTION Comm_Dialog_WO_Cass_Qty(Method, Parm1, Parm2)
/*
Commuter module for Dialog_WO_Cass_Qty window.
08/20/2004 - John C. Henry, J.C. Henry & Co., Inc.
*/
DECLARE SUBROUTINE Set_Property, End_Dialog, Set_Status, ErrMsg
DECLARE SUBROUTINE obj_Appwindow, Start_Window, Msg
DECLARE FUNCTION Get_Property, Get_Status, Dialog_Box, Send_Message
EQU CRLF$ TO \0D0A\
$INSERT APPCOLORS
ErrTitle = 'Error in Comm_Dialog_WO_Cass_Qty'
ErrorMsg = ''
Result = ''
BEGIN CASE
CASE Method = 'Create' ; GOSUB Create
CASE Method = 'OK' ; GOSUB OK
CASE Method = 'Cancel' ; GOSUB Cancel
CASE Method = 'Refresh' ; GOSUB Refresh
CASE Method = 'Close' ; GOSUB Close
CASE Method = 'InsertRow' ; GOSUB InsertRow
CASE Method = 'DeleteRow' ; GOSUB DeleteRow
CASE 1
ErrMsg(ErrTitle:@SVM:'Unknown method ':QUOTE(Method):' passed to routine.')
END CASE
RETURN Result
* * * * * * *
Create:
* * * * * * *
obj_AppWindow('Create')
Title = Parm1[1,@FM]
LotQty = Parm1[COL2()+1,@FM]
CassCnt = Parm1[COL2()+1,@FM]
CassQty = Parm1[COL2()+1,@FM]
Set_Property(@WINDOW,'TEXT',Title)
Set_Property(@WINDOW:'.LOT_QTY','TEXT',LotQty)
IF CassQty = '' THEN
Set_Property(@WINDOW:'.CASS_QTYS','ARRAY',STR(@VM,CassCnt-1))
END ELSE
CONVERT @SVM TO @VM IN CassQty
Set_Property(@WINDOW:'.CASS_QTYS','ARRAY',CassQty)
END
GOSUB Refresh
RETURN
* * * * * * *
Refresh:
* * * * * * *
LotQty = Get_Property(@WINDOW:'.LOT_QTY','TEXT',LotQty)
CassQtys = Get_Property(@WINDOW:'.CASS_QTYS','ARRAY')
LotQty = ICONV(LotQty,'MD0')
CassQtyTot = SUM(CassQtys)
Remainder = LotQty - CassQtyTot
Set_Property(@WINDOW:'.REMAINDER','TEXT',Remainder)
BEGIN CASE
CASE Remainder > 0
Set_Property(@WINDOW:'.REMAINDER','BACKCOLOR',YELLOW$)
Set_Property(@WINDOW:'.OK_BUTTON','ENABLED',0)
CASE Remainder = 0
Set_Property(@WINDOW:'.REMAINDER','BACKCOLOR',GREEN$)
Set_Property(@WINDOW:'.OK_BUTTON','ENABLED',1)
CASE Remainder < 0
Set_Property(@WINDOW:'.REMAINDER','BACKCOLOR',RED$)
Set_Property(@WINDOW:'.OK_BUTTON','ENABLED',0)
END CASE
RETURN
* * * * * * *
Close:
* * * * * * *
* * * * * * *
Cancel:
* * * * * * *
End_Dialog(@WINDOW,'Cancel')
RETURN
* * * * * * *
InsertRow:
* * * * * * *
CtrlEntID = @WINDOW:'.CASS_QTYS'
RowIndex = Parm1
Dummy = Send_Message(CtrlEntID, "DELETE", RowIndex)
ErrMsg('Close this window and change the quantity in the Cass Cnt field to increase the number of cassettes.')
RETURN
* * * * * * *
DeleteRow:
* * * * * * *
CtrlEntID = @WINDOW:'.CASS_QTYS'
RowIndex = Parm1
DeletedRow = Parm2
Dummy = Send_Message(CtrlEntID, "INSERT", RowIndex, DeletedRow)
ErrMsg('Close this window and change the quantity in the Cass Cnt field to decrease the number of cassettes.')
RETURN
* * * * * * *
OK:
* * * * * * *
CassQtys = Get_Property(@WINDOW:'.CASS_QTYS','ARRAY',CassQty)
LOOP
UNTIL CassQtys[-1,1] NE @VM OR CassQtys = ''
CassQtys[-1,1] = ''
REPEAT
CONVERT @VM TO @SVM IN CassQtys
End_Dialog(@WINDOW,CassQtys)
RETURN