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

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (32)

просмотр истории страницы


!1c_help.png|border=1,width=700!
!1c_help0407.png|border=0,width=800!
{info}

{tip}

h3. *1. Настроить доступ к API биллинга*
h3. 1. Настроить доступ к API биллинга

Откройте страницу *Настройки* \-> *Настройки в файле* \-> *network*, укажите IP-адреса компьютеров, с которых планируется выполнять синхронизацию 1С в поле "*Список IP для которых разрешено подключаться к системному API*"
{code}

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

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

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


{color:#ff0000}Версия обработки должна быть не ниже 2.6{color}

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

Копию может сделать Ваш системный администратор.

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

В примере отмечены все операции, однозначно не синхронизированные ранее (sync1c<>1), включая только приходы и акты (op_type<=2), созданные до 1 мая 2019 года (op_date<'01.05.2019'). При необходимости Вы можете изменить параметры фильтра.
{code}

h3. *6. Отладка*
h3. 6. Отладка

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

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

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


{info}Если что-то не получается, обратитесь в техническую поддержку.
{info}Если что-то не получается, составьте обращение на портале [HelpDesk|https://helpdesk.carbonsoft.ru/login.php].

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

h2. Совместимость с 1C:Fresh

Кодовая база модуля удовлетворяет требованиям 1С:Fresh. Для запуска модуля на облачной платформе Вам необходимо использовать "Комплект поставки для 1С Fresh", который можно найти в разделе "Помощь" Вашего биллинга.

!1Cfresh.png|width=800!

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

|| Бухгалтерия 3.0 || Бухгалтерия 2.0 ||
| !screen_1c_83_edited_v2.png|border=0,width=700! | !Selection_059.png|border=0!
{note}При открытии модуля нужно использовать толстый клиент.
Посмотреть какой клиент используется можно в *"Справка" \-> "О программе"*{note} |
!1С 8.3, современный интерфейс 2022.png|width=900!

{info}Столбец "Выгружать" - выгрузка данных из 1С в биллинг.
** ID платежа от платёжной системы (operator_pay_id_str) | Комментарий |

h2. Полезные команды
h3. Пример выгрузки

Абоненту "Старт Телеком" за февраль 2022 года выставлен акт на следующие услуги:
* Интернет, 1000р за полный месяц
* Телефония, внутризоновый звонок на сумму 2р, на городской номер длительностью 1 минуту и 10 секунд, круглён до 2 минуты
* Телефония, внутризоновый звонок на сумму 9.6р, на местный мобильный номер длительностью 7 минут и 8 секунд, круглён до 8 минуты
Ещё он внёс платёж на сумму 2000р.

Ниже можно посмотреть скриншоты из обеих систем после синхронизации.

* Скриншот расхода в биллинге. На ней можно увидеть детальную информацию по потреблению услуг: звонки, длительность, стоимость услуг за единицу и сумму за месяц по каждой услуге в отдельности. \\ \\
!Интеграция с 1С, пример расхода интернет и телефония.png|border=1,width=1250! \\ \\
* Вкладка "Операции", на ней можно увидеть номер акта и итоговую сумму за месяц, а так же поступление денег, сделанное в биллинге. Докуметы уже синхронизированы с 1С, это видно по полю "Код 1С" \\ \\
!Интеграция с 1С, вкладка Операции в биллинге.png|border=1,width=1200! \\ \\
* Детальная информация по услугам в акте в биллинге, стандартная печатная форма. \\ \\
!Интеграция с 1С, акт по стандартной форме из биллинга.png|border=1,width=800! \\ \\
* Вкладка "Документы" в 1С, с информацией подобной вкладке "Операции" в биллинге. Можно увидеть, что и акт, и платёж синхронизированы. \\ \\
!Интеграция с 1С, вкладка Документы в 1С.png|border=1,width=1250! \\ \\
* Детальная информация по документу "Реализация" в 1С. Это акт, синхронизированный из биллинга. \\ \\
!Интеграция с 1С, акт в 1С (документ типа Реализация).png|border=1,width=1250!


h2. Отладка

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

# h54. Сброс синхронизации всех приходов
{code}
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c='' where op_type=2"
{code}
# h54. Сброс синхронизации всех актов
{code}
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c='' where op_type=1"
{code}
# h54. Сброс синхронизации конкретной операции
{code}
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c='' where code1c ='<год операции>_<номер операции в 1с>'"
sqlexec "update FINANCE_OPERATIONS set sync1c=0, code1c='' where code1c ='2015_ВА0000003432'"
{code}
# h54. Просмотреть всех синхронизированных абонентов в [конструкторе отчётов|конструктор отчетов]
{code}
select
from abonents a left join attribute_values v on (v.ABONENT_ID=a.ID and v.attribute_id=4)
{code}
# h54. Сторнировать все синхронизированные операции
{code}
sqlexec "set list on; select op_id from finance_operations where code1c!='' and storno=0" | awk ' {print $2} ' | sed '/^$/d' | while read line; do curl -XPOST -d 'method1=objects.get&arg1={"op_id": '$line'}&method2=storno_op&arg2={"extra_descr": "Test_1C_Sync"}' 'http://169.254.80.82:8082/rest_api/v2/FinanceOperations/' -D - ; done
{code}
# h54. Добавление выписок и ПКО через API REST v2.0
Если Вы интегрированы с [CarbonBilling:АТОЛ Онлайн] и используете нестандартную обработку для 1С, добавляя платежи юр. лиц через [CarbonBilling:API REST v2.0], вероятно их не требуется фискализировать дополнительно, для этого используйте поле _prevent_submit_check=True_ при добавлении платежа, например:
{code}curl -XPOST -d 'method1=objects.create&arg1={"abonent_id": 1111, "op_summa": "50.5", "op_type_id": 2, "descr": "ПКО из 1С", "prevent_submit_check": True}' 'http://169.254.80.82:8082/rest_api/v2/FinanceOperations/' -D -{code}

h3. Лог синхронизации в 1С

!1С 8.3, сообщения об обмене данными.png|border=0,width=700!

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

h3. Лог синхронизации в биллинге

Синхронизация происходит по [системному API|Системные API].
{code:title=Лог системного API}