While using the standard New button in Salesforce will have some limited functionality, almost all Breadwinner for NetSuite customers will want to create records in NetSuite either using Breadwinner's Global Classes and Methods (not covered in this article) or they will want to use our Guided Record Creation wizard (which is explained below).
This process requires:
- A Custom URL, created via our Custom URL documentation or internal Custom URL Creation Wizard
- A Formula Referencing the NetSuite Item
- A Custom Button with that URL as the value, ideally as a List button on the record you want to create
- That custom button Displayed on the Page Layout of the record you want to create from
To create a Custom URL, please feel free to contact Breadwinner Support for assistance. However, should you wish to create it yourself, or further modify an existing button yourself, then you are welcome to use the same documentation we use internally. Please be aware that we change this documentation by adding to it and some aspects may not be fully tested (which is why we prefer you contact us). The Custom URL is documented here. Once you have the Custom URL value, you will need to save it as a button.
Formula Referencing the NetSuite Item
When you create a NetSuite Transaction Record (Estimate, Sales Order, Invoice, Credit Memo, etc) you will need to specify at least one line item. And those line items will need to specify an existing NetSuite Item. So to create a record from Breadwinner, a NetSuite Item needs to be specified. Normally this is specified via a formula that points to a lookup to Breadwinner's NetSuite Item, but a direct lookup is technically possible.
Breadwinner has, as part of it's managed package, a lookup from Salesforce's standard Product to Breadwinner's NetSuite Item. And, we have a Product Match tool in Breadwinner's setup tab that will help you associated the Salesforce Products to the NetSuite Items. If Breadwinner was used to mass-create Salesforce Products from NetSuite Items, then this association is already established.
However, you will need to create an additional formula field in Salesforce to reflect this lookup. So, if you are creating NetSuite records from the Opportunity Products, or from the Order Products, you would need a formula on those objects traversing the association between the Opportunity Products or Order Products, through the Salesforce Product, to the final NetSuite Item. And, if you are creating records from Salesforce Custom Objects, you will need a formula (or lookup) from those line-item-esque custom objects to Breadwinner's NetSuite Item.
The URL must be the value of a custom Button. That button needs to be on the Object you want to create. So, if you wanted to create a Sales Order in NetSuite, this custom button must be on the "NetSuite Sales Order" object in Salesforce.
Here is an example screenshot of a custom button on a NetSuite Sales Order
While the value of the button will change for each situation, the configuration of the button should look like this screenshot. Please note this is a List Button, for which "Display Checkboxes" is unchecked, and it opens in an existing window without sidebar or header.
Displayed on the Page Layout
While the custom button itself must be on the record you wish to create, the button must be placed on the page from which you are creating that NetSuite Record.
So, if you are creating a NetSuite Sales Order from an Opportunity, the custom button must be on the Opportunity. In this example, the NetSuite Sales Order related list will be on the Opportunity. The standard New button must be removed, and the Change Owner should likely be removed as well. And, the Custom Button should be added to the Sales Order related list.
If you are using the Object Manager, navigate to the Object you are creating from, edit the Page Layouts (number 1 on the screenshot), find the NetSuite object's related list, click on the wrench/spanner (number 2 on the screenshot), expand the Buttons section which will be on the bottom of the white modal (number 3 on the screenshot), and ensure that the two standard buttons are unchecked, and that your custom button is in the Selected Buttons section (the two green boxes on the screenshot).
It is possible and fairly easy to create multiple buttons. You might want multiple buttons for different sales activities, or multiple buttons for different page layouts. Or you might want to create multiple buttons to allow the creation of a NetSuite Object from different originating objects/records. In short, there are a number of reasons you might want multiple buttons, as you will need a single button per Custom URL.
If you have multiple buttons, then calling them all "New NetSuite Sales Order" will be problematic, because you won't know which one is which. So, you might wish to name your button "New NetSuite [Object] from [Object]", so in our above example it would be "New NetSuite Sales Order from Opportunity". Or "New NetSuite Sales Order for Renewals" if your Custom URL is different for renewals vs new sales. (this would not be necessary if the Custom URL code was the same, in which case, multiple buttons are not warranted)