27.10.2009, 09:27 | #1 |
Участник
|
Label поля таблицы по его FieldId
Уважаемые посетители форума!
Подскажите, пожалуйста, как можно получить Label поля таблицы, если известна таблица и FieldId поля.
__________________
AX 3.0, Build #9.3 |
|
27.10.2009, 09:30 | #2 |
Ищущий знания...
|
X++: SysDictField dictField = new SysDictField(MyTableId, MyFieldId); str lableF; ; lableField = dictField.lable();
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем Последний раз редактировалось lev; 27.10.2009 в 09:32. Причина: чуть поправил код |
|
|
За это сообщение автора поблагодарили: chanchala (1). |
27.10.2009, 09:30 | #3 |
Moderator
|
Как-то так:
X++: tableId = tablename2id(this.tableName(lines.TableName)); dictField = new DictField(tableId, fieldname2id(tableId, lines.FieldName)); if(dictField) this.insertString(dictField.label(), label); |
|
|
За это сообщение автора поблагодарили: chanchala (1). |
27.10.2009, 09:32 | #4 |
Microsoft Dynamics
|
Еще проще
X++: fieldpname(tablenum(...), fieldnum(...)); |
|
|
За это сообщение автора поблагодарили: lev (1), konopello (1), chanchala (1). |
27.10.2009, 09:34 | #5 |
Ищущий знания...
|
вот более конкретный пример:
X++: SysDictField dictField = new SysDictField(tableNum(InventTable), fieldNum(InventTable, ItemId)); str lableF; ; lableF = dictField.label(); info(lableF);
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
27.10.2009, 09:34 | #6 |
Участник
|
Так, господа. Несколько минут, пожалуйста. Сейчас я все это попробую :-)
__________________
AX 3.0, Build #9.3 |
|
27.10.2009, 09:47 | #7 |
Участник
|
Спасибо, Lev. Это то, что мне нужно.
__________________
AX 3.0, Build #9.3 |
|
27.10.2009, 09:51 | #8 |
Участник
|
Да, с этого я начала. Только осталось непонятно что мне подвавть на вход fieldNum, eсли у меня есть только fieldId.
__________________
AX 3.0, Build #9.3 |
|
27.10.2009, 09:59 | #9 |
Участник
|
|
|
27.10.2009, 10:02 | #10 |
Moderator
|
Цитата:
X++: static void Job223(Args _args) {; info(new SysDictField(tableNum(InventTable), fieldNum(InventTable, ItemId)).label()); } X++: static void Job223_1(Args _args) {; info(new SysDictField(tableNum(InventTable), fieldId2Ext(fieldNum(InventTable, Dimension),2)).label()); } Последний раз редактировалось Gustav; 27.10.2009 в 10:14. |
|
27.10.2009, 10:12 | #11 |
Ищущий знания...
|
да я развернул для наглядности
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
|
За это сообщение автора поблагодарили: Gustav (1). |
27.10.2009, 10:12 | #12 |
Участник
|
Да, так хорошо
__________________
AX 3.0, Build #9.3 |
|
27.10.2009, 10:32 | #13 |
Administrator
|
Если известен fieldId, то есть функция fieldid2pname, которой передаются tableid и fieldId. Эта функция из System Documentation
Если нужно получить label конкретного поля - то fieldpname(InventTable, ItemId) (к примеру) Или так как Вам описали.
__________________
Возможно сделать все. Вопрос времени |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|