我们需要COPY Transaction
在屏幕上为用户提供一个按钮Show Journal
,单击此按钮将在主 POS 屏幕上加载所选交易的确切内容,收银员可以提交和结束。
我在表单上创建了一个按钮,在按钮的单击事件上,我使用以下代码加载并启动了事务对象:
if (gridView1.SelectedRowsCount > 0)
{
DataRow Row = gridView1.GetDataRow(gridView1.GetSelectedRows()[0]);
selectedTransactionId = (string)Row["TRANSACTIONID"];
selectedStoreId = (string)Row["STORE"];
selectedTerminalId = (string)Row["TERMINAL"];
PosTransaction transaction = LoadTransaction(selectedTransactionId, selectedStoreId, selectedTerminalId);
}
现在我找不到将此事务加载到主屏幕的方法,我尝试设置 this.posTransaction = transaction;
但它不起作用。
然后我尝试挂起事务并检索挂起的事务,我可以通过以下代码成功挂起事务:
this.Application.BusinessLogic.SuspendRetrieveSystem.SuspendTransaction(transaction);
但无法使用以下代码检索此交易:
this.Application.BusinessLogic.SuspendRetrieveSystem.RetrieveTransaction(transaction.TransactionId);
我知道我可以逐个读取项目并将它们添加到交易中,但是如果对交易应用了折扣或者交易是忠诚度交易怎么办,所以我必须重新加载确切的交易。