заполнитьзначениясвойств реквизиты формы 1с

Автоматическое заполнение реквизитов в форме

Автоматическое изменение значений реквизитов документа
У документа имеются следующий реквизиты: фильм, зал, стоимость, вместимость. При изменении.

Заполнение ТЧ Документа из Реквизитов справочника
нужно заполнить ТЧ документа из Реквизита справочника. &НаКлиенте Процедура.

Видимость реквизитов на форме
Версия 7.7. Задача состоит в том, что в форме документа при выборе определенного значения реквизита.

Какая конфигурация, если типовая то вот так:

Для начала решил попробовать так:

заполнитьзначениясвойств реквизиты формы 1сЧто это?
Почитайте в Синтаксис помошнике что делает функция ЗначениеЗаполнено()

Глобальный контекст (Global context)
ЗначениеЗаполнено (ValueIsFilled)
Синтаксис:

Тип: Произвольный.
Значение для сравнения.
Возвращаемое значение:

Тип: Булево.
Для значений типа Булево всегда возвращается Истина.
Для значений типа Строка возвращается Истина, если в строке есть не пробельные символы.
Для массивов и коллекций возвращается Истина, если в них есть хотя бы 1 элемент.
Описание:

Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Не работает с мутабельными значениями. При передаче мутабельного значения функция вызывает исключение.

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Примечание:

Источники данных не проверяются, значение считается заполненным всегда.

Добавлено через 4 минуты
«ЗаполнитьЗначенияСвойств(Объект,Контрагент);»
а где «Город»?

Глобальный контекст (Global context)
ЗаполнитьЗначенияСвойств (FillPropertyValues)
Синтаксис:

Тип: Строка.
Список имен свойств, разделенный запятыми, которые необходимо исключить из заполнения.
Описание:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.

Источник

Воспользуйтесь функцией ЗаполнитьЗначенияСвойств(). Она имеет тот же синтаксис, что и одноименная в 1С:Предприятии 8.х. Позволяет использовать в качестве Источника и Приемника список значений и (или) таблицу значений и сократить большой кусок кода буквально до пары строк.

Чтобы использовать эту процедуру, нужна еще и функция, которая разложит строку с разделителями в список значений. Вот ее текст:
Пример:

Специальные предложения

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

Обновление 24.07.14 14:33

Код открыт Не указано

заполнитьзначениясвойств реквизиты формы 1с

См. также

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016 85691 Serginio 116

Печать таблицы значений в 1С 7.7 при отладке

Функция выводит таблицу значений в табличный документ. (v7.7) Особенно полезно при отладке. Не нужно вносить изменения в код, вызываем функцию как вычисляемое выражение при останове. Если таблица обрабатывается в несколько этапов, можно вывести её после каждого и визуально проследить эволюцию.

30.06.2021 1364 Zoltan_Black 11

Расчет страховых взносов в 1С 7.7 «Учет и отчетность предпринимателя, ред. 1.2» с апреля 2020

В этой статье описано, какие небольшие изменения можно внести в модуль документа Начисление налогов с ФОТ, чтобы правильно рассчитывались страховые взносы с 1 апреля 2020 г.

09.04.2020 13855 Юджин58 39

Пример программного кода для вывода чеков на ККМ Штрих-М с передачей информации о маркированных товарах (лекарства).

10.02.2020 13931 vovaapril 34

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

10.03.2016 58529 Serginio 33

Дистрибьюция 7.7. Часть 1. Жизненный цикл заявки покупателя. Одна заявка покупателя, много адресов доставки.

14.10.2019 5130 ksnik 14

Заполнение реквизитов документов из предыдущего документа

Функция для автоматического заполнения реквизитов документов.

04.02.2019 5619 drevilo 2

Проверка часового пояса

При использовании терминалок для удаленных баз, иногда при входе в базу данных необходимо исключить возможность входа пользователей с компьютеров с другим часовым поясом. Например, работают в Новосибирской базе с временем UTC +6 и пытаются зайти в базу с UTC +3.

16.05.2016 11542 kudenzov 3

1С:Предприятие 7.7. Оптимизация. Промо

Разгоняем 1С:Предприятие 7.7. Выжимаем последние соки.

31.01.2009 49362 alexk-is 110

[ПОЛЕЗНЯШКА, 7.7] Как посчитать итоги по документам черным запросом с изподвывертом?

Мелкая полезняшка, считает запросом итоговую сумму документов и количество документов.

12.03.2016 20250 CheBurator 18

.Net в 1С. Асинхронные HTTP запросы, отправка Post нескольких файлов multipart/form-data, сжатие трафика с использованием gzip, deflate, удобный парсинг сайтов и т.д.

Очень часто нужно при работе с HTTP сервисами или сайтами использовать Асинхронные HTTP запросы, отправку на сервер нескольких файлов, использование сжатия трафика. Эта статья про то, как этого легко добиться.

09.03.2016 33531 Serginio 22

Пример HTTP запроса к УТМ ЕГАИС на платформе 1С 7.7

Запрос реализован на объекте ServerXMLHTTP из встроенной в Windows библиотеки MSXML, результатом запроса является XML объект DOMDocument из той же библиотеки MSXML со встроенным интерфейсом его обработки

16.12.2015 26866 Palmer1976 3

Как уменьшить количество заблокированных объектов Промо

История о том как я решил пересобрать форму справочника клиентов и чем это все закончилось.

12.01.2012 15779 ShEvOvIcH 18

Экспорт нескольких MXL таблиц в один XLS файл, на отдельные листы. Простой алгоритм

Источник

Заполнитьзначениясвойств реквизиты формы 1с

Довольно часто встречаются задачи, когда нужно организовать программное заполнение формы какого-то объекта. Скажем, у нас есть форма документа, на форме есть реквизиты, и нам нужно сделать команду, которая заполнит эти реквизиты. Данные для заполнения предполагается получать запросом.

Если конфигурация типовая, то, наверное, самый простой способ решения такой задачи – создать внешнюю обработку вида «Заполнение объекта».

Заполнение формы объекта с помощью внешней обработки

Строка с соответствующим параметром в модуле обработки:

Подключив обработку и указав, для какого документа она назначена, мы получим в форме документа команду. Тип команды задаётся при создании внешней обработки, и от него зависит, где и как будет выполняться обработчик команды. Для наших целей может подойти один из следующих типов команд:

Возможность заполнить форму не записывая объект – это то, что нужно. Ведь пользователь скорее всего ожидает, что по нажатию кнопки форма заполнится, а записываться будет позднее, после проверки результата заполнения. Поэтому выбираем тип команды – ЗаполнениеФормы.

В конечном итоге код в модуле обработки будет выглядеть примерно так:

В общем счёте задача решена. Однако, у такого способа есть небольшой недостаток – команда на форме размещается в определённом месте, а не там, где мы хотим её разместить. К примеру, на форме уже есть группа команд, включающая в себя команды заполнения, и мы хотели бы видеть новую команду в этой группе, но при подключении обработки команда на форме будет расположена отдельно от группы.

В связи с этим можно реализовать другой способ: добавить команду непосредственно в форму объекта – либо в основной конфигурации, либо в расширении – а обработчик команды организовать в модуле формы.

Заполнение формы объекта посредством обработчика команды в модуле формы

Итак, размещаем команду на форме объекта в том месте, которое нам нравится. В модуле формы добавляем клиентскую процедуру обработчика команды, из которой будем вызывать серверную процедуру. Серверную процедуру тоже создадим, она нам понадобится потому, что по условию задачи данные для заполнения получаются запросом.

Над серверной процедурой нужно подумать. В ней у нас будет объект формы с типом «ДанныеФормыСтуктура». Что-либо менять или заполнять в этом объекте не получится, возникнет ошибка «Объект недоступен для изменения».

Вот теперь и форма заполнена, и кнопка команды там, где хочется.

Источник

Вычисляемое поле в таблице управляемой формы

Элемент управляемой формы Таблица предназначен для визуализации табличных данных. Это может быть динамический список, табличная часть, список значений, дерево значений и т. д. (см рис 1)

заполнитьзначениясвойств реквизиты формы 1сРис 1 Типы значений, с которыми можно связать элемент Таблица управляемой формы

Одни из основных отличий элемента Таблица управляемой формы от от элемента таблицы обычной формы для толстого клиента заключается в том, что:

Решение этого вопроса зависит от того, является ли табличная часть реквизитом объекта или реквизитом формы. Это связано с тем, что в таблице формы не будет отображено поле ( колонка), которое не связано с данными табличной части объекта.

заполнитьзначениясвойств реквизиты формы 1сРис 3. Метаданные документа Заявки

Допустим, что в конфигурации есть документ Заявка с табличной частью Заказы, у которой есть реквизит Заказ ( Это ссылка на документ Заказы покупателю) и нужно вывести в табличной части формы документа вычисляемое поле типа булево, которое показывает все ли заполнены реквизиты выбранного заказа.

Как было сказано выше, я не могу связать на прямую элемент таблицы формы с реквизитом табличной части объекта потому, что дополнительное вычисляемое поле без указания пути к данным не будет отображено и поэтому в форме документа я связал элемент Таблица формы с добавленным реквизитом формы ТЗаказы типа ТаблицаЗначений, где я тоже добавил вычисляемое поле Отказ типа булево. ( Для простоты это показано на рис 4 на примере формы внешней обработки )

Обратите внимание, что стандартный реквизит НомерСтроки отсутствует у таблицы значений ТЗаказы, созданной в форме. Следовательно, для отражения номер строки в таблице формы связанной с таблицей значений нужно добавить соответствующее вычисляемое поле.

В программном коде модули формы документа работается с реквизитом формы ТЗаказы. При открытии формы, данные реквизита объекта Заказы копируются в таблицу значении формы ТЗаказы, а при записи документа наоборот.

При изменении заказа я вычисляю поле Отказ путем вызова глобальной процедуры в общих модулях:

При открытии формы документа я заполняю данные табличной части формы ТЗаказы:

Перед записью документа переносим данные таблицы ТЗаказы в таблицу объекта Заказы

заполнитьзначениясвойств реквизиты формы 1сРис 5 Форма не типового документа Заявка

Источник

1С БСП. Дополнительные реквизиты и сведения

Введение

В этой статье я хотел бы рассказать об архитектуре, использовании и особенностях реализации подсистемы «Свойства» из инструментария разработчика «1С:Библиотека стандартных подсистем» (1С БСП).

Для начала предлагаю разобраться с терминологией 1С БСП: согласно ИТС дополнительные реквизиты и сведения — это свойства. По моему мнению, подсистема «Свойства» (Управление свойствами) — это очень мощный функционал, который позволяет во многих случаях отказаться от снятия конфигурации с поддержки или внесения ненужных изменений и ошибок в конфигурацию.

заполнитьзначениясвойств реквизиты формы 1с

Архитектура

Описание работы с подсистемой «Свойства» на сайте ИТС 1С является исчерпывающим для типовых конфигураций, но в любом случае, для того, чтобы начать работать со свойствами в любой конфигурации с внедрённым 1С БСП необходимо установить установить константу «Использовать дополнительные реквизиты и сведения» в значение «Истина». После этого мы можем открыть справочник «Наборы дополнительных реквизитов и сведений», который содержит список объектов для которых можно создавать дополнительные реквизиты и сведения. При добавлении через стандартные формы 1С БСП пользователь создаёт новый элемент «Плана видов характеристик», который добавляется в табличную часть элемента.

заполнитьзначениясвойств реквизиты формы 1с

Дополнительные сведения отличаются от дополнительных реквизитов прежде всего расположением, дополнительные сведения содержатся в отдельном регистре с одноименным названием, а дополнительные реквизиты являются табличной частью объекта, к которому относятся. На рисунке ниже слева-направо изображены: элемент справочника «Наборы дополнительных реквизитов и свойств», элемент плана видов характеристик и список регистра сведений «Дополнительные сведения».

заполнитьзначениясвойств реквизиты формы 1с

Следующий рисунок изображает пример дополнительного реквизита, слева-направо: элемент справочника «Наборы дополнительных реквизитов и свойств», элемент плана видов характеристик и элемент справочника, в который был добавлен дополнительный реквизит.

заполнитьзначениясвойств реквизиты формы 1с

Также стоит учитывать, что большая часть объектов метаданных в справочнике «Наборы дополнительных реквизитов и сведений» является предопределённой:

заполнитьзначениясвойств реквизиты формы 1с

Однако, заполнение этих данных происходит программно, при внедрении 1С БСП или обновлении информационной базы — для этого в общих модулях добавляют процедуру ПриПолученииПредопределенныхНаборовСвойств. Уникальный идентификатор задаётся в явном виде, в т.ч. для того чтобы облегчить процедуры обмена между базами.

С точки зрения интеграции с объектами механизм работы с формами не сильно отличается от аналогичных у других подсистем 1С БСП: из модуля УправлениеСвойствами вызываются процедуры и функции с названиями соответствующими названиям событий для которых они вызываются, например:

Полный список функций и процедур находится в общем модуле УправлениеСвойствами в блоке, озаглавленным: «Процедуры и функции для стандартной обработки дополнительных реквизитов».

Использование

Каждый дополнительный реквизит или свойство содержит поле «Имя», подразумевается, что для программного использования будет использоваться этот реквизит.

заполнитьзначениясвойств реквизиты формы 1с

Пример использования имени для получения дополнительного реквизита:

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

Пример запроса для получения всех дополнительных свойств:

заполнитьзначениясвойств реквизиты формы 1с

заполнитьзначениясвойств реквизиты формы 1с

Примеры получения свойств без запроса:

Особенности реализации

Если с запросами и функциями всё более менее ясно неприятным сюрпризом может стать то, что дополнительный реквизит на форме содержит название, отличающееся от этого реквизита, например, такое:

заполнитьзначениясвойств реквизиты формы 1с

Чтобы найти реквизит на форме 1С БСП создаёт новые реквизиты формы Свойства_ОписаниеДополнительныхРеквизитов и Свойства_ОписаниеЗависимыхДополнительныхРеквизитов, с помощью них можно установить однозначное соответствие между элементом и значением объекта:

заполнитьзначениясвойств реквизиты формы 1с

Второй особенностью реализации можно выделить невозможность создания свойства с мутабельным типом, с одной стороны это очевидное ограничение, с другой тип «Список значений» вполне допустим, но только для дополнительного реквизита (у дополнительных сведений невозможность связана с архитектурными ограничениями, так как объект и свойство — это измерения регистра «Дополнительные сведения»). Возможно, отсутствие такого типа связано со сложностями при обмене, а возможно в скором времени это будет реализовано, предлагаю посмотреть на пример такой реализации ниже.

Добавим новый дополнительный реквизит для справочника физические лица «Номера счетов»

заполнитьзначениясвойств реквизиты формы 1с

Добавляем программно, вторую запись в табличную часть «Дополнительные реквизиты» справочника «Физические лица» с тем же самым свойством:

заполнитьзначениясвойств реквизиты формы 1с

Немного модифицируем код функции ЗначенияСвойств в общем модуле УправлениеСвойствамиСлужебный:

заполнитьзначениясвойств реквизиты формы 1с

А также код процедуры ЗаполнитьДополнительныеРеквизитыВФорме в общем модуле УправлениеСвойствами:

заполнитьзначениясвойств реквизиты формы 1с

Таким образом мы можем сохранять и восстанавливать значения реквизитов, которые, принимают множество значений.

заполнитьзначениясвойств реквизиты формы 1с

Работа в примерах была осуществлена с версией БСП: 3.1.2.245

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *