Например, нам нужно открыть список приходных накладных, в которых присутствует номенклатура, выделенная в списке номенклатуры.
1С форма редактирования списка значений
Список – тип «СписокЗначений», в параметр передается список значений, который необходимо редактировать (например, правое значение отбора с сответствующим видом сравнения), наполнение списка зависит от его свойства ТипЗначения;
ВыборПоВладельцу – тип «ЛюбаяСсылка», необязательный параметр, в который может передаваться элемент-владелец, по которому будут выбираться значения (например, элемент плана видов характеристик, для ограничения списка свойств предлагаемых для выбора и подбора);
ОбработчикиСобытий – тип «Структура», необязательный параметр, в который может передаваться структура вида ( , ) с описанием обработчиков событий для значений списка;
Для получения отредактированного списка, необходимо задать владельцем формы поле ввода, значением которого является искомый список.
Необходимо в отборе отчета, построенного на СКД, ограничить перечень предлагаемых для выбора элементов справочника «Контрагенты» (только юрлица) и их свойств при редактировании списка.
Процедура ОтборПравоеЗначениеНачалоВыбора ( Элемент , СтандартнаяОбработка )
ТекущийВидСравнения = ЭлементыФормы . Отбор . ТекущиеДанные . ВидСравнения ;
Если ( ТекущийВидСравнения = ВидСравненияКомпоновкиДанных . ВСписке )
ИЛИ ( ТекущийВидСравнения = ВидСравненияКомпоновкиДанных . НеВСписке )
ИЛИ ( ТекущийВидСравнения = ВидСравненияКомпоновкиДанных . ВСпискеПоИерархии )
ИЛИ ( ТекущийВидСравнения = ВидСравненияКомпоновкиДанных . НеВСпискеПоИерархии ) Тогда
СтандартнаяОбработка = Ложь;
ПредставлениеОтбора = Строка ( ЭлементыФормы . Отбор . ТекущиеДанные . ЛевоеЗначение );
ЛевоеЗначениеОтбора = ЭлементыФормы . Отбор . ТекущиеДанные . ЛевоеЗначение ;
ПравоеЗначениеОтбора = ЭлементыФормы . Отбор . ТекущиеДанные . ПравоеЗначение ;
ПолеКомпоновкиКонтрагент = Новый ПолеКомпоновкиДанных ( «Контрагент» );
Форма редактирования списка значений добавлена в общие формы. Функция УстановитьСоответствиеСвойств возвращает соответствие вида ( , ), процедуры ЮрлицоВыбор, ЮрлицоАвтоПодборТекста, ЮрлицоОкончаниеВводаТекста описывают поведение формы выбора таким образом, чтобы в предлагаемый список попадали только юрлица. Процедуры определены как экспортные и размещены в общем модуле.
Промокоды на Займер на скидки
Реализуем простую конфигурацию с двумя простыми справочниками:
-«Подразделения»;
– «Склады», с реквизитом «Подразделение», тип «Справочник.Подразделения».
Начнем эксперименты с обычного приложения. Добавляем обычную форму выбора для справочника «Склады». Так же добавляем обработку, на форму выносим реквизиты:
– Подразделение, тип «СписокЗначений», тип значений списка «СправочникСсылка.Подразделения»;
– Склад, тип «СписокЗначений», тип значений списка «СправочникСсылка.Склады».
Теперь попробуем реализовать фильтрацию складов. У списка значений есть свойство ДоступныеЗначения, которое позволяет настроить ограничение значений списка, в том числе и в диалоге редактирования. Попробуем реализовать отбор через этот механизм.
Предварительно, в модуле менеджера справочника «Склады» добавлю функцию:
Программная модификация управляемых форм
- Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника;
Чтобы избежать таких проблем, фирмой 1С был придуман специальный функционал подсистема Дополнительных отчетов и обработок , которая входит в БСП.
С обращением к серверу
Отличия в реализации подбора будут в этом случае только в передаче данных в документ и, затем, обработки подобранных товаров в документе. Вот таким образом будет выглядеть команда передачи данных в документ из подбора:
Теперь алгоритм обработки выбора элемента формы документа «Товары» изменится следующим образом:
Этот подход требует вызова сервера при передаче данных между формами, однако, он более гибкий как с точки зрения обработки подобранных данных, так и с точки зрения производительности.
Вместо выводов
По ссылке Вы можете скачать тестовую конфигурацию с примером из статьи.
1С форма редактирования списка значений – ПК портал
- Большие объемы данных могут передаваться некорректно. По опыту работы с управляемыми формами скажу, что очень часто возникали ошибки типа «Ошибка передачи данных», если размер таблицы был больше мегабайта.
- Если передаваемые данные требуют обработки (получение остатков товара, цен и т.д.), то все эти действия необходимо выполнять на серверной стороне. Поэтому было бы правильней в форме подбора поместить их на серверную сторону, а уже на стороне документа обработать и и поместить в объект документа.
Примечание Чтобы составить раскрывающийся список для поля со списком, выберите заполнитель поля, щелкните Параметры и добавьте в список нужные пункты.
Справочники, конструирование форм
Существует несколько видов форм. В частности, формы объектов (форма элемента справочника , форма документа, например), формы списков объектов, формы выбора и другие. Если формы не созданы вручную и не указаны в нужном качестве в окне редактирования объекта, они генерируются автоматически при необходимости их использования.
Откроем в конфигураторе окно свойств справочника Контрагенты и перейдем на его вкладку Формы ( рис. 4.10).
Не будем менять установки, заданные по умолчанию и нажмем на кнопку Далее. Появится второе окно конструктора форм ( рис. 4.12).
Как вы помните, мы собирались добавить в эту форму список элементов справочника ПредставителиКонтрагентов, который должен отображать представителей, соответствующих конкретному контрагенту.
Мы должны доработать видимую часть формы. Здесь можно поступить двумя путями.
Первый путь заключается в том, чтобы предоставить системе возможность автоматически разместить поле , соответствующее новому реквизиту. Второй — ручное добавление поля и настройка его свойств.
Попробуем ручное добавление нового поля в форму. Перейдем на вкладку Формы, изменим размер формы, подготовив место для нового табличного поля, которое будет содержать список контактных лиц и изменим размер правого поля формы для того, чтобы оно заняло всю форму.
Изменение размеров форм производится аналогично изменению размеров окон в Windows — нужно подвести указатель мыши к краю формы, указатель превратится в двунаправленную стрелку, после чего, зажав левую кнопку мыши, можно перемещать границу формы.
Для изменения размеров элемента управления или его перемещения, достаточно выделить его щелчком мыши, после чего вокруг элемента появятся маркеры выделения. Потянув за соответствующий маркер, можно изменить размер. Если же навести указатель на участок границы объекта, свободный от маркеров, элемент управления можно перемещать по форме.
Теперь, когда все готово, добавим на форму новый элемент управления Табличное поле. Для этого щелкнем по кнопке Табличное поле (она расположена на панели инструментов, которая находится в нижней части окна программы) и с помощью мыши «нарисуем» прямоугольник , в котором будет располагаться новое табличное поле . Зададим следующие свойства нового табличного поля, табл. 4.3.
Свойство | Значение |
---|---|
Имя | ПредставителиКонтрагентов |
ТипЗначения | СправочникСписок.ПредставителиКонтрагентов |
Связь по владельцу | СправочникСписок.ПриАктивизацииСтроки |
Свойство | Значение |
---|---|
Имя | ПредставителиКонтрагентов |
ТипЗначения | СправочникСписок.ПредставителиКонтрагентов |
Связь по владельцу | СправочникСписок.ПриАктивизацииСтроки |
Внешние печатные формы в 1С 8.3 (управляемые формы)
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы