//计算采购进项税
public static void Purch_SL_PurchLineTaxCal(Args _args)
{
PurchLine purchline;
TaxGroupData taxGroupData;
TaxOnItem taxonItem;
TaxTable taxTable;
TaxValue taxValue;
Amount amountInclTax, amountExclTax, purchTax;// 详细计算税的方法---
purchline = PurchLine::find("HAND-000019228", 1);
//第一种详细计算税的方法---
while select TaxCode from taxTable
join RecId, TaxCode from taxGroupData
where taxGroupData.TaxGroup == purchline.TaxGroup
&& taxGroupData.TaxCode == taxTable.TaxCode
join RecId from taxonItem
where taxonItem.TaxItemGroup == purchline.TaxItemGroup
&& taxonItem.TaxCode == taxTable.TaxCode
{
taxValue += TaxData::percent(taxTable.TaxCode, systemDateGet(), 0);//含税百分比
}
//purchTax = purchline.PurchPrice / (1 + taxValue / 100) * purchline.PurchQty;// 未含税净额
purchTax = purchline.PurchPrice / (1 + taxValue / 100);//未含税单价
purchTax = purchline.PurchPrice - purchTax;//含税单价-未含税单价= 进项税
info(strFmt("进项税百分比是%1, 采购订单行进项税是:%2", taxValue, purchTax));
//第二种使用系统标准方法
purchline = PurchLine::find("HAND-000019228", 1);
amountInclTax = purchline.calcLineAmountInclTax_RU();// 含税行净额
amountExclTax = purchline.calcLineAmountExclTax(); //未含税净额
purchTax = amountInclTax - amountExclTax; //进项税
//*/
info(strFmt("含税行净额%1,未含税净额%2,进项税:%3", amountInclTax,amountExclTax,purchTax));
}
原文:https://www.cnblogs.com/sunny-technology/p/11763922.html