NetSuite订单挑选票据打印

时间:2018-02-21 22:58:00

标签: javascript netsuite suitescript

如果打印了拣货单,我试图确定何时加载销售订单以进行打印。触发的唯一事件是BeforeLoad用户事件......

/**
 * The recordType (internal id) corresponds to the "Applied To" record in your script deployment. 
 * @appliedtorecord recordType
 *   
 * @param {String} type Operation types: create, edit, view, copy, print, email
 * @param {nlobjForm} form Current form
 * @param {nlobjRequest} request Request object
 * @returns {Void}
 */
function userEventBeforeLoad(type, form, request) {
    if (type == "print") {
        // do stuff
    }
}

"请求"系统传入的参数是空的,我尝试从脚本上下文中拉取会话对象,我没有任何帮助。我不知道我是否忽略了某些不明显或在某处记录的东西。

我知道系统有" printedpickticket"搜索过滤器,但由于某种原因,它并不总是被标记。因此,打印过拣票的订单不会被标记,然后在尝试对已打印拣票的订单执行操作时,不会检索所有订单。

有人有什么想法吗?

3 个答案:

答案 0 :(得分:0)

'印花采摘票'字段重置为' F'创建项目履行时,如果在销售订单上还有剩余要处理的内容。不确定这是否是您的问题,但这是唯一让您想到的事情。如果是,并且您仍然需要对这些部分履行的订单执行操作,您可以查看系统说明以查看该字段是否曾被设置为' T'。

答案 1 :(得分:0)

在销售订单/转移订单记录上,当用户通过“打印拣货单”选项打印记录时,系统注释中的“打印拣货单”日志将从“ F”设置为“ T”。 希望能对您有所帮助。您可以从系统说明中获取触发器

答案 2 :(得分:0)

我遇到了同样的问题。我没有解决方案,但是我找到了一种解决方法,可以为我们完成工作。

您已经指出,系统将nlobjForm作为第二个参数传递给函数。表单包含另一个称为选项卡的对象。 form.tabs(至少在我们的实现中)在打印票证时与打印事务时相比会获得不同的数据集。我使用的是form.tabs [1] =='address'来表示领票。

我仍在寻找更好的解决方案,但是现在可以正常使用了。希望这对您有所帮助。