You may find these errors

You have entered an Invalid Field Value 13028543 for the following field: purchaseorder
Please enter value(s) for: PO, Item
Please enter value(s) for: Item

According to the Schema, the mandatory fields are purchaseorder, shipmentitem. Yes, that purchaseorder refers the internalid of purchase order, but the shipmentitem does not mean the item ids of the item on the PO – it’s actually lineuniquekey of PO items!

Here is a working example and all you need to do is to replace ids with records in your environment and add more fields if needed.

let recObj = record.create({
                type: 'inboundshipment',
                isDynamic: true
            })
            var purchaseorderSearchObj = search.create({
                type: "purchaseorder",
                filters:
                    [
                        ["type", "anyof", "PurchOrd"],
                        "AND",
                        ["internalid", "anyof", poId],
                        "AND",
                        ["mainline", "is", "F"],
                        "AND",
                        ["taxline", "is", "F"]
                    ],
                columns:
                    [
                        search.createColumn({ name: "lineuniquekey", label: "Item" })
                    ]
            });
            let line = 0
            purchaseorderSearchObj.run().each(function (result) {
                recObj.selectLine({ sublistId: 'items', line: line })
                recObj.setCurrentSublistValue({ sublistId: 'items', fieldId: 'purchaseorder', value:  poId})
                recObj.setCurrentSublistValue({ sublistId: 'items', fieldId: 'shipmentitem', value: result.getValue({name: 'lineuniquekey'}) })
                recObj.commitLine({ sublistId: 'items' })
                line++
                return true;
            });
            const inShpId = recObj.save()
Last modified: 25/08/2023

Author

Comments

Nice! That was useful

Write a Reply or Comment

Your email address will not be published.