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

Перед вивантаженням даних виконуємо перевірку:

І використовуємо десеріалізованний масив, наприклад ось так:



У ПВД (правило вивантаження даних):

Запити розміщуються на закладці "Алгоритми \ запити" без лапок.


В описаному вище документі в табличній частині є реквізит "ВідРасчета" для якого правилом конвертації є ПКО "ОсновниеНачісленіяОрганізацій".

Створювати нові ВідиРасчетов в базі завантаження з бази вивантаження я не хочу (відключаю пошук по "Коду", "Позначка на видалення" мені теж не цікава), намагаюся знайти об'єкти по Найменуванню

і в разі, якщо Найменування певне, то привласнюю йому інше значення (іншими словами. встановлюю відповідність).


Ситуація друга, мені не цікаво що було в джерелі, я хочу просто поставити своє конкретне значення.

Найменування у нас має тип "Рядок", так що Значення задано рядком.


Розглянемо варіант довільного запиту.

Як видно з картинки вище, в запиті виводимо і реквізити і табличну частину (і) документа (обведено блакитним квадратом).

// 1 - таблична частина документа
// 2 - не суть, просто якась умова (покладається на завдання)
// 3 - ставимо інше значення


"Джерело" містить в собі посилання.
Звернутися до рядка табличної частини можна за допомогою змінної "Об'ектКоллекціі".
Далі все просто.
Алгоритм виглядає ось так:

Якщо в результаті отримуємо ІмяПКО = "", відключаємо ПКС (Відмова = Істина;), зручно для випадків, коли в одному документі є реквізит, а в іншому - ні. Наприклад, подібна ситуація виникає, якщо в одній системі ЗУП 2.5 встановлена програма Бухобліку 7.7, а в іншій - Бухгалтерія 3.0


Перед вивантаженням (підійде для варіанту стандартної вивантаження, коли при обміні вивантажуються зареєстровані об'єкти):

Приклад наведено, щоб показати всі можливості конвертації.
Припустимо, в джерелі є інформація про табельний номер співробітника, мені необхідно визначити співробітника.

Варіант 1 наведено з метою, щоб показати ідею. Але, оскільки запит в циклі - це зло, дивись Варіант 2 :)
У запиті встановіть галочку:



Конвертація документа "Перенесення даних", або, наприклад "Операція" (Перенесення рухів документа).
У вивантаженні опису структури встановіть галочку, як показано на рис. нижче.

Далі в конвертації даних:
Галочками відзначте необхідні регістри, за якими хочете перенести руху, вони будуть додані так само, як і табличні частини документа. Міняти стандартні правила вивантаження не потрібно (тобто не потрібно писати ніяких запитів), руху будуть вивантажені автоматично.

Конвертація перерахування.


Якщо вихідного значення перерахування в базі джерелі немає, то нам не потрібно ПКО для перерахування.
Розглянемо найпростіший приклад:
ПКС такого перерахування:
