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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.09.2003, 15:44   #1  
monk is offline
monk
Участник
 
67 / 12 (1) ++
Регистрация: 14.10.2002
Common.update()
Привет.
Есть следующий код:

ttsbegin;
qr = new QueryRun(q);
if(qr.next())
{
curTable = qr.get(tableId);
curTable.(fieldId) = value;
curTable.Update();
}
ttscommit;

Возникает ошибка, что запись не выбрана для обновления. То есть не хватает forupdate. Вопрос куда записать forupdate? (Пробовал делать curTable.selectforupdate(true) внутри цикла - не помогает).

Примеров в коде не нашел, может с Common нельзя делать update, а только insert?
Старый 03.09.2003, 16:34   #2  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,894 / 5650 (194) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Попробуй Query.userUpdate(true).
Должно помочь, хотя я сам не пробовал
Старый 03.09.2003, 16:50   #3  
monk is offline
monk
Участник
 
67 / 12 (1) ++
Регистрация: 14.10.2002
UserUpdate
UserUpdate = true - позволяет модифицировать сам запрос, но не возвращаемые значения
Старый 03.09.2003, 16:53   #4  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Боюсь, ответ неверный. За выборку на обновление отвечает свойство QueryBuildDatasource.update(). Стало быть код будет примерно такой:
PHP код:
...
q.dataSourceNo(1).update(true);
qr = new QueryRun(q); 
или такой

PHP код:
Query tmpQuery;
...
qr = new QueryRun(q);
tmpQuery qr.query();
tmpQuery.datasourceNo(1).update(true);
qr.query(tmpQuery); 
А вот, кстати, и пример в коде (чтобы добить fed): SysQuery::countPrim().
Старый 03.09.2003, 16:55   #5  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,894 / 5650 (194) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитирую:

Query.userUpdate
Run on: Called
Description
This method is used to specify whether the query should be allowed to update the records it fetches, and to determine whether or not this is the case.

Syntax
public final boolean userUpdate( [boolean _value] )

"Should be allowed to update the records it fetches" относится к блокировке извлекаемых записей.
Если я не прав - значит MBS наврал в документации
Старый 03.09.2003, 17:09   #6  
monk is offline
monk
Участник
 
67 / 12 (1) ++
Регистрация: 14.10.2002
query.datasource.update(true)
Сработало, спасибо.

А что касается UserUpdate = yes, в документации есть такая фраза
determine whether the QueryForm should remember its state when it is reopened. If this property is set to Yes, the previous settings are restored. If this property is set to No, it is only possible to view the data, and editing is forbidden.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dianne Siebold: Rec Fields Required in AIF Partial Update Blog bot DAX Blogs 0 20.01.2009 09:05
Inside Dynamics AX 4.0: Common Search Blog bot DAX Blogs 0 29.10.2007 10:50
Dianne Siebold: Update on the Dynamics AX SDK Team kashperuk DAX Blogs 1 16.10.2007 08:23
dynamicsusers: The Naked Business Part III - The site update Blog bot DAX Blogs 0 22.05.2007 04:42

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

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

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