![](/img/trans.png)
[英]NetSuite: How to disable “new” button on a linked record in netsuite using suitescript
[英]Netsuite SuiteScript : Button to open new transaction from custom record and Default fields
我正在尝试在称为处理批处理的自定义记录上创建按钮,这将允许我创建工作订单和库存转移。 这些按钮只会打开一个新页面而不保存新交易,只是重定向到新交易页面。
在这些交易中,有一个名为 Processing batch 的自定义字段,它是自定义记录的列表,我希望该字段默认为单击按钮的批次的 ID。
我有一个用于按钮的用户事件脚本和一个用于打开链接的客户端脚本。
用户事件:
define([],
功能() {
function beforeLoad(context) {
context.form.addButton({
id: "custpage_workorderbutton",
label: "Create New Work Order",
functionName: "newWorkOrder"
});
context.form.addButton({
id: "custpage_inventoryTransferButton",
label: "Create New Inventory Transfer",
functionName: "newInventoryTransfer"
});
context.form.clientScriptModulePath = "SuiteScripts/CreateNewWO.js";
}
return {
beforeLoad: beforeLoad,
};
});
客户端脚本:(为测试目的定义了对话框,但不需要)
define(['N/ui/dialog'],
函数(对话框){ var 出口 = {};
function pageInit(context) {
}
function newWorkOrder(){
window.open("https://6236296.app.netsuite.com/app/accounting/transactions/workord.nl?whence=");
}
function newInventoryTransfer(){
window.open("https://6236296.app.netsuite.com/app/accounting/transactions/invtrnfr.nl?whence=");
}
exports.newInventoryTransfer = newInventoryTransfer;
exports.newWorkOrder = newWorkOrder;
exports.pageInit = pageInit;
return exports;
});
任何人都知道我将如何实现我的目标?
先感谢您。
您也可以尝试添加“记录”。 当您将其作为参数传递时,作为自定义字段的前缀。 例如'invtrnfr.nl?record.batchId=1'
这也适用于标准字段。
参考: https://blog.prolecto.com/2018/05/20/drive-values-to-netsuite-forms-and-other-url-tricks/
额外说明:您可能还需要检查 url.resolveDomain 和 url.resolveTaskLink 以构建 URL。 :)
这里有两种方法可以让你做到这一点。
'&yourparamname='+ idvalue 到打开事务 window 的 URL
如果您将参数传递到 URL 中,则可以使用部署到事务页面的 onInit 脚本将参数从 URL 中取出,然后随心所欲。
这只是两种方式。 我希望这有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.