Includes services and functions to create new test wafer lot. Tables included outside of git push New Tables: 1. LOT 2. LOT_EVENT 3. LOT_OPERATION 4. PRODUCT_OPERATION 5. OPERATION 6. Added PRODUCT_OPERATIONS field in TEST_WAFER_PROD table. All relational indexes and btree indexes.
91 lines
2.8 KiB
Plaintext
91 lines
2.8 KiB
Plaintext
Compile function NDW_TW_LOT_CREATE_EVENTS(CtrlEntId, Event, @PARAMS)
|
|
#pragma precomp SRP_PreCompiler
|
|
#window NDW_TW_LOT_CREATE
|
|
|
|
Declare function Get_Property, Lot_Services, Error_Services
|
|
Declare subroutine Set_Property, Msg
|
|
|
|
$Insert LOGICAL
|
|
|
|
GoToEvent Event for CtrlEntId else
|
|
// Event not implemented
|
|
end
|
|
|
|
Return EventFlow or 1
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// EVENT HANDLERS
|
|
//-----------------------------------------------------------------------------
|
|
|
|
Event WINDOW.CREATE(CreateParam)
|
|
|
|
EventFlow = 1
|
|
|
|
End Event
|
|
|
|
Event EDL_PROD_NAME.LOSTFOCUS(Flag, FocusID)
|
|
ProdNameVal = Get_Property(@Window : '.EDL_PROD_NAME', 'TEXT')
|
|
If ProdNameVal[1, 1] EQ 'P' then
|
|
ProdNameVal[1,1] = ''
|
|
end
|
|
Set_Property(@Window : '.EDL_PROD_NAME', 'TEXT', ProdNameVal)
|
|
Set_Property(@Window:'.EDL_WAFER_QTY', 'FOCUS', True$)
|
|
end event
|
|
|
|
Event EDL_WAFER_QTY.LOSTFOCUS(Flag, FocusID)
|
|
QtyVal = Get_Property(@Window : '.EDL_WAFER_QTY', 'TEXT')
|
|
If QtyVal[1, 1] EQ 'Q' then
|
|
QtyVal[1,1] = ''
|
|
end
|
|
If Num(QtyVal) then
|
|
Set_Property(@Window : '.EDL_WAFER_QTY', 'TEXT', QtyVal)
|
|
Set_Property(@Window:'.EDL_VENDOR_LOT_NO', 'FOCUS', True$)
|
|
end else
|
|
Msg(@Window, 'Quantity must be a number.')
|
|
Set_Property(@Window:'.EDL_WAFER_QTY', 'TEXT', '')
|
|
Set_Property(@Window:'.EDL_WAFER_QTY', 'FOCUS', True$)
|
|
end
|
|
end event
|
|
|
|
Event PUB_SUBMIT.CLICK()
|
|
debug
|
|
ThisProdName = Get_Property(@Window : '.EDL_PROD_NAME', 'TEXT')
|
|
ThisQuantity = Get_Property(@Window : '.EDL_WAFER_QTY', 'TEXT')
|
|
If ThisProdName NE '' then
|
|
If ThisQuantity NE '' then
|
|
CreatedLotID = Lot_Services('CreateNewTestWaferLot', 'TW', ThisProdName, ThisQuantity, '', '', '', @USER4)
|
|
If CreatedLotID NE '' then
|
|
Msg(@Window, CreatedLotID : ' successfully created')
|
|
GoSub ResetForm
|
|
end else
|
|
If Error_Services('HasError') then
|
|
//Known error, get the message
|
|
end else
|
|
Msg(@Window, 'Unspecified error created new test wafer lot.')
|
|
end
|
|
end
|
|
end else
|
|
//Error: Qty was empty
|
|
end
|
|
end else
|
|
//Error: Prod Name was empty
|
|
end
|
|
|
|
end event
|
|
|
|
|
|
* * * * * * * * * * *
|
|
* Internal Go-Subs *
|
|
* * * * * * * * * * *
|
|
|
|
ResetForm:
|
|
Set_Property(@Window: '.EDL_PROD_NAME', 'TEXT', '')
|
|
Set_Property(@Window: '.EDL_WAFER_QTY', 'TEXT', '')
|
|
Set_Property(@Window: '.EDL_VENDOR_LOT_NO', 'TEXT', '')
|
|
Set_Property(@Window: '.EDL_VENDOR_PROD_ORDER_NO', 'TEXT', '')
|
|
Set_Property(@Window: '.EDL_VENDOR_CODE', 'TEXT', '')
|
|
Set_Property(@Window: '.EDL_PROD_NAME', 'FOCUS', True$)
|
|
return
|
|
|
|
|