Конвертация данных передача данных в параметр

Как передать структуру в параметр. Конвертация данных

Описание

В данной статье рассмотрен пример передачи данных из табличной части документа в параметр.

Другое в 1С

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Вариант 1

1. Добавить свойство. В правилах конвертации свойства, в обработчике «Перед выгрузкой» прописать свой алгоритм получения данных:

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Вместо соответствия вы можете использовать, например, структуру или массив.

2. Данные из параметра можно получить следующим образом:

Вариант 2

1. В свойствах конвертации, в обработчике «Перед выгрузкой данных» инициализируем параметр:

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

2. Заполним нужный параметр в процессе выгрузки:

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

3. Передадим параметр в приемник. В обработчике «После выгрузки данных»:

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

4. После загрузки данных необходимо получить и обработать параметр:

Источник

1с конвертация данных передавать данные в параметр

Как мы уже знаем, правила конвертации свойств используются для сопоставления реквизитов обменивающихся объектов. Естественно, что в правиле конвертации задаются реквизит из объекта источника и объекта приемника.

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Кроме того, для ссылочных реквизитов можно указать правило конвертации объектов, которое необходимо применить для переноса значения данного реквизита.

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

Отключить обработку данного правила — флаг, позволяет отключить обработку данного свойства, не удаляя его из правил конвертации объектов.

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

Автоматически приводить значение к длине приемника — флаг, позволяет включить автоматическое приведение Номера или Кода справочника соответствующему значению в приемнике по длине. При этом префиксы сохраняются, а числовые части преобразуются под длину поля в приемнике.

ТОЛЬКО ДЛЯ ОБМЕНА V8 — V8

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

Передавать данные в приемник — флаг определяет куда будут помещены данные при загрузке. Непосредственно в найденный для изменения объект.

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

Доступ к этим данным возможен в событии правила конвертации объекта «После загрузки». Например, так:

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

На закладке «Дополнительно» можно редактировать вхождение правила в определенную группу, а так же его описание. Наименование правила формируется автоматически и недоступно для изменения.

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю).

Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Нажмите одну из кнопок, чтобы поделиться:

Если установлен флажок При загрузке, то к параметру можно обращаться на стороне загрузки в приемник. Однако такая настройка не означает, что значение параметра будет передано из источника в приемник. Для передачи значения установим флажок Передавать при выгрузке и, при необходимости, укажем правило конвертации значения параметра. Запись в файл обмена передаваемого значения параметра происходит в начале пронесса выгрузки. Поэтому передать из источника в приемник можно только параметры, значение которых установлено в диалоге обработки выгрузки. Передача параметра из источника в приемник доступна ТОЛЬКО при обмене между информационными базами на платформе 1С2Предприятия 8.

При помощи флажка «Передавать параметр при выгрузке» можно передавать только те параметры, которые редактируются в диалоге при выгрузке данных. Если же нужно передать параметр, которые в этом диалоге не присутствует, то нужно вызвать процедуру:

Процедура ПередатьОдинПараметрВПриемник(Имя, ИсходноеЗначениеПараметра, ПравилоКонвертации = «») Экспорт

Иногда требуется передать параметр для строки табличной части в выгрузке конвертации.

Например, такая задача может возникнуть если одна из конфигураций была изменена(добавлен реквизит в табличную часть). В моем случае это конфигурация-приемник. В табличную часть «Товары» документа «Отчет о розничных продажах», конфигурации «Управление торговлей» 10.3 добавлен реквизит «Консультант» типа «Справочник.ФизическиеЛица». В него надо передавать значение реквизита «Продавец» из табличной части «Товары», из конфигурации «Розница» 2.х.

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

В табличной части «Товары» ПКО «Отчет о розничных продажах» создаем новый параметр:

Далее прописываем в обработчик «ПослеЗагрузки» ПКО «Отчет о розничных продажах» следующий код:

Источник

Конвертация данных передача данных в параметр

Как мы уже знаем, правила конвертации свойств используются для сопоставления реквизитов обменивающихся объектов. Естественно, что в правиле конвертации задаются реквизит из объекта источника и объекта приемника.

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Кроме того, для ссылочных реквизитов можно указать правило конвертации объектов, которое необходимо применить для переноса значения данного реквизита.

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

Доступ к этим данным возможен в событии правила конвертации объекта «После загрузки». Например, так:

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

На закладке «Дополнительно» можно редактировать вхождение правила в определенную группу, а так же его описание. Наименование правила формируется автоматически и недоступно для изменения.

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю).

Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.

Конвертация данных передача данных в параметр. Смотреть фото Конвертация данных передача данных в параметр. Смотреть картинку Конвертация данных передача данных в параметр. Картинка про Конвертация данных передача данных в параметр. Фото Конвертация данных передача данных в параметр

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Нажмите одну из кнопок, чтобы поделиться:

Источник

Конвертация данных 2.0 Передача произвольных данных (например, ТаблицаЗначений)

Существуют правила обмена между двумя различными конфигурациями 8-ки. Обмен происходит не однократно.
Задача: нужно во время выгрузки сформировать некую таблицу значений, поместить ее в файл обмена и на приемнике ее достать и обработать. Для упрощения: таблица не содержит ссылочных данных.

В каких событиях в КД описывать алгоритмы формирования и обработки данной таблицы? Где и как ее выгрузит ьв файл обмена и загрузить из него? 🙂

Делается это следующим образом (по памяти):
Создаем новое ПКС. В ПКС устанавливаем переключатель как: передать как параметр, задаем имя параметра.
В обработчике события ПриВыгрузке запихиваем то что нам надо, типа:
Значение = МояТаблицаЗначений;

// т.к. это дело сериализируется, должно работать

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

(7) Книжечку уже три дня читаю, ковыряюсь 🙂 ПКО с пустым источником создать можно, но у меня и приемник неизвестен (хотя можно указать любой). Интересный вариант, тогда вопрос в каком обработчике формировать ВходящиеДанные для ПКС, не могу никак разобраться.. 🙁

(8) Через них сейчас пробую. Там есть нюансы: Чтобы параметр передавался, нужно также отметить галочку «Диалог» (форма элемента справочника Конвертации, вкладка параметры) и он будет доступен для интерактивного редактирования пользователя (а это не очень красиво, этого не хочется, хотя это ни на что не влияет функционально). Его все равно инициализируешь перед выгрузкой данных. У меня он почему-то не попадает в файл обмена.. отлаживаю..

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

Источник

Могу ли я в по этому правило обратитться к элементам структуры СтруктураВхДанных?

Можно передать при желании свойства СтруктураВхДанных в параметры (когда реквизитом-приемником является не реквизит, а параметр)

Если в самом ПКС присваивать значение, то так:

Если из другого места, то это может быть совершенно по другому. Можете скрины привести, если описывать долго

В событии «После обработки»

Если Параметры.ВыгружатьФактическийРасходГСМ Тогда
мКоммент = «Выгрузка из УАТ. Фактический расход по ПЛ»;
Иначе
мКоммент = «Выгрузка из УАТ. Нормативный расход по ПЛ»;
КонецЕсли;

ВыборкаРасход = ВыборкаОрг.Выбрать();
Пока ВыборкаРасход.Следующий() Цикл
Если ВыборкаРасход.Количество = 0 Тогда
Продолжить;
КонецЕсли;

НовСтрока = ТабРасхода.Добавить();
НовСтрока.Номенклатура = ВыборкаРасход.ГСМ;
НовСтрока.Количество = ВыборкаРасход.Количество;
КонецЦикла;

Если ТабРасхода.Количество() = 0 Тогда
Продолжить;
КонецЕсли;

Если Параметры.ВыгружатьФактическийРасходГСМ Тогда
мКоммент = «Выгрузка из УАТ. Фактический расход по ПЛ»;
Иначе
мКоммент = «Выгрузка из УАТ. Нормативный расход по ПЛ»;
КонецЕсли;

ВыборкаРасход = ВыборкаТС.Выбрать();
Пока ВыборкаРасход.Следующий() Цикл
Если ВыборкаРасход.Количество = 0 Тогда
Продолжить;
КонецЕсли;

НовСтрока = ТабРасхода.Добавить();
НовСтрока.Номенклатура = ВыборкаРасход.ГСМ;
НовСтрока.Количество = ВыборкаРасход.Количество;
КонецЦикла;
Сообщить(«Создаем путевой лист:1» );
Если ТабРасхода.Количество() = 0 Тогда
Продолжить;
КонецЕсли;
Сообщить(«Создаем путевой лист:2» );
Если Параметры.ВыгружатьФактРасходВСписание тогда
Сообщить(«Создаем путевой лист:3» );
СтруктураВхДанных.Вставить(«Товары»,ТабРасхода);
ВыгрузитьПоПравилу(,,СтруктураВхДанных,,»ПЛ_В_Списание_ЗаПериод_НЕИспВВыгДанных»);
Иначе
Сообщить(«Создаем путевой лист:4» );
СтруктураВхДанных.Вставить(«Материалы»,ТабРасхода);
ВыгрузитьПоПравилу(,,СтруктураВхДанных,,»ПЛ_В_ТребованиеНакладная_ЗаПериод_НЕИспВВыгДанных»);
КонецЕсли;
КонецЦикла; // ТС
КонецЦикла; // Номенклатурная группа
КонецЦикла; // Подразделение
КонецЦикла; // Организация
КонецЕсли;

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *