Интеграция с 1С

Skip to end of metadata
Go to start of metadata
Вы просматриваете старую версию данной страницы. Смотрите текущую версию. Сравнить с текущим  |   просмотр истории страницы

Требования

  • 1С Предприятие 8.x
  • Конфигурация "Бухгалтерия предприятия, редакция 2.0"

Общая информация

Интеграция 1С построена по принципу работы через API http://docs.carbonsoft.ru/display/CarbonBilling/API+REST+v2.0

В составе АСР имеется модуль для синхронизации платежей и актов по контрагентам.

https://github.com/carbonsoft/carbon_1c8_sync

Пароль для доступа к api можно посмотреть в настройке биллинга (в файле)

id группы - это id группы в биллинге, для всех абонентов которой проводится синхронизация платежей.

Настройка интеграции биллинга с 1С

1. Настроить в биллинге адреса API машин

Для этого зайти в биллинг Настройки - Настройки в файле - IP адреса машин работающих через API

Вводить адреса можно через запятую.

2. Настроить в биллинге доступ с сервера 1С

Указывается в веб-интерфейсе биллинга в строке через пробел: Платежные системы -> Настройки сети -> АДРЕСА СЕРВЕРОВ ПЛАТЕЖНЫХ СИСТЕМ
Указывать можно в формате, совместимом с iptables (конкретный ip-адрес, ip-адрес подсети с указанием маски в формате CIDR, доменное имя)
После этого нажать кнопку "Сохранить и применить"
С этих адресов в firewall будет разрешен обмен пакетами по портам 1443 и 1444.

3. Скачать модуль на ПК с 1С.

Для 1С 8 версии:

Заходите в администраторскую панель Помощь->Cписок онлайн документации
Версия обработки должна быть не ниже 2.6

4. Обязательно сделать копию БД 1С и сначала проверять на ней!

5. Пометить в БД какие старые операции не нужно синхронизировать

Установите поле sync1c=1

Через ib_expert CTRL+f11:

update FINANCE_OPERATIONS set  sync1c=1,  code1c='old'  where FINANCE_OPERATIONS.op_date<'01.01.2011'

или из консоли рута/помощника:

 sqlexec "update FINANCE_OPERATIONS set  sync1c=1,  code1c='old'  where FINANCE_OPERATIONS.op_date<'01.01.2011'"

6. Отладка

Сделать тестовую группу, завести тестовых абонентов.

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

Очистите предыдущие тестовые синхронизации если нужно

 sqlexec "execute procedure api_clear_all;"

 sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL"

 sqlexec "update abonents set sync1c=0, code1c=NULL"

7. Тестирование

Пробовать работать с модулем синхронизации на реальной БД 1С, предварительно сделав резервные копии БД 1С и БД Carbon Billing 5.

В нашем обработчике синхронизация абонентов в биллинге с контрагентами в 1с происходит по полю ИНН в 1с и реквизиту ИНН в биллинге.

8. Если что-то не получается обращайтесь в тех.поддержку.

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

Работа с модулем.

Примечание: при открытии модуля нужно использовать толстый клиент. Посмотреть какой клиент используется можно в Справка -> О программе

  • "Период с:", "По:"- даты для фильтрации ПКО при выгрузке.
    Выгрузка происходит по дату НЕ включительно, т.е. для выгрузки ПКО за 1 месяц необходимо указывать период с 1 числа по 1 число.
  • "Пароль к системному API:" - задается в биллинге
  • "Адрес сервера:" - адрес по которому досупна администраторская панель с компьютера который запускает обработку
  • "Организация:" - необходима для создания Абонентов в 1С
  • "id группы:" - получается из биллинга путем открытия группы в администраторской панели(последняя цифра)  
  • "Загружать контрагентов" - загружает ранее не синхронизированных абонентов (пометка в биллинге)
  • "Загружать ПКО" - загружает Операции с типом "Приход", только по выгруженным в 1С контрагентам
  • "Загружать акты" - загружает Операции с типом "Акт", только по выгруженным в 1С контрагентам
  • "Выгружать ПКО" - создает в биллинге Операции с типом "Приход" у синхронизированных абонентов

Полезные команды

1. Сброс синхронизации всех приходов

sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL where op_type=2 and code1c is not null"

2. Сброс синхронизации конкретной операции

sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL where code1c ='<год операции>_<номер операции в 1с>'"

sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL where code1c ='2015_ВА0000003432'"
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.