Updated the Memo(standard) filed in sales order afetr creating the SO from webiste using suite script 2

JS file

define(

  ‘JJ.MemoFieldSetValue.MemoFieldSetValue’

  , [

    

    ‘OrderWizard.Module.Confirmation’,

    ‘JJ.MemoFieldSetValue.MemoFieldSetValue.SS2Model’,

    ‘Utils’

  ]

  , function (

    

    OrderWizardModuleConfirmation,

    memomethoddModel,

    Utils

  ) {

    ‘use strict’;

    return {

      mountToApp: function mountToApp(container) {

        var checkout = container.getComponent(“Checkout”);

        _.extend(OrderWizardModuleConfirmation.prototype, {

          getContext: _.wrap(OrderWizardModuleConfirmation.prototype.getContext, function getContext(fn) {

            var context = fn.apply(this, _.toArray(arguments).slice(1));

            try {

              

              var order_id = this.model.attributes.confirmation.attributes.internalid;

              console.log(‘order_id’, order_id)

              this.memoModel = new memomethoddModel({ id: order_id });

              this.memoModel.fetch({

              }).done(function (result) {

                console.log(“return confirm memofield”, result);

              });

            } catch (e) {

              console.log(“err@OrderWizardModuleConfirmation”, e);

            }

            return context;

          })

        });

        /** @type {LayoutComponent} */

        

      }

    };

  });

MemoFieldSetValue.Service.ss

/**

* @NApiVersion 2.x

* @NModuleScope Public

*/

define([‘N/record’], function (record) {

 “use strict”;

function fetchOrderDetails(context) {

  try {

    var OrderId = context.request.parameters ? (context.request.parameters.internalid) : null;

    log.error(‘OrderId=’,OrderId);

    var salesOrder = record.load({

      type: record.Type.SALES_ORDER,

      id: OrderId,

      isDynamic: true // Set to true if you need to interact with sublist data

     });

    var currentMemo = salesOrder.getValue(‘custbody9’);

    var oldmemo = salesOrder.getValue(‘memo’);

    salesOrder.setValue({

    fieldId: ‘memo’,

    value: currentMemo

  });

  

var id = salesOrder.save();

  } catch (error) {

   log.error(‘Error fetching order details’, error);

   

  }

  

   return context.response.write(JSON.stringify({ salesorder: OrderId}));

    

}

 return {

     service: fetchOrderDetails

    

   };

});

ss2 model

// Model.js

// ———————–

// @module Case

define(“JJ.MemoFieldSetValue.MemoFieldSetValue.SS2Model”, [“Backbone”, “Utils”], function(

  Backbone,

  Utils

) {

  “use strict”;

  // @class Case.Fields.Model @extends Backbone.Model

  return Backbone.Model.extend({

    //@property {String} urlRoot

    idAttribute: ‘id’,

    urlRoot: Utils.getAbsoluteUrl(

      getExtensionAssetsPath(

        “Modules/MemoFieldSetValue/SuiteScript2/MemoFieldSetValue.Service.ss”

      ),

      true

    )

});

});

Leave a comment

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