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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.08.2013, 12:49   #1  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
AllowEdit = no для Edit-метода - можно что-нибудь придумать?
Обычно, чтобы сделать невозможными для редактирования поля источника данных на форме т.е написать
Table_ds.object(fieldnum(Table, Field)).allowEdit(false);

Можно ли что-нибудь придумать, чтобы такми же образом предотвтатить ввод в поля. основанные на edit-методе источника данных, точней из самой таблицы?
Что-нибудь типа:

Table_ds.object(tablemethodstr(Table, EditMethod)).allowEdit(false);
(Пробовала - так конкретно не работает, жалуется на tablemethodstr)

Нужно мне это, тк edit-метод входит в" группу полей" таблицы и эта группа используется 3 раза со свойством AutoDataGroup = true на форме. Т.е он автоматически добавляется на форму.
Форма стандартная, поэтому в идеале красивее было бы вызвать один раз
Table_ds.object(tablemethodstr(Table, EditMethod)).allowEdit(false);
А не возиться поштучно со всми контролами и "некрасиво" поступать:
  • Каждой группе ставить AutoDataGroup = false
  • делать AutoDeclaration = true каждому контролу с EditMethod,
  • а потом еще и кажому контролу назначать .allowEdit(BooleanCondition); .


Есть варианты?

AX2009 Ru2
Старый 30.08.2013, 13:37   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от IKA Посмотреть сообщение
Есть варианты?
Блокировка всей строки вас не спасёт. Или нужно блокировать не все поля в строке?

На уровне датасурса управлять доступность edit-метода нельзя. Только на уровне контролов.

К свойству контрола можно обратится и без "AutoDeclaration = true"
Итератор с поддержкой методов обратного вызова для обработки контролов на форме
За это сообщение автора поблагодарили: IKA (1).
Старый 30.08.2013, 13:40   #3  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
1. Доступ к контролу через синтаксис control::имяэлемента или через FormDesign. Автодекларация в данном случае не нужна
2. Рекурсивный обход всех контролов формы с проверкой к какому датасорсу и методу он привязан. gl00mie выложил готовое решение Итератор с поддержкой методов обратного вызова для обработки контролов на форме для похожих случаев
За это сообщение автора поблагодарили: IKA (1).
Старый 30.08.2013, 13:44   #4  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Цитата:
Сообщение от db Посмотреть сообщение
1. Доступ к контролу через синтаксис control::имяэлемента или через FormDesign. Автодекларация в данном случае не нужна
Понятно, что так тоже,конечно, можно, но хрен редьки не слаще в этом случае(

Цитата:
Сообщение от db Посмотреть сообщение
2. Рекурсивный обход всех контролов формы с проверкой к какому датасорсу и методу он привязан. gl00mie выложил готовое решение Итератор с поддержкой методов обратного вызова для обработки контролов на форме для похожих случаев
спасибо, интересно!
Старый 30.08.2013, 13:50   #5  
IKA is offline
IKA
Участник
 
359 / 65 (3) ++++
Регистрация: 15.03.2006
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Блокировка всей строки вас не спасёт. Или нужно блокировать не все поля в строке?
Да, блокировать по условию только ввод в данные edit-поля.
Старый 06.09.2013, 09:01   #6  
kair84 is offline
kair84
Участник
 
47 / 58 (2) ++++
Регистрация: 15.04.2010
Адрес: Belarus
Дисплей метод на источнике данных формы, в котором данные вытягиваются из Эдит метода табл. и код не дублируется и без извращений.
как бы Эдит методы для того и предназначены чтоб можно было редактировать, иначе дисплей
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
palleagermark: It is possible for users to edit the Item reference fields of sales order lines and purchase order lines. Blog bot DAX Blogs 0 17.02.2010 21:07
Korus Axapta Retail: Потребительские свойства. Как можно отобрать номенклатуру с определенными значениями свойств? mazzy DAX: Прочие вопросы 28 28.05.2009 12:22
edit-методы и validateWrite() на DataSource gl00mie DAX: Программирование 6 30.06.2008 17:50
Как присвоить значение edit'у в гриде Mechanizm DAX: Программирование 8 28.05.2004 07:49
Что и как можно резать? George Nordic DAX: Администрирование 1 11.05.2004 18:44

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

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

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