![]() |
#3 |
Участник
|
Я делал так правда из БЭСТа с 1С можно провести аналогию
// Constructor of PurchTable Line Document return document ref
Private PurchId constructPurchTable( Nnoper Nnoper, Nndoc Nndoc, Dataoper Dataoper, Best_Schet Dt_schet, Best_code Dt_code, Best_Schet Kt_schet, Best_code Kt_code, Nameoper Nameoper, Summa Summa, Valuta Valuta, User_date User_date, User_code User_code) { // Declare PurchTable purchTable; PurchLine purchLine; NumberSeq numberSeq; BestLineType bestLineType; VendTable vendTable; Best_code Vendor; ; TTSBegin; purchTable.clear(); purchTable.PurchaseType = PurchaseType::Purch; numberSeq = NumberSeq::newGetNum(PurchParameters::numRefPurchId()); purchTable.PurchId = numberSeq.num(); purchTable.initValue(); if (Dt_code) { Vendor = Dt_code; } else { Vendor = Kt_code; } // find vend account select AccountNum from VendTable Where VendTable.AccountNum == Vendor; if(!VendTable.AccountNum) { VendTable.clear(); VendTable.AccountNum = Vendor; VendTable.NameAlias = "Íåèçâåñíûé Âåíäîð èç ÁÝÑÒÀ"; VendTable.Name = "Íåèçâåñíûé Âåíäîð èç ÁÝÑÒÀ"; VendTable.VendGroup = 'Òîâ'; VendTable.Currency = 'RUR'; VendTable.LanguageId = 'RU'; VendTable.PriceCurrency = 'RUR'; if(VendTable.validateWrite()) { VendTable.insert(); } } purchTable.OrderAccount = Vendor; purchTable.InvoiceAccount = Vendor; purchTable.CurrencyCode = "RUR"; purchTable.VendGroup = "Òîâ"; purchTable.LanguageId = "ru"; purchTable.InventLocationId = "ÎÑÍ"; purchTable.ItemBuyerGroupId = "Ïðîäóêòû"; purchTable.PurchPoolId = "ÎñíÇàê"; purchTable.transferOrderAccountAuto(); bestLineType = this.getLineType(Dt_schet,Kt_schet); purchTable.InclTax = NoYes::Yes; purchTable.TaxGroup = "ÍÄÑ/-"; if (purchTable.validateWrite()) { purchTable.insert(); } // Create line purchLine.clear(); purchLine.initFromPurchTable(purchTable); purchLine.PurchId = purchTable.PurchId; purchLine.ItemId = "111"; purchLine.PriceUnit = 1; purchLine.PurchPrice = Summa; purchLine.LineAmount = Summa; purchLine.CurrencyCode = "RUR"; purchLine.PurchQty = 1; purchLine.PurchUnit = "ØÒ"; purchLine.TaxItemGroup = "Ò20/-"; purchLine.PurchaseType = purchTable.PurchaseType; purchLine.VendAccount = purchTable.OrderAccount; purchLine.VendGroup = purchTable.VendGroup; purchLine.Name = Nameoper; purchLine.initValue(); if (purchLine.validateWrite()) purchLine.insert(); TTSCommit; Return purchTable.PurchId; } |
|