// 自动创建采购贸易协议日记账
static void Purch_SL_CreatePriceDisc(Args _args)
{
priceDiscAdmName priceDiscAdmName;
PriceDiscAdmTable priceDiscAdmTable;
PriceDiscAdmTrans PriceDiscAdmTrans;
PriceDiscAdmCheckPost priceDiscAdmCheck;
select firstOnly priceDiscAdmName
where priceDiscAdmName.DefaultRelation == PriceType::PricePurch;
if (!priceDiscAdmName)
{
throw Error("没有关系是价格(采购)的日记账名称");
}
ttsBegin;
PriceDiscAdmTable.clear();
PriceDiscAdmTable.initValue();
PriceDiscAdmTable.initFromPriceDiscAdmName(priceDiscAdmName);
PriceDiscAdmTable.insert();
if(PriceDiscAdmTable)
{
PriceDiscAdmTrans.clear();
PriceDiscAdmTrans.initValue();
PriceDiscAdmTrans.JournalNum = PriceDiscAdmTable.JournalNum;
PriceDiscAdmTrans.relation = PriceDiscAdmTable.DefaultRelation;
PriceDiscAdmTrans.AccountCode = TableGroupAll::Table;
PriceDiscAdmTrans.ItemCode = TableGroupAll::Table;
PriceDiscAdmTrans.AccountRelation = "CNMF-000000002";
PriceDiscAdmTrans.ItemRelation = "000000001-1";//"D0001";
PriceDiscAdmTrans.initFromAccountCode(); //日期
PriceDiscAdmTrans.FromDate = systemDateGet()-1;
PriceDiscAdmTrans.ToDate = systemDateGet() + 6; //采购价取值,查询下一个是否勾选,都会查找第一条有效的在范围内的采购价
PriceDiscAdmTrans.initFromItemCode();
PriceDiscAdmTrans.InventDimId = InventDim::findOrCreateBlank().inventDimId;
PriceDiscAdmTrans.Amount = 100;
PriceDiscAdmTrans.SearchAgain = NoYes::Yes;//查找下一个
PriceDiscAdmTrans.insert();
}
//过账日记账
priceDiscAdmCheck = new PriceDiscAdmCheckPost(false);
priceDiscAdmCheck.initJournalNum(PriceDiscAdmTable.JournalNum);
priceDiscAdmCheck.run();
ttsCommit;
info(strFmt("采购贸易协议日记账%1已产生!", PriceDiscAdmTable.JournalNum));
}