|
Программное создание реквизита произвольной формы |
Я |
|
ER1337 19.12.17 - 11:03 | Вечер в хату, господа девелоперы :D Всех с наступающим!
Сегодня такой вопрос. Нужно программно создать реквизит произвольной формы с типом "Динамический список". Делаю так:
МассивРеквизитов = Новый Массив;
МассивРеквизитов.Добавить(Новый РеквизитФормы("СписокТаблица", Новый ОписаниеТипов("ДинамическийСписок"),,"Поле таблицы"));
ЭтаФорма.ИзменитьРеквизиты(МассивРеквизитов);
Останавливается с ошибкой "Метод объекта не обнаружен (ИзменитРеквизиты)". Куда копать? По логике вещей, реквизит должен добавляться через этот метод. Пробовал выпонлять действия в процедуре на сервере, результат тот же
Рекламное место пустует
|
Lexey_ 1 - 19.12.17 - 11:09 | |
xxTANATORxx 2 - 19.12.17 - 11:14 | ( 0)боюсь спросить кому вы делаете доработки, если у вас заход на форум начинается с таких фраз |
GANR 3 - 19.12.17 - 11:20 | ( 2) прошу заметить - 1998 года рождения |
ER1337 4 - 19.12.17 - 11:22 | ( 3) Кушать всем хочется :) И вообще говоря, это уже почти 20 лет |
GANR 5 - 19.12.17 - 11:23 | ( 0) Начни с просмотра значений переменных в отладчике и просмотра описаний их типов в синтаксис помощнике. Стек вызовов глянь - на сервере этот метод выполняется или на клиенте. Доступен ли метод ИзменитьРеквизиты на клиенте/на сервере. |
nordbox 6 - 19.12.17 - 11:23 | |
silent person 7 - 19.12.17 - 11:24 | Пробовал выпонлять действия в процедуре на сервере
Синтаксис:
ИзменитьРеквизиты(<ДобавляемыеРеквизиты>, <УдаляемыеРеквизиты>)
Доступность:
Сервер, мобильное приложение(сервер).
Надо не пробовать, а делать. |
vde69 Модератор 8 - 19.12.17 - 11:25 | Ошибка в описании ошибки :)
в ошибке - ИзменитРеквизиты
в коде - - ИзменитьРеквизиты |
ER1337 9 - 19.12.17 - 11:26 | ( 8) Опечатался, вручную писал |
Lexey_ 10 - 19.12.17 - 11:28 |
Рекламное место пустует
|
ER1337 11 - 19.12.17 - 11:28 | |
nordbox 12 - 19.12.17 - 11:28 | ( 9) скрин сделай и в студию |
ER1337 13 - 19.12.17 - 11:33 | |
nordbox 14 - 19.12.17 - 11:33 | &НаСервере
МассивРеквизитов = Новый Массив;
МассивРеквизитов.Добавить(..................<твои художества>
ИзменитьРеквизиты(МассивРеквизитов); |
hhhh 15 - 19.12.17 - 11:36 | ( 13) да, проверь, есть там немного повыше строчка &НаСервере ? |
Franchiser 16 - 19.12.17 - 11:38 | Эта форма не нужно
|
ER1337 17 - 19.12.17 - 11:38 | |
Lexey_ 18 - 19.12.17 - 11:40 | ( 17) процедуры объявлять не умеешь |
ER1337 19 - 19.12.17 - 11:42 | ( 18) Не допечатал просто, поленился, суть то в другом |
vde69 Модератор 20 - 19.12.17 - 11:42 | ( 17) в 1с при описании процедур/функций после имени обязательно должна быть скобка, у тебя ее нет... |
Lexey_ 21 - 19.12.17 - 11:45 | |
nordbox 22 - 19.12.17 - 11:45 | (19) >>Не допечатал просто
в программировании нет такого понятия,
1с еще телепатическими способностями не наделена |
silent person 23 - 19.12.17 - 11:45 | ( 17) ну молодец, реквизит формы добавил. А теперь добавь его к элементам формы.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
 //Вставить содержимое обработчика
ШрифтШапки = Новый Шрифт("Verdana", 20,Истина);
МассивЭлементов = Новый Массив();
МассивЭлементов.Добавить("Первое ");
МассивЭлементов.Добавить(Новый ФорматированнаяСтрока("второе ",ШрифтШапки));
МассивЭлементов.Добавить("третье ");
МассивЭлементов.Добавить(Новый ФорматированнаяСтрока("четвертое",ШрифтШапки));
Реквизит1 = Новый ФорматированнаяСтрока(МассивЭлементов);
МассивРеквизитов = Новый Массив;
МассивРеквизитов.Добавить(Новый РеквизитФормы("Реквизит2", Новый ОписаниеТипов("ФорматированнаяСтрока"),,));
ЭтаФорма.ИзменитьРеквизиты(МассивРеквизитов);
ЭтаФорма.Реквизит2 = Новый ФорматированнаяСтрока(МассивЭлементов);
НовыйЭлемент = Элементы.Добавить("Реквизит2", Тип("ПолеФормы"));
НовыйЭлемент.ПутьКДанным = "Реквизит2";
КонецПроцедуры
Реквизит2 - добавлен полностью программно. |
vde69 Модератор 24 - 19.12.17 - 11:46 | там опечатался, тут не допечатал... короче растет новое поколение ....
ты это самое, давай сюда не заготовку выкладывай а конкретную проблему...
а то сейчас похоже
хирург звонит другу - у меня проблема, я печень не могу найти у клиента.
Друг - фотку скинь
Хирург - вот фотка трепанации черепа, но суть не в этом
|
silent person 25 - 19.12.17 - 11:49 | а вообще вот
Добавление динамического списка
....
Теперь эти же самые действия выполним программно, из встроенного языка.
|
nordbox 26 - 19.12.17 - 11:51 | ( 17) из того что там написал
&НаСервере
Процедура ДобавитьРеквизитФормы()
МассивРеквизитов = Новый Массив;
МассивРеквизитов.Добавить(Новый РеквизитФормы("СписокТаблица", Новый ОписаниеТипов("ДинамическийСписок"),,"Поле таблицы"));
ИзменитьРеквизиты(МассивРеквизитов);
КонецПроцедуры
( 25) Ты думаешь у него доступ есть?
хотя на 7 дней оформит сам |
ER1337 27 - 19.12.17 - 11:53 | ( 26) Есть доступ, не переживайте |