Интеграция с информационными системами/1C: различия между версиями

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску
 
(не показано 19 промежуточных версий 2 участников)
Строка 1: Строка 1:
Интеграцию с 1C можно проводить следующими способами:
Интеграцию с 1C можно проводить следующими способами:
# Взаимодействие с 1C средствами Call Office.
 
# С вызывает функции нашего продукта как COM-объект.
=== Взаимодействие с 1C средствами Call Office ===
# 1С запускает командный файл, который вызывает наш продукт и делает то что нужно.
 
# Наш продукт следит за базой 1С и если произошло нужное событие, выполняет его и отмечает результат в базе 1С.
Во время настройки конфигурации в разделе '''Источник данных''' выберите '''1C''' и нажмите "Далее", после чего попадете на страницу [[Конфигурирование_1C_(версия_3.xx)|конфигурирования 1C]]. Далее в разделе '''Чтение данных''' выберите '''SQL-запрос''' и введите [[SQL_запросы_(версия_3.xx)/1C | SQL-запрос]] на выборку данных из 1C, а в разделе '''Запись данных''' введите [[SQL_запросы_(версия_3.xx)/1C | SQL-запрос]] для сохранение результатов звонка. Об особенностях SQL-запросов для 1С можно подробнее узнать [[SQL_запросы_(версия_3.xx)/1C|здесь]].
 
=== 1C вызывает функции Call Office как функции обычного COM-объекта ===
 
Вызовы методов Call Office можно добавить непосредственно в программный код вашего приложения 1C. Например, следующий код выполняет набор номера телефона и, если абонент снял трубку, воспроизводит звуковой файл:
 
<nowiki>
Device = Новый COMОбъект ("CallOffice.Device");
 
Device.Open ();                            //  <- здесь необходимо указать название устройства, например SIP\SIP.
Result = Device.Dial ("83852289928", 40);  //  <- номер вашего телефона, для sip следует указывать в формате <номер телефона>@<имя SIP-шлюза>
 
Если Result = 0 Тогда
 
    Device.Say ("Нужно заплатить за интернет.wav");
    Device.HangUp ();
 
КонецЕсли;
 
Device.Close ();</nowiki>
 
Подробнее про объекты, методы и свойства COM-объектов Call Office можно прочитать [[Объекты|здесь]].
 
=== 1C запускает внешний скрипт, который выполняет необходимые функции ===
 
Создайте файл скрипта, например, на языке javascript (или любом другом, vbs, wsh и т.д.), добавьте в него код, который Call Office должен выполнить, и вызовите этот файл из 1C как внешнее приложение с параметрами в командной строке (с помощью функций 1C ЗапуститьПриложение или КомандаСистемы). Текст скрипта на обзвон указанного телефона с воспроизведением указанного звукового файла выглядит так:
 
<nowiki>
if (WScript.Arguments.Length == 2) {
 
    var Phone    = WScript.Arguments.Item (0);
    var SoundFile = WScript.Arguments.Item (1);
 
    var Device = new ActiveXObject ("CallOffice.Device");   
 
    Device.Open ();
 
    var Result = Device.Dial (NumberPhone, 40);
    if (Result == 0) {
 
      Device.Say (SoundFile);
      Device.HangUp ();
    }
 
    Device.Close ();
 
} else WScript.Echo ("Недостаточно параметров: Используйте: Dial.js <Номер телефона> <Имя звукового файла>");
</nowiki>
 
В коде скрипта используются COM-объекты программы Call Office, подробнее про которые можно прочитать [[Объекты|здесь]].
 
=== Call Office напрямую подключается к базе данных 1C ===
 
Если 1C использует стандартную базу данных, например, MSSQL, то программа может подключиться к ней напрямую и работать с ее данными. В зависимости от того, какая именно база данных, будет производиться дальнейшая настройка. Про настройку баз данных с Call Office можно прочитать [[Выбор_источника_данных_(версия_3.xx)|здесь]].
 
Не рекомендуется использовать этот метод для внесения изменений в базу данных, это может привести к рассогласованию данных 1C.
 
 
----
смотрите так же [[SQL запросы (версия 3.xx)/1C |SQL-запросы для ]], [[Конфигурирование 1C (версия 3.xx) | Конфигурирование 1C]]
 
Назад к [[Интеграция_с_информационными_системами | Интеграции с информационными системами]].

Текущая версия на 09:38, 4 сентября 2018

Интеграцию с 1C можно проводить следующими способами:

Взаимодействие с 1C средствами Call Office

Во время настройки конфигурации в разделе Источник данных выберите 1C и нажмите "Далее", после чего попадете на страницу конфигурирования 1C. Далее в разделе Чтение данных выберите SQL-запрос и введите SQL-запрос на выборку данных из 1C, а в разделе Запись данных введите SQL-запрос для сохранение результатов звонка. Об особенностях SQL-запросов для 1С можно подробнее узнать здесь.

1C вызывает функции Call Office как функции обычного COM-объекта

Вызовы методов Call Office можно добавить непосредственно в программный код вашего приложения 1C. Например, следующий код выполняет набор номера телефона и, если абонент снял трубку, воспроизводит звуковой файл:

 Device = Новый COMОбъект ("CallOffice.Device");

 Device.Open ();                            //  <- здесь необходимо указать название устройства, например SIP\SIP.
 Result = Device.Dial ("83852289928", 40);  //  <- номер вашего телефона, для sip следует указывать в формате <номер телефона>@<имя SIP-шлюза>

 Если Result = 0 Тогда

    Device.Say ("Нужно заплатить за интернет.wav");
    Device.HangUp ();

 КонецЕсли;

 Device.Close ();

Подробнее про объекты, методы и свойства COM-объектов Call Office можно прочитать здесь.

1C запускает внешний скрипт, который выполняет необходимые функции

Создайте файл скрипта, например, на языке javascript (или любом другом, vbs, wsh и т.д.), добавьте в него код, который Call Office должен выполнить, и вызовите этот файл из 1C как внешнее приложение с параметрами в командной строке (с помощью функций 1C ЗапуститьПриложение или КомандаСистемы). Текст скрипта на обзвон указанного телефона с воспроизведением указанного звукового файла выглядит так:

 if (WScript.Arguments.Length == 2) {

    var Phone     = WScript.Arguments.Item (0); 
    var SoundFile = WScript.Arguments.Item (1); 

    var Device = new ActiveXObject ("CallOffice.Device");    

    Device.Open ();

    var Result = Device.Dial (NumberPhone, 40);
    if (Result == 0) {

       Device.Say (SoundFile);
       Device.HangUp ();
    }

    Device.Close ();

 } else WScript.Echo ("Недостаточно параметров: Используйте: Dial.js <Номер телефона> <Имя звукового файла>");

В коде скрипта используются COM-объекты программы Call Office, подробнее про которые можно прочитать здесь.

Call Office напрямую подключается к базе данных 1C

Если 1C использует стандартную базу данных, например, MSSQL, то программа может подключиться к ней напрямую и работать с ее данными. В зависимости от того, какая именно база данных, будет производиться дальнейшая настройка. Про настройку баз данных с Call Office можно прочитать здесь.

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



смотрите так же SQL-запросы для 1С, Конфигурирование 1C

Назад к Интеграции с информационными системами.