1с получить реквизит номенклатуры
приведет к ошибке. Такие конструкции возможны только на сервере.
Предположим, что стоит задача при нажатии на кнопку отобразить ИНН контрагента, выбранного на форме. Для решения поставленной задачи необходимо обратиться на сервер для получения требуемой информации(ИНН). Программный код может иметь вид:
При нажатии на кнопку ПолучитьИНН вызывается серверная функция ПолучитьИНННаСервере () . В единственном параметре передается контрагент, выбранный интерактивно пользователем. Функция получает ИНН через точку и сразу же возвращает значение обратно на клиент. Результат работы серверной функции помещается в переменную ИННКонтрагента и выводится пользователю с помощью метода Сообщить () .
Серверная функция является внеконтекстной ( &НаСервереБезКонтекста ). Это значит, что данные, содержащиеся в форме, не будут отсылаться на сервер, что уменьшит объем передаваемых данных и скорость возврата результата функции.
Внимание!
При работе с конфигурациями, в которые встроена библиотека стандартных подсистем, вместо получения реквизита через точку рекомендуется использовать функцию ЗначениеРеквизитаОбъекта () из общего модуля ОбщегоНазначения . Таким образом, строку
можно заменить на:
В случае, когда значение реквизита нужно только для визуального отображения пользователю, можно пойти другим путем: имеется возможность вывести реквизит от ссылочного значения на форму. При этом пользователь не сможет отредактировать этот реквизит.
Рассмотрим пример: на форме документа рядом с полем ввода контрагента должен выводиться его ИНН. Для этого перенесем реквизит ИНН на форму:
В пользовательском режиме при указании контрагента, его ИНН будет автоматически отображен на форме. Никакого программирования в этом случае не потребовалось.
Остались вопросы?
Спросите в комментариях к статье.
Войдите как ученик, чтобы получить доступ к материалам школы
Создание конфигураций 1С: добавляем реквизит
Автор уроков и преподаватель школы: Владимир Милькин
Продолжаем изучение азов создания конфигураций на 1С.
Вернёмся в конфигуратор и откроем дерево конфигурации:
Где найти реквизиты справочника
Давайте познакомимся поближе со справочником "Сотрудники". Откроем его окно двойным щелчком:
Открылось окно настроек со множеством вкладок. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Нас интересует прежде всего вкладка "Данные":
Обратите внимание на панель "Реквизиты". Вот она наша дополнительная информация, которую мы добавили к справочнику: "ДатаРождения", "НомерПаспорта" и "СерияПаспорта".
Как открыть свойства реквизитов справочника
У любого из этих реквизитов есть свойства. Чтобы открыть их нужно сделать двойной щелчок на имени реквизита. К примеру, "кликнем" два раза на реквизите "ДатаРождения":
Открылась дополнительная панель со свойствами этого реквизита:
Здесь много различных параметров, которые позволяют настраивать поведение реквизита. Самые главные для нас это, конечно же, "Имя" и "Тип". Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.
Какие типы бывают у реквизитов справочника
В параметре "Тип" указано "Дата" и это логично, ведь мы храним в этом реквизите дату рождения сотрудника.
Раскройте этот параметр (стрелка вниз), чтобы посмотреть какие ещё типы бывают у реквизитов:
Добавляем новый реквизит к справочнику
Давайте вместе добавим новый реквизит для справочника "Сотрудники" для хранения должности.
Сначала определимся с именем этого реквизита. Пусть так и будет "Должность". Ну а тип пусть будет "Строка".
Нажмём зелёную кнопку плюсик над панелью с реквизитами:
Добавится реквизит с именем "Реквизит1":
Откроем его свойства (двойным щелчком по реквизиту) и установим в свойство "Имя" значение "Должность", а в свойство "Тип" значение "Строка":
Проверяем, что получилось
Посмотрим что получилось! Для этого запустим 1С в режиме пользователя (меню "Отладка"->"Начать отладку"). На все вопросы об обновлении конфигурации базы данных сейчас и впредь отвечаем утвердительно.
Откроем любого сотрудника и увидим, что на форме появилось поле "Должность" (если вы не видите этого поля воспользуйтесь полосой прокрутки или потяните форму за нижний край):
Работая с программами 1С, пользователь должен заполнить определённые поля при вводе объекта в базу. Это и есть реквизиты.
Общие реквизиты документа
Заполняя поля в программах 1С, требуется указать автора документа, наименование организации и другие данные. На это требуется определённое время. Чтобы не заполнять один и тот же реквизит для каждого объекта метаданных, следует использовать общий для всех реквизит. В документах 1С он представляет собой отдельный объект метаданных.
К нему можно перейти, используя встроенный язык из модуля документа. Он доступен при редактировании формы документа.
Найти «Общие реквизиты» в программе 1С довольно просто. Следует зайти в неё, используя режим Конфигуратор. В дереве метаданных есть раздел «Общие». Там и находятся «Общие реквизиты», представляя отдельную ветвь раздела.
Остановимся подробней на свойствах таких объектов метаданных. Для этого нужно найти окно «Свойства». Перейти к ним можно двойным щелчком мышки.
Чтобы посмотреть список объектов, где используется данный реквизит, следует нажать на гиперссылку «Открыть». Кроме того, здесь можно посмотреть, где этот объект используется «Автоматически».
В свойствах общих реквизитов имеются следующие настройки.
- Если объект помечен как «Автоматический», он применяется в режиме «Автоиспользование».
- Чтобы реквизит использовался как входящий в состав нескольких объектов конфигурации, в поле «Разделение данных» нужно установить значение «Не использовать». Если установлено «Разделять», реквизит будет использоваться в качестве разделителя данных.
Если установить значение «Разделять», система в автоматическом режиме создаст параметры по умолчанию.
Для пояснения используем следующий пример. Предположим, в каждом объекте есть реквизит «Организация». Если пометить его как разделитель, система сформирует несколько областей, где будут находиться данные в разрезе этого разделителя. Это создаёт определённые удобства для пользователя. Он может получать как общие данные, так и сведения, касающиеся только своей организации.
Получая доступ к своим данным, пользователь также может работать с общими областями сведений, которые доступны для всех. Например, «Контрагенты», «Валюты», «Банки», другие неразделённые данные.
Создание общего реквизита
Следует навести мышку на общий реквизит и нажать на команду «Добавить». На клавиатуре можно воспользоваться клавишей «Ins».
В качестве примера назовём его «Организация». В полях, где нужно указать тип, укажем СправочникСсылка.Организации.
Затем установим разделение данных, указав значение «Разделять».
В документах, где он будет стоять, установим «Использовать». Например, в счёте на оплату покупателю.
Затем откроем форму документа. Это дерево метаданных «Документы» - «СчетНаОплатуПокупателю», раздел «ФормаДокумента». В списке и среди элементов будет добавленное поле. Кроме того, данные будут автоматически указываться на форме документа.
Теперь к нему можно обращаться из модуля документа, редактировать его, добавлять всевозможные объекты программы 1С. Например, поместим его в справочник «Номенклатура». Он окажется в списке реквизитов данного справочника.
Общие реквизиты могут быть указаны сразу для нескольких разделов метаданных. В остальном они ничем не отличаются от обычных реквизитов. Можно настроить разделение данных и область их хранения.
Вводя в программу общие реквизиты, надо делать это правильно. Любые ошибки могут привести к некорректной работе программы. Поэтому, мы рекомендуем перед любыми изменениями делать бэкап самостоятельно или доверить это специалистам.
Читайте также: