pre cutover push
This commit is contained in:
@ -1,62 +1,87 @@
|
||||
Compile function NDW_RDS_SUPP_SIG_EVENTS(CtrlEntId, Event, @PARAMS)
|
||||
/***********************************************************************************************************************
|
||||
|
||||
This program is proprietary and is not to be used by or disclosed to others, nor is it to be copied without written
|
||||
permission from SRP Computer Solutions, Inc.
|
||||
|
||||
Name : NDW_RDS_SUPP_SIG_EVENTS
|
||||
|
||||
Description : Handler program for all Scan services.
|
||||
|
||||
Notes :
|
||||
|
||||
Parameters :
|
||||
Service [in] -- Name of the service being requested
|
||||
Param1-10 [in/out] -- Additional request parameter holders
|
||||
Response [out] -- Response to be sent back to the Controller (MCP) or requesting procedure
|
||||
|
||||
Metadata :
|
||||
|
||||
History : (Date, Initials, Notes)
|
||||
6/6/2024 djm Adapted from old form to use new stage specific supplements.
|
||||
|
||||
***********************************************************************************************************************/
|
||||
#pragma precomp SRP_PreCompiler
|
||||
#window NDW_RDS_SUPP_SIG
|
||||
|
||||
$Insert APP_INSERTS
|
||||
$insert EVENT_SETUP
|
||||
$Insert SUPPLEMENTS_EQUATES
|
||||
$Insert MSG_EQUATES
|
||||
|
||||
Declare Subroutine End_Dialog, Database_Services, Set_Property
|
||||
Declare Function Time, Date, Get_Property
|
||||
Declare Subroutine End_Dialog, Database_Services, Set_Property, Supplement_Services
|
||||
Declare Function Time, Date, Get_Property, Supplement_Services, SRP_Datetime, Rds_Services
|
||||
|
||||
GoToEvent Event for CtrlEntId else
|
||||
// Event not implemented
|
||||
// Update the arguments so that the OpenInsight OLE event will treate the ActiveX event as a native event handler.
|
||||
If Event EQ 'OLE' then
|
||||
Transfer Event to OIEvent
|
||||
Transfer Param1 to Event
|
||||
Transfer Param2 to Param1
|
||||
*Transfer Param3 to Param2
|
||||
* Transfer Param4 to Param3
|
||||
* Transfer Param5 to Param4
|
||||
* Transfer Param6 to Param5
|
||||
* Transfer Param7 to Param6
|
||||
* Transfer Param8 to Param7
|
||||
end
|
||||
|
||||
Return EventFlow or 1
|
||||
GoToEvent Event for CtrlEntID
|
||||
|
||||
Return EventFlow else EVENT_CONTINUE$
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// EVENT HANDLERS
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
|
||||
Event WINDOW.CREATE(CreateParam)
|
||||
|
||||
RDSNo = CreateParam
|
||||
Event WINDOW.CREATE(Param1)
|
||||
|
||||
RDSNo = Param1<1>
|
||||
StageSel = ''
|
||||
ReadOnly = False$
|
||||
If Param1<2> NE '' then
|
||||
StageSel = Param1<2>
|
||||
end
|
||||
If Param1<3> EQ True$ then
|
||||
ReadOnly = True$
|
||||
end
|
||||
Set_Property(@Window, '@RDS', RDSNo)
|
||||
Database_Services('ActivateRecord', 'RDS', RDSNo)
|
||||
SupplInst = {SUPPL_INST}
|
||||
SupplEntryID = {SUPPL_ENTRY_ID}
|
||||
EntryName = OConv(SupplEntryID, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')
|
||||
SupplEntryDate = {SUPPL_ENTRY_DATE}
|
||||
SupplEntryTime = {SUPPL_ENTRY_TIME}
|
||||
SupplSig = {SUPPL_SIG}
|
||||
SigName = OConv(SupplSig, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')
|
||||
SupplSigDate = {SUPPL_SIG_DATE}
|
||||
SupplSigTime = {SUPPL_SIG_TIME}
|
||||
SupplAck = {SUPPL_ACK}
|
||||
Set_Property(@Window:'.EDL_ENTRY_ID', 'TEXT', SupplEntryID)
|
||||
Set_Property(@Window:'.EDL_ENTRY_NAME', 'TEXT', EntryName)
|
||||
Set_Property(@Window:'.EDL_ENTRY_DATE', 'TEXT', OConv(SupplEntryDate, 'D2/') )
|
||||
Set_Property(@Window:'.EDL_ENTRY_TIME', 'TEXT', OConv(SupplEntryTime, 'MTH') )
|
||||
Set_Property(@Window:'.EDB_SUPPL_INST', 'TEXT', SupplInst)
|
||||
Set_Property(@Window:'.EDL_OP_SIG', 'TEXT', SupplSig)
|
||||
Set_Property(@Window:'.EDL_OP_SIG_NAME', 'TEXT', SigName)
|
||||
Set_Property(@Window:'.EDL_OP_SIG_DATE', 'TEXT', OConv(SupplSigDate, 'D2/') )
|
||||
Set_Property(@Window:'.EDL_OP_SIG_TIME', 'TEXT', OConv(SupplSigTime, 'MTH') )
|
||||
|
||||
GoSub PopulateDropdown
|
||||
|
||||
If SupplAck EQ True$ then
|
||||
Set_Property(@Window:'.PUB_SIGN', 'ENABLED', False$)
|
||||
end
|
||||
FormSize = ''
|
||||
SRP_Show_Window(@Window, '', 'C', 'C', 1, '', False$, False$, FormSize)
|
||||
If ReadOnly EQ True$ then
|
||||
Set_Property(@Window:'.PUB_SIGN', 'ENABLED', False$)
|
||||
end
|
||||
|
||||
End Event
|
||||
|
||||
|
||||
Event WINDOW.CLOSE(CancelFlag)
|
||||
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
Database_Services('ActivateRecord', 'RDS', RDSNo)
|
||||
Response = {SUPPL_ACK}
|
||||
|
||||
Response = False$
|
||||
End_Dialog(@Window, Response)
|
||||
|
||||
end event
|
||||
@ -64,9 +89,7 @@ end event
|
||||
|
||||
Event PUB_CLOSE.CLICK()
|
||||
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
Database_Services('ActivateRecord', 'RDS', RDSNo)
|
||||
Response = {SUPPL_ACK}
|
||||
Response = False$
|
||||
End_Dialog(@Window, Response)
|
||||
|
||||
end event
|
||||
@ -74,8 +97,8 @@ end event
|
||||
|
||||
Event PUB_SIGN.CLICK()
|
||||
|
||||
Response = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4:@FM:'SUPERVISOR':@VM:'DATA_ENTRY')
|
||||
Valid = Response<1>
|
||||
Response = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4:@FM:'SUPERVISOR':@VM:'DATA_ENTRY')
|
||||
Valid = Response<1>
|
||||
If Valid EQ True$ then
|
||||
SupplSig = @User4
|
||||
SigName = OConv(SupplSig, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')
|
||||
@ -85,17 +108,91 @@ Event PUB_SIGN.CLICK()
|
||||
Set_Property(@Window:'.EDL_OP_SIG_NAME', 'TEXT', SigName)
|
||||
Set_Property(@Window:'.EDL_OP_SIG_DATE', 'TEXT', OConv(SupplSigDate, 'D2/') )
|
||||
Set_Property(@Window:'.EDL_OP_SIG_TIME', 'TEXT', OConv(SupplSigTime, 'MTH') )
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
Database_Services('ActivateRecord', 'RDS', RDSNo)
|
||||
{SUPPL_SIG} = SupplSig
|
||||
{SUPPL_SIG_DATE} = SupplSigDate
|
||||
{SUPPL_SIG_TIME} = SupplSigTime
|
||||
{SUPPL_ACK} = True$
|
||||
Database_Services('WriteDataRow', 'RDS', RDSNo, @Record, True$, False$, True$)
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
StageSel = Get_Property(@Window : '.CMB_STAGE', 'TEXT')
|
||||
SuppID = Supplement_Services('GetSupplementsForLot', 'RDS', RDSNo, StageSel)
|
||||
Supplement_Services('AcknowledgeSupplement', SuppID, SupplSig)
|
||||
Set_Property(@Window:'.PUB_SIGN', 'ENABLED', False$)
|
||||
Post_Event(@Window, 'CLOSE')
|
||||
Response = True$
|
||||
End_Dialog(@Window, Response)
|
||||
end else
|
||||
Message = 'Invalid password or operation has been canceled by the user. Please try again.'
|
||||
MsgStruct = ''
|
||||
MsgStruct<MTEXT$> = Message
|
||||
MsgStruct<MTYPE$> = 'BO'
|
||||
Response = FALSE$
|
||||
Prompt = Msg(@Window, MsgStruct)
|
||||
end
|
||||
|
||||
end event
|
||||
|
||||
Event CMB_STAGE.CHANGED()
|
||||
|
||||
Gosub GetSupplement
|
||||
|
||||
end event
|
||||
|
||||
GetSupplement:
|
||||
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
SuppText = ''
|
||||
StageSel = Get_Property(@Window : '.CMB_STAGE', 'TEXT')
|
||||
SuppID = Supplement_Services('GetSupplementsForLot', 'RDS', RDSNo, StageSel)
|
||||
OldSuppRec = Xlate('SUPPLEMENTS', SuppID, '', 'X', '')
|
||||
|
||||
SupplInst = OldSuppRec<SUPPLEMENTS_SUPPL_TEXT$>
|
||||
SupplEntryID = OldSuppRec<SUPPLEMENTS_ENTRY_USER$>
|
||||
EntryName = OConv(SupplEntryID, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')
|
||||
EntryDateTime = OldSuppRec<SUPPLEMENTS_ENTRY_DATETIME$>
|
||||
SupplEntryDate = SRP_Datetime('Date', EntryDateTime)
|
||||
SupplEntryTime = SRP_Datetime('Time', EntryDateTime)
|
||||
SupplSig = OldSuppRec<SUPPLEMENTS_ACK_USER$>
|
||||
SigName = OConv(SupplSig, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')
|
||||
AckDateTime = OldSuppRec<SUPPLEMENTS_ACK_DTM$>
|
||||
SupplSigDate = SRP_Datetime('Date', AckDateTime)
|
||||
SupplSigTime = SRP_Datetime('Time', AckDateTime)
|
||||
SupplAck = OldSuppRec<SUPPLEMENTS_SUPPL_ACK$>
|
||||
Set_Property(@Window:'.EDL_ENTRY_ID', 'TEXT', SupplEntryID)
|
||||
Set_Property(@Window:'.EDL_ENTRY_NAME', 'TEXT', EntryName)
|
||||
Set_Property(@Window:'.EDL_ENTRY_DATE', 'TEXT', OConv(SupplEntryDate, 'D2/') )
|
||||
Set_Property(@Window:'.EDL_ENTRY_TIME', 'TEXT', OConv(SupplEntryTime, 'MTH') )
|
||||
Set_Property(@Window:'.EDB_SUPPL_INST', 'TEXT', SupplInst)
|
||||
Set_Property(@Window:'.EDL_OP_SIG', 'TEXT', SupplSig)
|
||||
Set_Property(@Window:'.EDL_OP_SIG_NAME', 'TEXT', SigName)
|
||||
Set_Property(@Window:'.EDL_OP_SIG_DATE', 'TEXT', OConv(SupplSigDate, 'D2/') )
|
||||
Set_Property(@Window:'.EDL_OP_SIG_TIME', 'TEXT', OConv(SupplSigTime, 'MTH') )
|
||||
CurrStage = Rds_Services('GetCurrentStage', RDSNo)
|
||||
|
||||
If SupplAck EQ True$ OR CurrStage NE StageSel then
|
||||
Set_Property(@Window:'.PUB_SIGN', 'ENABLED', False$)
|
||||
end else
|
||||
Set_Property(@Window:'.PUB_SIGN', 'ENABLED', True$)
|
||||
end
|
||||
|
||||
|
||||
return
|
||||
|
||||
|
||||
PopulateDropdown:
|
||||
|
||||
StageArray = ''
|
||||
RDSNo = Get_Property(@Window, '@RDS')
|
||||
LotSupps = Supplement_Services('GetSupplementsForLot', 'RDS', RDSNo, '')
|
||||
LotCount = Dcount(LotSupps, @FM)
|
||||
For I = 1 to LotCount
|
||||
Stage = Xlate('SUPPLEMENTS', LotSupps<I>, SUPPLEMENTS_STAGE$, 'X', '')
|
||||
StageArray<-1> = Stage
|
||||
Next I
|
||||
Set_Property(@Window : '.CMB_STAGE', 'LIST', StageArray)
|
||||
Set_Property(@Window : '.CMB_STAGE', 'SELPOS', 1)
|
||||
If StageSel NE '' then
|
||||
Locate StageSel in StageArray using @FM Setting StagePos then
|
||||
Set_Property(@Window : '.CMB_STAGE', 'SELPOS', StagePos)
|
||||
end
|
||||
end
|
||||
Gosub GetSupplement
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user