На основі простого прикладу показана реалізація механізму введення на підставі.
Введення на підставі використовується у випадках, коли при створенні нового об'єкта можуть бути використані дані вже існуючого об'єкта. Введення на підставі може бути реалізований для довідників, документів, планів видів характеристик, планів рахунків, планів видів розрахунку і бізнес-процесів. У загальному випадку об'єкт може бути створений на підставі будь-якого об'єкта з перерахованих вище, наприклад, документ може бути створений на підставі довідника.
Розглянемо роботу механізму введення на підставі на наступному прикладі: Організація надає послуги пасажирського таксі. Замовлення покупців реєструються в документі «Замовлення». Замовлення може бути формується диспетчером. Документ «Замовлення» містить наступну інформацію:
Створення об'єктів конфігурації
Реалізація
У властивостях документа «Замовлення» перейдемо на закладку «Введення на підставі»:
Натиснемо кнопку «Редагувати елемент списку» і виберемо зі списку довідник «Клієнти»:
Далі запустимо конструктор введення на підставі натисканням на кнопку "Конструктор введення на підставі":
У вікні, потрібно зіставити поля довідника з реквізитами документа замовлення. Це можна зробити, натиснувши кнопку «Заповнити вираження» і тоді система спробує сама визначити, які поля потрібно створити:
При натисканні «ОК» система генерує наступний код в модулі документа «Замовлення» в процедурі ОбработкаЗаполненія:
Запустимо додаток в режимі налагодження і перевіримо, як працює введення на підставі. Додамо пару записів в довідник клієнтів:
Відкриємо одну з них. У вікні буде доступна кнопка «Створити на підставі», після натискання якої відкриється список з опцією вибору «Замовлення»:
При виборі «Замовлення» система створює порожній документ і заповнює поля в процедурі ОбработкаЗаполненія:
Збережемо документ і переконаємося, що документ був успішно створений, відкривши його з спіcка документів замовлення:
Тепер припустимо, що у клієнтів можуть бути опції, які завжди присутні в замовленні даного клієнта. Наприклад, «палить водій». Тоді їх можна задавати в довіднику клієнтів і копіювати в документ замовлення. Розширимо довідник «Клієнти» табличній частиною «Опції»:
Тепер необхідно модифікувати процедуру ОбработкаЗаполненія документа. Це можна було б зробити через конструктор, але тоді процедура обробки перезапишеться, тому додамо код копіювання табличній частині вручну:
Запустимо конфігурацію в режимі налагодження і подивимося, що вийшло. Додамо опції клієнту:
Збережемо дані і створимо замовлення на підставі запису довідника:
Таким чином, дані табличній частині були успішно скопійовані в замовлення. Для цього простого прикладу реалізацію введення на підставі можна вважати закінченою.