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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.02.2007, 12:07   #1  
fialka is offline
fialka
Участник
 
347 / 16 (1) ++
Регистрация: 05.10.2006
Адрес: Екатеринбург
update для группы номенклатур
История такая.
на форме есть грид по таблице table, в ней поля с ItemId.
Также есть на форме stringEdit = А.
Задача заключается, в том чтобы выбрав текст в поле А , нужно изменить по всем ItemId в справочнике номенклатур одно из полей например Desc на значение поля А..
Пытаюсь через modified на этом поле А, а потом при нажатии кнопочке обновлять InventTable.
Но загвоздка в том, что значение поля А не сохраняется...
Может что подскажите?
Старый 09.02.2007, 12:14   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Код покажите общественности, пожалуйста.
Старый 09.02.2007, 13:18   #3  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Цитата:
Сообщение от fialka Посмотреть сообщение
...
Задача заключается, в том чтобы выбрав текст в поле А , нужно изменить по всем ItemId в справочнике номенклатур одно из полей например Desc на значение поля А..
..
Но загвоздка в том, что значение поля А не сохраняется
...
Мне кажется подход не правильный. Поле A должно хранится в базе данных, а тогда и нет проблемы.
Старый 09.02.2007, 13:25   #4  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
может вызвать Research на источнике данных - то есть значение м/б сохранилось, просто надо перечитать, или может быть все не в рамках транзакции. Вобщем, верно, нужен код
Старый 09.02.2007, 13:33   #5  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
значение поля A считывайте как controlA.valueStr() (autoDeclaration у него установите)

для обновления inventTable (если действительно всех строк), используйте update_recordSet - быстрее будет

после обновления сделайте research или executeQuery источника inventTable
Старый 09.02.2007, 13:39   #6  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
и поскольку у него перекрыт update вызовите skipDataMethods(true) перед самим update_recordSet - так будет быстрей
За это сообщение автора поблагодарили: fialka (1).
Старый 09.02.2007, 13:41   #7  
DenNik is offline
DenNik
Участник
 
62 / 9 (1) +
Регистрация: 24.05.2005
А edit метод совсем не подходит? И не надо создавать ничего лишнего...
edit str 10 setValue(boolean _set, str10 _value)
{
if (_set)
{
// update
}
return value;
}
Старый 09.02.2007, 13:46   #8  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от DenNik Посмотреть сообщение
А edit метод совсем не подходит? И не надо создавать ничего лишнего...
edit str 10 setValue(boolean _set, str10 _value)
{
if (_set)
{
// update
}
return value;
}
Обработку лучше делать по нажатию кнопки, а не по смене значения поля.
Тем более, что номенклатур может быть много, и подвисание после смены поля будет выглядеть не особо красиво.
+ создавать таки ничего и не нужно. Просто добавить на форму поле, не связанное с источником данных.
За это сообщение автора поблагодарили: fialka (1).
Старый 09.02.2007, 13:56   #9  
DenNik is offline
DenNik
Участник
 
62 / 9 (1) +
Регистрация: 24.05.2005
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Обработку лучше делать по нажатию кнопки, а не по смене значения поля.
Согласен
Старый 09.02.2007, 14:14   #10  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
X++:
void clicked()
{
    super();
    InventTable.skipDataMethods(true);
    update_RecordSet InventTable
    setting < >  = < >.valueStr();
    InventTable_ds.research();
}
а ведь работает - вот впервые воспользовался update_RecordSet
Старый 16.02.2007, 17:03   #11  
Стажер is offline
Стажер
Участник
 
1 / 10 (1) +
Регистрация: 16.02.2007
а можно поподробнее про вариант с edit-методом? И что, если
<обновляемое поле> - тоже FormControl?

заранее спасибо
Старый 16.02.2007, 17:30   #12  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
Цитата:
Сообщение от Стажер Посмотреть сообщение
а можно поподробнее про вариант с edit-методом?
Поможет?
edit-методы
Зачем нужны edit-методы
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Что лучше, много номенклатур или много конфигураций? axvrp DAX: Функционал 75 21.09.2010 16:13
Dianne Siebold: Rec Fields Required in AIF Partial Update Blog bot DAX Blogs 0 20.01.2009 09:05
Dianne Siebold: Update on the Dynamics AX SDK Team kashperuk DAX Blogs 1 16.10.2007 08:23
DAX40 Анкетирование Группы результатов farlander DAX: Функционал 8 31.07.2007 15:31

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:16.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.