Робота з конвертацією даних

Робота з конвертацією даних
Передача програмним шляхом Масиву (Таблиці значень, Списку значень) в параметри.

На прикладі ЗУП 2.5: в обробці «Вивантаження даних в бухгалтерську програму» на формі розміщений реквізит, в якому користувач підбирає потрібні рахунки дебету, далі потрібно передати вибрані користувачем рахунку в правила вивантаження.

У типових конфігураціях є зручний механізм "СеріалізоватьОб'ектXDTO", саму функцію легко знайти в інтернеті, а мені досить в процедурі "ВигрузітьПоПравіламБух30" форми вписати ось це:

Далі в Конвертації даних додаємо параметр.

Робота з конвертацією даних

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

Робота з конвертацією даних

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

Робота з конвертацією даних

Робота з конвертацією даних
Використання довільного алгоритму для створення об'єкта без джерела.

Робота з конвертацією даних

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

Робота з конвертацією даних

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

Робота з конвертацією даних

Робота з конвертацією даних
Установка свого Значення (Варіант 1).

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

Робота з конвертацією даних

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

Робота з конвертацією даних

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

Робота з конвертацією даних

Робота з конвертацією даних
Установка свого Значення (Варіант 2).

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

Робота з конвертацією даних

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

Робота з конвертацією даних

Робота з конвертацією даних
Особливості вивантаження документів (Задати своє значення реквізиту в довільному запиті).

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

Робота з конвертацією даних

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

Робота з конвертацією даних

// 1 - таблична частина документа

// 2 - не суть, просто якась умова (покладається на завдання)

// 3 - ставимо інше значення

Робота з конвертацією даних
Задати своє значення реквізиту табличній частині в ПКС, використання Алгоритму, задати інше ПКО.

Робота з конвертацією даних

"Джерело" містить в собі посилання.

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

Далі все просто.

Алгоритм виглядає ось так:

Робота з конвертацією даних

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

Робота з конвертацією даних
Кілька часто використовуваних рядків коду в ПКО.

Робота з конвертацією даних
Кілька часто використовуваних рядків коду в ПВД.

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

Робота з конвертацією даних
Знайти посилання в приймачі, якої немає в джерелі.

Приклад наведено, щоб показати всі можливості конвертації.

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

Робота з конвертацією даних

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

У запиті встановіть галочку:

Робота з конвертацією даних

Робота з конвертацією даних
Робота з конвертацією даних
Ще одна проблема, з якою мені довелося давним-давно зіткнутися і через недосвідченість було витрачено якийсь час -

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

У вивантаженні опису структури встановіть галочку, як показано на рис. нижче.

Робота з конвертацією даних

Далі в конвертації даних:

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

Робота з конвертацією даних
Робота з конвертацією даних
Конвертація перерахування.

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

Розглянемо найпростіший приклад:

ПКС такого перерахування:

Робота з конвертацією даних

Схожі статті