... {toc} h1. Требования * 1С Предприятие 8.x * Конфигурация "Бухгалтерия предприятия, редакция 2.0" или "Бухгалтерия предприятия, редакция 3.0" Для работы обработки в 1С Предприятие 8.3 необходимо запускать "Толстый клиент (обычный режим)" h1. Общая информация Интеграция 1С построена по принципу работы через API [http://docs.carbonsoft.ru/display/CarbonBilling/API+REST+v2.0] В составе АСР имеется модуль для синхронизации платежей и актов по контрагентам. Вы можете загрузить его в разделе "Помощь" Вашего биллинга !1c_help.png|border=1! Пароль для доступа к api можно посмотреть в настройке биллинга (в файле) !Unnamed image (2).png|border=1! Так же необходимо добавить IP-адрес компьютера, на котором будет запущена внешняя обработка 1С, в соответствующий список как на скриншоте. После добавления адресов, нажмите кнопку "Сохранить" и выполните следующую команду в консоли: {code}chroot /app/asr_billing/ /etc/init.d/admin_web_server restart {code} h2. Настройка интеграции биллинга с 1С h3. *1. Настроить доступ к API биллинга* Для этого зайти в биллинг Настройки - Настройки в файле - network - Список IP адресов машин, работающих через API Вводить адреса нужно через пробел. h3. *2. Настроить в биллинге доступ с сервера 1С* Указывается в веб-интерфейсе биллинга в строке через пробел: Платежные системы \-> Настройки сети \-> АДРЕСА СЕРВЕРОВ ПЛАТЕЖНЫХ СИСТЕМ Указывать можно в формате, совместимом с iptables (конкретный ip-адрес, ip-адрес подсети с указанием маски в формате CIDR, доменное имя) После этого нажать кнопку "Сохранить и применить" С этих адресов в firewall будет разрешен обмен пакетами по портам 1443 и 1444. h3. *3. Скачать модуль на ПК с 1С.* *Для 1С 8 версии* Заходите в администраторскую панель Помощь->Cписок онлайн документации {color:#ff0000}Версия обработки должна быть не ниже 2.6{color} h3. *4. Обязательно сделать копию БД 1С и сначала проверять на ней\!* h3. *5. Пометить в БД какие старые операции не нужно синхронизировать* *Установите поле sync1c=1* Через ib_expert CTRL+f11: {code} update FINANCE_OPERATIONS set sync1c=1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011' {code} или из консоли рута/помощника: {code} sqlexec "update FINANCE_OPERATIONS set sync1c=1, code1c='old' where FINANCE_OPERATIONS.op_date<'01.01.2011'" {code} h3. 6. Отладка Сделать тестовую группу, завести тестовых абонентов. Провести тестовые испытания синхронизации в обе стороны по тестовым абонентам убедиться что все работает как вам нужно. Очистите предыдущие тестовые синхронизации, если нужно:
|
... sqlexec "update FINANCE_OPERATIONS set SYNC1C = null, CODE1C = null" {code} h3. *7. Тестирование* Пробовать работать с модулем синхронизации на реальной БД 1С, предварительно сделав резервные копии БД 1С и БД Carbon Billing 5. *В нашем обработчике синхронизация абонентов в биллинге с контрагентами в 1с происходит по полю ИНН в 1с и реквизиту ИНН в биллинге.* {info}Если что-то не получается, обратитесь в техническую поддержку. Сотрудники тех. поддержки подскажут в чем проблема. Стоит учитывать, что при этом может потребоваться подключение стороннего или своего 1С разработчика, в случае если конфигурация 1С отличается от стандартной, указанной в требованиях выше{info} h2. Работа с модулем. {note}При открытии модуля нужно использовать толстый клиент. Посмотреть какой клиент используется можно в *"Справка" \-> "О программе"*{note} {note}Столбец "Выгружать" - выгрузка данных из 1С в биллинг. Столбец "Загружать" - загрузка данных из биллинга в 1С.{note} !Selection_059.png|border=1! Для открытия модуля, выберите меню *"Файл" \-> "Открыть"* и укажите путь к модулю. * "Период с:", "По:"\- даты для фильтрации ПКО при выгрузке. {color:#ff0000}Выгрузка происходит по дату НЕ включительно, т.е. для выгрузки ПКО за 1 месяц необходимо указывать период с 1 числа по 1 число.{color} * "Пароль к системному API:" - задается в биллинге * "Адрес сервера:" - адрес по которому досупна администраторская панель с компьютера который запускает обработку * "Организация:" - необходима для создания Абонентов в 1С * "id группы" - это id группы в биллинге, для всех абонентов которой проводится синхронизация платежей. * "id группы:" - получается из биллинга путем открытия группы в администраторской панели(последняя цифра) !Selection_060.png|border=1! * "Загружать контрагентов" - загружает ранее не синхронизированных абонентов (пометка в биллинге) * "Загружать ПКО" - загружает Операции с типом "Приход", только по выгруженным в 1С контрагентам. Механизм загрузки следующий: Обработчик запрашивает с биллинга все операции с типом "Приход" без выставленного флага "sync1c" и загружает их в 1с, после чего выставляет у операции в биллинге флаг sync1c и добавляет code1c данной операции. Код состоит из года и номера операции * "Загружать акты" - загружает Операции с типом "Акт", только по выгруженным в 1С контрагентам {color:#ff0000}Загружаются с опцией "НДС включено в сумму"{color} * "Выгружать ПКО" - создает в биллинге Операции с типом "Приход" у синхронизированных абонентов. h3. Бухгалтерия предприятия 3.0 По-умолчанию, конфигурация БП 3.0 загружается в режиме "управляемого приложения". Наш модуль не оптимизирован для данного режима, потому для обмена данными с биллингом необходимо запустить 1С в режиме "обычного приложения". Для этого выполните следующее: # В интерфейсе запуска 1С нажмите кнопку "Добавить" # Выберите "Добавление в список существующей информационной базы" # Укажите параметры доступа к Вашей конфигцрации 1С Бухгалтерия предприятия 3.0 # На последнем шаге укажите режим запуска "Толстый клиент" и напишите следующее в поле "Параметры запука", как показано на скришноте: \\ \\ {code}/DisableStartupMessages /RunModeOrdinaryApplication{code} !sync1c_acc30.png|border=1!\\ \\ # Нажмите "Готово" и запустите приложение. Дальнейшие шаги идентичны запуску обработки в Бухгалтерии 2.0 платформы 1С 8.2 h2. Полезные команды h3. 1. Сброс синхронизации всех приходов {code} sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL where op_type=2 and code1c is not null" {code} h3. 2. Сброс синхронизации всех актов {code} sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c=NULL where op_type=1 and code1c is not null" {code} h3. 3. Сброс синхронизации конкретной операции {code} 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'" {code}
|