diff --git a/LSL2/STPROC/WORK_ORDER_SERVICES.txt b/LSL2/STPROC/WORK_ORDER_SERVICES.txt index 1477ebf..a1e0679 100644 --- a/LSL2/STPROC/WORK_ORDER_SERVICES.txt +++ b/LSL2/STPROC/WORK_ORDER_SERVICES.txt @@ -61,7 +61,7 @@ Declare subroutine obj_WO_Mat, obj_Post_Log Declare function SRP_Array, Work_Order_Services, Memory_Services, Database_Services, SRP_Sort_Array, SRP_JSON Declare function Company_Services, obj_Prod_Spec, Schedule_Services, obj_WO_Log, obj_WO_Step, Memberof, Datetime Declare function Environment_Services, Logging_Services, Hold_Services, Signature_Services, Lot_Services -Declare function SRP_Datetime, RTI_CreateGUID, RDS_Services, UCase +Declare function SRP_Datetime, RTI_CreateGUID, RDS_Services, UCase, Date_Services LogPath = Environment_Services('GetApplicationRootPath') : '\LogFiles\WO_LOG' LogDate = Oconv(Date(), 'D4/') @@ -1155,8 +1155,10 @@ Service UpdateReceivedQty(WONo) If WONo NE '' then If RowExists('WO_LOG', WONo) then WORec = Database_Services('ReadDataRow', 'WO_LOG', WONo) - If Error_Services('NoError') then - RXQty = obj_WO_Log('RxQty', WONo:@RM:WORec) + If Error_Services('NoError') then + WOQty = WORec + RXQty = obj_WO_Log('RxQty', WONo:@RM:WORec) + OpenQty = WOQty - RXQty Open 'WO_LOG' to hTable then ReadV OrigRXQty from hTable, WONo, WO_LOG_RX_QTY_STATIC$ then If OrigRXQty NE RXQty then @@ -1169,6 +1171,19 @@ Service UpdateReceivedQty(WONo) end else ErrorMsg = 'Error in ':Service:' service. Error reading RX_QTY_STATIC column from WO_LOG ':WONo:'.' end + If ErrorMsg EQ '' then + ReadV OrigOpenQty from hTable, WONo, WO_LOG_OPEN_QTY_STATIC$ then + If OrigOpenQty NE OpenQty then + WriteV OpenQty on hTable, WONo, WO_LOG_OPEN_QTY_STATIC$ else + ErrorMsg = 'Error in ':Service:' service. Failed to write received quantity ':RXQty + ErrorMsg := ' to the OPEN_QTY_STATIC field of WO_LOG record ':WONo:'.' + ErrorMsg := '@FILE_ERROR: ':@FILE_ERROR + end + end + end else + ErrorMsg = 'Error in ':Service:' service. Error reading OPEN_QTY_STATIC column from WO_LOG ':WONo:'.' + end + end end else ErrorMsg = 'Error in ':Service:' service. Failed to open the WO_LOG table.' end @@ -1344,31 +1359,48 @@ Service ConvertRecordToJSON(WONo, Record, ItemURL) If SRP_JSON(objWOLog, 'New', 'Object') then SRP_JSON(objWOLog, 'SetValue', 'KeyId', @ID) SRP_JSON(objWOLog, 'SetValue', 'ProdOrdNo', {PROD_ORD_NO}) - SRP_JSON(objWOLog, 'SetValue', 'PSN', {PROD_SPEC_ID}) + SRP_JSON(objWOLog, 'SetValue', 'PSN', {PS_NO}) SRP_JSON(objWOLog, 'SetValue', 'EpiPartNo', {EPI_PART_NO}) - SRP_JSON(objWOLog, 'SetValue', 'HOT_FLAG', {HOT_FLAG}) - //Create a list of cassettes + SRP_JSON(objWOLog, 'SetValue', 'HotFlag', {HOT_FLAG}) + SRP_JSON(objWOLog, 'SetValue', 'WoQty', {WO_QTY}) + SRP_JSON(objWOLog, 'SetValue', 'RxQty', {RX_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'RelQty', {REL_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'UnRelQty', {UNREL_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'ShipQty', {SHIP_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'ScrapQty', {SCRAP_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'OpenQty', {OPEN_QTY_STATIC}) + SRP_JSON(objWOLog, 'SetValue', 'CustNo', {CUST_NO}) + SRP_JSON(objWOLog, 'SetValue', 'Customer', {CUST_NAME}) + // Create a list of cassettes CassIDs = {WO_MAT_KEY} objChildCassettes = '' If SRP_JSON(objChildCassettes, 'New', 'Array') then If CassIDs NE '' then for each Cass in CassIDs using @VM setting vPos - SAPBatchNo = XLATE('WO_MAT', Cass, WO_MAT_SAP_BATCH_NO$, 'X') - SAPTXDtm = XLATE('WO_MAT', Cass, WO_MAT_SAP_TX_DTM$, 'X') - RDSNo = XLATE('WO_MAT', Cass, WO_MAT_RDS_NO$, 'X') - ShipNo = XLATE('WO_MAT', Cass, WO_MAT_SHIP_NO$, 'X') - //Add in each indv. cassette object - objChildCassette = '' - If SRP_JSON(objChildCassette, 'New', 'Object') then - SRP_JSON(objChildCassette, 'SetValue', 'KeyId', Cass) - SRP_JSON(objChildCassette, 'SetValue', 'SAPBatchNo', SAPBatchNo) - SRP_JSON(objChildCassette, 'SetValue', 'SAPTXDtm', OCONV(SAPTXDtm, 'DT')) - SRP_JSON(objChildCassette, 'SetValue', 'RDSNo', RDSNo) - SRP_JSON(objChildCassette, 'SetValue', 'ShipNo', ShipNo) - SRP_JSON(objChildCassettes, 'Add', objChildCassette) - SRP_JSON(objChildCassette, 'Release') + WOMatRec = Database_Services('ReadDataRow', 'WO_MAT', Cass) + If Error_Services('NoError') then + // Add in each indv. cassette object + objChildCassette = '' + If SRP_JSON(objChildCassette, 'New', 'Object') then + SRP_JSON(objChildCassette, 'SetValue', 'KeyId', Cass) + SRP_JSON(objChildCassette, 'SetValue', 'CassNo', Field(Cass, '*', 2, 1)) + SRP_JSON(objChildCassette, 'SetValue', 'SAPBatchNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'SAPTXDtm', Date_Services('ConvertDateTimeToISO8601', WOMatRec)) + SRP_JSON(objChildCassette, 'SetValue', 'RDSNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'ShipNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'LotNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'Qty', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'CustPartNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'SubPartNo', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'VendorCd', WOMatRec) + SRP_JSON(objChildCassette, 'SetValue', 'RecDtm', Date_Services('ConvertDateTimeToISO8601', WOMatRec)) + SRP_JSON(objChildCassette, 'SetValue', 'RelDtm', Date_Services('ConvertDateTimeToISO8601', WOMatRec)) + SRP_JSON(objChildCassette, 'SetValue', 'RecUser', OConv(WOMatRec, '[XLATE_CONV,LSL_USERS*FIRST_LAST]')) + SRP_JSON(objChildCassette, 'SetValue', 'RelUser', OConv(WOMatRec, '[XLATE_CONV,LSL_USERS*FIRST_LAST]' )) + SRP_JSON(objChildCassettes, 'Add', objChildCassette) + SRP_JSON(objChildCassette, 'Release') + end end - Next Cass end else SRP_JSON(objWOLog, 'SetValue', 'ChildCassettes', '') @@ -1395,7 +1427,6 @@ Service ConvertRecordToJSON(WONo, Record, ItemURL) SRP_JSON(objJSON, 'Set', '_links', objLinks) SRP_JSON(objLinks, 'Release') end - // Create the _class property for this resource. SRP_JSON(objJSON, 'SetValue', '_class', 'resource') end diff --git a/LSL2/STPROCINS/WO_LOG_EQUATES.txt b/LSL2/STPROCINS/WO_LOG_EQUATES.txt index 47d6b0e..c02cb7c 100644 --- a/LSL2/STPROCINS/WO_LOG_EQUATES.txt +++ b/LSL2/STPROCINS/WO_LOG_EQUATES.txt @@ -96,4 +96,5 @@ Equ WO_LOG_RX_STAMPS$ To 83 Equ WO_LOG_REL_STAMPS$ To 84 Equ WO_LOG_CURR_STATUS_STATIC$ To 85 Equ WO_LOG_SCRAP_QTY_STATIC$ To 86 +Equ WO_LOG_OPEN_QTY_STATIC$ To 87