我正在编写一个简单的作业,该作业从外部服务获取订单状态。 然后,我想使用此数据来更新订单。
每当我在OrderMgr上调用静态方法getOrder(id:String)时,我都会收到null。
具有给定ID的订单存在并且在BM中可见。
有人可以告诉我我做错了什么吗?
importPackage(dw.order);
function execute( pdict : PipelineDictionary ) : Number
{
var mgr : OrderMgr = OrderMgr;
var logH : Logger = Logger.getLogger("test1", "test1");
var order : Order = mgr.getOrder("00000101");
if (order == null){
// always null, even if the order exists
logH.info("The order is null");
}
return PIPELET_NEXT;
}
答案 0 :(得分:1)
检查正在运行作业的站点的范围。如果在组织范围内,则必须更改为网站范围。 其次,当您进行更新时,请不要忘记使用事务。
答案 1 :(得分:0)
我认为您需要在dw业务管理器中的批处理作业中使用getOrder()方法,有些脚本不允许您从店面调用它们