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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.07.2007, 18:14   #1  
blokva is offline
blokva
Пенсионер
Аватар для blokva
SAP
NavAx Club
 
743 / 167 (7) ++++++
Регистрация: 04.06.2003
Адрес: Беларусь
Цитата:
Сообщение от maze Посмотреть сообщение
Добрый день, всезнающий All!!!

Никто не сталкивался с проблемой, когда при переходе к основной таблице (например таблице номенклатурного справочника), курсор не устанавливается на нужную позицию (номенклатуру) , а показывает любую другую номенклатуру из этого справочника!

Если сталкивались, как с этим бороться?

Да, AX3 SP3 KR3
Бывали таки моменты, когда напрмер некорректно грузились справочники, например спецификации, конфигурации и т.д. в другую базу, например из рабочей базы, в тестовую, при этом "забывали" обновить и номенклатурный справочник!
При попытке перейти из строки спецификации по номенклатуре, которой нет в справочнике, переход осуществлялся, но выбирала первуюопавшуюся!
__________________
Законы природы еще никто не отменял!
А еще у меня растет 2 внучки!!! Кому интересно подробности тут:
http://www.baby-shine.com/
Старый 03.07.2007, 18:38   #2  
maze is offline
maze
Участник
Аватар для maze
 
39 / 10 (1) +
Регистрация: 21.02.2003
Адрес: Одесса
Цитата:
Сообщение от blokva Посмотреть сообщение
Бывали таки моменты, когда напрмер некорректно грузились справочники, например спецификации, конфигурации и т.д. в другую базу, например из рабочей базы, в тестовую, при этом "забывали" обновить и номенклатурный справочник!
При попытке перейти из строки спецификации по номенклатуре, которой нет в справочнике, переход осуществлялся, но выбирала первуюопавшуюся!
В том то и дело, что номенклатура существует. Поиском находится без проблем.
Старый 03.07.2007, 19:33   #3  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от blokva Посмотреть сообщение
Бывали таки моменты, когда напрмер некорректно грузились справочники, например спецификации, конфигурации и т.д. в другую базу, например из рабочей базы, в тестовую, при этом "забывали" обновить и номенклатурный справочник!
При попытке перейти из строки спецификации по номенклатуре, которой нет в справочнике, переход осуществлялся, но выбирала первуюопавшуюся!
Возможно, конкретно maze не помогу, но тем не менее позвольте запоститься тоже.

У нас были такие случаи пользовательского недовольства. В таблице "Номера серий/лотов" существует запись с инв.номером ОС, которого нет в справочнике основных средств (ну, бывают и такие "издержки"). При попытке перейти по правой кнопке мышки в меню "Перейти к основной таблице" из поля "Инв. номер ОС" переход осуществляется в таблицу "Основные средства", но не на этот несуществующий код ОС , а на следующий существующий в этой таблице. Причем, коды ОС могут отличаться лишь в последнем знаке, и пользователь, наметивший конкретное действие для несуществующего ОСа, не обратив внимания, начинает осуществлять это действие совсем с другим ОС.

Покумекав, сваял такое нехитрое перекрытие для jumpRef поля "Инв.номер ОС" формы "Номера серий/лотов" (\Forms\InventSerial\Data Sources\InventSerial\Fields\RassetId\Methods\jumpRef):
X++:
public void jumpRef()
{
    Args args;
    FormRun formRun;
    RAssetTable assetTable;
    ;

    select assetTable where assetTable.AccountNum == element.design().controlName('Add_RassetId').valueStr();

    args = new Args(formstr(RAssetTable));

    if (assetTable)
    {
        args.lookupField(fieldNum(RAssetTable, AccountNum));
        args.lookupValue(assetTable.AccountNum);
    }
    else
    {
        box::warning('В основной таблице отсутствует значение, на которое можно было бы перейти!','Нет совпадения');
        args.record(assetTable); // будет пустая форма
    }

    formRun = classFactory.formRunClass(args);

    formRun.init();
    formRun.run();
    formRun.detach();

    //super();
}
Т.е. если запись существует, то позиционируемся на нее, а если нет, то предъявляется пустая форма, как индикатор отсутствия записи. Пользователи удовлетворены (в этом конкретном случае).

Для себя вынес следующее. К сожалению, управлять этой фичей нужно в каждом отдельном случае. Невозможно создать такую универсальную процедуру, которая бы срабатывала в каждой такой ситуации. Наверное, можно попробовать создать подобную процедуру, но прописывать ее вызов нужно будет во всех интересующих местах по отдельности.

P.S. Еще на заметку по теме (и для себя тоже):
JumpRef в диалоге
Спозиционироваться на запись
Как реализовать опцию Go to the Main Table

Последний раз редактировалось Gustav; 04.07.2007 в 09:27. Причина: добавил ссылки
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Переход к основной таблице договоров KolesOlya DAX: Программирование 12 11.04.2007 10:28
Как реализован переход к основной таблице как в общем журнале petr DAX: Программирование 4 15.09.2005 19:00
Переход на правильную запись при Переходе к основной таблице. - 2 Anais DAX: Программирование 2 01.11.2004 17:14
Переход к основной таблице в Ax3 Wamr DAX: Программирование 0 03.08.2004 17:58
Переход на правильную запись при Переходе к основной таблице. Anais DAX: Программирование 11 29.06.2004 19:16

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

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

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