CustVend Settlement by programming
在这里备注一下:(程序结算)
static void testCustTransSettle(Args _args)
{
custtable ct;
custaccount acc;
custtrans cut, cut1,cut2;
custTransOpen custVendTransOpen;
//初始化结算辅助类,传入客户代码
Specification_OffsetVoucher specification = Specification::constructServer(SpecType::OffsetVoucher,
tablenum(custtable),
custtable::find("000001").RecId);
;
//客户000001
ct = custtable::find("000001");
//客户的交易5637146576,发票交易
cut = custtrans::find(5637146576);
//找到相应交易未结记录
select firstonly custVendTransOpen
where custVendTransOpen.RecId == custtransopen::findRefId(cut.RecId).RecId;
//通过结算辅助类创建发票结算项
specification.create(custVendTransOpen.TableId,
custVendTransOpen.RecId,
500, //设置结算金额
cut.CurrencyCode);
//客户预付款交易记录5637146577,预付款交易
cut1 = custtrans::find(5637146577);
//找到相应交易未结记录
select firstonly custVendTransOpen
where custVendTransOpen.RecId == custtransopen::findRefId(cut1.RecId).RecId;
//通过结算辅助类创建预付款结算项
specification.create(custVendTransOpen.TableId,
custVendTransOpen.RecId,
-3000, ////设置结算金额,设置一个就可以了,这个可以由系统根据结算算出,给出默认的
cut1.CurrencyCode);
//调用结算功能,实现结算。
custtrans::settleTransact(ct);
}
posted on 2008-10-14 10:17 lingdanglfw 阅读(261) 评论(0) 编辑 收藏 举报