gifts2017

Обмен данными между "Торговля и склад" 9.2 (7.7) и Бухгалтерия 2.0 (8.2).

Опубликовал Николай Степанов (Tapochki-tmn) в раздел Обмен - Перенос данных из 1С7.7 в 1C8.X

Измененные в "Конвертация данных 2" правила обмена между "Торговля и склад" 9.2 (7.7) и  Бухгалтерия 2.0 (8.2). Файл правил обмена Tr9Ac820.xml от обработки "Выгрузка в бухгалтерию ред. 2.0". Для выгрузки из "Торговля и склад" 9.2 (7.7) используется внешняя обработка V77Exp.ert с измененным кодом, сформированным в КД 2 при сохранении правил обмена.

Собственно, была поставлена задача: Перегрузить из ТиС (7.7) в Бух (8.2) некоторые виды документов за определенный период, НО, свернув табличную часть этих документов до одной строки "Товар".

Обычно для перегрузки из ТиС 9.2 (7.7) в Бух 2.0 (8.2) используют стандартную обработку "Выгрузка в бухгалтерию ред. 2.0", со стандартными правилами обмена Tr9Ac820.xml. Однако при стандартном обмене перегружается вся табличная часть.

Пришлось менять правила, а заодно и обработкой пользоваться другой, т.к., оказывается, при изменении правил обмена обработка "Выгрузка в бухгалтерию ред. 2.0" перестает понимать чего от нее хотят.

Итак, что было сделано:

- изменен способ выгрузки табличной части документов «Возврат от покупателя, Возврат поставщику, Поступление ТМЦ, Перемещение ТМЦ, Реализация»

- табличная часть документов сворачивается до одной строки с наименованием «Товар»

- в поле «Количество» подставляется «1» (один)

- в поле «Цена» подставляется итоговая сумма по документу

- в поле «Сумма» подставляется итоговая сумма по документу

- в поле «СуммаНДС» подставляется итоговая сумма НДС по документу

 - поиск элементов справочников «Номенклатура», «Организации», «Контрагенты», «Склады» выполняется по полю «Наименование»

 

Кажется, все.

При сохранении правил обмена был также сохранен модуль обработки выгрузки данных. В дальнейшем, как и положено, код этого модуля был вставлен на место родного кода обработки V77Exp.ert.

Измененный файл правил обмена Tr9Ac820.xml и обработка V77Exp.ert были помещены в каталоги двух баз ТиС 9.2 (7.7) и произведена выгрузка данных при помощи обработки V77Exp.ert, а не стандартной "Выгрузка в бухгалтерию ред. 2.0".

ВНИМАНИЕ, желающим повторить тот же фокус, а именно выгрузку документов из двух баз за одинаковый период с последующей загрузкой в одну базу Бух 2.0 (8.2) – сначала синхронизируйте Наименование справочников «Фирмы», «Склады» и «Контрагенты». Кроме того, базы должны иметь разный префикс номеров документов, иначе загружая из одной базы вы будете затирать документы предыдущей загрузки. Возможно, они сохранятся, просто отметятся как удаленные, а может удаляться полностью, не проверял…

Загрузка в Бух 2.0 (8.2) производится стандартной обработкой "Сервис -> Прочие обмены данными -> Универсальный обмен данными в формате XML".

 

У кого что не пойдет - пишите. Я сам сначала перегрузил "Возврат поставщику, Поступление ТМЦ и Счет-фактуры, а потом принялся менять правила, делать их более универсальными... мог чего-то не учесть.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Правила обмена
.xml 809,92Kb
24.08.12
246
.xml 809,92Kb 246 Скачать
Обработка для выгрузки из ТиС
.ert 238,50Kb
24.08.12
141
.ert 238,50Kb 141 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Алексей Роза (DoctorRoza) 26.08.12 15:48
Однозначно плюс, работа заслуживает внимания. Некоторым клиентам нужно, вроде как из-за бухгалтерии, переходить на УТ 10.3 или 11 с ТиСа. Может, благодаря правильно настроенной выгрузке, не придется этого делать! А то как часто бывает, перешли на УТ и начинается "Нам бы цены как ТиСе", "Нам бы отчеты как в ТиСе" и т.п.
2. andrewks 26.08.12 20:51
(1) DoctorRoza, есть одно существенное различие: обмен между ТиС 9.х и Бух 4.5 происходит, по большей части, на уровне проводок (кроме возможности выгрузки счетов-фактур и кассовых документов, но этой возможностью пользуются не все, т.к. многие сводят книжки покупок/продаж и кассовую книгу прямо в ТиС).

выгрузка же из ТиС 9.х в БП 2.0 происходит на уровне документов, т.е. заложенный в ТиС 9.х механизм настройки формирования проводок задвинут за сцену.

посему, в любом случае, переход от Бух 4.5 к БП 2.0 с использованием типовых правил обмена (пусть даже и подправленных) потребует кардинальной смены техники ввода документов.
3. Алексей Роза (DoctorRoza) 26.08.12 21:24
Меня устаривает то, что можно наладить процесс переноса из ТиСа в БП 2.0, без перехода на УТ 10.3 и минуя БП 4.5. Многие клиенты используют ТиС и очень им довольны, используют его минимум функционала. Когда показываешь им УТ, то возникает масса вопрос, за ними идут возражения, а дальше откровенные недоумения, мол не нужна им такая программа. Пусть что хотят 1с-ники накручивают, но мелкому бизнесу эти накрутки не нужно в принципе. Уж про УТ 11 я вообще умолчу, больная тема.
4. andrewks 26.08.12 22:28
(3) DoctorRoza, да, УТ11 - "интересная" конфа :-)
с одной стороны, вроде, очень круто, а с другой - жутко неудобно для пользователей. подборы, себестоимость, и много чего ещё.
5. Олег Авдеев (Авдеич) 21.11.12 11:48
Спасибо за правила, сильно помогли в настройке обмена ТиС-БП 2.0.

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

Возьмем документ "Перемещение ТМЦ"

Мне нужно при обмене выгрузить часть документов сводно по номенклатуре (как у Вас, просто на определенный элемент), а часть документов стандартным способом. Добавил к правилам еще одно для переноса номенклатуры согласно типовым правилам обмена ("НоменклатураТиповое"), правила для документа "Перемещение ТМЦ" тоже разбил на 2: ваше и типовое(с отбором по условиям попадания документа в то или иное правило). В типовом правиле "Перемещение ТМЦ" прописал для номенклатуры правило "НоменклатураТиповое".

Теперь, при обмене "сводные" документы переносятся без проблем, но при попадании док-ов по типовому правилу 1с8 при загрузке вешается намертво (в 1с 7.7 все ок). Выяснил, что проблема в правилах номенклатуры. Крутил туда-сюда, при изменении условия для правила "Номенклатура"(!) начинает работать, но опять же сводно. Не понял, почему влияет "Номенклатура"(!), ведь я использую для этих док-ов правило "НоменклатураТиповое".

Пришлось сделать 2 отдельных xml и обработки переноса.

Можно ли это сделать в одной xml?
6. Николай Степанов (Tapochki-tmn) 21.11.12 15:30
(5) Авдеич, день добрый !

Спасибо за интерес к публикации :)
Честно говоря, уже не слежу за этой публикацией, т.к. сделал все немного по другому в соответствии с изменившимися потребностями бухгалтеров :)

Насчет зависания при загрузке в 1Сv8 - было подобное когда задавал синхронизацию Номенклатуры по Наименованию, при этом перегружал Номенклатуру всю, не сводно. Допускаю, что программа слишком долго выполняет сравнение полей Наименования. Проверь в правилах перегрузки справочников как происходит синхронизация, желательно оставлять по-умолчанию, т.е. в большинстве случаев по коду.

Успехов!
7. Николай Степанов (Tapochki-tmn) 21.11.12 15:38
Кстати, для всех кто интересуется - при переносе документов в БП 2.0 со сводной номенклатурой, т.е. одной строкой "Товар", пусть для вас не будет неожиданностью, что себестоимость будет рассчитываться неверно. Решение для своего случая нашел в принудительном создании проводок у соответствующих документов с расчетом суммы себестоимости еще при выгрузке из ТиС 7.7

Правда, правила с таким расчетом и ручными проводками предоставить не смогу, не довел до ума...
Если кто доведет, буду благодарен, если добавите ссылку в комментарии.
8. Андрей (andru_dv) 03.01.13 00:10
Спасибо за переработанные правила.
Как раз в нашей фирме развернутая аналитика по товару не ведется.
9. Ксения Тозик (ks.tozik) 18.04.13 14:41
Николай, спасибо за правила, у нас тоже учет не по номенклатуре, такой вопрос, при выгрузке из Торговли все хорошо загружается кроме графы сумма в рознице, если цену в рознице (она выгружается из торговли) повторно написать вручную, то сумму считает, до этого графа остается пустой, не знаете как можно сделать, чтоб автоматом посчитало эту графу?!
10. Николай Степанов (Tapochki-tmn) 19.04.13 22:24
(9) ks.tozik, Если бы я продолжал дорабатывать эти правила, то копал бы в сторону заполнения всех нужных полей, в том числе суммы, уже после загрузки в Бухгалтерию. Сам особо не разобрался, но думаю в правилах обмены на соответствующих закладках у нужных объектом можно прописывать что с ними делать после загрузки. Например, у документа "Перемещение товаров" создаваемого уже восьмеркой, думаю можно таким образом прописать чтобы устанавливалась галочка "Ручная корректировка" и заполнялись суммы по строкам значениями переданными из Торговли 7.7. Это чтобы сумма себестоимости не рассчитывалась восьмеркой, ведь без детального учета по номенклатуре себестоимость корректно не рассчитается. Вероятно, здесь же можно сказать программе циклом пробежаться по строкам табличной части и перезаполнить поле сумма, например.
11. Ксения Тозик (ks.tozik) 05.06.13 15:28
(10) Tapochki-tmn, Николай не подскажите к кому можно обратиться для дописания вашей программы, мне фирмы какое время озвучивают, 10-20 часов.... как то нереально...
12. dionisiy (Dionisiy) 23.07.13 14:56
Недавно сделал обратный переход с Розницы на ТиС, ибо стандартный обмен с Бухгалтерией 2 такой же дурной - по номенклатуре, да и вообще :) Правда переход простой пришлось делать - просто остатки перебросить со справочниками
13. Денис (Hunta) 17.09.13 13:28
Здравствуйте, большое спасибо за правила, как раз то что надо. Но подскажите пожалуйста, у меня в табличной части не сворачивается, и не подставляется "Товар". Подставляется другая позиция номенклатуры, но во все строки табличной части.
Подскажите пожалуйста.
Заранее спасибо!
14. Slovar (Slovar) 29.04.15 13:21
Здравствуйте, спасибо за обработки. Думаю очень нужная вещь...
Скажите, под какие релизы тестировались данные обработки? А то у нас уже на этапе открытия обр-ки V77Exp.ert вылетают ошибки типа таких:

"КоллекцияОбъектов.КратностьВзаиморасчетов = глКратностьДляВалюты<<?>>(Источник.Договор.ВалютаВзаиморасчетов, Источник.ДатаДок);
Функция не обнаружена (глКратностьДляВалюты)<<?>>Источник.Кратность, КоллекцияОбъектов.КратностьВзаиморасчетов);"

Слишком много фактических параметров
КоллекцияОбъектов.КратностьВзаиморасчетов = глКратностьДляВалюты<<?>>(Источник.Валюта, Источник.ДатаДок);


Понимаю что у нас релиз старый 933, но все же подскажите на каких релизах сие работает...
15. Николай Степанов (Tapochki-tmn) 30.04.15 14:50
(14) Slovar,

Добрый день

Много воды утекло с тех пор :) Из глубин памяти всплывает цифра 927. Может на том релизе, если память мне ни с кем не изменяет.
16. Slovar (Slovar) 14.05.15 10:03
Можно еще вопрос? Я в конвертации не силен. В док поступление товаров и услуг нам надо количество выставить так же как сумма. (количество=сумма) В Ваших правилах количество=1
В ПКС ТЧ Товары "количество" в обработчике прописано "Значение = 1;"
Пытаюсь прописать здесь как в "Сумме": Значение = ОбъектКоллекции.Итог("Сумма");
Но почему-то упорно выгружается количество =1, Не подскажите, что я делаю не так?
17. Slovar (Slovar) 14.05.15 10:17
(15) Tapochki-tmn, Спасибо что ответили , на 933 релизе обработка не запустилась) Пришлось функции из глобальника 947 релиза в модуль обработки подключать. Вот с "количеством" вопрос интересует ни как не могу понять.
18. murad mazanov (mazanov_murad) 15.05.15 17:46
А может кто нибудь скинуть правила обмена, мне срочно нужны!
19. Виктор Базаров (zexpress) 14.10.16 13:34
Начало загрузки: 14.10.2016 13:31:23

Ошибка в обработчике события ПослеЗагрузкиОбъекта
ИмяПКО = РеализацияТоваровУслуг
ТипОбъекта = Реализация товаров и услуг
Объект = Реализация товаров и услуг 0000000171 от 06.07.2016 9:00:12
Обработчик = ПослеЗагрузкиОбъекта
ОписаниеОшибки = Ошибка при вызове метода контекста (Получить): Значение индекса выходит за границы диапазона
ПозицияМодуля = (5)
КодСообщения = 21

Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1630)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта
ИмяПКО = РеализацияТоваровУслуг
ТипОбъекта = Реализация товаров и услуг
Объект = Реализация товаров и услуг 0000000171 от 06.07.2016 9:00:12
Обработчик = ПослеЗагрузкиОбъекта
ОписаниеОшибки = Ошибка при вызове метода контекста (Получить): Значение индекса выходит за границы диапазона
ПозицияМодуля = (5)
КодСообщения = 21


Такие ошибки выдало на свежем релизе бух при загрузке - куда копать ?
20. Николай Степанов (Tapochki-tmn) 07.11.16 09:18
(19) zexpress,

Добрый день.

Видимо, ошибка в обработчике ПослеЗагрузкиОбъекта объектов типа РеализацияТоваровУслуг .
Посмотрите, как у вас заполнился в Бухгалтерии документ Реализация товаров и услуг 0000000171 от 06.07.2016 9:00:12
Чего ему не хватило ?

Я уже не помню как писал эти правила.
Видимо что-то перебирается в цикле или идет обращение по номеру/индексу к некоей таблице или списку/массиву.

Возможно у вас в ТиС что-то не заполнено в этом документе и список/массив/таблица оказался не заполнен, а при загрузке пытается читать из него значения.
Возникает ошибка...

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