Старенький слабенький компьютер после перепроведения центральной базы не смог принять файл обмена с сообщением "не недостаточно памяти". После него программа вылетала.
Помогло ограничение на количество объектов в транзакции (я поставил 100)
Официальный ответ техподдержки:
роботы VK ходят с таким заголовком: Mozilla/5.0 (compatible; VKRobot/1.0)
ip адреса всегда могут измениться, на них лучше не ориентироваться, примерный список можно получить тут:
https://bgp.he.net/search?search%5Bsearch%5D=vkontakte&commit=Search
Потребовалось настроить выгрузку из 1С:УНФ в 1С:Бухгалтерия 3.0
Базовая настройка простая и не вызывает сложностей, подробно про нее можно почитать, например, здесь.
Но далее возникли проблемы:
1) Запуск регламентного задания обмена на файловой базе.
Регламентные задачи на SQL-базах работают на стороне SQL-сервера и не вызывают проблем, на файловых базах они, конечно, тоже, теоретически, должны работать, если запущен хотя бы один сеанс, но по факту то работали то нет.
В связи с этим, было решено вызывать обмен вручную с помощью внешней обработки и планировщика задач.
Вручную из обработки обмен можно вызвать командой:
ОбменДаннымиСервер.ВыполнитьОбменДаннымиПоРегламентномуЗаданию("00001"); //где 00001 год регламентного задания в справочнике "Сценарии синхронизации данных"
2) Исключить документы из обмена.
Поскольку в УНФ приходы от клиентов на расчетный счет и оплаты поставщикам ведутся вручную, а в бухгалтерии используется обработка "обмен с клиент-банком", то нужно было исключить выгрузку эти операций введенных вручную в бухгалтерскую программу.
Список документов в обмене определен правилами обмена и настройками не меняется, нужно было бы исправлять сами правила обмена и исключать документы. Но есть более простой способ. Тем более, поскольку мы вызываем обмен обработкой, в той же обработке перед вызовом обмена, отменяем регистрацию изменений по нужным нам типам документов, в частности ПоступлениеНаСчет и РасходСоСчета.
//отменяем отправку поступлений на счет Док = Метаданные.Документы.ПоступлениеНаСчет; Узел = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоНаименованию("МойОбмен"); ПланыОбмена.УдалитьРегистрациюИзменений(Узел,Док); //отменяем отправку расходов со счета Док = Метаданные.Документы.РасходСоСчета; Узел = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоНаименованию("МойОбмен"); ПланыОбмена.УдалитьРегистрациюИзменений(Узел,Док);
Ниже приложена рабочая обработка, можете скачать и использовать.