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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.07.2013, 09:42   #1  
ansoft is offline
ansoft
Участник
Аватар для ansoft
 
123 / 37 (2) +++
Регистрация: 20.10.2005
Строчка...
X++:
select forupdate tmpInventJournalTrans;
Наверное лишняя... хотя это не имеет отношения к сути вопроса.
Если, как вы выражаетесь с меню работает, а с журнала нет, то скорее всего... связь с журналом все таки есть и она динамическая. Можно попробывать ее разорвать в init датасоурса временной таблицы прописав после super() примерно следующее:
X++:
this.query().dataSourceNo(1).clearDynalinks();
Вдруг поможет

P.S. Попробуйте еще сменить...
X++:
tmpInventJournalTrans_ds.research();
На...
X++:
tmpInventJournalTrans_ds.executeQuery();
За это сообщение автора поблагодарили: alicedr (1).
Старый 29.07.2013, 22:43   #2  
alicedr is offline
alicedr
Участник
 
175 / 43 (2) +++
Регистрация: 06.07.2012
Адрес: Канада
Спасибо за советы!
Моя невнимательность. После добавления
X++:
ijTrans.JournalId             = iJourTo.journalId;
все заработало как следует.
Старый 30.07.2013, 08:49   #3  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
647 / 350 (13) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Попробуйте также улучшить код.
Например конструкцию
X++:
    while select forupdate tmpInventJournalTrans
    {
        tmpInventJournalTrans.delete();
    }
замените на
X++:
    delete_from tmpInventJournalTrans;
Помимо удаления select forupdate используется, когда вы хотите обновить запись через метод update(). Используя вставку записей через метод insert(), вам незачем что-либо выбирать оператором select.
Поэтому в этом куске кода выборка для обновлений будет лишней.
X++:
    while select ITrans
      where iTrans.JournalId == ijourTo.JournalId
    {
       select forupdate tmpInventJournalTrans; // <- лишний код
       ttsbegin;
       
       tmpInventJournalTrans.clear();
       tmpInventJournalTrans.ItemId = itrans.ItemId;
       tmpInventJournalTrans.Qty    = abs(itrans.Qty);
       tmpInventJournalTrans.InventDimId                = itrans.inventDimId;
       tmpInventJournaltrans.LedgerAccountIdOffset = itrans.LedgerAccountIdOffset;

       tmpInventJournaltrans.insert();

       ttscommit;
//info(tmpInventJournalTrans.ItemId);
    }
__________________
// no comments

Последний раз редактировалось dech; 30.07.2013 в 08:56.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axaptapedia: Filter-by-Grid Blog bot DAX Blogs 2 30.05.2012 13:39
ax-erp: Temporary table in datasource of grid Blog bot DAX Blogs 0 22.05.2012 13:11
Не отображаются данные при вызове меню айтема с формы zemius DAX: Программирование 3 21.10.2009 10:54
данные из временной таблицы - в Grid Vadik DAX: Программирование 31 12.08.2005 07:43
Данные из Tmp таблицы в QueryRun на форме Berty Wooster DAX: Программирование 1 23.09.2003 10:10
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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