如何使用保存的搜索从采购订单获取销售订单项目名称,数量,费率

时间:2018-04-21 15:01:09

标签: javascript search netsuite suitescript purchase-order

我想使用保存的搜索功能检索下拉/特殊订单购买记录详细信息以及相关的销售订单明细。

已保存的搜索必须显示以下列: 1.销售订单日期 2.销售订单号(凭证编号) 3.购买订单日期 4.购买订单号(凭证编号) 5.销售订单项目(装配项目) 6.销售订单数量 7.销售订单项目费率 8.销售订单金额 7.购买订单项目(组件/成员项目)。

我创建了一个已保存的搜索并显示以下值: 1.SO日期,SO#,PO日期,PO#,PO项目(会员项目),PO数量。

我的问题:

当尝试显示SO项目,SO Qty,SO项目费率时,它显示采购订单本身中的项目。即在采购订单中显示相同的项目(成员项目)而不是销售订单项目(装配项目)。

对于获取SO项目行数值,我使用条件"应用于交易字段" 它在PO中显示相同的项目名称。

我也尝试过" Created From Fields" 条件,它显示空值

我的代码:

保存的搜索:SuiteScript 2.0版本

var purchaseorderSearchObj = search.create({
    type: "purchaseorder",
    filters: [
        ["type", "anyof", "PurchOrd"],
        "AND", ["appliedtotransaction.type", "anyof", "SalesOrd"]
    ],
    columns: [
        search.createColumn({
            name: "trandate",
            sort: search.Sort.DESC,
            label: "PO Date"
        }),
        search.createColumn({
            name: "datecreated",
            join: "appliedToTransaction",
            label: "SO Date"
        }),
        search.createColumn({
            name: "tranid",
            label: "PO #"
        }),
        search.createColumn({
            name: "tranid",
            join: "appliedToTransaction",
            label: "SO #"
        }),
        search.createColumn({
            name: "item",
            join: "appliedToTransaction",
            label: "SO Item"
        }),
        search.createColumn({
            name: "quantity",
            join: "appliedToTransaction",
            label: "SO Qty"
        }),
        search.createColumn({
            name: "porate",
            join: "appliedToTransaction",
            label: "SO Item Rate"
        }),
        search.createColumn({
            name: "formulacurrency",
            formula: "{appliedtotransaction.quantity} * {appliedtotransaction.porate}",
            label: "SO Amount"
        }),
        search.createColumn({
            name: "item",
            label: "PO Item"
        }),
        search.createColumn({
            name: "quantity",
            label: "PO Qty"
        }),
        search.createColumn({
            name: "rate",
            label: "PO Item Rate"
        }),
        search.createColumn({
            name: "formulacurrency",
            formula: "{rate} * {quantity}",
            label: "Amount"
        }),
    ]
});
var searchResultCount = purchaseorderSearchObj.runPaged().count;
log.debug("searchResultCount:", searchResultCount);


//Retrieving values from the search result

purchaseorderSearchObj.run().each(function(result) {
    var soDateValue = result.getValue({ //Sales Order:Date
        name: "datecreated",
        join: "appliedToTransaction"
    });
    var poDateValue = result.getValue({ //Purchse Order: Date
        name: "trandate"
    });

    var soNumberValue = result.getValue({ //Sales Order: Document Number
        name: "tranid",
        join: "appliedToTransaction"
    });

    var poNumberValue = result.getValue({ //Purchse Order: Document Number
        name: "tranid",
    });


    var itemValue = result.getText({ // Purchse Order: Item
        name: "item",
    });

    var qtyValue = result.getValue({ // Purchse Order: Quantity
        name: "quantity",
    });

    var soItem = result.getText({ //Sales Order: Item
        name: "item",
        join: "appliedToTransaction"
    });

    var soQty = result.getValue({ //Sales Order:Quantity
        name: "quantity",
        join: "appliedToTransaction"
    });

    var soRate = result.getValue({ //Sales Order: Rate
        name: "porate",
        join: "appliedToTransaction"
    });

    var soAmount = result.getValue({ //Sales Order: 
        name: "formulacurrency",
        formula: "{appliedtotransaction.quantity} * {appliedtotransaction.porate}"
    });
    return true;
});

是否有其他方法可以从采购订单中检索销售订单项目行值()。

提前致谢。

0 个答案:

没有答案