Как создать n-ое количество реквизитов ?
Для КолРеквизты= 0 По N Цикл
НовыеРеквизиты = Новый Массив;
РеквизитВопросов = Новый РеквизитФормы("СозданныйРеквизит"+КолРеквизты,Новый ОписаниеТипов("Строка"),,,Истина);
НовыеРеквизиты.Добавить(РеквизитВопросов);
ИзменитьРеквизиты(НовыеРеквизиты);
КонецЦикла;
Чтобы было СозданныйРеквизит0,СозданныйРеквизит1....
По теме из базы знаний
Найденные решения
Рабочий код
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ДобавляемыеРеквизиты = Новый Массив;
Для Счетчик = 0 По 10 Цикл
МассивТипов = новый Массив;
МассивТипов.Добавить(Тип("Строка"));
ИмяРеквизита = "ПолеВводаСтроки"+Счетчик;
СинонимРеквизита = "Поле ввода строки "+Счетчик;
Реквизит = Новый РеквизитФормы(ИмяРеквизита, Новый ОписаниеТипов(МассивТипов),, СинонимРеквизита, Истина);
ДобавляемыеРеквизиты.Добавить(Реквизит);
КонецЦикла;
ИзменитьРеквизиты(ДобавляемыеРеквизиты);
Для Счетчик = 0 По 10 ЦИкл
ИмяРеквизита = "ПолеВводаСтроки" + Счетчик;
ЭлементФормы = ЭтаФорма.Элементы.Добавить(ИмяРеквизита, Тип("ПолеФормы"), ЭтаФорма);
ЭлементФормы.ПутьКДанным = ИмяРеквизита;
ЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
КонецЦикла;
КонецПроцедуры
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) Спасибо
Для КолРеквизты= 0 По N Цикл
НовыеРеквизиты = Новый Массив;
РеквизитВопросов = Новый РеквизитФормы("СозданныйРеквизит"+КолРеквизты,Новый ОписаниеТипов("Строка"),,,Истина);
НовыеРеквизиты.Добавить(РеквизитВопросов);
КонецЦикла;
ИзменитьРеквизиты(НовыеРеквизиты);
Рабочий код
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ДобавляемыеРеквизиты = Новый Массив;
Для Счетчик = 0 По 10 Цикл
МассивТипов = новый Массив;
МассивТипов.Добавить(Тип("Строка"));
ИмяРеквизита = "ПолеВводаСтроки"+Счетчик;
СинонимРеквизита = "Поле ввода строки "+Счетчик;
Реквизит = Новый РеквизитФормы(ИмяРеквизита, Новый ОписаниеТипов(МассивТипов),, СинонимРеквизита, Истина);
ДобавляемыеРеквизиты.Добавить(Реквизит);
КонецЦикла;
ИзменитьРеквизиты(ДобавляемыеРеквизиты);
Для Счетчик = 0 По 10 ЦИкл
ИмяРеквизита = "ПолеВводаСтроки" + Счетчик;
ЭлементФормы = ЭтаФорма.Элементы.Добавить(ИмяРеквизита, Тип("ПолеФормы"), ЭтаФорма);
ЭлементФормы.ПутьКДанным = ИмяРеквизита;
ЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
КонецЦикла;
КонецПроцедуры
Показать
(9)
чистая база. В эксель файле есть более 200 столбцов, хотелось написать форму на 1с, чтоб легче заполнять, плюс разные столбцы заносят разные отделы, для каждого таким образом открыть форму с разрешенными для записи разным сотрудникам вносить заполнение разных реквизитов.
Создавать кучу реквизитов вручную мне кажется моветон, ведь автоматизация на то и автоматизация.
чистая база. В эксель файле есть более 200 столбцов, хотелось написать форму на 1с, чтоб легче заполнять, плюс разные столбцы заносят разные отделы, для каждого таким образом открыть форму с разрешенными для записи разным сотрудникам вносить заполнение разных реквизитов.
Создавать кучу реквизитов вручную мне кажется моветон, ведь автоматизация на то и автоматизация.
(10) Ну так делаете регистр сведений с соответствующими полями, повествующими о имени поля, содержании, комментарии каком, ролям/правах. Ну и грузим туды данные из колоночек эксельчика. Ну и сохраняем это все не в реквизитах, а в том самом регистре. В итоге решаем массу проблем совместного доступа к файлам и разграничением прав.
https://infostart.ru/1c/articles/574802/
В регистре программно создавать поля/измерения/ресурсы можно?
Проблема не в данных. Проблема, что названияСтолбцов/шапка/регистр назовите как угодно в зависимости от инструмента нужно создать более 200-от. Да я понимаю, что это же разово. А теперь загоним ситуацию в угол пусть будет элементов наименований реквизитов более 100 000, и тоже вручную будем? Класс! Одно дело если там шедевр создаете, самописную конфу аптеки/военторга, что угодно. А тут наименования шапки полей заданные с одного файла перегнать в другой.
Проблема не в данных. Проблема, что названияСтолбцов/шапка/регистр назовите как угодно в зависимости от инструмента нужно создать более 200-от. Да я понимаю, что это же разово. А теперь загоним ситуацию в угол пусть будет элементов наименований реквизитов более 100 000, и тоже вручную будем? Класс! Одно дело если там шедевр создаете, самописную конфу аптеки/военторга, что угодно. А тут наименования шапки полей заданные с одного файла перегнать в другой.
(12)Делаете измерение "ИмяКолонки", ресурс "Значение" типа ХранилищеЗначений. И пишете весь мильон своих колонок в виде мильона записей регистра
Посмотрите как в том же MDMе это сделано, где надо хранить заранее неизвестную произвольную структуру справочников вместе со значениями
Посмотрите как в том же MDMе это сделано, где надо хранить заранее неизвестную произвольную структуру справочников вместе со значениями
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот