Change the file folder from the sales order to another file cabinet using a user event script.

Jira Code: OTG-71

Find the file from the created sales order. Change the loaded file into the new folder having id 670956 using after submit of user event script.

/**
 * @NApiVersion 2.x
 * @NScriptType UserEventScript
 * @NModuleScope SameAccount
 */

/*******************************************************************************
* OX Tool Global
*  
 ******************************************************************************
* Date: 
 
* Author: Jobin & Jismi IT Services LLP
* Script Description:
* Date created :03/07/2019
 
******************************************************************************/
define(['N/record', 'N/search', 'N/runtime', 'N/file'],
    function(record, search, runtime, file) {
        function afterSubmit(context) {
            try {
                if (context.type == 'create') {
                    var invoiceContent = context.newRecord;
                    log.debug("invoiceContent", invoiceContent);

                    var invoiceOrderId = invoiceContent.id;
                    log.debug("invoiceOrderId", invoiceOrderId);

                    var fieldLookUp = search.lookupFields({
                        type: search.Type.INVOICE,
                        id: invoiceOrderId,
                        columns: ['createdfrom']
                    });

                    var salesorderId = fieldLookUp.createdfrom[0].value
                    log.debug("salesorderId", salesorderId);

                    var fileId = null;
                    var salesorderSearchObj = search.create({
                        type: "salesorder",
                        filters: [
                            ["type", "anyof", "SalesOrd"],
                            "AND",
                            ["internalid", "anyof", salesorderId],
                            "AND",
                            ["mainline", "is", "T"]
                        ],
                        columns: [
                            search.createColumn({
                                name: "internalid",
                                join: "file",
                                label: "Internal ID"
                            })
                        ]
                    });
                    var searchResultCount = salesorderSearchObj.runPaged().count;
                    log.debug("salesorderSearchObj result count", searchResultCount);
                    salesorderSearchObj.run().each(function(result) {
                        fileId = result.getValue(salesorderSearchObj.columns[0]);
                        return true;
                    });
                    log.debug("fileId", fileId);

                    var fileObj = file.load({
                        id: fileId
                    });

                    fileObj.folder = 6168;
                    var savedFile = fileObj.save();
                    log.debug("savedFile", savedFile)

                }

            } catch (err) {
                log.debug("err", err.message);
            }

        }

        return {
            afterSubmit: afterSubmit
        };
    });

Leave a comment

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