WS Black Hole by EvilGrym. Универсальный обмен через SOAP, вместо прямого соединения через COM, V83.Application и т.п.

15.10.17

Интеграция - Внешние источники данных

Сервис предназначен для организации взаимодействия с БД 1С посредством SOAP протокола. Позволяет хранить исходный функциональный код на вызывающей стороне. Предназначен для замены обмена данными через COM-соединения любого рода.

Скачать исходный код

Наименование Файл Версия Размер
WS Black Hole by EvilGrym. Универсальный обмен через SOAP, вместо прямого соединения через COM.:
.cf 513,47Kb
6
.cf 1.0.0.1 513,47Kb 6 Скачать

Web-Сервис

Black Hole

by Evil Grym 

 

Назначение.

Сервис предназначен для организации взаимодействия с БД 1С посредством SOAP протокола. Позволяет хранить исходный функциональный код на вызывающей стороне.

 

Описание функций и способы их вызова.

Общие параметры функций:

Usr - Имя пользователя. Используется для дополнительной авторизации пользователя. Хранится в справочнике GTG_BlackHole_Users.

Pwd - Пароль пользователя. Используется для дополнительной авторизации пользователя. В БД не хранится. Сравнивается с отпечатком, хранящимся в справочнике GTG_BlackHole_Users.

Exec(Usr, Pwd, IncomingData) - выполняет произвольный код 1С переданный в параметрах вызова.

Параметры:

IncomingData - Структура в которой передается исполняемый код и дополнительные данные. Структура должна иметь обязательное поле ТекстПрограммы, в значении которого должен содержаться исполняемый код , написанный из расчета , что выполнение происходит в серверном контексте базы сервиса. Так же, структура может содержать произвольный набор полей, через которые можно передать дополнительные данные, требующиеся для выполнения текста программы. В передаваемых данных не должно быть ссылок. В тексте программы переданные дополнительные значения доступны через переменную типа структура ВхСтруктура.<имя_поля_IncomingData>

Возвращаемое значение:

Структура. Содержит обязательное поле СтатусВыполнения. Значения поля СтатусВыполнения  - Строка. При успешном выполнении "ОК", при ошибке - описание ошибки.

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

 

Query_to_TZ(Usr, Pwd, IncomingData)  - выполняет запрос  с параметрами переданный в параметрах вызова.

Параметры:

Вариант 1, для 1С:

IncomingData - Структура в которой передается запрос и его параметры. Структура должна иметь обязательное поле Запрос, в значении которого должен содержаться текст запроса , написанный из расчета , что выполнение происходит в контексте базы сервиса. Так же, структура может содержать парамметры запроса, передаваемые через поле ПараметрыЗапроса структуры IncomingData. Тип значения поля ПараметрыЗапроса - Структура, ключ которй соответствует имени параметра запроса , а значение - значению параметра запроса. В передаваемых данных не должно быть ссылок.

Также, можно преобразовать ссылочные данные, полученные в результате запроса в ГУИДы. Для этого в структуру IncomingData добавить поле СсылкиКакГУИДы со значением Истина. В этом случае, все ссылки , полученные в результате запроса будут преобразованы в ГУИДы.

 

IncomingData      
  Запрос Текст запроса  
  ПараметрыЗапроса    
    ИмяПараметра1 Значение параметра 1
    ИмяПараметра2 Значение параметра 2
  СсылкиКакГУИДы истина/ложь  

Вариант 2, для PHP:

IncomingData - Аналогично Варианту 1 , но т.к. в PHP наблюдается проблема при передаче вложенных структур при вызове функции веб-сервиса, то параметры нужно передавать следующим образом: параметры должны быть полями структуры IncomingData  , а к имени параметра нужно добавить "Парам_".

 

IncomingData      
  Запрос Текст запроса  
  Парам_ИмяПараметра1 Значение параметра 1  
  Парам_ИмяПараметра2 Значение параметра 2  
  СсылкиКакГУИДы истина/ложь  

Возвращаемое значение:

Таблица значений.

Query_to_ArrayOfTZ(Usr, Pwd, IncomingData)  - выполняет пакетный запрос  с параметрами переданный в параметрах вызова.

Параметры:

Аналогично функции Query_to_TZ

Возвращаемое значение:

Массив таблиц значений.

Настройки.

Константы:

Логгировать ошибки доступа WS Black Hole - Включает/выключает запись ошибок авторизации в регистр сведений Лог ошибок доступа к WS "Black Hole".

Логгировать вызовы WS Black Hole- Включает/выключает запись параметров, переданных при вызове функций сервиса, в регистр сведений Лог вызовов к WS "Black Hole".

 

Справочники:

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

Примеры использования.

Подключение к сервису:

 АдресWSDL="http://localhost:8083/InfoBase/ws/gtg_bh.1cws?wsdl";
 TargetNamespace="GTG_BH_WS";
 DefinitionsName="GTG_BlackHole_WS";
 PortName="GTG_BlackHole_WSSoap12";
    Таймаут=30;
 
 // Если Web-сервис требует пароля:
  ИмяПользователя="BlackHoleUser";
  Пароль="123456";
  Определение=Новый WSОпределения(СокрЛП(АдресWSDL),ИмяПользователя,Пароль,Таймаут); 
 
 Прокси = Новый WSПрокси(Определение,
 СокрЛП(TargetNamespace),
 СокрЛП(DefinitionsName),
 СокрЛП(PortName),       
 0);
 
 // Если Web-сервис требует пароля:
  Прокси.Пользователь=ИмяПользователя;
  Прокси.Пароль=Пароль;

Использование функции Query_to_TZ:

ВСЗапрос="ВЫБРАТЬ
| GTG_BlackHole_Users.Ссылка КАК Ссылка,
| GTG_BlackHole_Users.ВерсияДанных КАК ВерсияДанных,
| GTG_BlackHole_Users.ПометкаУдаления КАК ПометкаУдаления,
| GTG_BlackHole_Users.Код КАК Код,
| GTG_BlackHole_Users.ДоступРазрешен КАК ДоступРазрешен,
| GTG_BlackHole_Users.Соль КАК Соль,
| GTG_BlackHole_Users.Предопределенный КАК Предопределенный,
| GTG_BlackHole_Users.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|ИЗ
| Справочник.GTG_BlackHole_Users КАК GTG_BlackHole_Users
|ГДЕ
| GTG_BlackHole_Users.Код ПОДОБНО &Код";

 
 
Usr = "РоботЧернодыр";
Pwd = "86e0-362aa800b1b0";

 ИнДата = Новый Структура();
 ИнДата.Вставить("Запрос",ВСЗапрос);
 
 ПараметрыИнЗапроса = Новый Структура();
 ПараметрыИнЗапроса.Вставить("Код","%Черно%");

 ИнДата.Вставить("Запрос",ВСЗапрос);
 ИнДата.Вставить("ПараметрыЗапроса",ПараметрыИнЗапроса);
 ИнДата.Вставить("СсылкиКакГУИДы",Истина);
 
 IncomingData = СериализаторXDTO.ЗаписатьXDTO(ИнДата);

 Результат=Прокси.Query_to_TZ(Usr, Pwd, IncomingData); // XDTO-объект, таблица значений
 
 ТЗ = СериализаторXDTO.ПрочитатьXDTO(Результат); // Таблица значений.

Использование функции Exec:

 ТекстПрограммы="
 |
 | А = (10 + ВхСтруктура.Параметр1)*ВхСтруктура.Параметр2;
 | СтруктураВозврата.Вставить(""Результат_А"",А);
 | 
 | МассивБ = Новый Массив;
 | Для Ы=1 по А Цикл
 |  МассивБ.Добавить(Ы);
 | КонецЦикла;
 | 
 | СтруктураВозврата.Вставить(""Результат_Б"",МассивБ);
 |
 | Спр = Справочники.GTG_BlackHole_Users.НайтиПоКоду(""РоботЧернодыр"");
 | СтруктураВозврата.Вставить(""Результат_Х"",XMLСтрока(Спр.Ссылка));
 |";

 
 
Usr = "РоботЧернодыр";
Pwd = "86e0-362aa800b1b0";

 ИнДата = Новый Структура();
 ИнДата.Вставить("ТекстПрограммы",ТекстПрограммы);
 ИнДата.Вставить("Параметр1",10);
 ИнДата.Вставить("Параметр2",1);
 
 
 IncomingData = СериализаторXDTO.ЗаписатьXDTO(ИнДата);

 Результат=Прокси.Exec(Usr, Pwd, IncomingData); // XDTO-объект, структура
 
 РезСтруктура = СериализаторXDTO.ПрочитатьXDTO(Результат); // структура.
 
 Сообщить("Статус выполнения: "+РезСтруктура.СтатусВыполнения);
 Сообщить("А = "+РезСтруктура.Результат_А);
 Сообщить("Содержимое массива Б: ");
 Для Каждого Элем Из РезСтруктура.Результат_Б Цикл
  Сообщить("  "+Элем);
 КонецЦикла;
 Сообщить("Х = "+РезСтруктура.Результат_Х);

 

См. также

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22620    19    1    

22

Экстрактор данных 1С в BI - выгрузка данных из 1С в BI-аналитику

Внешние источники данных Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

15.11.2022    13652    12    SQV0    47    

29

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9306    9    8    

11

Перенос данных из Парус 7.хх в ЗГУ ред.3

Внешние источники данных Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 7.хх учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

24000 руб.

24.04.2017    48842    97    163    

86

Перенос данных из Парус 10 (Торнадо) в ЗГУ ред.3 через Excel

Внешние источники данных Загрузка и выгрузка в Excel Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате из Парус 10(Торнадо) учреждений через файлы Excel в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ). В принципе, обработка может быть использована для загрузки из файлов Excel, полученных из любых информационных систем.

24000 руб.

16.11.2018    30083    20    31    

21

Загрузка в БГУ из УРМ "Криста"

Внешние источники данных Банковские операции Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия государственного учреждения Россия Бухгалтерский учет Платные (руб)

Обработки для загрузки данных из УРМ "Криста" в бухгалтерию государственного учреждения редакция 2.0. Есть Демо доступ на вкладке Бесплатные файлы на 1 месяц со дня получения демонстрационного ключа регистрации. Поддерживает ПО "Web-исполнение" от НПО "Криста".

4800 руб.

19.06.2013    38505    136    90    

30
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. depresnjak 2 23.10.17 12:55 Сейчас в теме
Есть ли требования к платформе?
2. Evilgrym 191 23.10.17 23:59 Сейчас в теме
Нет, работает там, где есть веб сервисы.
3. Пользователь 1С 3 06.06.18 23:38 Сейчас в теме
Подскажите, у меня есть две базы. Одна самописка, другая БП 3.0, которая лежит на вэб-сервере. Задача - загрузить в самописку справочники из БП, а также получить бухгалтерские данные (обороты счета и пр) за период (т.е. выполнить запрос на БП 3.0) и вернуть его результат в самописку. Данная обработка решает такую задачу?
4. Evilgrym 191 14.08.18 11:30 Сейчас в теме
(3) Разумеется. Для подобных ситуаций и предназначена.
Оставьте свое сообщение