Альтернатива переноса ТЗ в конвертации данных 2.1

20.08.18

Интеграция - Перенос данных 1C

Здравствуйте уважаемые. Решил выложить альтернативный способ переноса данных в конвертации данных из источника к приемнику, с последующим сбором их в ТЗ в месте ПослеЗагрузки. Т.е.можно готовый перенесенный объект доработать либо создать что-то еще на базе данных. Метод сам разработан с учетом простого понимания Конвертации без использования всех её многочисленных тонкостей и сложностей. В примере рассматривается перенос Операции. И вот еще что. Я не привожу тут готовое решение, я всего лишь показываю концепцию того, как можно делать в КД. Без использования глобальных переменных.

Итак. Бухгалтерия предприятия, редакция 3.0, 1С:Предприятие 8.3 (8.3.12.1529).

Суть задачи: Перенос документа "Операция".

Решение:

Открываем конвертацию, создаем ПКО. в нем указываем объект источник и приемник - Операция.

 

Суть метода сводится к тому, что в источнике мы создаем параметры в конвертации свойств.

каждый из них это столбец нашей ТЗ. 

тип данных - массив.

Соответсвенно мы переносим массивы данных, а дальше собираем их в ТЗ.

Итак, собираем массив.

Все ПКС однотипны. Они вытягивают нужные данные из источника и создают массив. Массив передается в тип - строка.

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

Все проводки с данными о"Дт" - мы записываем в массив.

Далее Так-же поступаем со всеми полями которые нам нужны для конечной ТЗ.

Т.е. резюмирую: мы массивы данных собираем в строку, через запятую. И передаем эту строку в приемник.

 

И сам код:

Значение="";
Пока Выборка.Следующий() Цикл
текЗнач =  Выборка.СчетДт.Код;

Значение = Значение + текЗнач + ",";
КонецЦикла;

Значение = Лев(Значение,СтрДлина(Значение)-1);


 

Отлично. Наши данные загружены.

Переходим к п.2, а именно - получению приемником этих данных.

 

Мы заходим в ПКО Операции "ПослеЗагрузки" и определяем переменные которые передали из источника.

Т.к. переменные являются строкой, нам нужно их преобразовать обратно в массивы. Это делается однотипными методами:

Сам код: 

Массив = новый Массив();
Стр = СчетКт;  //Тут изменяемое
Рез = Найти(Стр, ",");
Если Рез = 0 Тогда Массив.Добавить(Стр); Иначе     ЧтотоНайдено=Истина;
пока ЧтотоНайдено Цикл    
    Рез = Найти(Стр, ",");
    Если Не ПустаяСтрока(Лев(Стр,Рез-1)) Тогда Массив.Добавить(Лев(Стр,Рез-1)); КонецЕсли;
    Стр = Прав(Стр,СтрДлина(Стр)-Рез);    
    Если Рез = 0 Тогда ЧтотоНайдено = Ложь;  Массив.Добавить(Стр);    КонецЕсли;
КонецЦикла;
КонецЕсли;
МассивСчетКт =Массив; //Тут изменяемое 

Далее нам нужно просто данные из массивов собрать вместе подобно ТЗ.

В данном случае, для документа "Операция" мы заполняем ее табличную часть.

 

Хочется так-же добавить, что весь код рабочий и использовался мной для решения реальной задачи.

Всем успехов с КД.

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    161385    972    321    

482

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Переносите справочную информацию, остатки и документы из УПП 1.3 в Бухгалтерию 3.0 с помощью готовых правил. Переносится более 50 видов документов. Простой интерфейс и понятные настройки.

42000 37800 руб.

15.12.2021    34550    258    64    

195

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 10 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

85400 руб.

05.10.2022    13659    15    8    

16

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 3, УНФ 3 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16531 руб.

18.02.2016    204432    675    543    

563

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

122000 руб.

19.08.2020    29808    27    3    

29

Перенос данных 1C Системный администратор Программист Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Не хочется настраивать штатный механизм переноса между УТ 11 и Бухгалтерией 3.0 после каждого обновления? Предлагаем удобное решение для одностороннего переноса данных из Управления торговлей 11 в Бухгалтерию 3.0.

24400 руб.

22.04.2015    100108    221    187    

201

Рабочее место Производство готовой продукции (работ, услуг) Перенос данных 1C Пользователь 1С:Предприятие 8 1С:Управление производственным предприятием 1С:Документооборот 1С:Комплексная автоматизация 2.х 1С:КА 1С:ДО Платные (руб)

Продукт "Интеграция с 1С:Документооборот" позволяет использовать функции программы "1С:Документооборот 8" напрямую из учетной системы (1С:УПП; 1С:КА, 1С:УТ 10.3, 1С:БГУ 1.0, 1С:ЗБУ 1.0, 1С:УПП для Казахстана и отраслевых решений, разработанных на их основе) на платформе "1С:Предприятие 8": выполнять и ставить задачи, просматривать документы, скан-копии и прочие файлы, штрих-кодировать документы отправлять письма, вести учет рабочего времени - не входя в "1С:Документооборот 8", работая в одной программе, что значительно сокращает время и делает работу более комфортной и эффективной. Продукт прошел сертификацию 1С-Совместимо

135530 руб.

11.06.2015    62837    38    20    

49
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Константин С. 685 20.08.18 12:42 Сейчас в теме
Скорость? в каждом ПКС выполнять запрос.
А чем неустроил "типовой" перенос Операции.
2. KHoroshulinAV 365 20.08.18 14:03 Сейчас в теме
Скорость да. Ну это как пример же.
3. pm74 208 22.08.18 09:19 Сейчас в теме
(0) как то не очень понятно зачем нужны все эти преобразования в массивы затем в строки ,
можно какой нибудь пример из практики где это пригодилось
4. KHoroshulinAV 365 23.08.18 16:05 Сейчас в теме
Ну пример на картинке. Любые данные - в массив, а на другом конце парсим. По моему это мегагениально. - Я этот метод пользую теперь везде. Особенно где есть ТЧ. Ну в моем случае это оправдано еще из-за специфики выгрузки. Но, думаю, многим может пригодиться.
5. vynosmozga 6 23.08.18 16:19 Сейчас в теме
А не проще воспользоваться готовым ПередВыгрузкой: ПередатьОдинПараметрВПриемник("ВашПараметр", ЗначениеВСтрокуВнутр(ВашаТабла)) и в загрузке:
ПослеЗагрузкиПараметров Параметры.Вставить("ВашПараметрПриЗагрузке", ЗначениеИзСтрокиВнутр(Параметры.ВашПараметр))?
aleksey2; KHoroshulinAV; +2 Ответить
6. KHoroshulinAV 365 23.08.18 16:35 Сейчас в теме
Для отправки сообщения требуется регистрация/авторизация