Carton Recognition processing interface for JD Edwards
About the Carton Reorganization interface
Carton reorganization is used to organize items and cartons prior to shipping.
The organization of cartons and items is stored in the Carton Reorganization file (F4622). Ultimately this file is read by the ASN process and its contents forwarded to the company receiving the shipment. The dcLINK version is called ND3N4620. This interface was written in NER and calls ‘C' business function, BD3N4621, to retrieve the processing options.
Name | Function name | Description |
---|---|---|
DD3N4620 | dcLINK Interface – Carton Reorganization | |
ND3N4620 | dcLINKInterfaceCartonReorganizat | dcLINK Interface – Carton Reorganization |
DD3N4621 | PO Retrieval – Carton Reorganization Data-Structure | |
BD3N4621 | PORetrieveCartonReorganization | PO Retrieval – Carton Reorganization |
Processing options
The dream writer version will default to ZJDE0001, if not otherwise specified in the parameter list on the call. The processing options are used within the master business function. None of these are actually used by this NER.
Corresponding EnterpriseOne application
The corresponding EnterpriseOne application for carton reorganization.
In EnterpriseOne, the application you would run to perform carton reorganization is P4620 and can be accessed from the menu G4615.
Processing option data structure
Processing option data structure for DD3N4621.
Our interface retrieves these parameters by calling BD3N4621 and is passed back in the following data structure.
Type | Description | Parameter |
---|---|---|
Char | po_cUCC128Creation_EV01 | Output |
Char | po_cCreateTransShipPieces_EV02 | Output |
Char | po_cShipmentTracking_EV03 | Output |
Char | po_cAllowPartialQuantity_EV04 | Output |
Char | po_cAllowCartonCodeChange_EV05 | Output |
Char | po_cErrorOnWeight_EV06 | Output |
String | po_szShipmentStatus_SSTS | Output |
String | po_szLineStatus_LTTR | Output |
String | po_szUpdateCartonStatusCd_CRSS | Output |
String | po_szCartonStatusCode_CRSS | Output |
String | po_szCompanyUCCCode_CUCO | Output |
String | po_szDocumentType_DCT | Output |
String | po_szFunctionSSCCNumber_FNNM | Output |
String | po_szFunctionSSCCValidat_FNNM | Output |
String | po_szVersion_VERS | Input |
String | po_szCompanykeyOrderNo_KCOO | Output |
Char | cCreateLabelSerialNum_CRTLBLSN | Output |
Char | cAllowAddItem_ADDITM | Output |
Char | cAllowRemoveItem_RMVITM | Output |
String | szReconciledCartonStatus_CRSS | Output |
Char | cCartonLabelPreference_CLPP | Output |
Processing
Processing a carton reorganization.
There are nine different activities that can be performed by this function. The action code is used to tell the interface which activity is being performed. The action code value and its actions are as follows.
Action code | Description |
---|---|
1 | Create a new carton and then move an item already on the shipment into the new carton. |
2 | Move an item from one carton to another. |
3 | Move an entire carton into another carton. |
4 | Adds an item into an existing carton. |
5 | Removes a given quantity of an item from a carton. |
6 | Create a new carton and add items into the carton |
7 | Create a new carton and move an existing carton on the shipment into the new carton. |
8 | Change the sales order key on an item in a carton |
9 | Add quantity at the shipment level (not associated with a carton) |
For many of these actions there are two ways they can be performed. Each object in the carton reorganization file has a “unique” key and a “full” key. The “full” key is made up of the sales order number, order type, order line, order suffix, item number, unit of measure, lot number, and carton ID. The test scenarios at the the end of this usage guide show examples of performing some of these actions using the unique key, and then performing the same task using the full key.
The master business functions that this NER calls perform some clean up on their own. They will remove any cartons that do not contain items. So if a function is performed that removes all the items from a carton, that carton will automatically be discarded. Likewise if you try to add a carton, but then don't add any items in that carton, it is going to look like nothing was done, since the carton will be empty and thus discardedwhen this NER closes.
Required fields
Required fields for carton reorganization.
The required fields vary depending on how you are trying to process the transaction. For example, if the unique key is being used, then that becomes a required field. But the full key is used, then all eight of the fields listed above become required. There are some fields that are required, regardless of the processing method used. Those fields are: branch/plant, shipment number, and action code. If the action code is equal to “2” or “3”, then the “to” carton ID becomes a required field. If the action code is equal to “4”, “5”, or “6”, then the unit of measure, and the quantity added or removed must be entered. If the action code is equal to “1” or “6”, and the value of create serial number is equal to a “0”, then the serial number field becomes a required field.
Verify the processing
Verify the processing that took place is to use the E1 application Carton Reorganization.
The easiest way to verify the processing that took place is to use the E1 application Carton Reorganization to visually see that a carton was created, there are items in the carton, the items are associated with the correct sales order, etc.
To verify the processing, complete the following in JDE.
-
Run the Carton Reorganization app.
-
Select the shipment to verify.
-
Select the Select button to bring up the review details.
Input data structure
Input data structure for DD3N4620.
Name | Default values | Notes | ||
---|---|---|---|---|
R/O | Alias | |||
cdcLINKActionCode_EV01 | 0 | X | EV01 | |
cActionCode_ACTION | 0 | X | ACTION | The action code can be one of the following valid values. 1 – Create a carton and then move an existing item into the carton 2 – Move an item from one carton to another carton 3 – Move an entire carton to another carton 4 – Add quantity to an existing carton 5 – Remove quantity from an existing carton 6 – Create a new carton and add items into it 7 – Create a new carton and move existing cartons into it 8 – Change sales order key on a carton 9 – Add quantity to a shipment |
jdDateUpdated_UPMJ | Current Date | X | UPMJ | Retrieved from GetAuditInfo |
mnTimeUpdated_TDAY | Current Time | X | TDAY | Retrieved from GetAuditInfo |
szUserId_USER | Current User | X | USER | Retrieved from GetAuditInfo |
szWorkStationId_JOBN | Current Workstation | X | JOBN | Retrieved from GetAuditInfo |
mnJobNumber_JOBS | O | JOBS | ||
szProgramId_PID | ND3N4620 | X | PID | Defaulted in program if not passed in |
szVersion_VERS | ZJDE0001 | X | VERS | Defaulted in program if not passed in |
cSuppressErrMsg_EV01 | O | EV01 | ||
cErrorCode_ERRC | 0 | X | ERRC | Defaulted in program |
szErrorMessageKey_EKEY | Blanks | X | EKEY | Defaulted in program |
iDebugLevel_INT01 | O | INT01 | Displays M&D Debug statements if the value is greater than 0 | |
mnCartonIDTo_CRID | R | CRID | Required if the action code is equal to 2 or 3. A negative 99 in this field tells the program the carton is at the shipment level. | |
mnCartonIDFrom_CRID | R | CRID | A negative 99 in this field tells the program the carton is at the shipment level. | |
szContainerCode_EQT2 | O, R | EQT2 | Required if the action code being used is creating a carton. | |
mnNumberOfContainers_CYIT | O | CYIT | Action code of 6 allows multiple containers to be created. (Note – all containers have the same container code). | |
mnMoveQuantity_AQTY | O, R | AQTY | Required if the action code is equal to ‘1' or ‘2'. This is the quantity that is being moved into the new carton. | |
szBranchPlant_MCU | R | MCU | Required to validate the item number and unit of measure conversion. | |
mnUniqueKeyID_UKID | O, R | UKID | All existing cartons have a unique ID and can be used to identify the carton to be used. If a unique ID isn't used, then the full key must be used. The full key is the carton ID, UoM, Order Number, Order Type, Order Company, Order Line, and Order suffix. Any transactions that create a carton (1, 6, and 7) must use the full key. | |
szUnknownItemNumber_UITM | O, R | UITM | Used to determine the short item number, which is used on action codes 4, 5, 6, and 8. | |
szLot_LOT | O, R | LOT | Required if the item is a lot controlled item, the action code is 4, 5, or 6, and the order number has been passed in. | |
szUnitOfMeasure_UOM | O, R | UOM | Part of the full key to the carton reorganization file | |
mnOrderNumber_DOCO | O, R | DOCO | Part of the full key to the carton reorganization file | |
szOrderType_DCTO | O, R | DCTO | Part of the full key to the carton reorganization file | |
szOrderCompany_KCOO | O, R | KCOO | Part of the full key to the carton reorganization file | |
mnOrderLine_LNID | O, R | LNID | Part of the full key to the carton reorganization file | |
szOrderSuffix_SFXO | O, R | SFXO | Part of the full key to the carton reorganization file | |
mnShipmentNumber_SHPN | R | SHPN | Required field used in the Begin Doc. | |
szSerialNumber_PAK | O | PAK | If the field cCreateSerialNum_CRTLBLSN is equal to a 0m then the NER is expecting that a serial number will be passed into the NER in this field. | |
szGuidApprover1_USR1 | O, R | USR1 | An entry in this field or the Approver 2 field will cause a signature capture record to be written. Signature capture records are part of the GUID processing and should not be used unless a GUID is being created by dcLINK. The value of this field is a User ID, not an address book entry. There must be a value passed in to either this field, or the approver 2 field, otherwise it is an error. | |
szGuidFullName1_FULLNAME1 | O | FULLNAME1 | This field is the full name of the GUID Approver 1. | |
szGuidApprover2_USR2 | O, R | USR2 | GUID processing supports up to two approvers. If two approvers are required, this is the user ID of the second approver. There must be a value passed in to either this field, or the approver 1 field, otherwise it is an error. | |
szGuidFullName2_FULLNAME2 | O | FULLNAME2 | This field is the full name of the GUID Approver 2. | |
mnGuidReasonCode1_REASON1 | O, R | REASON1 | If either of the approver fields contain a value, but no value is entered into one of the reason code fields, then an error will be returned. Reason codes must match the valid reason codes setup for GUID processing, otherwise it is an error. | |
szGuidCommentField_COMMENTS | O | COMMENTS | This is a free form entry field that is used to further explain the reason code entered into the previous field. | |
mnGuidReasonCode2_REASON2 | O, R | REASON2 | If either of the approver fields contains a value, but no value is entered into one of the reason code fields, then an error will be returned. Reason codes must match the valid reason codes setup for GUID processing, otherwise it is an error. | |
szGuidCommentField2_2COMMENTS | O | 2COMMENTS | This is a free form entry field that is used to further explain the reason code entered in the previous field. | |
szGuidScriptID_FMNMVERS | O | FMNMVERS | In PeopleSoft the screen ID where the change was made is captured. dcLINK captures the script ID. | |
szGuidTextMessage_TEXTMES | O | TEXTMES | This is a free form entry field. | |
mnQtyAddedRemoved_TQTY | O, R | TQTY | Required if the action code is equal to 4, 5, 6, or 8. | |
cCreateSerialNum_CRTLBLSN | O | CRTLBLSN | Valid values are as follows. 0 – don't create a serial number as one will be passed into this function in the szSerialNumber_PAK field 1 – Create a Tare serial number 2 – Create a Pack serial number 3 – Create a label next number |
|
szGuidUniqueID_GUID | Automatically generated by dcLINK | O | CFRGUID | If generate GUIDs is turned on in the dcLINK configuration utility, this field will contain a GUID (guaranteed unique identifier). The GUID is used to tie database changes in PeopleSoft to the transactions that triggered those changes to occur. |
szNewUnitOfMeasure_UOM | O | UOM | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
mnNewOrderNumber_DOCO | O | DOCO | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
szNewOrderType_DCTO | O | DCTO | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
szNewOrderCompany_KCOO | O | KCOO | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
mnNewLineNumber_LNID | O | LNID | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
szNewOrderSuffix_SFXO | O | SFXO | If the action code is equal to ‘8', which means the sales order key is being changed, then this field is part of that new sales order key. | |
szSerialNumberType_SNTY | O | SNTY | Not used. | |
szSecContainerSerialNo_CTSN | O | CTSN | Not used | |
cGenerateSecSerialNum_EV01 | 0 | O | EV01 | Not used |
R = Required
X = Required but will default in if not passed
O = Optional
Transaction test scenarios
Transaction test scenaries for adding and removing cartons.
The following test scenarios demonstrate a variety of ways in which this interface could be used, and the fields that would be passed for each scenario. The data structure fields are in the left column, and the corresponding values for each scenario are listed by column.
Notes | Add a carton and move an item into it | Add a carton and move an item into it | Move an item from one carton to another | Move an item from one carton to another | Move and entire carton to another carton | Add quantity to a carton | Add quantity to a carton |
---|---|---|---|---|---|---|---|
cdcLINKActionCode_EV01 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
cActionCode_ACTION | 1 | 1 | 2 | 2 | 3 | 4 | 4 |
jdDateUpdated_UPMJ | |||||||
mnTimeUpdated_TDAY | |||||||
szUserId_USER | |||||||
szWorkStationId_JOBN | |||||||
mnJobNumber_JOBS | |||||||
szProgramId_PID | |||||||
szVersion_VERS | |||||||
cSuppressErrMsg_EV01 | |||||||
cErrorCode_ERRC | |||||||
szErrorMessageKey_EKEY | |||||||
iDebugLevel_INT01 | |||||||
mnCartonIDTo_CRID | 3 | 4 | 3 | ||||
mnCartonIDFrom_CRID | 1 | 48 | 4 | 3 | 4 | 2 | 20 |
szContainerCode_EQT2 | PAL3 | PAL3 | |||||
mnNumberOfContainers_CYIT | |||||||
mnMoveQuantity_AQTY | 1 | 3 | 1 | 1 | |||
szBranchPlant_MCU | 27 | 27 | 27 | 27 | 27 | 27 | 27 |
mnUniqueKeyID_UKID | 1 | 4 | 2 | ||||
szUnknownItemNumber_UITM | 210 | 210 | 210 | 210 | 210 | 210 | 210 |
szLot_LOT | |||||||
szUnitOfMeasure_UOM | EA | EA | EA | EA | |||
mnOrderNumber_DOCO | 91622 | 91511 | 91511 | 302100 | |||
szOrderType_DCTO | S4 | S4 | S4 | S4 | |||
szOrderCompany_KCOO | 200 | 200 | 200 | 200 | |||
mnOrderLine_LNID | 1 | 2 | 2 | 1 | |||
szOrderSuffix_SFXO | 0 | 0 | 0 | 0 | |||
mnShipmentNumber_SHPN | 107360 | 107385 | |||||
szSerialNumber_PAK | |||||||
szGuidApprover1_USR1 | |||||||
szGuidFullName1_FULLNAME1 | |||||||
szGuidApprover2_USR2 | |||||||
szGuidFullName2_FULLNAME2 | |||||||
mnGuidReasonCode1_REASON1 | |||||||
szGuidCommentField_COMMENTS | |||||||
mnGuidReasonCode2_REASON2 | |||||||
szGuidCommentField2_2COMMENTS | |||||||
szGuidScriptID_FMNMVERS | |||||||
szGuidTextMessage_TEXTMES | |||||||
mnQtyAddedRemoved_TQTY | 2 | 4 | |||||
cCreateSerialNum_CRTLBLSN | 2 | 2 | |||||
szGuidUniqueID_GUID | |||||||
szNewUnitOfMeasure_UOM | |||||||
mnNewOrderNumber_DOCO | |||||||
szNewOrderType_DCTO | |||||||
szNewOrderCompany_KCOO | |||||||
mnNewLineNumber_LNID | |||||||
szNewOrderSuffix_SFXO | |||||||
szSerialNumberType_SNTY | |||||||
szSecContainerSerialNo_CTSN | |||||||
cGenerateSecSerialNum_EV01 |
Field name | Remove a quantity from a carton | Remove a quantity from a carton | Create a new carton and add items into it | Add a carton and then move a carton under it | Change a sales order | Change a sales order key | Add quantity to a shipment |
---|---|---|---|---|---|---|---|
cdcLINKActionCode_EV01 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
cActionCode_ACTION | 5 | 5 | 6 | 7 | 8 | 8 | 9 |
jdDateUpdated_UPMJ | |||||||
mnTimeUpdated_TDAY | |||||||
szUserId_USER | |||||||
szWorkStationId_JOBN | |||||||
mnJobNumber_JOBS | |||||||
szProgramId_PID | |||||||
szVersion_VERS | |||||||
cSuppressErrMsg_EV01 | |||||||
cErrorCode_ERRC | |||||||
szErrorMessageKey_EKEY | |||||||
iDebugLevel_INT01 | |||||||
mnCartonIDTo_CRID | |||||||
mnCartonIDFrom_CRID | 11 | 1 | 14 | 52 | 19 | ||
szContainerCode_EQT2 | PAL3 | PAL1 | CTN2 | BOX2 | |||
mnNumberOfContainers_CYIT | 1 | 1 | |||||
mnMoveQuantity_AQTY | |||||||
szBranchPlant_MCU | 27 | 27 | 27 | 27 | 27 | 30 | 27 |
mnUniqueKeyID_UKID | 10 | 46 | |||||
szUnknownItemNumber_UITM | 2440 | 210 | 210 | 210 | 210 | 2440 | 210 |
szLot_LOT | |||||||
szUnitOfMeasure_UOM | EA | EA | EA | EA | EA | EA | EA |
mnOrderNumber_DOCO | 91511 | 91511 | 91511 | 1001260 | 302100 | ||
szOrderType_DCTO | S4 | S4 | S4 | S4 | S4 | ||
szOrderCompany_KCOO | 200 | 200 | 200 | 1 | 200 | ||
mnOrderLine_LNID | 2 | 2 | 2 | 2 | 1 | ||
szOrderSuffix_SFXO | 0 | 0 | 0 | 0 | 0 | ||
mnShipmentNumber_SHPN | 107360 | 107360 | 1533 | 3383 | |||
szSerialNumber_PAK | |||||||
szGuidApprover1_USR1 | |||||||
szGuidFullName1_FULLNAME1 | |||||||
szGuidApprover2_USR2 | |||||||
szGuidFullName2_FULLNAME2 | |||||||
mnGuidReasonCode1_REASON1 | |||||||
szGuidCommentField_COMMENTS | |||||||
mnGuidReasonCode2_REASON2 | |||||||
szGuidCommentField2_2COMMENTS | |||||||
szGuidScriptID_FMNMVERS | |||||||
szGuidTextMessage_TEXTMES | |||||||
mnQtyAddedRemoved_TQTY | 6 | 1 | 2 | 2 | 2 | 4 | |
cCreateSerialNum_CRTLBLSN | 2 | 1 | |||||
szGuidUniqueID_GUID | |||||||
szNewUnitOfMeasure_UOM | EA | EA | |||||
mnNewOrderNumber_DOCO | 91622 | 1001358 | |||||
szNewOrderType_DCTO | S4 | S4 | |||||
szNewOrderCompany_KCOO | 200 | 1 | |||||
mnNewLineNumber_LNID | 1 | 1 | |||||
szNewOrderSuffix_SFXO | 0 | 0 | |||||
szSerialNumberType_SNTY | |||||||
szSecContainerSerialNo_CTSN | |||||||
cGenerateSecSerialNum_EV01 |
Common error messages
The following are common error messages that can be generated by this BF, and what those error messages mean.
Error message | Meaning |
---|---|
0002 | Record Invalid: In the context of this BF, this error is returned when an error has been detected from one of these three business functions: dcLINK Set User ID, dcLINK Utility Set Audit Info, or dcLINK Utility Write Signature Capture Record. |
0003 | Blanks Invalid: This error code is generated if the action code is equal to 4, 5, or 6, and the szUnitOfMeasure_UOM field is equal to blanks. |
053P | Invalid Shipment Number: If the shipment number field (mnShipmentNumber_SHPN) is empty this error is returned. |
054C | Invalid Value: This error is generated if the action code is equal to 1 or 6, and the create serial number field (cCreateSerialNum_CRTLBLSN) has a value other than 0, 1, 2, or 3. |
855 | Quantity Invalid: If the action code is equal to a 2, and the quantity being moved (mnMoveQuantity_AQTY) is greater than the total quantity stored in the carton reorganization file, then this error is displayed. |
095T | Container ID can not be blank: This error is generated if the action code is equal to 2 or 3, and the mnCartonIDTo_CRID is equal to blanks. |
138T | Action Code Invalid: The action code is not equal to 1, 2, 3, 4, 5, 6, 7, 8, or 9. |
3390 | Blanks Required: For action codes 1, 6, 7, and 9 the unique key ID field (mnUniqueKeyID_UKID) must be empty. |
3582 | Negative Quantity Invalid: This error is generated if the action code is equal to 5, and the field mnQtyAddedRemoved_TQTY is a negative number. |
3612 | Quantity may not exceed original: If the action code is equal to a 5, and the quantity to remove (mnQtyAddedRemoved_TQTY) is greater than the total quantity in the carton reorganization file, then this error is displayed. This error can also be displayed if the action code is equal to 8, the new sales order has a different unit of measure that requires conversion, and once converted the quantity is greater than the total quantity from the carton reorganization file. |
3968 | Invalid Quantity: This error code is generated if the action code is equal to 4, 5, or 6, and the mnQtyAddedRemoved_TQTY field does not have a value. |
4645 | Blank Key Fields: In order to read records from the F4620 file, this NER either needs the key fields or the unique key ID. If all the following fields are blank, then this error is generated: mnUniqueKeyID_UKID, mnCartonIDFrom_CRID, szUnknownItemNumber_UITM, szLot_LOT, szUnitOfMeasure_UOM, mnOrderNumber_DOCO, szOrderType_DCTO, szOrderCompany_KCOO, mnOrderLine_LNID, and szOrderSuffix_SFXO. |
4813 | Serial Number Must be Entered: This error is generated if the action code is equal to 1 or 6, and the serial number field (szSerialNumber_PAK) is empty but the control field (cCreateSerialNum_CRTLBLSN) is equal to 0. |
Loading...
There was a problem loading this topic