Ввод на основании 1с. Ввод документов «на основании. Ввод данных в бд


Конструктор ввода на основании
Конструктор ввода на основании облегчает задачу разработки процедуры ВводНаОсновании().

Конструктор можно вызвать, выбрав пункт «Ввод на основании...» из меню « » главного меню программы или нажав кнопку на панели инструментов «Конструкторы». При этом должна быть открыта форма документа.

При запуске открывается диалог «Конструктор ввода на основании». Он содержит список документов-оснований, список реквизитов документа и список (в виде дерева) реквизитов документа-основания, выбранного в первом списке.

В список документов-оснований входят:

· документы, отмеченные в правом списке в окне «Ввод на основании». (Это окно открывается при нажатии соответствующей кнопки в окне свойств данного документа);

· документы, никак не отмеченные в свойствах данного документа, если для самих этих документов в том же окне «Ввод на основании» установлен флажок «Может являться основанием для документов любого вида».

Кнопки «Назад» и «Далее» перемещают курсор вверх и вниз по списку реквизитов документа. При достижении конца списка появляется запрос «Перейти к следующему документу-основанию?», и при выборе «Да», курсор в списке документов-оснований смещается на следующую строку. Такой порядок обеспечивает перебор всех реквизитов документов для каждого документа-основания. Можно также для выделения строки в любом списке пользоваться мытью.

В список реквизитов документа нужно поместить формулы, определяющие, как заполнять реквизиты документа по выбранным реквизитам документа-основания.

Эти формулы можно создавать «вручную» следующим образом. Формула определяется в поле ввода «Формула заполнения реквизита» для реквизита документа, выделенного в списке. Можно вручную набрать ее в этом поле (а также вручную редактировать в нем созданную ранее формулу). Правильность написания формул Конструктор не проверяет.

Можно также двойным щелчком в списке реквизитов документа-основания помещать данные соответствующего реквизита в поле «Формула заполнения реквизита», причем сразу в правильной записи, например, реквизит документа-основания «Товар» - в записи «ДокОснование.Товар». Конструктор не проверяет соответствия типов выбранных реквизитов.

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

По кнопке «Заполнить формулы автоматически», после запроса и подтверждения, программа сама создаст формулы для заполнения по реквизитам документа-основания. Ранее заполненные формулы при автоматическом заполнении не изменяются. Подбор среди реквизитов документа-основания соответствий реквизитам документа осуществляется с учетом имен реквизитов, их идентификаторов и типов.

По кнопке «Очистить формулы», после запроса и подтверждения, очищаются все формулы, созданные как автоматически, так и вручную.

Формулы, созданные для документа-основания, выбранного в списке документов-оснований, запоминаются при переходе к другому документу-основанию этого списка. Поэтому можно, не прекращая работы Конструктора, создать процедуры ввода на основании для нескольких документов-оснований. Можно также возвращаться к редактированию процедуры для какого-либо документа-основания, снопа выбирая его в списке.

Для прекращения работы Конструктора служат кнопки «ОК» и «Отмена» (соответственно, с сохранением и без сохранения сделанных изменений).

Кнопка «Обновить» позволяет отразить в модуле формы сделанные изменения без выхода из окна Конструктора.

В результате работы Конструктора в модуле формы документа создается процедура ВводНаОсновании(ДокОснование). В начало процедуры Конструктор помещает предупреждение: «Данный фрагмент построен Конструктором. При повторном использовании Конструктора внесенные вручную изменения будут потеряны!».

При повторном использовании Конструктора все формулы, сформированные ранее для какого-либо документа-основания, будут появляться в списке реквизитов документа при выделении соответствующего документа-основания в списке документов-оснований. Конструктор предъявит для просмотра и редактирования формулы, сформированные при предыдущем его запуске, как с помощью кнопки «Заполнить формулы автоматически», так и вручную. Более того, он учтет и формулы, вручную внесенные в , если они помещены в формируемую им процедуру. Правильность этих формул Конструктор не проверяет. Например, если для какого-то реквизита документа указано заполнение двумя различными реквизитами документа-основания, Конструктор для показа выберет один из них (но алфавиту). Именно он останется в модуле после обновления результатов работы Конструктора, вторая строка, соответствующая тому же реквизиту, будет удалена.

Механизм ввода на основании - это один из прикладных механизмов платформы . Он позволяет упростить работу пользователя с прикладным решением и избавить его от повторного ввода данных, которые уже хранятся в информационной базе.

Рассмотрим простой пример. Допустим, в прикладном решении существует документ Поступление товара , который фиксирует факт появления в организации некоторых позиций номенклатуры:

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

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

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

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

В программном решении, одни объекты могут вводиться на основании других, при этом значения полей совпадающего типа данных прямо наследуются от исходного объекта, либо могут быть вычислены по заданному алгоритму:

Наследование полей задается конфигурально, в конструкторе ввода на основании, для того объекта, который и будет вводиться на основании:

Конструктор ввода на основании подсказывает, какие поля могут наследоваться прямо (они отмечены зелеными галочками, и автоподставляются по кнопке Заполнить выражения ). Также в конструкторе можно прописать иные выражения заполнения:

По кнопке Ок, платформа создает программный код ввода на основании и размещает его в модуле объекта:

При необходимости код можно доработать вручную. Но важно понимать. что если потом к конструктору обратиться еще раз, то ручные изменения затрутся. Поэтому прямо в коде содержится предупреждение об этом. И также при попытке открыть конструктор после генерации программного кода платформа выдаст такое предупреждение (причем безотносительно того, редактировался ли на самом деле код или нет):

Вопрос 03.32 экзамена 1С:Профессионал по платформе. Для активности кнопки "Конструктор ввода на основании" в окне редактирования объекта конфигурации …

  1. Обязательно заполнение поля "Вводится на основании"
  2. Обязательно заполнение поля "Является основанием для"
  3. Обязательно заполнение полей "Является основанием для" и "Вводится на основании"

Правильный ответ первый:

Вопрос 04.09 экзамена 1С:Профессионал по платформе. Назовите инструмент визуального создания алгоритма заполнения объекта "на основании" и основное место его вызова?

  1. Конструктор ввода на основании. Основное место вызова через окно редактирования объекта, закладка "Ввод на основании", кнопка "Конструктор ввода на основании"
  2. Конструктор ввода на основании. Основное место вызова через главное меню "Конструкторы" / "Ввод на основании..."
  3. Мастер ввода на основании. Основное место вызова через окно редактирования объекта, закладка "Ввод на основании", кнопка "Мастер ввода на основании"
  4. Конструктор ввода на основании. Основное место вызова через окно редактирования объекта, закладка "Данные", кнопка "Конструктор ввода на основании"

Правильный ответ первый, см. скриншоты выше.

Вопрос 04.10 экзамена 1С:Профессионал по платформе. Назовите основное назначение конструктора ввода документа "на основании":

  1. Конструктор ввода на основании облегчает задачу разработки процедуры, с помощью которой будет формироваться новый объект при вводе "на основании"
  2. Конструктор ввода документа "на основании" в системе отсутствует
  3. Конструктор ввода на основании облегчает задачу формирования движений в регистрах учета "на основании" данных документа
  4. Конструктор ввода на основании облегчает задачу разработки структуры другого документа "на основании" структуры "документа-основания"

Правильный ответ первый.

Вопрос 04.11 экзамена 1С:Профессионал по платформе. Можно ли формулу заполнения поля "Состав.Цена" задать произвольным выражением?

  1. Да, можно, правильность написания формулы конструктор не проверяет
  2. Нет, нельзя, формулу можно заполнить только значениями, выделенными "галочками" в списке "Реквизиты объекта основания"
  3. Да, можно, но конструктор проверит правильность написания формул согласно списку "Реквизиты объекта основания"
  4. Нет, нельзя, формулу можно заполнить только значениями из списка "Реквизиты объекта основания"

Правильный ответ первый. Можно написать любую формулу, синтаксического контроля при этом нет.

Вопрос 04.12 экзамена 1С:Профессионал по платформе. Если процедура с именем "ОбработкаЗаполнения" уже определена в модуле документа, то возможно ли в этом случае использование конструктора ввода основании?

  1. Да, но при этом система попросит подтверждение на полное замещение уже существующей процедуры "ОбработкаЗаполнения" новой процедурой
  2. Нет, сначала надо вручную удалить "старую" обработку заполнения, а только потом вызывать конструктор
  3. Да, но система при этом, безусловно, удалит "старую" обработку заполнения
  4. Да, система закомментирует "старую" обработку заполнения и создаст "новую"

Правильный ответ первый, см. разбор выше.

Вопрос 04.13 экзамена 1С:Профессионал по платформе. Какое предназначение имеет выделение "галочками" элементов списка "Реквизиты объекта основания"?

  1. Эти реквизиты система предлагает в качестве формулы заполнения реквизита "Состав.Количество" по принципу совпадения типов реквизитов
  2. Эти реквизиты предлагаются для заполнения реквизитов "Состав.Количество", "Состав.Сумма" по принципу совпадения имен
  3. Эти реквизиты предлагаются для заполнения реквизита "Состав.Количество" по кнопке "Заполнить выражения"
  4. Эти реквизиты система впишет в качестве формул заполнения реквизитов "Состав.Количество", "Состав.Сумма" при нажатии кнопки "ОК"

Правильный ответ первый.

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

Неофициальная редакция ПРАВИТЕЛЬСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ ПОСТАНОВЛЕНИЕ ОБ УТВЕРЖДЕНИИ ПЕРЕЧНЯ ПРИМЕНЕНИЕ ТРУДА ЖЕНЩИН В...

Сдавайте отчетность быстро, удобно и без ошибок Сервис "1С-Отчетность" встроен в программы 1С. Все действия с отчетностью производятся в...

Вахтовый метод работы - не самый легкий, но порой он кажется единственным способом поддержать семью и заработать приличные деньги....
Фиксация и учет всех приказов, изданных по организации, ведется в специальном журнале регистрации. В статье рассказывается, как правильно...
Должностная инструкция главного бухгалтера служит для определения спектра отношений топ-менеджера с руководством, своими подчиненными и...
Лизингодатель – это один из участников договора лизинга, который приобретает в собственность необходимое имущество (оборудование,...
Налоговая система - важнейшая составляющая национальной экономики любого государства. Каковы ее особенности в России? Каковы функции,...
МВД не назвало имя фигуранта дела, однако СМИ сообщили, что речь действительно идет об акционере компании Сергее Ломакине. Дело связано с...