我想使用保存的搜索功能检索下拉/特殊订单购买记录详细信息以及相关的销售订单明细。
已保存的搜索必须显示以下列: 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;
});
是否有其他方法可以从采购订单中检索销售订单项目行值(
提前致谢。