AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.05.2010, 00:45   #1  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от d&m Посмотреть сообщение
в итоге - в закупке я могу сделать разноску без аналитик, в журнале ГК - без аналитик разноску сделать не могу. Это нормально? Разве тут не должно быть единообразия?
Извиняюсь - не сразу ответил - в заботах был.
В журнале ГК сделали очень досадный баг в виде "упущенного" конфигурационного ключа.
Дело в том, что в строке ЖГК (LedgerJournalTrans) существуют 2 набора аналитик: одни для счета (кстати - для корсчета никто аналитики и не думал делать почему-то) - это поле LedgerJournalTrans.Dimension и другие - для внутрихолдиногового учета.- поле LedgerJournalTrans.InterCoDimension.
Проверка соответствия иерархии аналитики осуществляется сразу для двух полей (см метод LedgerJournalTrans.checkDimensions()). В проверке честно поставлено условие, что если конфигурационный ключ иерархии аналитик включен - то проверку выполнять. НО! Никто не позаботился о том, что если ключ внутрихолдингового учета выключен - то проверку по внутрихолдинговым аналитикам делать не надо - т.к. их нет!
В связи с этим я изменил у себя код метода checkDimensions():
X++:
public boolean checkDimensions(boolean _checkWriteValidation)
{
    boolean             ok = true;
    DimensionSetCaller  dimensionSetCaller;
    ;

    if (isConfigurationkeyEnabled(configurationkeynum(DimensionSetHierarchy)))
    {
        dimensionSetCaller = DimensionSetCaller::construct(this, fieldnum(LedgerJournalTrans, Dimension));
        ok = appl.dimensionSetValidation(false, dimensionSetCaller.getCompanyId()).checkDimension(this,
                                                                                                  fieldnum(LedgerJournalTrans, Dimension),
                                                                                                  _checkWriteValidation) && ok;
        if (isConfigurationkeyEnabled(configurationkeynum(LedgerAdvIntercompanyAccounting))) // Вот здесь не хватает проверки на конфигурационный ключ
        {
            dimensionSetCaller.parmDimensionFieldId(fieldnum(LedgerJournalTrans, InterCoDimension));
            ok = appl.dimensionSetValidation(false, dimensionSetCaller.getCompanyId()).checkDimension(this,
                                                                                                      fieldnum(LedgerJournalTrans, InterCoDimension),
                                                                                                      _checkWriteValidation) && ok;
        }
    }

    return ok;
}
Проверьте - у меня не Ваш ли случай был?
__________________
Возможно сделать все. Вопрос времени
Теги
иерархия, финансовая аналитика

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Можно ли отключить и включить аналитику? miklenew DAX: Функционал 24 30.01.2008 14:00
Игра "Поймай аналитику" Hamster DAX: Функционал 6 12.10.2004 17:53
Почему договору нельзя сквозную аналитику присвоить? George V. Tavrizoff DAX: Функционал 3 27.02.2004 11:05
Как грамотно связать ГК и Складскую аналитику? /для отчета/ Anais DAX: Программирование 17 19.02.2004 17:42
Как создать новую складскую аналитику? Михаил Андреев DAX: Программирование 2 18.08.2003 22:43
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:06.