My Stuff
Comments
-
Hi BrettKnights , I have tested the details on my end for view mode and it is successfully loaded. Here's my sample: The Client Script: define([], function(){ function myFunc(){ alert("Hello World!"); } return { buttonfxn : myFunc } }); The User event code /** * * @NApiVersion 2.0 * @NScriptType UserEventScript * */…
-
Agreeing with David, the events don't trigger in view mode. And yes, the library seems to loads only right after the button gets clicked
-
HI ssilveri77 , As of the moment, I don't see an API in SuiteScript 2.0 for email verification but there's an API Service provider called mailboxlayer which you could try @ https://mailboxlayer.com/documentation
-
Hi ssilveri77 , What field id/s have you already tried for the { sublistId : 'inventoryassignment', fieldId : '', value : 'myinventoryNumber' }? Have you tried using the fieldId issueinventorynumber?
-
HI karenn , In beforeLoad function, the scriptContext has a newRecord object where you can set the value. Please check https://netsuite.custhelp.com/app/answers/detail/a_id/44545/
-
Supporting david.smith 's statement for the client side, you can parse window.location.search similar to the parameters
-
Hi lukaszMycs , You can you context.request.getLineCount() and context.request.getSublistValue() for Suitelets in SuiteScript 2.0 To use getLineCount() var lineCount = request.getLineCount({ group: "custpage_transaction_list" }); where group is the id of your sublist. To use getSublistValue() var markedAsDelete =…
-
@Infinet Cloud Solution, For your concern, you can use JSZip for this concern to zip a a certain number of files. The only concern you can get with JSZip library is that is uses a number of instructions which makes it a lot better used in Map/Reduce for the zipping of files.
-
Hi David, I am pretty much interested in your use case for this one. TBA on its own has binding with a specific role with the token. This is very visible on the process of generating the token since you are selecting a role when you generate the tokens using the user, the integration record and the roles. In that sense,…
-
Hi ssilveri For the concern, let's reference you code function loadAndRunSearch() { var mySearch = search.load({ id: 'customsearch_my_so_search' }); mySearch.run().each(function(result) { var entity = result.getValue({ name: 'entity' }); var subsidiary = result.getValue({ name: 'subsidiary' }); return true; }); } If you…
-
Hi @karenn, Adding to the details provided by David, it is already on the Suitelet's context itself very similar to 1.0. In 1.0 you get it from the request parameter of your Suitelet function via request.getParameter. In SuiteScript 2.0, pretty much is is just context.request.parameters.parameters.<the id of the…
-
Hi @mvk4a092, Please note that for the afterSubmit entry point, it does not have a context.currentRecord. User Event Scripts contain context.oldRecord and context.newRecord except beforeLoad which only has context.newRecord that's why you should use context.newRecord for this concern.
-
Hi @MChammaTX Yup. The concept is that the process is divided through stages that functions are only called during the instance that their respective entry points get triggered in the process
-
Hi @alex87lee, If you check on https.Method which is the enum for the supported request types in SuiteScript 2.0, you would not see PATCH in there which is very similar in SuiteScript 1.0. One some services, they do have this way of catch for PATCH where they have the client application (which in this case would be…
-
Yup. Due to the public demand on learning to convert 1.0 scripts to 2.0, this 1.0 to 2.0 map would make a great deal for developers over the platform.
-
@CFong, RESTlet is a geat option when it comes to creating integrations since it is REST-based and most of the applications nowadays tend to prefer REST over SOAP due to total performance advantage of REST (generally speaking). Based on the details of your conversation, Suitelets will be a better option to the dashboard…
-
Hi @karenn, Please note that Promise API and Promise object is currently limited to client side. As of the moment, server side scripts are limited to the synchronous processes unlike client script which is user facing. Please check out SuiteAnswers ID 43804 (https://netsuite.custhelp.com/app/answers/detail/a_id/43804/) for…
-
Hi Riaz, I agree with @david.smith's reply. One of the pillars of 2.0 is to be able to run your script/business logic with the minimum amount of imports (modules) needed to improve the total performance of scripts. Similarly, you can do a require() within a define() e.g. define([], function(){ function myinit(a){ if(a ==…
-
Hi @JacksonP, Depending on what your approach be but the better options are a. On Dynamic mode, you can iterate on each line using rec.selectLine() and perform the the getting using rec.getCurrentSublistValue() and setting using rec.setCurrentSublistValue() b. on DeferredDynamic mode, you can iterate the getting by…
-
Hi Darren, If you are encountering this error, can I confirm if you are already using NetSuite version 2016.2? If yes, we are tracking this through Defect # 412503. Please let us know if you are reproducing it using a 2016.1 account through a support case so we can track it.
-
Yes. For dynamic, you must use setCurrentSublist() which means that you have to selectLine() . From what we currently have, the best solution is the iteration on the lines. Thanks for the feedback for sublist. Knowing the difficulty in the development with sublists in 2.0 would be a good feedback to our end to improve our…
-
Hi @jpayne, Just a quick reminder, For your use case, runtime module is the best fit. Please note that config module loads configurations like company information and it is used on server side. Script parameters, users information and session details can be fetched on runtime module.
-
Hi Steve, Record.getvalue() will give you the value of the field on the record. If you are to get the value of a field from a List/record field on the record, let's say on your case which is the custbody_end_user from the sales order, you need to first get the id of the sales order then perform a lookup field for the…
-
HI @davidturton, Aside from the that there is a problem on your formatting, I think you are performing the Promise for https module on the server side. Please note that Promise API and Promise object is currently limited to client side. As of the moment, server side scripts are limited to the synchronous processes unlike…
-
Hi Darren, I agree with David's note above. You simply need to create a javascript file that is SuiteScript 2.0 compliant similar to the one below /** * * @NModuleScope TargetAccount * */ define(["N/record", "N/email", "N/search"], function(record, email, search){ function fxn1(){ .... } function fxn2(){ .... } return {…
-
Hi David, Yes. It returns an array which means that you always have to expect that you need to check whether the result has a content through the result value's length. But I agree that regular select fields are better off as objects instead of array of objects with one element
-
Hi Darren, As of the moment, unfortunately, the dialog module does not have the lightbox capabilities. Most of the functionalities of this module focuses on simple dialogs which is more like UI improvement of native JavaScript alerts and confirm. For this, I second the motion of rather using 1.0
-
Hi jpalmer.asi, If you are using scheduled script and you want to authenticate using Token-based authentication to connect to restlet, you can just use the similar TBA connection code on SuiteAnswers ID 42172 https://netsuite.custhelp.com/app/answers/detail/a_id/42172. The logic of the setting up the connection is similar…
-
Hi Gary, Here's a quick suggestion on this on. A good workaround would be creating a custom record that would handle the credentials. The custom record should have the Accessible in UI checkbox unchecked. To create the credential record, you need to create a Suitelet that will populate the value. For the scripts to access…
-
You need to select a specific index: RecordObj.selectLine({sublistId: 'item', line: 0}); If the setting of value is done on field changed and it is triggered with a sublistId and fieldId containing value, it means that there is a selected line. This means that you should be able to use setCurrentSublistValue() without…