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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.10.2009, 07:49   #1  
Murlin is offline
Murlin
Возьми свет!!!
Аватар для Murlin
Самостоятельные клиенты AX
Злыдни
 
291 / 32 (2) +++
Регистрация: 22.09.2008
Адрес: Тюмень, Рашан Федерашан
Цитата:
Сообщение от Bishop Посмотреть сообщение
Класс DialogField не имеет метода parmFieldName() (в стандарте)...

IMHO, лучше всего пользоваться вот этим "велосипедом":
Modified поля на форме-наследнике RunBase
Тут решена так же проблема перехвата методов RunBase-диалога на стороне сервера.
Извините старая доработка уже все забыл, действительно еще кое что нужно переопределить в классе dialogField
X++:
class DialogField extends DialogControl
{
    // Packed
    int             type;
    int             fieldNo;
    // Is set in init()
    DictType        dictType;
    Types           baseType;
    boolean         checkBox;
    anytype         dummy;
    // C/S optimize
    container       value;      // Hopefully temporary, a container can't be stored in a struct
   //доработка -->
    boolean         useName;
    FieldName       nameField;
   //доработка -->
    #properties
    #define.widthMode('widthMode')
    #define.heightMode('heightMode')
    #define.setHeightFromLines('setHeightFromLines')
    #localmacro.currentList
        type,
        fieldNo
    #endmacro
}
X++:
str fieldname(int arrIdx = 1)
{
    ;
    //доработка -->
    if (useName)
        return nameField;
//доработка --->
    return #PrefixField+int2str(fieldNo)+'_'+int2str(arrIdx);
}
X++:
void new(
    Dialog  _dialog,
    int     _type = 0,
    int     _fieldNo = 0
    )
{
    type        = _type;
    fieldNo     = _fieldNo;
    //Доработка --->
    useName     =   false;
//Доработка --->
    if (_dialog.isOnServer())
    {
        properties = new Struct();
        return;
    }
}
X++:
//Доработка -->
FieldName parmFieldName(FieldName _nameField = nameField)
{
    ;
    if (_nameField)
        useName = true;
    nameField = _nameField;
    return  nameField;
}
//доработка -->
За это сообщение автора поблагодарили: Alexx7 (1).
Старый 22.03.2010, 00:02   #2  
DmitryS is offline
DmitryS
Участник
 
37 / 13 (1) ++
Регистрация: 01.08.2006
Адрес: Москва
useName и nameField нужно добавить в currentList.
Без этого не работает в некоторых случаях.
Теги
dialog, modified, runbase

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Можно ли динамически созданному контролу CheckBox прикрутить метод modified? Poleax DAX: Программирование 4 31.03.2009 19:58
метод Modified к stringControl Poleax DAX: Программирование 15 21.07.2008 18:39
Форма: как привязать метод до выбора в поле Arahnid DAX: Программирование 9 22.11.2007 16:18
Метод на поле датасурса. Deusik DAX: Программирование 6 09.11.2006 16:38

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

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

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