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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.03.2004, 14:42   #1  
ArturK is offline
ArturK
Участник
 
81 / 10 (1) +
Регистрация: 13.08.2003
? Название родительской формы
На форме (форма1) у одного поля перекрыт метод, вызывающий метод таблицы, по которой построен DS этой формы).

Метод таблицы в свою очередь вызывает другую форму (форма2) через agrs();

Можно ли в форме2 получить название формы1, не передавая его в метод таблицы?
Старый 18.03.2004, 15:34   #2  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
Если запись таблицы передается в форму2 через args.record(), то можно так попытаться:
PHP код:
FormDataSource fDS;
;
fDS element.args().record().datasource();
print 
fDS.owner().name(); 
__________________
Андрей.
Старый 18.03.2004, 16:13   #3  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
А почему не просто вот так:
PHP код:
if (SysDictClass::isEqualOrSuperclass(classidget(element.args().caller()), classNum(FormRun)))
    
info(element.args().caller().name()); 
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 18.03.2004, 17:32   #4  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
2Maxim:
Для этого нужно в методе таблицы при формировании args проинициализировать этого args.caller(), а об этом речи не было. Если в этом методе написать
PHP код:
args.caller(this.datasource().owner()); // this - текущая запись таблицы 
, то тогда сработает.
__________________
Андрей.
Старый 18.03.2004, 17:47   #5  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
OK. Понял. Согласен.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 21.03.2004, 19:06   #6  
ArturK is offline
ArturK
Участник
 
81 / 10 (1) +
Регистрация: 13.08.2003
?
Спасибо, за ответы.
Они действительно помогли.
Но вот выявились какие проблемы:

Эта формы вызывается из нескольких форм, а мне нужно сделать только определенные действия в ней при вызове только из определенной формы, вот для этого мне и понадобилось ее название.

Так вот если этот вызов происходит из других форм, у которых нет передачи через args.record(), то вылезает ошибка о отсутствии record

Я сделал проверку if(element.args().caller()) - эта ошибка ушла,

но теперь если я открываю из Нужной формы, у которой нет ни одной записи, то написанное условие отрабатывает как false.

Как мне быть, какое условие наложить?

И я не совсем понял, предложенный вами вариант получает название DS или формы?
Мне кажется что DS, поэтому и выявилась, наверное, вторая проблема ...
Старый 22.03.2004, 13:15   #7  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
1. Ваши подозрения напрасны. В обоих случаях мы получаем название формы, как оно определено в АОТ.
2. Для того, чтобы получить название формы из args, нужно его проинициализировать в вызывающем форму методе. Как - решать вам. Использовать ли текущую запись или просто через args.caller(element). Само ничего не инициализируется и не передается(за исключением открытия формы через menuitem).

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

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
OZKA's DAX Journal: Модификация формы "Должностные лица". Blog bot DAX Blogs 0 30.09.2008 22:05
Зачем 2 формы транспортировки паллет и 2 формы маршрутов комплектации? twilight DAX: Функционал 2 15.02.2008 11:24
Создание Lookup формы Maxim Gorbunov DAX: База знаний и проекты 9 26.06.2007 16:44
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Динамические Lookup формы. Андрей Василюк DAX: База знаний и проекты 0 07.12.2001 07:07

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

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

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