Заполнить префиксы в справочниках и документах
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) Зачем усложнять? Не нужно никакие меню.
Есть две кнокпи для справочников и отдельно для документов.
Кнопку нажали -> все НУЖНЫЕ типы документов выгрузились списком. Кнопку нажал "Сменить Префикс" - > все префиксы поменялись.
Сейчас загвоздка в первом. Надо выгржать типы документов и справочников в таблицу.
Пока дошёл до такого кода, но список не грузится :(
_____
Есть две кнокпи для справочников и отдельно для документов.
Кнопку нажали -> все НУЖНЫЕ типы документов выгрузились списком. Кнопку нажал "Сменить Префикс" - > все префиксы поменялись.
Сейчас загвоздка в первом. Надо выгржать типы документов и справочников в таблицу.
Пока дошёл до такого кода, но список не грузится :(
_____
&НаСервере
Процедура ЗаполнитьДокументыНаСервере()
Запрос=Новый Запрос;
Текст="";
Для Каждого Документ Из Метаданные.Документы Цикл
Текст=Текст+"ВЫБРАТЬ Ссылка ИЗ Документ."+Документ.Имя+" ОБЪЕДИНИТЬ ";
КонецЦикла;
Запрос.Текст=Лев(Текст,СтрДлина(Текст)-СтрДлина(" ОБЪЕДИНИТЬ "));
Выборка=Запрос.Выполнить().Выбрать();
Объект.Список.Очистить();
Пока Выборка.Следующий() Цикл
Список_ = Объект.Список.Добавить();
Список_.НаименованиеОбъекта = Выборка.НаименованиеОбъекта;
Список_.ТипОбъекта = Выборка.ТипОбъекта;
КонецЦикла;
КонецПроцедуры
________
Показать
(12) запрос с выбором всех типов документов получился.
_____
Теперь нужно отобрать типы документов из списка.
&НаСервере
Процедура ЗаполнитьДокументыНаСервере()
Для Каждого Документ Из Метаданные.Документы Цикл
Список_ = Объект.Список.Добавить();
Список_.НаименованиеОбъекта = Документ;
КонецЦикла;
КонецПроцедуры
Показать_____
Теперь нужно отобрать типы документов из списка.
(14) Да, получилось уже.
____
Но меня беспокоит, что в массиве строковые значения, а значит они не могут передать список всех документов по определённому типу.
&НаСервере
Процедура ЗаполнитьДокументыНаСервере() //для Документов
Объект.Список.Очистить();
//Задать список документов для отображения
МассивВыбранных = Новый Массив;
МассивВыбранных.Добавить("ПриходнаяНакладная");
МассивВыбранных.Добавить("РасходнаяНакладная");
//вывести в табличную часть список документов
Для Каждого Документ Из МассивВыбранных Цикл
СписокДокумент_ = Объект.Список.Добавить();
СписокДокумент_.НаименованиеОбъекта = Документ;
КонецЦикла;
КонецПроцедуры
Показать____
Но меня беспокоит, что в массиве строковые значения, а значит они не могут передать список всех документов по определённому типу.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот