Задача. Есть иерархический справочник Товары. Необходимо при открытии формы выбора с отборам выводить только те группы и элементы, которые попадают в отбор.Например если просто установить отбор по группе Услуги, то получим такой результат.
Т.е. мы получим данные по услугам и пустые группы, которые не подходят под наше условие.
Одно из решений данной задачи будет воспользоваться условным оформлением списка. Установим свойства Видимость и Отображать в НЕТ.
Добавим отбор элементов не Услуги.
В итоге получим наш результат, т.е. отображение только групп и элементов подходящих под условие.
Все эти условия отбора и оформления также можно описать программно при открытии формы.
Хочу заметить, что данный способ необходимо использовать с осторожностью на больших массивах данных.
Задача. Создать новый отчет и добавить его в подсистему вариантов отчета.
1. Чтобы добавить новый документ необходимо включить возможность редактирования нашей конфигурации.
2. Добавим новый отчет «БСП_НовыйОтчет». Например данный отчет будет показывать остатки по складам.
3. В модуль менеджера отчета добавим код.
Процедура НастроитьВариантыОтчета(Настройки, НастройкиОтчета) Экспорт
НастройкиВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, НастройкиОтчета, "ОстаткиПоСкладам");
НастройкиВарианта.Описание = НСтр("ru = 'Новый отчет по остаткам на складах.'");
КонецПроцедуры
Здесь «ОстаткиПоСкладам» — это ключ варианта отчета, определенного в настройках схемы компоновки данных
4. Новый отчет необходимо добавить в какую-нибудь подсистему, по содержанию отчета наиболее подходит «Анализ запасов». Для этого необходимо разрешить редактирование данной подсистемы.
5. Отредактируем процедуру «НастроитьВариантыОтчетов» в общем модуле «ВариантыОтчетовПереопределяемый», добавим строку
Перед редактированием необходимо дать разрешение в настройках поддержки.
6. Запускаем режим «1С:Предприятие» и с помощью обработки из набора внешних обработок библиотеки стандартных подсистем «ИнструментыРазработчикаОбновлениеВспомогательныхДанных.epf» обновляем наши новые данные. Перейдя к отчетам подсистемы «Склад и доставка» в подгруппе «Анализ запасов» будет и наш отчет.
Задача. Создать новый документ и добавить его в подсистему внешних печатных форм.
1. Чтобы добавить новый документ необходимо включить возможность редактирования нашей конфигурации.
2. Добавим новый документ с произвольной структурой
Также не забываем изменить описание и представление объекта.
3. В модуль менеджера документа добавить процедуры.
// Заполняет список команд печати.
//
// Параметры:
// КомандыПечати – ТаблицаЗначений – состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати
//
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
КонецПроцедуры
// Формирует печатные формы.
//
// Параметры:
// МассивОбъектов – Массив – ссылки на объекты, которые нужно распечатать;
// ПараметрыПечати – Структура – дополнительные настройки печати;
// КоллекцияПечатныхФорм – ТаблицаЗначений – сформированные табличные документы (выходной параметр)
// ОбъектыПечати – СписокЗначений – значение – ссылка на объект;
// представление – имя области, в которой был выведен объект (выходной параметр);
// ПараметрыВывода – Структура – дополнительные параметры сформированных табличных документов (выходной параметр).
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
КонецПроцедуры
4. В форме списка в командную панель добавим группу кнопок с именем «Подменю печать».
8. В общем модуле «УправлениеПечатьюПереопределяемый» отредактируем процедуру «ПриОпределенииОбъектовСКомандамиПечати» сначала предоставив возможность редактирования в настройках поддержки.
9. Запускаем режим «1С:Предприятие» и с помощью обработки из набора внешних обработок библиотеки стандартных подсистем «ИнструментыРазработчикаОбновлениеВспомогательныхДанных.epf» обновляем наши новые данные.
10. Протестируем наши доработки. Добавим внешнюю печатную форму в подсистему «Печатные формы, отчеты и обработки»
Откроем форму списка и выведем на экран команды печати
На этом подключение нового объекта к подсистеме внешних печатных форм завершено.
Задача. Создать новый документ и добавить его в подсистему запрета изменения данных на определенную дату.
Решение данной задачи будем осуществлять на конфигурации «1С: Управление торговлей 11.2», но все действия можно применять и к другим конфигурациям, содержащим БСП (ЗУП 3, БУ 3, ERP 2 и т.д.).
1. Чтобы добавить новый документ необходимо включить возможность редактирования нашей конфигурации.
2. Добавим новый документ с произвольной структурой
Также не забываем изменить описание и представление объекта.
3. В форме документа добавим процедуру «ПриЧтенииНаСервере».
Перед правкой модуля, необходимо разрешить его редактирование
5. Чтобы была проверка для записи нового документа или при удалении, необходимо создать 2 подписки на события:
«БСП_ПроверитьДатуЗапретаИзмененияПередЗаписьюДокумента» для события «ПередЗаписью», где источник наш документ «БСП_НовыйДокумент» и метод «ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередЗаписьюДокумента»
«БСП_ПроверитьДатуЗапретаИзмененияПередУдалениемДокумента» для события «ПередУдалением», где источник документ «БСП_НовыйДокумент» и метод «ДатыЗапретаИзменения.ПроверитьДатуЗапретаИзмененияПередУдалением»
6. Запускаем режим «1С:Предприятие» и с помощью обработки из набора внешних обработок библиотеки стандартных подсистем «ИнструментыРазработчикаОбновлениеВспомогательныхДанных.epf» обновляем наши новые данные.
На этом все, при установки даты запрета, данное ограничение будет распространяться на наш новый документ.
В данной заметке я хочу рассказать как организовать работу с прикрепленными файлами для нового объекта в конфигурациях 1С, которые содержат библиотеку стандартных подсистем (БСП).
Задача. Создать новый документ и для этого документа добавить возможность прикреплять файлы.
Решение данной задачи будем осуществлять на конфигурации «1С: Управление торговлей 11.2», но все действия можно применять и к другим конфигурациям, содержащим БСП (ЗУП 3, БУ 3, ERP 2 и т.д.).
1. Чтобы добавить новый документ необходимо включить возможность редактирования нашей конфигурации.
2. Добавим новый документ с произвольной структурой
3. Добавим копированием новый справочник «БСП_НовыйДокументПрисоединенныеФайлы» и в реквизите «ВладелецФайла» изменим тип на «ДокументСсылка.БСП_НовыйДокумент». Для копирования был выбран справочник «ЗаказКлиентаПрисоединенныеФайлы».
Также не забываем изменить описание и представление объекта.
4. Добавляем в определяемые типы «ВладелецПрисоединенныхФайлов», «ПрисоединенныйФайл», «ПрисоединенныйФайлОбъект» новые объекты.
5. Если необходимо добавить возможность копирования присоединенных файлов при копировании документа, то необходимо в параметры формы документа добавить параметр «ЗначениеКопирования» и сделать его ключевым.
В модуль формы добавить процедуру «ПриЗаписиНаСервере».
6. Для отображения в форме списка наличия прикрепленных файлов необходимо доработать форму списка.
Изменим текст запроса списка
ВЫБРАТЬ
ДокументБСП_НовыйДокумент.Ссылка,
ДокументБСП_НовыйДокумент.ПометкаУдаления,
ДокументБСП_НовыйДокумент.Номер,
ДокументБСП_НовыйДокумент.Дата,
ДокументБСП_НовыйДокумент.Проведен,
ДокументБСП_НовыйДокумент.Реквизит1,
ДокументБСП_НовыйДокумент.Реквизит2,
ДокументБСП_НовыйДокумент.МоментВремени,
ВЫБОР
КОГДА НаличиеПрисоединенныхФайлов.ЕстьФайлы ЕСТЬ NULL
ТОГДА 1
КОГДА НаличиеПрисоединенныхФайлов.ЕстьФайлы
ТОГДА 0
ИНАЧЕ 1
КОНЕЦ КАК ЕстьФайлы
ИЗ
Документ.БСП_НовыйДокумент КАК ДокументБСП_НовыйДокумент
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеПрисоединенныхФайлов КАК НаличиеПрисоединенныхФайлов
ПО ДокументБСП_НовыйДокумент.Ссылка = НаличиеПрисоединенныхФайлов.ОбъектСФайлами
В форму списка добавим колонку «ЕстьФайлы» и изменим настройки отображения.
7. Тестирование.
Запускаем режим «1С:Предприятие» и с помощью обработки из набора внешних обработок библиотеки стандартных подсистем «ИнструментыРазработчикаОбновлениеВспомогательныхДанных.epf» обновляем наши новые данные.