Merged PR 13813: Lot void routines enhancement

Lot void routines enhancement

Related work items: #110807
This commit is contained in:
Ouellette Jonathan (CSC FI SPS MESLEO)
2025-03-27 18:51:25 +01:00
parent 507c6bffba
commit b76db6bc72
22 changed files with 3950 additions and 2447 deletions

View File

@ -64,9 +64,9 @@ Options BOOLEAN = True$, False$
// Returns an array of active services for the indicated server.
//----------------------------------------------------------------------------------------------------------------------
Service GetServices(Server)
Services = ''
If Server NE '' then
Sentence = 'SELECT SERVICES WITH SERVER EQ ' : Quote(Server) : ' AND WITH ACTIVE EQ "Yes"'
rv = Set_Status(0)
@ -82,7 +82,7 @@ Service GetServices(Server)
end
Repeat
end
Sentence = 'SELECT SERVICES WITH SERVER EQ "" AND WITH ACTIVE EQ "Yes"'
rv = Set_Status(0)
RList(Sentence, TARGET_ACTIVELIST$, '', '', '')
@ -101,9 +101,9 @@ Service GetServices(Server)
end else
Error_Services('Add', 'Server argument was missing from the ' : Service : ' service.')
end
Response = Services
end service
@ -113,7 +113,7 @@ end service
// Returns an array of active services for the indicated server.
//----------------------------------------------------------------------------------------------------------------------
Service GetServiceKeys()
Services = ''
Sentence = 'SELECT SERVICES BY NAME'
rv = Set_Status(0)
@ -127,9 +127,9 @@ Service GetServiceKeys()
Repeat
end
Services[-1, 1] = ''
Response = Services
end service
@ -139,35 +139,36 @@ end service
// Returns the details of the indicated service.
//----------------------------------------------------------------------------------------------------------------------
Service GetService(Service)
ServiceDetails = ''
If Service NE '' then
ServiceDetails = Database_Services('ReadDataRow', 'SERVICES', Service)
end else
Error_Services('Add', 'Service argument was missing from the ' : Service : ' service.')
end
Response = ServiceDetails
end service
Service ProcessProcedureQueue()
Open 'PROC_QUEUE' to hProcQueue then
Select hProcQueue
Select hProcQueue
EOF = False$
Loop
ReadNext RequestKeyID else EOF = True$
Until EOF
Lock hProcQueue, RequestKeyID then
Lock hProcQueue, RequestKeyID then
Database_Services('GetKeyIDLock', 'PROC_QUEUE', RequestKeyId)
RequestRow = Database_Services('ReadDataRow', 'PROC_QUEUE', RequestKeyID)
If RequestRow NE '' then
Procedure = RequestRow<PROC_QUEUE.PROC_NAME$>
Params = RequestRow<PROC_QUEUE.PARAMS$>
If Procedure NE '' then
Dim ProcParams(10)
Dim ProcParams(11)
For each Param in Params using @VM setting pPos
ProcParams(pPos) = Param
Next Param
@ -183,7 +184,8 @@ Service ProcessProcedureQueue()
Case NumArguments EQ 7 ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7))
Case NumArguments EQ 8 ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7), ProcParams(8))
Case NumArguments EQ 9 ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7), ProcParams(8), ProcParams(9))
Case Otherwise$ ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7), ProcParams(8), ProcParams(9), ProcParams(10))
Case NumArguments EQ 10 ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7), ProcParams(8), ProcParams(9), ProcParams(10))
Case Otherwise$ ; Call @Procedure(ProcParams(1), ProcParams(2), ProcParams(3), ProcParams(4), ProcParams(5), ProcParams(6), ProcParams(7), ProcParams(8), ProcParams(9), ProcParams(10), ProcParams(11))
End Case
end
end
@ -197,12 +199,13 @@ Service ProcessProcedureQueue()
Unlock hProcQueue, RequestKeyID else Null
end
Repeat
end
end service
Service PostProcecure(ProcedureName, Params)
Service PostProcedure(ProcedureName, Params)
Response = ''
If (ProcedureName NE '') then
@ -210,17 +213,17 @@ Service PostProcecure(ProcedureName, Params)
RequestRow = ''
RequestRow<PROC_QUEUE.PROC_NAME$> = ProcedureName
RequestRow<PROC_QUEUE.PARAMS$> = Params
RequestRow<PROC_QUEUE.ENTRY_DTM$> = Datetime()
Database_Services('WriteDataRow', 'PROC_QUEUE', RequestKeyID, RequestRow, True$, False$, False$)
end else
Error_Services('Add', 'Error in ':Service:' service. Null ProcedureName passed in.')
end
return
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Internal GoSubs
/// Internal GoSubs
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////