使用C#中的NetSuite SuiteTalk使用KitItem创建项目实现

时间:2014-05-23 17:18:13

标签: c# web-services netsuite

我正在尝试使用SuiteTalk通过C#在NetSuite中创建一个Item Fulfillment。

我过去已经成功创建了Item Fulfillments,这是第一次尝试使用Kit Items创建一个。我正在正确设置orderLine,但我不知道将Kit的组件设置为什么。

如果我没有发送套件组件,我会收到错误消息,说我必须发送所有物品。

NetSuite错误: [Code = USER_ERROR]当请求全部替换时,必须指定子列表itemList的所有行。

如果我尝试将订单行设置为与套件项目相同,则会产生另一个错误。

我在javascript中检查了一个Item Fulfillment并注意到组件没有任何orderLine值,而是有kitlevel值(在C#中的ItemFulfillmentItem中不存在)

对此有任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

找到答案。 通过初始化表单,我能够检查元素并查看我缺少的内容。 套件项目的每个组件都是来自perviouse项目的+1 orderLine编号。

所以如果我的Kit Item是orderLine 5 然后Component是orderLine6 和Component是orderLine7

下面找到用于创建项目实现的代码,以便检查项目。

ItemFulfillment ns_ItemFulfillment;
// attempt to initialize item Fulfillment from the created from record
InitializeRecord initrec = new InitializeRecord()
{
    type = InitializeType.itemFulfillment,
    reference = new InitializeRef()
    {
        internalId = salesOrder.internalId,
        type = InitializeRefType.salesOrder,
        typeSpecified = true
    }
};

ReadResponse response = _service.initialize(initrec);

if (response.status.isSuccess)
{
    if (response.record != null)
        ns_ItemFulfillment = (ItemFulfillment)response.record;
}