Добрый день.
Вопрос по расчета входящего сальдо в запросах "Оборот по счету" и "Оборотно-сальдовая ведомость" модуля главная книга.
В запросах оборот по счету, обрабатываемых классами
RLedgerSheetEngine входящее сальдо инициализируется методом
calcBalance. Для расчета используется комбинация аналитик указаных в форме запроса:
X++:
dimAttrValueComb = DimensionAttributeValueCombination::find(
DimensionDefaultingEngine:: getLedgerDimensionFromAccountAndDim (
MainAccount::findByMainAccountId(_mainAccountNum).RecId,
DimensionHierarchy::getAccountStructure(
MainAccount::findByMainAccountId(_mainAccountNum).RecId), dimensionCriteria));
Т.е. для расчета используется конкретная комбинация аналитик.
В тоже время в новом функционале оборотно-сальдовой ведомость, поддерживаемой классом
RLedgerTurnoverEngine расчет входящего сальдо выполняется аналогично расчету обротов за период в методе
balanceTrans. Для фильрации по набору аналитик используется вызов
SysQuery::addDimensionAttributeRange . В данном случае критерий добаляется отдельно для каждой комоненты аналитики.
Вопрос заключается в том, правильно ли я понимаю различия в данных запросах? Если все так, получается, что бы посмотреть входящее сальдо в запросах "Оборот по счету" необходимо указать полную комбинацию аналитик. Т.е. если в проводках по одному счету ГК указаны различные аналитики, например контрагентов, то в результате работы запроса входящее сальдо рассчитается только для проводок, которые полностью совпадают с параметрами запроса. Другими словами, если я не укажу аналитику контрагент, то проводки с заполненной аналитикой не будут учтены. Так ли это?