Reallocate Items using SuiteScript

Reallocate committed items from Sales Order using SuiteScript.

Please Note: NetSuite SuiteAnswer says scripting is not supported for Reallocate Items record, but this is possible via Suitescript. So this might become available in future NetSuite releases as a new feature. So I advise everyone to use this with precaution for now.

                   var objReallocateItemRec = record.create({
                        type: record.Type.REALLOCATE_ITEM,
                        isDynamic: true
                    });
                
                
                    objReallocateItemRec.setValue("item", 252);
                    objReallocateItemRec.setValue("location", 2);
                
                    var recLineCount = objReallocateItemRec.getLineCount("order");
                    log.debug("recLineCount", recLineCount);
                    
                    var matchedSOLine = objReallocateItemRec.findSublistLineWithValue({
                        sublistId: 'order',
                        fieldId: 'ordernumber',
                        value: 2080//Document Number
                    });
                    log.debug("matchedSOLine", matchedSOLine);
                
                    objReallocateItemRec.selectLine({
                        sublistId: 'order',
                        line: matchedSOLine
                    });
                    
                    objReallocateItemRec.setCurrentSublistValue({
                        sublistId: 'order',
                        fieldId: 'commit',
                        value: true
                    });
                
                    objReallocateItemRec.setCurrentSublistValue({
                        sublistId: 'order',
                        fieldId: 'quantitycommitted',
                        value: 0
                    });
                
                    objReallocateItemRec.commitLine({
                        sublistId: 'order'
                    });
                
                    var matchedSOLine2 = objReallocateItemRec.findSublistLineWithValue({
                        sublistId: 'order',
                        fieldId: 'ordernumber',
                        value: 2280 //Document Number
                    });
                
                    log.debug("matchedSOLine2", matchedSOLine2);
                
                    objReallocateItemRec.selectLine({
                        sublistId: 'order',
                        line: matchedSOLine2
                    });
                    
                    objReallocateItemRec.setCurrentSublistValue({
                        sublistId: 'order',
                        fieldId: 'commit',
                        value: true
                    });
                
                    objReallocateItemRec.setCurrentSublistValue({
                        sublistId: 'order',
                        fieldId: 'quantitycommitted',
                        value: 8
                    });
                
                    objReallocateItemRec.commitLine({
                        sublistId: 'order'
                    });
                    var recordId = objReallocateItemRec.save({
                        enableSourcing: true,
                        ignoreMandatoryFields: true
                    });
                    log.debug('recordId',recordId)

Leave a comment

Your email address will not be published. Required fields are marked *