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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.07.2008, 13:41   #1  
Zoe is offline
Zoe
Участник
 
14 / 10 (1) +
Регистрация: 23.03.2008
Адрес: Санкт-Петербург
Передача параметра в Запрос(Query)
Добрый день!

Подскажите, пожалуйста, решение следующей проблемы:
Форма FormA вызывает FormB через MenuItem (соответственно, явно данные не передаются из одной формы в другую...).
На FormB запускается запрос (Query), одним из параметров которого должен служить Код клиента выбранной записи на FormA.
Сам вопрос: Каким образом можно передать значение одного поля DS FormA в FormB (точнее, в FormB используется таблица CustTable,
из которой забирается значение поля AccountNum (Код клиента), и по его значению зацепляются строки таблицы CustConfirm для Form2)?

Скажу сразу, что часть кода, написанная в формировании запроса


X++:
 CustAccount                   z_CodClient;
X++:
              Args                          args = new Args();
 
              CustConfirmOfPaymentTrans   custConfirmOfPaymentTrans;
          ;
 
//Задаем значение для Кода клиента (считываем из вызывающей формы)
              z_custConfirmOfPaymentTrans = args.record();
              z_CodClient = custConfirmOfPaymentTrans.CustAccount;
выдает <recID> = 0...

Подскажите, пожалуйста, в чем может быть причина такой ошибки и как ее избежать...

Спасибо всем заранее!
Старый 07.07.2008, 13:43   #2  
Zoe is offline
Zoe
Участник
 
14 / 10 (1) +
Регистрация: 23.03.2008
Адрес: Санкт-Петербург
Простите, пожалуйста, за невнятный код! Я повторю его:
X++:
 CustAccount                   CodClient;
              Args                          args = new Args();
              CustConfirmOfPaymentTrans   custConfirmOfPaymentTrans;
          ;
//Задаем значение для Кода клиента (считываем из вызывающей формы)
              custConfirmOfPaymentTrans = args.record();
              CodClient = custConfirmOfPaymentTrans.CustAccount;
Старый 07.07.2008, 14:02   #3  
IvanOFF is offline
IvanOFF
MCTS
MCBMSS
 
65 / 87 (3) ++++
Регистрация: 22.09.2005
Адрес: Москва
Не
X++:
Args args = new Args();
а все же, я думаю
X++:
Args args = element.args();
Старый 07.07.2008, 14:04   #4  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
У кнопки с MenuItem на FormA заполняете поле DataSource, затем в FormB считываете custTable через element.args().record(). В AOT полно примеров. А вы из только что проинициализированного (и потому "пустого") args пытаетесь какой-то record получить.
Старый 07.07.2008, 15:22   #5  
Zoe is offline
Zoe
Участник
 
14 / 10 (1) +
Регистрация: 23.03.2008
Адрес: Санкт-Петербург
Спасибо Всем огромное! В самом деле, перестав переинициализировать args и записав вот так (как посоветовал IvanOFF )
X++:
Args                          args = element.args();             CustConfirmOfPaymentTrans   custConfirmOfPaymentTrans;
            CustTable                   CustTable;
          ;
//Задаем значение для Кода клиента (считываем из вызывающей формы)
              CustTable = args.record();
              CodClient = CustTable.AccountNum;
(и только это),
все заработало без проблем!
Спасибо!!!
Старый 07.07.2008, 15:27   #6  
oip is offline
oip
Axapta
Лучший по профессии 2014
 
2,564 / 1416 (53) ++++++++
Регистрация: 28.11.2005
Записей в блоге: 1
Лучше так.

X++:
Args args = element.args(); 
CustTable  ustTable;
;
if (element.args() &&  
    element.args().dataset() == tableNum(CustTable))
{
    ustTable = args.record();
    odClient = custTable.AccountNum;
}
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
передача параметров в запрос while select tolstjak DAX: Программирование 13 15.02.2009 19:39
Передача query в report, проблемы Андрей К. DAX: Программирование 9 26.06.2008 15:38
Передача функции в качестве параметра lemchey_white DAX: Программирование 20 21.01.2008 22:51
like запрос с использованием query Vadik Shiryakoff DAX: Программирование 7 13.03.2006 12:05
Передача массива как параметра DreamCreator DAX: Программирование 1 26.01.2005 16:58
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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