Привет!
На 1-ый вопрос - кратко: налог определяется на пересечении налоговой группы и налоговой группы номенклатуры.
2. Вот пример расчета НДС по известной номенклатуре (_iJTrans.ItemId)
и налоговой группе за нал. расчет (у нас она хранится вот так: SalesParameters::find().AS_TaxGroup2)
taxItemGroup = InventTable::find(_iJTrans.ItemId).salesTaxItemGroupId();
while select taxOnItem where taxOnItem.TaxItemGroup == taxItemGroup
exists join taxTable
where taxOnItem.TaxCode == taxTable.TaxCode
&& (taxTable.TaxType_RU == TaxType_RU::VAT
|| taxTable.TaxType_RU == TaxType_RU::VATReduced)
exists join taxGroupData
where taxTable.TaxCode == taxGroupData.TaxCode
&& taxGroupData.TaxGroup == SalesParameters::find().AS_TaxGroup2
{
taxValue+=TaxData:: percent(taxOnItem.taxCode,systemdateget(),0);
}
И общая рекомендация: посмотри классы TaxCalc... - они и приведут тебя к цели