Внешняя компонента для работы с SQL запросами

03.04.21

Разработка - Разработка внешних компонент

Уважаемые коллеги, отдаю Вам "на растерзание" (для тестирования) внешнюю компоненту для общения 1C с SQL посредством запросов (драйвер ODBC 3.x).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Внешняя компонента для работы с SQL запросами:
.zip 149,42Kb
1 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Сама библиотека написана на с++ (17), шаблон взят с сайта ИТС, скомпелирован до win 32, 64.

Принцип работы простой, используете как Внешнюю Компоненту для вызова с Сервера или с Клиента, кому как необходимо

В компоненте предусмотрены свойства: ConnectionString, QuertyString

Оба свойства string

1.  ConnectionString имеет формат: "DRIVER={SQL Server};PWD=PassAdmin;UID=admin;SERVER=127.0.0.1"

2.  QueryString  - строка запроса!!! *есть ограничения

Тестировал на 1С Ent 8.3.18 УТ 11.4

* не работают временные таблицы ... специфика драйвера (вернее, все работает, но необходим вызов иного hendler ... сделаю позже релиз), заменяйте на :with CTE ... тут все норм, а вообще обрабатывает все запросы гораздо надежнее COM - соединения и т.п. ... при этом при задержке ничего не слетает и не требует.

Результат придет сериализованой строкой JSON. есть нюанс работы с++ , к сожалению, массив передать не могу, зашил все в wstring


Код 1С для подключения описан ниже, это кому лень писать самому (исполнение без макета, прямое подключение)) 

 СтрокаПодключения =  "DRIVER={SQL Server};PWD=PassAdmin;UID=admin;SERVER=127.0.0.1"

   Запрос = "ВАШ ТЕКСТ SQL ЗАПРОСА"

    Попытка
        результат = ПодключитьВнешнююКомпоненту("....\AddInNativeSql.dll" ,"NativeApiSql", ТипВнешнейКомпоненты.Native);
        Драйвер = Новый ("AddIn.NativeApiSql.AddInNativeSql");
    Исключение
        ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ОписаниеОшибки());
    КонецПопытки;
    СвойстваКомпоненты = Новый Структура("ConnectionString, QueryString", СтрокаПодключения, Запрос);
    СвойстваКомпоненты.Свойство("ConnectionString", Драйвер.ConnectionString);
    СвойстваКомпоненты.Свойство("QueryString", Драйвер.QueryString);
    
    результатЗапроса = Драйвер.Execute(); 
    
    Чтение = Новый ЧтениеJSON;
    Чтение.УстановитьСтроку(результатЗапроса);
    Данные = ПрочитатьJSON(Чтение);

 

Вступайте в нашу телеграмм-группу Инфостарт

внешняя компонента

См. также

Разработка внешних компонент Программист 1С v8.3 1C:Бухгалтерия 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

5000 руб.

12.05.2020    31208    142    100    

98

Разработка внешних компонент Телефония, SIP Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

5160 руб.

04.05.2018    49296    126    68    

70

Разработка внешних компонент Программист 1С v8.3 1C:Бухгалтерия Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

5000 руб.

17.09.2018    38768    116    128    

119

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    4368    bayselonarrend    14    

52

Разработка внешних компонент Программист 1С v8.3 Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    8277    kovalevdmv    27    

82

Разработка внешних компонент Программист 1С v8.3 Бесплатно (free)

А давайте запилим 8.3.26 до релиза, или оповещение с сервера...

19.02.2024    8540    starik-2005    38    

60

Разработка внешних компонент Механизмы платформы 1С Программист Стажер 1С v8.3 Бесплатно (free)

Некоторые практические аспекты создания внешних компонент на языке С++ для платформы 1С 8.3++.

26.01.2024    9619    starik-2005    40    

49

Инструментарий разработчика Разработка внешних компонент Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Пример взаимодействия 1С с Apach Kafka посредством внешней компоненты, разработанной на основе официальной библиотеки librdkafka (the Apache Kafka C/C++ client library).

22.11.2023    6761    132    ivan1703    26    

43
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Артано 799 03.04.21 13:51 Сейчас в теме
2. ivan1703 81 03.04.21 14:41 Сейчас в теме
не понял Ваш вопрос попробую ответит:
запрос на En - Query
имя свойства объекта - QuertyString (такое вот имя:) )
3. malikov_pro 1347 03.04.21 20:30 Сейчас в теме
1. Нет исходников, без них относительно опасно использовать собранные компоненты, GitHub в помощь
2. Посмотрите на вариант сборки https://www.youtube.com/watch?v=Nf1Mn_r2NJQ
3. Запустится на linux в серверном контексте?
7. ivan1703 81 03.04.21 22:10 Сейчас в теме
(3) в описании я указал что только под винду
4. Steelvan 311 03.04.21 20:38 Сейчас в теме
(3)

От 1С платформы тоже нет исходников. Даже от 7.7 версии.

В npm все состоит из открытых исходников и что ? Рассадник вирусов.
https://tproger.ru/translations/evil-npm-modules/
5. Steelvan 311 03.04.21 20:41 Сейчас в теме
Лично я считаю, что раздача исходников это сугубо добровольное действие.
Всегда есть альтернатива, просто не пользуйтесь.
6. Steelvan 311 03.04.21 20:56 Сейчас в теме
(1) Согласен, на вражеском "запрос" = "query".

Тогда уж автор мог написать не "QuertyString", а "StrokaZaprosa".
Я бы плюсанул хоть только за это :)

Хотя, даже такое коверканье вражеского уже хорошо :)
8. Артано 799 04.04.21 11:11 Сейчас в теме
(6) Это не над английским издевательство, а над коллегами.
BomjBandit; PowerBoy; awk; +3 1 Ответить
9. awk 745 04.04.21 14:16 Сейчас в теме
(8) Поддерживаю. Ошибаются - все, исправляются и делают выводы - умные, а оправдываются - (нецензурно).
starik-2005; +1 1 Ответить
Для отправки сообщения требуется регистрация/авторизация