Показать сообщение отдельно
Старый 13.05.2016, 09:18   #1  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
? Обработка кредитного лимита клиента AX 2012 R3
Вопрос знатокам кода.
Есть два класса CustCreditLimit и CustCreditLimit_SalesParmTable со своими initQuery. В родительском классе проверка страны и запуск функции выглядит так:
X++:
// <GEERU>
    if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU]))
    {
        ds = SalesTable_RU::addToQuery(qbdsSalesTable);
        this.addAgreementCondition_RU(ds);
    }
  // </GEERU>
в дочернем так:
X++:
    // <GEERU>
    if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU]))
    {
        this.addAgreementCondition_RU(qbdsSalesTable);
    }
    // </GEERU>
В результате чего, как я понимаю, вываливается трассировка стека на
X++:
Debug::assert(_ds.table() == tableNum(SalesTable_RU));
при вызове функции родительского класса.

Вопрос: в дочернем классе ошибка или я чего-то не понимаю?
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.