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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.12.2019, 18:11   #1  
gimer is offline
gimer
Участник
 
5 / 10 (1) +
Регистрация: 08.04.2008
? AX365FO. Edit-метод, вопрос новичка...
Доброго времени суток всем!

В AX7 я совсем недавно, поэтому прошу подсказать решение вот в какой моей печали - есть задача на стандартной форме добавить новый dataSource, добавить вкладку и на ней вывести грид, одним из полей которого должен быть edit-метод.

Казалось бы, тривиальная задача, в более ранних версиях аксапты делается на раз,два... Но тут у меня нашла коса на камень

Итак, вводные:
1. Стандартная форма. Назовем StandardForm
2. Таблица, которую нужно добавить новым dataSource. Пусть будет NewTable

Что я делаю:
1. Создал Extension для StandardForm - StandardForm.Extension
2. Добавил новый dataSource NewTable
3. Добавил новый TabPage у существующего Tab
4. На нем разместил грид, источником которого является новый dataSource. Накидал нужных полей,
5. Создал класс Extension для нового dataSource
X++:
[ExtensionOf(formDataSourceStr(StandardForm, NewTable))]
public final class StandardForm_NewTable_Extension
6.В классе создал edit-метод
X++:
public edit int editMethod(boolean _set, NewTable_record, int _value)
    {
        /*
        blah-blah-blah
        */
    }
7. Пытаюсь на форме для одного из полей в своем гриде (тип данных тоже int) задаю DataSource =NewTable и указываю DataMethod = editMethod

Вот на этом моменте моя коса и налетает на камень так как при build-е выдается ошибка о том, что указанный метод отсутствует на dataSource или таблице...


ЧЯДНТ? Где нужно прописать этот метод, чтобы он был виден в гриде? Реально уже голова закипает от того, что на такой мелочи споткнулся.

Заранее всем благодарен,
Старый 10.12.2019, 21:23   #2  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
362 / 542 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
может быть поможет - первая ссылка в гугле, говорит о том, что метод должен быть статическим, так ли это пока не знаю https://community.dynamics.com/ax/f/...34=1#responses
__________________
Sergey Nefedov

Последний раз редактировалось SRF; 10.12.2019 в 21:27.
Старый 11.12.2019, 03:20   #3  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,273 / 3466 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Какое-то количество времени назад так не прокатывало. Т.е. дисплей метод должен быть расположен на таблице или на форме, но не на датасорсе.
Статическим метод должен быть необязательно - это так сказать пережитки ранних версий D365FO.
В общем - нужно сделать расширение не датасорса, а формы или таблицы и уже там писать свой метод. А в контроле нужно будет указать в свойствах либо MyClass_Extension.mymethod, если метод у Вас будет нестатическим, либо MyClass_Extension::myMethod, если сделаете его статическим.
__________________
Возможно сделать все. Вопрос времени
Теги
ax7, edit метод

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Сюрприз Edit-метода AX2009 RU5 Pustik DAX: Программирование 12 22.09.2011 21:38
Использование edit метода на таблицах, для которых MaxAccessMode=View bio_unit DAX: Программирование 5 23.03.2007 17:17
Вопрос новичка про заголовки грида Alex P DAX: Программирование 21 05.10.2004 19:25
Передача массива VARIANTов в Automation метод Maximin DAX: Программирование 0 09.10.2002 19:31
edit и display методы Maxim Gorbunov DAX: База знаний и проекты 4 15.01.2002 12:58
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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