OneWorld - 从其他子公司获取库存 NSAPI1.0

OneWorld - Get stock on hand from other subsidiaries NSAPI1.0

我编写了一个函数来从另一家子公司检索 locationquantityavailable 或 locationquantityonhand。

假设在子公司 A 下输入销售订单的情况下,用户可以看到这两家子公司,并且 SO 项目自定义字段显示子公司 B 中现有的项目库存。

目前我从下面保存的搜索中得到一个空结果。我确定我遗漏了一些非常基本的东西。

记录器行正确给出结果:Get Stock Sub:36 Loc:16 Item:4448

我知道 IS 源 sub/loc/item 组合中的现有库存和可用库存。

function getStock(sub, loc, itemid, available ) {
  try {
        var subsidiary = isNum(sub),
              location = isNum(loc), 
              item = isNum(itemid);
        if (subsidiary == 0 || location == 0 || item == 0) {return 0}

        var filters = [ new nlobjSearchFilter('subsidiary', null, 'anyof', sub ),
                        new nlobjSearchFilter('location', null, 'anyof', loc ),
                        new nlobjSearchFilter('internalid', null, 'is', itemid )];
        var columns = [ new nlobjSearchColumn('subsidiary' ),
                        new nlobjSearchColumn('location' ),
                        new nlobjSearchColumn('internalid' ),
                        new nlobjSearchColumn('locationquantityonhand' ),
                        new nlobjSearchColumn('locationquantityavailable' )];

        logger('Get Stock   Sub:'+subsidiary+' Loc:'+location+' Item:'+item);
        logger(filters);
        logger(columns);

        var res = nlapiSearchRecord('item',null,filters,columns);
        logger('Get Stock Search:');logger(res);
        if (res == null ) {
              return 0;
        }
        if (available) {
              return res[0].getValue('locationquantityavailable');
        }
        else {
              return res[0].getValue('locationquantityonhand');
        }
  } catch (err) { logger(err) }

}

无视……呸!! inventory 与搜索中的 inventorylocation。咖啡不够