2014-01-20 93 views
0

在此重新安排主要项目记录的计划脚本时遇到一些问题。我知道我需要脚本中的退出条件,否则脚本将不知道从哪里停止的地方拾取,很可能是复选框形式的自定义字段。每次运行该脚本时,都会将该复选框设置为true。在下次重新计划期间,被标记的记录将被忽略。Netsuite中的重新安排脚本

但是,此脚本需要每日运行。这意味着所有记录中的复选框需要在调度程序完成当天的整个周期后再次取消选中。这也意味着我需要另一个预定脚本来重置项目记录中的所有标记。我可能错了吗?还是有更好的方法来做到这一点?

回答

0

尝试nlapiYieldScript。

nlapiYieldScript()

创建恢复点,然后重新调度脚本。新重新计划的脚本将重置其管理单位,然后将其置于计划的脚本队列的后面。总而言之,nlapiYieldScript的工作原理如下:

创建新的恢复点。
使用管理重置创建新的计划脚本。
将恢复点与预定脚本相关联。
将脚本放在计划脚本队列的后面。

+0

这是新东西。你有没有关于如何使用这个API的例子?解析的参数是什么? – user1033038

+0

只用它看起来如何。在循环底部,检查剩余的治理使用情况。如果低于某个级别(500是任意数量),请调用该函数。 –

0

有关脚本完成的更多细节可能会有所帮助,但以下是我们通常如何处理重新计划脚本的方法。

通常情况下,计划脚本正在执行搜索以找到所有需要操作的记录。我们按internalid对此搜索进行排序,并在脚本运行时更新“最后处理的ID”。一旦我们准备重新安排时间,我们会将最后处理的ID存储在脚本参数中,并将其传递给重新计划功能。搜索具有“内部id大于lastIDParameter”的过滤器。之前的所有值都会被过滤掉,因为它已经通过内部id进行了排序。

0

您可以将datestamp作为自定义字段而不是复选框,并使用昨天的记录搜索datestamp字段。