Skip to content

Statement of needs

Lenovo VMI system is responsible for connecting with domestic and foreign 3PLs. During the docking process, there are often some full-data interfaces. The data volume is large and packets are easily lost when the network is not good. Therefore, this solution is to send a large amount of data in pages and need to verify the integrity.

1.1 History

VersionDateContentCommitter
v1.02021-8-23initwangdong18
v1.12021-09-28supplement process and key fieldslingcq1
V1.22021-10-191. soi_gr, loi_gr remove asn field and add an, anLine 2. pull _info add new field destStorageLoclingcq1
V1.32021-11-181. pull_info, mo_pull_list add route 2. pull_info add groupId, totalQty 3. confirm pull add destStorageLocation 4. build new apis.Delivery Summary,Delivery details,Temporary store for deliverylingcq1
v1.42021-12-091. add comments for body and response code 2. support hgc 3. all api add source_system, target_system, system_timelingcq1
v1.42021-12-13Delivery Details add Delivery Note,truck license,total gross weight,total quantitylingcq1
v1.52021-12-17modify purchase_order and item_supplier_all calculation logic,from full quantity to plant quantitylingcq1
v1.62022-01-05Plan modificationlingcq1
v1.72022-01-131. add plan description 2. rename system name VMI/HIC/LESHINE 3. update confirm data request sample 4. add full request samplelingcq1
v1.82022-01-171. modify confirm api, add fail statuslingcq1
v1.92022-01-21supplement apilingcq1
v1.102022-01-22supplement VMI api, WSO2 key& tokenlingcq1
v1.112022-02-15Outbound warehouse and No. 3 GR-HIC shipment summary, No. 3 temporary storage shipment summary adds pallet information, new interfaces are to be developed, and the structure will be added later.lingcq1
v1.122022-02-16Add logic to the two interfaces of external warehouse and No. 3 GR-HIC shipment summary, and No. 3 temporary storage shipment summary (to be determined): 1. one push_id data has only one time signaturelingcq1
v1.132022-02-17No. 3 temporary storage interface to realtimelingcq1
v1.142022-02-21No. 3 temporary storage interface add deliveryNo and deliveryLineNolingcq1
v1.152022--02-22No. 3 temporary storage interface url;/specialReceive/HIC/whse_tmp_trd_sum_deliverylingcq1
v1.162022--02-23Confirm that the request fails, add failList, failReason, data return result.message;gaomx5/lingcq1
v1.172022-02-28Confirm that the temporary storage interface No. 3 is a real-time interface: url;/specialReceive/HIC/whse_tmp_trd_sum_deliverylingcq1
v1.182022-03-04Added No. 3 GR and external warehouse receipt summary interfacelingcq1
v1.192022-03-08Add supplier code, order number and other information to customs declaration detailslingcq1
v1.202022-03-23No. 3 temporary storage, No. 3 GR and external warehouse receipt summary interface return value adjustmentlingcq1
v1.212022-04-07purchase_order to purchase_ordergaomx5
v1.222022-04-13PULL_INFO add saNumber saLineIdgaomx5
v1.232022-04-20PULL_MO_INFO add indicator remarkgaomx5
v1.242022-04-221. PULL_MO_INFO add changeType。 2. No. 3 temporary storage api quantity = mo+item, palletQty indicates the total number of deliveryNo in this batchlingcq1
v1.252022-05-11add WSO2 uat(pre-p)environmentgaomx5
v1.262022-05-16pull_info api add productionOrdId。 if mo bom change, leave this field null. In addition, for mo bom change, the changeType value in pull_mo_info mentioned in v1.24, if mo creates a manual pull of mo bom change, the corresponding entire mo list must be re-sent to 3pl, and the field value It is UPDATE, not mo bom change value ADD.lingcq1
v1.272022-05-16add WSO2 prd environment configlingcq1
v1.282022-06-06Organize the document format and separate the scanning-related interfaces into another documentlingcq1
v1.292022-06-301. extend workshopCode: 1.4 add workshopCode description ;1.8 1.9section add workshop_code on same level with push id; 2. 1.8 add push_id requirements:Globally unique batch data ID generated by the client,LESHINE: LESHINE*; HIC BOX: timestamp; HIC SMT; HIC-SMT** 3.1.10 PULL_INFO, PULL_MO_INFO add content related to scheduling and stack numberlingcq1
v1.302022-07-22support LSSC SMT: 1.10 pull_mo_info add prodDesc and moQty 2. 1.10 customs add dropshipFlag,Separate loading and separate customs declaration mark, Y/Nlingcq1
v1.312022-07-251.9 simplify responselingcq1
v1.322022-09-29add runFlag to pull linelingcq1
v1.332023-01-04add runFlag to mo listlingcq1
v1.342023-04-11add sh2 wso2 environmentlingcq1
v1.352023-06-14add urgent pull api, 3PL can manual pull through this api, LX VMI will use src-900-dest to move stocklingcq1
v1.362023-07-28modify urgent pull to async confirmationlingcq1
v1.372023-12-13Supplement and modify the WSO2 environment and the corresponding S4 environmentgaomx5

1.2 Access process

mermaid
sequenceDiagram
Partner->>WSO2: request Token
WSO2-->>Partner: return Token
Partner->>WSO2: request API
WSO2->>VMI: request API
VMI-->>WSO2: return response 
WSO2-->>Partner: return reponse

1.3 Plan description

According to the above solution, all three parties (Lenovo VMI, Haichen, and LESHINE) need to provide an interface for sending data and an interface for confirming data. The sending data interface is used to receive data sent by the other party. The interface for confirming data is the other party's confirmation of the sent data. Subsequent processing can be carried out only after the confirmation is successful. Lenovo vmi resends data and will enable a new push_id to push data. At the same time, Haichen and Liansheng are required to resend data and use a new unique push_id. This solution does not include temporary storage and delivery of No. 3, GR receipt of No. 3, external warehouse receipt interface, and pda scanning interface. Temporary storage and delivery on No. 3, GR receipt on No. 3, external warehouse receipt interface, pda scanning interface, etc. all require real-time performance, so they are made into real-time interfaces and placed in separate documents.

1.4 Public parameter description

Parameter positionParameter nameDescriptionExample
pathbiz_keybiz_key issued to the clientitem_supplier_all
headersignThe result of signing the body through the secret_key issued to the userdisabled
bodysource_systemYstring
bodytarget_systemYstring
bodysystem_timeYstring,request time 2021-12-09 11:00:00
bodyworkshop_codeBusiness identification, Nanfang Factory BOX: LSSC; Nanfang Factory SMT: LSSC-SMT, if not filled in, the default is LSSCLSSC-SMT

1.5 Request limits

  • The total number of JSON contents of RequestBody shall not exceed 1,000, that is, the amount of data in a single page shall not exceed 1,000. 1000 bars are not fixed and can be adjusted according to the pressure test before going online. If the total number of items for a push_id is greater than 1,000, paging is required.

1.6 Public return instructions

Parameter positionParameter NameRequiredTypeFormatDescriptionExmple
responsecodeYstring---status code"0" success, others failed
responsemsgNstring---messagedetail message on error

1.7 Return code

PostistionValueDescription
httpcode200success request
httpcode401Token error
body.code"0"success
body.code"-1"system error

1.8 Push data

Description: For data with a large amount of concurrency at the same time, it needs to be compressed into the same push_id for sending, otherwise it will affect the subsequent workflow. If the Sender has finished sending a push_id data, it can wait for the Receiver to confirm.

Method:POST

ContentType: application/json

Request description

Parameter positionParameter nameRequiredTypeFormatDescriptionExample
bodypush_idYstring---Globally unique batch data ID generated by the client, LESHINE: LESHINE*; HIC BOX: timestamp; HIC SMT; HIC-SMT*---
bodyworkshop_codeNstringbusiness identity, South plant BOX: LSSC; South plant SMT: LSSC-SMT, default: LSSC
bodytotal_sizeYnumber---total size---
bodycurrent_pageYnumbercurrent page
bodycurrent_page_sizeYnumbercurrent page size
bodydataYarray------
Request sample
json
first request
{
  "push_id": "11111",
  "workshop_code":"LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
    {
      "pull1": "EMC021122001"
    }
  ]
}

second request
{
  "push_id": "11111",
  "workshop_code":"LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 2,
  "current_page_size": 1,
  "data": [
    {
      "pull2": "EMC021122001"
    }
  ]
}
Response sample
json

{
    "code":"0",
    "msg":"success"
}

{
    "code":"-1",
    "msg":"exception for what"
}

1.9 Confirm data

Description: When the Receiver collects the total amount of data for a push_id, it needs to send a confirm signal to the Sender. Only when the confirm signal itself reaches both systems will the push be considered completed.

Request description
Parameter positionParameter nameRequiredTypeFormatDescriptionExample
bodypush_idYstring---Globally unique batch data ID generated by the client---
bodyworkshop_codeNstringbusiness identity, South plant BOX: LSSC; South plant SMT: LSSC-SMT, default: LSSC
bodyresult.statusYstringsuccess/fail
bodyresult.messageNstringfail message
bodyresult.failListNarrayfail data collection
bodyresult.failList.failReasonNstringfail data item
bodyresult.failList.dataNobjectfail data
json

{
"push_id": "11111",
"workshop_code":"LSSC-SMT",
"source_system": "VMI",
"target_system": "HIC/LESHINE", 
"system_time":"2020-11-20 14:00:00",
"result":{
   "status": "success",
   "message":"success" 
	}
}


{
"push_id": "wwww",
"workshop_code":"LSSC-SMT",
"source_system": "VMI",
"target_system": "HIC/LESHINE", 
"system_time":"2020-11-20 14:00:00",
"result":{
   "status": "fail",
   "message":"fail reason",
   "failList":[{"failReason":"fail reason", "data":{//The entire data can be returned, or only the primary key + factory can be returned}}]
	}
}
Response data description
Parameter positionParameter nameNot nullTypeFormatDescriptionExample
bodyresult.statusYstringThe final state of the data after confirmation. success/timeout/in_process/failsuccess
bodyresult.messageNstringMessage
接口返回示例
json

{
    "code":0,
    "msg": "success",
    "result":{
        "status":"success",
        "message":"ok"
    }
}

Failed to confirm 1, code! = "0", the system is abnormal and you need to continue confirming. It is recommended to confirm again regularly (repeat confirmation every minute, if it exceeds 20 minutes, you don’t need to confirm)
{
    "code":-1,
    "msg": "exception/in_process"
}

    Failed confirmation 2 code = '0' && status = 'fail'. In this case, the data is invalid and there is no need to continue confirming. The reason for status= fail may be the failure of the other party's confirmation, or it may be a timeout.
{
    "code":0,
    "msg": "success",
    "result":{
        "status":"fail",
    	"message":"fail/timeout"
    }
}
Data duplication prevention mechanism and frequency
DataTransfer modeFrequency
SOI_GRIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
LOI_GRIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
MO_PREKITTING_FINISHIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
CONFIRM_PULLIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
DISPATCH_PULLIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
BALANCE_PULLIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
INVENTORY_SNAPSHOTIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.HIC/LESHINE: daily, Take a snapshot at 2am, by plant
PO_SNAPSHOTIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.HIC/LESHINE: daily,Take a snapshot at 2am,full amount
CUSTOMS_DELIVERY_DETAILIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
PURCHASE_ORDERIn full, after fetching a batch of data, identify the factory, delete the corresponding factory data in the table, and then insert it.2h
ITEM_SUPPLIER_ALLIn full, after fetching a batch of data, identify the factory, delete the corresponding factory data in the table, and then insert it.
ITEM_SUPPLIERIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
PULL_INFOIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.
PULL_MO_LISTIncremental, multiple identical Primary Key data are considered duplicates, and only one is taken.

1.10 Request data Description

SOI_GR data
ParameterTypeDB typeDescriptionPrimary KeyRequired
tplReceiptIdstringVARCHAR2(20)3PL receipt id,Y
supplierIdstringVARCHAR2(10)Supplier id
shipToIdstringVARCHAR2(4)Logical plant
receiptDatestringDateReceipt date, yyyy-MM-dd HH:mm:ss
tplReceiptLineIdstringVARCHAR2(20)3PL receipt line idY
itemIdstringVARCHAR2(18)Item id
destBinstringVARCHAR2(40)Destination bin
destTypestringVARCHAR2(40)Destination type
destStorageLocationstringVARCHAR2(40)Destination storage location
quantitynumberNUMBER(13,3)Quantity
holdTypestringCHAR(1)Q or S
holdQuantitynumberNUMBER(13,3)Hold quantity
houseAirWayBillstringVARCHAR2(32)House Airway Bill
purchaseOrderIdstringVARCHAR2(10)Empty for now
purchaseOrderLineIdstringVARCHAR2(10)Empty for now
dnNumberstringVARCHAR2(26)Delivery Notes on Packing info
anstringVARCHAR2(10)arrival notice
anLinestringVARCHAR2(5)arrival notice line
dataTypestringVARCHAR2(20)SOIGR
json
{
  "push_id": "11111",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "workshop_code": "LSSC-SMT",
   "data": [
    {
      "tplReceiptId": "188011",
      "supplierId": "1000068649",
      "shipToId": "L220",
      "receiptDate": "2020-11-20 14:00:00",
      "tplReceiptLineId": "S37250",
      "itemId": "000000C52509",
      "destBin": "VENDOR",
      "destType": "C21",
      "destStorageLocation": "MRNM",
      "quantity": 1440,
      "holdType": "Q",
	 "holdQuantity":0,
	 "houseAirWaybill":"APLU062607978",
	 "purchaseOrderId": "",
	 "purchaseOrderLineId":"",
	  "dnNumber":"5500150390",
      "an": "1234567896",
      "anLine": "1234567896",
      "dataType": "SOIGR"
    }
  ]
}
LOI_GR data
ParameterTypeDB typeDescriptionPrimary KeyRequired
tplReceiptIdstringVARCHAR2(20)3PL receipt idY
supplierIdstringVARCHAR2(10)Supplier id
shipToIdstringVARCHAR2(4)Logical plant
receiptDatestringDATEReceipt date,yyyy-MM-dd HH:mm:ss
invoiceNumberstringVARCHAR2(16)Invoice number
tplReceiptLineIdstringVARCHAR2(20)3PL receipt line idY
itemIdstringVARCHAR2(18)Item id
destBinstringVARCHAR2(40)Destination bin
destTypestringVARCHAR2(40)Destination type
destStorageLocationstringVARCHAR2(40)Destination storage location
quantitynumberNUMBER(13,3)Quantity
holdTypestringCHAR(1)Q or S
holdQuantitynumberNUMBER(13,3)Hold quantity
houseAirWayBillstringVARCHAR2(32)House Airway Bill
purchaseOrderIdstringVARCHAR2(10)Purchase Order (or Sales Agreement) Number
purchaseOrderLineIdstringVARCHAR2(5)Purchase Order Line (or Sales Agreement Line) Number
dnNumberstringVARCHAR2(26)Delivery Notes on Packing info.
anstringVARCHAR2(10)arrival notice
anLinestringVARCHAR2(5)arrival notice line
dataTypestringVARCHAR2(20)LOIGR
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
    {
      "tplReceiptId": "188011",
      "supplierId": "1000068649",
      "shipToId": "X410",
      "receiptDate": "2020-11-20 14:00:00",
	  "invoiceNumber": "9953090187",
      "tplReceiptLineId": "S37250",
      "itemId": "000000C52509",
      "destBin": "VENDOR",
      "destType": "C21",
      "destStorageLocation": "MRNM",
      "quantity": 1440,
      "holdType": "Q",
	 "holdQuantity":0,
	 "houseAirWaybill":"APLU062607978",
	 "purchaseOrderId": "",
	 "purchaseOrderLineId":"",
	  "dnNumber":"5500150390",
      "an": "1234567896",
      "anLine": "1234567896",
      "dataType": "LOIGR"
    }
  ]
}
MO_PREKITTING_FINISH data
ParameterTypeDB typeDescriptionPrimary KeyRequired
productionOrdIdstringVARCHAR2(80)mo idY
shipToIdstringVARCHAR2(4)plant
sourceTypestringVARCHAR2(40)pre source type
sourceStorageLocationstringVARCHAR2(40)pre source sloc
sourceBinstringVARCHAR2(40)pre source bin
destTypestringVARCHAR2(20)dest type
destStorageLocationstringVARCHAR2(40)dest location
destBinstringVARCHAR2(40)dest bin
pullQuantitynumberNUMBERpull qty
itemIdstringVARCHAR2(18)material nameY
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
    {
      "productionOrdId": "EMC021122001",
      "shipToId": "L210",
      "sourceType": "L21",
      "sourceStorageLocation": "MRNM",
	  "sourceBin": "FIS",
      "destType": "W02",
      "destStorageLocation": "MW02",
      "destBin": "KIT",
      "pullQuantity": 2,
      "itemId": "SP10R39102"
    }
  ]
}
CONFIRM_PULL data
ParameterTypeDB typeDescriptionPrimary KeyRequired
pullIdStringVARCHAR2(40)Pull header idY
shipToIdStringVARCHAR2(40)Logic plant
destStorageLocationStringVARCHAR2(40)destStorageLocation
destBinStringVARCHAR2(40)Destination bin
destTypeStringVARCHAR2(40)Destination type
pullTypeStringVARCHAR2(40)Pull type
pullLineIdStringVARCHAR2(40)Pull line idY
itemIdStringVARCHAR2(18)Item id
supplierIdStringVARCHAR2(40)Supplier id
sourceStorageLocationStringVARCHAR2(40)Source storage location
sourceBinStringVARCHAR2(40)Source bin
sourceTypeStringVARCHAR2(40)Source type
quantitynumberNUMBERConfirm quantity
dataTypeStringVARCHAR2(40)PullConfirm
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "workshopCode": "LSSC-SMT",
  "data": [
      {
		"pullId": "1489865",
		"shipToId": "L210",
        "destStorageLocation": "MMMN",
		"destBin": "W09",
		"destType": "W06",
		"pullType": "NORMAL",
		"pullLineId": "18390314",
		"itemId": "000000A36941",
		"supplierId": "1000037984",
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"sourceType": "C51",
		"quantity": 21,
		"dataType": "PullConfirm"
	}
  ]
}
DISPATCH_PULL data
ParameterTypeDB typeDescriptionPrimary KeyRequired
pullIdStringVARCHAR2(10)Pull header idY
shipToIdStringVARCHAR2(4)Logic plant
shippedDateStringDATEShipped date
pullLineIdStringVARCHAR2(10)Pull line idY
itemIdStringVARCHAR2(18)Item id
supplierIdStringVARCHAR2(40)Supplier id
sourceStorageLocationStringVARCHAR2(40)Source storage location
sourceBinStringVARCHAR2(40)Source bin
sourceTypeStringVARCHAR2(40)Source type
quantitynumberNUMBERDispatch quantity
dataTypeStringVARCHAR2(40)Dispatch
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"pullId": "P102237",
		"shipToId": "L210",
		"shippedDate": "2021-09-11 11:11:11",
		"pullLineId": "PL136303",
		"itemId": "000000A36941",
		"supplierId": "1000037984",
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"sourceType": "C51",
		"quantity": 21,
		"dataType": "Dispatch"
	}
  ]
}
BALANCE_PULL data
ParameterTypeDB typeDescriptionPrimary KeyRequired
pullIdStringVARCHAR2(10)Pull header idY
shipToIdStringVARCHAR2(4)Logic plant
shippedDateDATEDATEShip date
destTypeStringVARCHAR2(40)Destination type
destBinStringVARCHAR2(40)Destination bin
pullLineIdStringVARCHAR2(40)Pull line idY
itemIdStringVARCHAR2(40)Item id
supplierIdStringVARCHAR2(40)Supplier id
destStorageLocationStringVARCHAR2(40)
sourceStorageLocationStringVARCHAR2(40)Source storage loc
sourceBinStringVARCHAR2(40)Source bin
sourceTypeStringVARCHAR2(40)Source type
quantitynumberNUMBERquantity
dataTypeStringVARCHAR2(40)Balance
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"pullId": "H102237",
		"shipToId": "L270",
		"shippedDate": "2021-09-11 11:11:11",
		"destType": "L51",
		"destBin": "FIS",
		"pullLineId": "PL136303",
		"itemId": "000000A36941",
		"supplierId": "1000037984",
        "destStorageLocation":"sss",
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"sourceType": "C21",
		"quantity": 21,
		"dataType": "Balance"
	}
  ]
}
INVENTORY_SNAPSHOT data
ParameterTypeDB typeDescriptionPrimary KeyRequired
supplierIdStringVARCHAR2(40)Supplier idY
shipToIdStringVARCHAR2(4)Logic plantY
itemIdStringVARCHAR2(18)Item idY
statusStringVARCHAR2(10)StatusY
storageLocationStringVARCHAR2(40)Storage locationY
storageBinStringVARCHAR2(40)Storage binY
storageTypeStringVARCHAR2(40)Storage typeY
quantitynumberNUMBERquantity
dataTypeStringVARCHAR2(40)Inventory
json
{
  "push_id": "11111",
  "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"supplierId": "1000037984",
		"shipToId": "L270",
		"itemId": "000000A36941",
		"status": "A",
		"storageLocation": "MRNM",
		"storageBin": "VENDOR",
		"storageType": "C25",
		"quantity": 1,
		"dataType": "Inventory"
	}
  ]
}
PO_SNAPSHOT data
ParameterTypeDB typeDescriptionPrimary KeyRequired
purchaseOrderIdStringVARCHAR2(10)Po idY
supplierIdStringVARCHAR2(40)Supplier id
shipToIdStringVARCHAR2(4)Logic plant
createDateDateDATECreate date
startDateDateDATEStart date
endDateDateDATEEnd date
purchaseOrderLineIdStringVARCHAR2(5)Po line idY
itemIdStringVARCHAR2(18)Item id
quantitynumberNUMBERquantity
openQuantitynumberNUMBEROpen quantity
dataTypeStringVARCHAR2(40)POK
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"purchaseOrderId": "4500375969",
		"supplierId": "1000037984",
		"shipToId": "L210",
        "createDate":"2021-09-01 11:11:11",
        "startDate":"2021-09-01 11:11:11",
        "endDate":"2021-09-01 11:11:11",
		"purchaseOrderLineId": "L10",
		"itemId": "000000A36941",
		"quantity": 1,
		"openQuantity": 1,
		"dataType": "POK"
	}
  ]
}
CUSTOMS_DELIVERY_DETAIL
ParameterTypeDB typeDescriptionPrimary KeyRequired
deliveryNoteNoStringVARCHAR2(18)Y
deliveryLineNoString
deliveryPlateNumbernumberVARCHAR2(10)truck license
totalGrossWeightStringNUMBER(18,3)
totalBoxNumbernumberNUMBER(18,3)
itemIdStringVARCHAR2(18)item id
quantitynumbernumber
pullIdStringVARCHAR2(10)pullheaderidY
pullLineIdStringVARCHAR2(10)pulllineidY
inventoryTypeStringVARCHAR2(10)inventory type SOI or LOI
sourcePlantStringVARCHAR2(4)
sourceLocationStringVARCHAR2(4)
destPlantStringVARCHAR2(4)
destLocationStringVARCHAR2(4)
cooStringVARCHAR2(20)
brandStringVARCHAR2(20)
typeStringVARCHAR2(20)
dataTypeStringVARCHAR2(40)
supplierCodeStringVARCHAR2(40)
orderNoStringVARCHAR2(12)
orderItemStringVARCHAR2(32)
fullBoxIndicatorStringVARCHAR2(32)Y or N
pricenumberNUMBER(18,5)
currStringVARCHAR2(10)currency
dropshipFlagstringVARCHAR2(2)Y/N
json
{
  "push_id": "11111",
  "workshop_code": "LSSC-SMT",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"deliveryNoteNo":"20212222",
        "deliveryPlateNumber":"20212222",
        "totalGrossWeight":1111.3721,
        "totalBoxNumber":666,
        "itemId": "0000041U7042",
        "quantity": 1,
		"pullId": "P104329",
		"pullLineId": "PL123316",
        "inventoryType":"SOI",
        "sourcePlant": "C24",
		"sourceLocation": "MRNM",
        "destPlant": "C25",
		"destLocation": "MRNM",
        "coo": "xx",
		"brand": "xx",        
        "type":"candyman",
		"dataType": "CUSTOMS_DELIVERY",
        "route":"MRNM_FFFF",
        "supplierCode":"00000123",
        "orderNo":"moId",
        "orderItem":"molineid",
        "fullBoxIndicator":"Y",
        "price": 11,
        "curr":"502",
        "dropshipFlag":"Y"
	}
  ]
}
PURCHASE_ORDER data
ParameterTypeDB typeDescriptionPrimary KeyRequired
purchaseOrderIdstringVARCHAR2(10)PO IdY
supplierIdstringVARCHAR2(10)Supplier Id
shipToIdstringVARCHAR2(4)Logical plant
purchaseOrderLineIdstringVARCHAR2(5)PO line idY
poTypestringVARCHAR2(40)
itemIdstringVARCHAR2(18)Material Id
quantitynumberNUMBER(13,3)Quantity
openQuantitynumberNUMBER(13,3)Open quantity
storageLocationstringVARCHAR2(40)Storage location
returnItemstringVARCHAR2(40)Remark return PO
dataTypestringVARCHAR2(20)PO
createDatestringDATECreateDate
startDatestringDATEStartDate
endDatestringDATEEndDate
json
{
  "push_id": "11111",
   "workshop_code": "LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
      "purchaseOrderId": "509405940594",
      "supplierId": "1000019769",
      "shipToId": "X410",
      "purchaseOrderLineId": "00202",
      "poType": "MB",
      "itemId": "0000041U7042",
      "quantity": 9964,
      "openQuantity": 22,
      "storageLocation": "MRMN",
      "returnItem": "eeeeeee",
      "dataType": "PO",
      "createDate": "2021-01-01 11:11:11",
      "startDate": "2021-01-01 11:11:11",
      "endDate": "2021-01-01 11:11:11"
	}
  ]
}
ITEM_SUPPLIER_ALL/ITEM_SUPPLIER data
ParameterTypeDB typeDescriptionPrimary KeyRequired
supplierIdstringVARCHAR2(40)Supplier IdY
supplierDescstringVARCHAR2(200)Supplier Description
itemIdstringVARCHAR2(18)Material IdY
itemDescstringVARCHAR2(200)Material Description
shipToIdstringVARCHAR2(4)Logical plantY
itemTypestringVARCHAR2(40)Material type, defined by ECC sscode
statusstringVARCHAR2(40)Operation type *
inspectionTypestringVARCHAR2(40)Whether the item needs inspection
dataTypestringVARCHAR2(20)ItemSupplier
json
{
  "push_id": "11111",
  "workshop_code": "LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"supplierId": "1000019769",
		"supplierDesc": "Asia Vital Components Company Ltd",
		"itemId": "0000041U7042",
		"itemDesc": "BRACKETQ4000bracket325BT ",
		"shipToId": "X410",
		"itemType": "PU",
		"status": "UPDATE",
		"inspectionType": "Y",
		"dataType": "ItemSupplier"
	}
  ]
}
PULL_INFO data
ParameterTypeDB typeDescriptionPrimary KeyRequired
shipToIdStringVARCHAR2(4)Logic plant
productionLineStringVARCHAR2(40)Production line
deliveryDateStringDATEDelivery date (DS upload) XXX
destStorageLocStringVARCHAR2(40)Destination storage location
destTypeStringVARCHAR2(40)Destination type
destBinStringVARCHAR2(40)Destination bin
pullTypeStringVARCHAR2(40)Pull type *
moTypeStringVARCHAR2(40)Demand type *
isSOIStringVARCHAR2(10)CASE WHEN INVENTORY_TYPE='SOI' THEN 'Y' ELSE 'N' END
creationDateStringDATECreation date
pullIdStringVARCHAR2(10)Pull header IDY
pullLineIdStringVARCHAR2(10)Pull line IDY
tplReceiptIdStringVARCHAR2(10)3PL receipt ID
tplReceiptLineIdStringVARCHAR2(10)3PL receipt line ID
sourceTypeStringVARCHAR2(40)Source type
sourceStorageLocationStringVARCHAR2(40)Source storage location
sourceBinStringVARCHAR2(40)Source bin
specialRemarkStringVARCHAR2(40)Nullable
supplierIdStringVARCHAR2(40)Supplier ID
supplierDescStringVARCHAR2(40)Nullable in case of LOI
quantitynumberNUMBERRequest quantity
fullBoxQuantitynumberNUMBERFull box quantity
itemIdStringVARCHAR2(18)Material ID
itemDescStringVARCHAR2(200)Material description
lotNumberStringNUMBERonly for manual
boxIdStringVARCHAR2(40)only for manual
brandStringVARCHAR2(40)only for manual
cooStringVARCHAR2(18)only for manual
dateCodeStringVARCHAR2(40)only for manual
urgentStringVARCHAR2(40)only for manual
dataTypeStringVARCHAR2(40)Pull
routeStringVARCHAR2(400)
groupIdStringVARCHAR2(20)
totalQtynumbernumber
saNumberStringVARCHAR2(64)
saLineIdStringVARCHAR2(5)
productionOrdIdStringVARCHAR2(20)For BOX, MO; for SMT, schedule number
stackLocationBarCodestringVARCHAR2(20)SMT only
runFlagstringVARCHAR2(100)forbox, BDT220810RUN1,BDT220810RUN2
json
{
  "push_id": "11111",
  "workshop_code": "LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "workshop_code":"LSSC-SMT",
  "data": [
      {
		"shipToId": "L220",
		"productionLine": "mx_kit131",
		"deliveryDate": "2021-01-01 11:11:11",
        "destStorageLoc": "MRNM",
		"destType": "W02",
		"destBin": "1DTKIT",
		"pullType": "MANUAL",
		"moType": "SO",
		"isSOI": "Y",
		"creationDate": "2021-01-01 11:11:11",
		"pullId": "P104329",
		"pullLineId": "PL123316",
		"tplReceiptId ": "104329",
		"tplReceiptLineId ": "104329",
		"sourceType": "C24",
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"specialRemark": "1494233 L-121",
		"supplierId": "1000019769",
		"supplierDesc": "SEAGATE TECHNOLOGY LLC",
		"quantity": 1,
		"fullBoxQuantity": 6,
		"itemId": "0000041U7042",
		"itemDesc": "HDD_ASM 1TB SGT Grenada SSHD",
		"lotNumber": "xx",
		"boxId": "xx",
		"brand": "xx",
		"coo": "xx",
		"dateCode": "xx",
		"urgent": "xx",
		"dataType": "Pull",
        "route":"MRNM_FFFF",
        "groupId":"GROUP1",
        "totalQty":1009,
        "saNumber":"5100000000",
        "saLineId":"00010",
        "productionOrdId": "MSSSSSSS", 
        "stackLocationBarCode":"0001",  
        "runFlag":"BDT220810RUN1,BDT220810RUN2",  
	}
  ]
}
PULL_MO_INFO data
ParameterTypeDB typeDescriptionPrimary KeyRequired
productionOrdIdStringVARCHAR2(12)For BOX, MO; for SMT, schedule numberY
stackLocationBarCodestringVARCHAR2(20)stack location for SMT .BOX leave it nullY- Only for smt
shipToIdStringVARCHAR2(4)plant
bomNameStringVARCHAR2(18)finish goods name
pullIdStringVARCHAR2(10)pull header idY
pullLineIdStringVARCHAR2(10)pull line idY
sourceTypeStringVARCHAR2(40)source type
sourceStorageLocationStringVARCHAR2(40)source sloc
sourceBinStringVARCHAR2(40)source bin
destTypeStringVARCHAR2(40)dest type
destStorageLocationStringVARCHAR2(40)dest sloc
destBinStringVARCHAR2(40)dest bin
pullTypeStringVARCHAR2(40)
inventoryTypeStringVARCHAR2(40)inventory type LOI/SOI
supplierIdStringVARCHAR2(40)soi: vendor id, loi default 3PL
headerSupplierIdStringVARCHAR2(40)3pl
pullQuantitynumberNUMBERpull qty
productionLineStringVARCHAR2(40)production line
deliveryDateStringDATEdelivery date by APS
itemIdStringVARCHAR2(18)material name
posnrStringVARCHAR2(4)reservation no in MO bom
routeStringVARCHAR2(400)
indicatorStringVARCHAR2(10)CSCoriginal packing:CSC, others leave null
remarkStringVARCHAR2(250)
changeTypeStringVARCHAR2(10)ADD/UPDATEif mo bom changed, need to resend whole mo list and set it to UPDATE, others ADD
prodDescstringVARCHAR2(120)production description
moQtynumberNUMBER(11,0)mo qty
runFlagstringVARCHAR2(100)forbox, BDT220810RUN1,BDT220810RUN2
json
{
  "push_id": "11111",
  "workshop_code": "LSSC-SMT",
  "source_system": "VMI",
  "target_system": "HIC/LESHINE", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "data": [
      {
		"productionOrdId": "EMC021122001",
        "stackLocationBarCode":"0001"  
		"shipToId": "L270",
		"bomName": "10QYPAR1EU",
		"pullId": "1643590",
		"pullLineId": "23814134",
		"sourceType": "C24",
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"destType": "C24",
		"destStorageLocation": "MRNM",
		"destBin": "VENDOR",
		"pullType": "NORMAL",
		"inventoryType": "SOI",
		"supplierId": "1000194982",
		"headerSupplierId": "flex",
		"pullQuantity": 2,
		"productionLine": "mx_kit131",
		"deliveryDate": "2021-01-01 11:11:11",
		"itemId": "0000041U7042",
		"posnr": "0049",
        "route":"MRNM_FFFF",
        "indicator": "",
        "remark":"",
        "changeType":"ADD",
        "prodDesc":"product",
         "moQty":10,
         "runFlag":"BDT220810RUN1,BDT220810RUN2",  -- 
	}
  ]
}
URGENT_PULL data
ParamTypeDB TypeDescriptionPrimary KeyRequired
pullIdStringVARCHAR2(10)starts with H and cannot be repeated with balance pull.Y
shipToIdStringVARCHAR2(4)
shippedDateDATEDATEShip date
destTypeStringVARCHAR2(40)Destination type
destBinStringVARCHAR2(40)Destination bin
pullLineIdStringVARCHAR2(40)Pull line idY
itemIdStringVARCHAR2(40)Item id
supplierIdStringVARCHAR2(40)Supplier id, 3PL if LOI else if SOI , should be vendor id
destStorageLocationStringVARCHAR2(40)Used for warehouse IM movement
sourceStorageLocationStringVARCHAR2(40)Source storage loc
sourceBinStringVARCHAR2(40)Source bin
sourceTypeStringVARCHAR2(40)Source type
remarkStringVARCHAR2(4000)limited to 4000 length
quantitynumberNUMBERquantity
dataTypeStringVARCHAR2(40)Balance
json
{
  "push_id": "11111",
   "workshop_code": "LSSC",
  "source_system": "HIC/LESHINE",
  "target_system": "VMI", 
  "system_time":"2020-11-20 14:00:00",
  "total_size": 2,
  "current_page": 1,
  "current_page_size": 1,
  "mode":"sync", //This interface will be confirmed asynchronously by the workflow, so add this parameter
  "data": [
      {
		"pullId": "H102237",//It starts with H and cannot be repeated with balance pull.
        "pullLineId": "PL136303",
		"shipToId": "L270",
		"shippedDate": "2021-09-11 11:11:11",
        "destStorageLocation":"sss",
		"destType": "L51",
		"destBin": "FIS",
		"itemId": "000000A36941",
		"supplierId": "3PL",//Supplier id, if it is LOI, please fill in 3PL, if it is SOI, please fill in supplier id
		"sourceStorageLocation": "MRNM",
		"sourceBin": "VENDOR",
		"sourceType": "C21",
		"quantity": 21,
        "remark":"for what DN",
		"dataType": "URGENT"
	}
  ]
}