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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.06.2007, 12:48   #1  
алька is offline
алька
Участник
 
15 / 10 (1) +
Регистрация: 18.03.2007
Адрес: СПб
как передать значение из диалога в форму, вызываемую через menuItem?
Привет всем!
Подскажите, пожалуйста, очень надо !
Проблема в следующем:
1) есть класс, в нем перекрыт метод dialog(), в котором программно на диалоговом окне задается контрол control1 и menuItemButton button1.
2) Пользователь вводит в контроле control1 значение и нужно, чтобы при нажатии на кнопку button1 открылась форма с параметрами введенного значения.

как передать в форму (form1) значение контрола control1?
пробовала через args(), но либо что-то не так делаю, либо подход неправильный - не получается.

помогите, плз, бьюсь третий день
заранее спасибо!
Старый 25.06.2007, 13:10   #2  
Lucky13 is offline
Lucky13
Участник
1C
 
674 / 155 (7) ++++++
Регистрация: 21.10.2004
Адрес: Воронеж
А как создается MenuItem для указанного menuItemButton?
Старый 25.06.2007, 13:14   #3  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,360 / 2080 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Оно?
addMenuItemButton
За это сообщение автора поблагодарили: алька (1).
Старый 25.06.2007, 13:21   #4  
алька is offline
алька
Участник
 
15 / 10 (1) +
Регистрация: 18.03.2007
Адрес: СПб
да, именно так, через dialog.addMenuItemButton(...)
Старый 25.06.2007, 13:33   #5  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,360 / 2080 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Вот собственно в том посте все Lemming и описал.
И пример есть.
Просто в вызываемой форме нужно вызвать метод базового класса (в котором метод dialog) - метод этот должен возвращать нужное вам значение.
А там уже его используете.
Старый 25.06.2007, 13:56   #6  
алька is offline
алька
Участник
 
15 / 10 (1) +
Регистрация: 18.03.2007
Адрес: СПб
спасибо большое!
только никак не могу понять, что это за метод caller_RU() в примере? посмотрела приаттаченный пример и все равно не осознала :
callerDialog = _args.caller().caller_RU();?
Старый 25.06.2007, 14:17   #7  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,034 / 305 (13) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
!
алька см. класс SysSetupFormRun
X++:
// ANVA, Inventory Reports
// Find RunbaseDialog class on child forms (or something else).
// See \Classes\InventJournalPrintForm_RU\main method.
Object caller_RU()
{
    if ( ! this.args())
        return null;

    return this.args().caller();
}

p.s. А вот буржуи лишены этой возможности
За это сообщение автора поблагодарили: алька (1).
Старый 25.06.2007, 15:09   #8  
алька is offline
алька
Участник
 
15 / 10 (1) +
Регистрация: 18.03.2007
Адрес: СПб
большое спасибо !!
Старый 25.06.2007, 16:43   #9  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,360 / 2080 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Копенгаген, Дания
Цитата:
Сообщение от Lemming Посмотреть сообщение
X++:
// ANVA, Inventory Reports
Object caller_RU()
p.s. А вот буржуи лишены этой возможности
На самом деле, это не так.
Вместо строки
X++:
    callerDialog = _args.caller().caller_RU();
можно использовать
X++:
    callerDialog = Dialog::getDialogFromCaller(_args.caller());
А этот статический метод есть в стандартном приложении и используется в базовых классах работы с диалогом.

Просто русские локализаторы его не нашли. Ну, или не искали.
За это сообщение автора поблагодарили: Lemming (2).
Старый 25.06.2007, 16:46   #10  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,034 / 305 (13) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
Thumbs up
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Вместо строки
X++:
    callerDialog = _args.caller().caller_RU();
можно использовать
X++:
    callerDialog = Dialog::getDialogFromCaller(_args.caller());
А этот статический метод есть в стандартном приложении и используется в базовых классах работы с диалогом.

Просто русские локализаторы его не нашли. Ну, или не искали.
Классно! Спасибо!
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Передача параметров в форму диалога evv DAX: Программирование 4 03.06.2008 10:35
Как передать значение переменной Аксапты COM-объекту AxaptaUser DAX: Программирование 2 11.07.2007 18:03
Как обновить форму, если добавление через кнопку? Arahnid DAX: Программирование 5 21.05.2007 11:18
Передать контейнер в job через COM sao DAX: Программирование 5 21.02.2006 19:34
Передача ARGS из диалога в look-up форму? Insight DAX: Программирование 1 13.09.2004 14:52
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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