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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.04.2005, 15:44   #1  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
update
День Добрый!

Не могу понять почему не обновляется таблица -- в дебагере курсор успешно обновляется, а на деле -- изменения не подхватываются.

PHP код:
     InventJournalTrans  line;
    
InventDim           inventDimTo;
    
InventDim           inventDimToNew;
    ;

    
ttsbegin;
    while 
select forupdate line
        where line
.JournalId == this.JournalId
        
{
            
inventDimTo inventDim::find(line.ToInventDimId);
            if(
inventDimTo.wMSLocationId != this.ToWMSLocationId)
            {
                
inventDimToNew.clear();
                
inventDimToNew.initFromInventDim(inventDimTo);
                
inventDimToNew.wMSLocationId this.ToWMSLocationId;
                
inventDimToNew InventDim::findOrCreate(inventDimToNew);
                
line.ToInventDimId inventDimTonew.inventDimId// Это поле должно апдейтиться
                
line.doUpdate();
            }
        }
    
ttscommit
Старый 11.04.2005, 16:43   #2  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Написал аналогичный код в Job-е -- все работает, а из формы не хочет.
Старый 12.04.2005, 09:11   #3  
kaw is offline
kaw
Участник
 
122 / 35 (2) +++
Регистрация: 23.03.2004
Адрес: Новосибирск
Возможно, тебе нужно форму обновить:

form_source.reread();
Старый 12.04.2005, 12:18   #4  
braathe is offline
braathe
Участник
 
90 / 13 (1) ++
Регистрация: 16.02.2005
Попрогуй просто line.Update();

doUpdate идет на прямую к методу update в базе данных а Update идет через update() класс или метод в самой Ахапте и потом уже вызывает Update у базы данных.

По карайней мере я так понял из русской книги по Ахапте. =)
Старый 12.04.2005, 13:00   #5  
braathe is offline
braathe
Участник
 
90 / 13 (1) ++
Регистрация: 16.02.2005
Цытата из книги:
"Команда doInsert аналогична команде Insert. Единственное отличие между двумя этими командами заключается в том, что при виполнении doInsert не проиходит вызова метода таблицы insert, а выполняется сразу системный ментод Insert. Таким образом, операторы, добавленные разработчиком в переопределенный табличный метод не выполняутся."

Извиняюсь что запутал в первый раз. =)
Старый 12.04.2005, 13:45   #6  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Разобрался! Благодарю за ответы!

Дело было в том что в классе-обработчике (WMTransferJourApprove) строки журнала удалялись и создавались вновь

PHP код:
InventJournalTransTemplate::changeFromJournalTable(inventJournalTable.JournalIdtrue); 
По цепочке вышел на класс InventJournalTransTemplateType_Transfer в котором заново подцеплялась ячейка.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dianne Siebold: Rec Fields Required in AIF Partial Update Blog bot DAX Blogs 0 20.01.2009 09:05
epblog: How to update Data Set from User Control? Blog bot DAX Blogs 0 21.06.2008 13:05
Dianne Siebold: Update on the Dynamics AX SDK Team kashperuk DAX Blogs 1 16.10.2007 08:23

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

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

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