1 回答

TA貢獻1936條經驗 獲得超7個贊
想象一下TransactionSearchAdvanced()UI 中保存的搜索。您需要指定要使用的條件以及要返回的列。在運行搜索之前,添加以下代碼以指定要返回的列。您可能還想為 mainLine 添加一個條件,否則true每個事務行將得到一個結果,而不是每個事務一個結果。
tranSearch.columns = new TransactionSearchRow()
{
basic = new TransactionSearchRowBasic()
{
tranId = new[] {new SearchColumnStringField()}
}
};
var result = ns.search(tranSearch);
if (result.status.isSuccess)
{
foreach (var rowList in result.searchRowList)
{
if (rowList is TransactionSearchRow row)
{
var tranId = row.basic.tranId[0].searchValue;
var total = row.basic.total[0].searchValue;
Console.WriteLine($"{tranId} - {total}");
}
}
}
最簡單的方法:因為你有內部 ID,你可以TransactionSearchBasic()像這樣獲取整個記錄:
var search = new TransactionSearchBasic()
{
type = new SearchEnumMultiSelectField()
{
@operator = SearchEnumMultiSelectFieldOperator.anyOf,
searchValue = new[] { "_vendorPayment" },
operatorSpecified = true,
},
internalId = new SearchMultiSelectField()
{
@operator = SearchMultiSelectFieldOperator.anyOf,
searchValue = new[] { new RecordRef { internalId = "723212" } },
operatorSpecified = true
}
};
var results = ns.search(search);
foreach (var result in results.recordList)
{
if (result is VendorPayment vendorPayment)
{
Console.WriteLine(vendorPayment.tranId);
}
}
- 1 回答
- 0 關注
- 103 瀏覽
添加回答
舉報