
У вас уже была интеграция с 1С? Но…
Прежде, чтобы организовать обзвон из 1C, Call Office взаимодействовал с этой информационной системой только на уровне базы данных. Структура хранения данных 1C в базе данных весьма нетривиальна, и это приводило к серьезным сложностям при выборке данных. А уж запись напрямую в данные 1С была вообще крайне нежелательна из-за возможной несогласованности данных. Конечно, эту проблему можно было обойти созданием средствами 1C специальной таблицы, из которой можно выбирать данные и записывать туда же результат, но это не всегда удобно. Интеграция с 1C на уровне базы данных – не самое удобное и простое решение, и поэтому мы пошли дальше.
Так. И что теперь?
В новой версии нашего продукта мы создали отдельный источник данных 1C, который позволяет подключаться не к базе 1С, а к самой среде 1C, используя COM-соединение (COM connector). Это позволяет работать с данными напрямую, но по правилам 1C. Например, выборка данных производится стандартным методом 1С «Новый Запрос» и позволяет использовать все возможности 1С по формированию запросов. Например, для выборки всех контрагентов, достаточно написать SQL-запрос:
select * from Справочник.Контрагенты
или на языке запросов 1С:
ВЫБРАТЬ * ИЗ Справочник.Контрагенты
К сожалению, 1C не предоставляет возможность изменять данные при помощи SQL-запросов, но среда Call Office эмулирует такую возможность и самостоятельно преобразует SQL-запросы на изменение данных в код, который, взаимодействуя с объектами 1C, выполняет необходимые изменения. Например, запрос:
update Справочники.Контрагенты set Комментарий = 'Call Office' where Код = '000000001'
изменит комментарий на Call Office у контрагента с кодом 000000001.
В запросах на изменение данных необходимо учитывать особенность 1C — объекты, используемые для выборки данных, называются немного по-другому, чем объекты для изменения данных. Например, для выборки контрагентов следует использовать название Справочник.Контрагенты, а при изменении данных — Справочники.Контрагенты.
Мне недостаточно SQL-запросов!
Если же возможностей SQL-запросов недостаточно, Call Office позволяет работать с объектами 1C, вызывая их методы напрямую. Например, такой код, указанный вместо SQL-запроса:
/! function (Connection) { var Find = Connection.Справочники.Контрагенты.НайтиПоКоду ('000000001'); if (Find != Connection.Справочники.Контрагенты.ПустаяСсылка ()) { var Contractor = Find.ПолучитьОбъект (); Contractor.ИНН = 11455; Contractor.Записать (); } else alert ('Контрагент не найден !'); return null; } !/
выполнит поиск контрагента по коду ‘000000001’ и, если контрагент найден, изменит его ИНН на 11455.
Более подробно об этом и других способах интеграции нашего продукта с 1С можно посмотреть в нашей базе знаний.
Можно мне уже сделать обзвон из 1C?
В итоге вы получаете более совершенный инструмент для организации автоматического обзвона или создания автоответчика прямо из 1C. Бесспорно, что ИС 1C уже более 10 лет занимает лидирующие позиции в России на рынке автоматизации учёта и формализации бизнес-процессов. И по праву считается самой развитой и гибкой. Call Office вместе с 1C позволят вам автоматизировать телефонные коммуникации любой сложности для вашего бизнеса.