NetSuite Transaction Types and Names

Transaction Type Type Code Bill VendBill Bill Credit VendCred Bill Payment VendPymt Bin Putaway Worksheet BinWksht Bin Transfer BinTrnfr Blanket Purchase Order BlankOrd Cash Refund CashRfnd Cash Sale CashSale CCard Refund CardRfnd Check Check Commission Commissn Credit Card CardChrg Credit Memo CustCred Cross Charge Journal XChgJrnl Currency Revaluation FxReval Customer Deposit CustDep Customer Refund CustRfnd... » read more

SuiteScript接口开发与沙盒的兼容性

对于只有正式账号,没有沙盒账号的环境而言,不太需要在设计的时候考虑接口与沙盒环境的兼容性。而对于一部分有多个沙盒账号的环境而言,沙盒的兼容性尤为重要,否则刷沙盒可能造成外部系统的混乱。 Suitelet做endpoint 用suitelet作为接口确实有一些hacky(因为suitelet原生是不带验证的,一旦url被滥用可能非常尴尬),但是确实有开发者会使用它。 在外部系统调用suitelet的时候需要考虑的东西不会太多,主要是账号的后缀-sb需要正确,它意味着正确的系统环境;而h参数一样决定了访问是否成功。 对于suitelet类型的脚本每次刷新之后系统会更新h这个参数,因此你的url每次刷新都需要改变。 Restlet类型的脚本 Restlet脚本在沙盒兼容性上考虑的最少。 外部系统调用restlet的时候需要考虑到账号的-sb参数以及realm(针对OAuth1.0) 对于restlet类型脚本,每次刷新之后需要考虑重新创建Integration以确保获得正确的token和secret 其他脚本 其他脚本包括了所有可能通过http、https请求向外部发送请求数据的脚本,包括但不限于MapReduce, Scheduled, UserEvent等服务器端的脚本,实现的目的包括推送、更改、获取数据等等。 在设计上,有两种思路: 以上都需要用到N/runtime 如果应用了以上的设计思路,那么正式环境和沙盒环境可以实现脚本互相通用,刷新了沙盒环境也无需顾虑。如果没有采取以上的设计思路,则需要在沙盒环境刷新之后尽快调整脚本的部署,尤其是定时类型的脚本,比如MapReduce和Scheduled。

nlapiSubmitField and record.submitFields(options) are not Setting the Value of Custom Fields on Inbound Shipment Records

Scenario As per Issue: 505122, the SuiteScript API nlapiSubmitField does not set the value on custom fields applied to the Inbound Shipment record. However, the following workaround can be used to overcome this limitation till the issue is resolved. Solution 1. Load the required Inbound Shipment record;2. Set the value of the custom field;3. Submit the... » read more

Papa Parse无法获得csv文件的第一列

错误描述 用papa parse可以获得csv的行的数据,用Object.keys()和Object.values()均正常,但是使用object.attribute或者object["atrribute"]的方式均无法拿到第一列的值 错误解决 这个是papa parse的一个bug,使用transformHeader: header => header.trim()可以解决

NetSuite Transaction Internal Status List

Status SearchFilter  Cash Sale:Unapproved Payment  CashSale:A  Cash Sale:Not Deposited  CashSale:B  Cash Sale:Deposited  CashSale:C  Check:Voided  Check:V  Check:Online Bill Pay Pending Accounting Approval  Check:Z  Commission:Pending Payment  Commissn:A  Commission:Overpaid  Commissn:O  Commission:Pending Accounting Approval  Commissn:P  Commission:Rejected by Accounting  Commissn:R  Commission:Paid in Full  Commissn:X  Statement Charge:Open  CustChrg:A  Statement Charge:Paid In Full  CustChrg:B  Credit Memo:Open  CustCred:A  Credit Memo:Fully Applied  CustCred:B  Customer... » read more

NetSuite Transaction Type SearchFilters

Transaction Type SuiteScript SearchFilter Assembly Build Build Assembly Unbuild Unbuild Bill VendBill Bill CCard VendCard Bill Credit VendCred Bin Putaway Worksheet BinWksht Bin Transfer BinTrnfr Bill Payment VendPymt Cash Refund CashRfnd Cash Sale CashSale CCard Refund CardRfnd Check Check Commission Commissn Credit Card CardChrg Credit Memo CustCred Currency Revaluation FxReval Customer Deposit CustDep Customer Refund... » read more

警惕id比较大小存在bug

看到一段代码用id大小比较两条记录的创建时间,结果出现了一些bug。 本意是筛掉38这个情况,但是因为字符串在js中比较大小并不是比较其数字的大小,而是逐字符比较数字的编码大小。 这种情况应该parseInt转换成numeric的类型再比较大小

Item Type(货品类型)的枚举值

在使用 SuiteScript 2.0 版本技术开发 RESTLet API 的过程中,我们遇到了加载项目记录的常见问题。必须先按类型限定项目,然后才能执行常规记录操作。为了帮助解决这个问题,我制作了一个快速函数来说明了解项目类型和等效负载记录操作所需的查找。 以下函数对于基本的 NetSuite 软件库可能很有价值。请注意,此功能为pseudocode。