Створення і виконання SQL-запитів у середині Комплексу

У Комплексі наявна можливість створення і виконання SQL-запитів у середині модулів Комплексу за допомогою Редактора SQL-запитів. Він викликається шляхом натиснення комбінації клавіш Ctrl+Shift+F12 або по пункту меню Сервіс / SQL-редактор.

  1. Редактор SQL-запитів доступний тільки для ролі Адміністратор.

Редактор SQL-запитів містить список доступних баз підприємств, таблиць та їх полів, які використовуються в поточному екземплярі Комплексу. При цьому, можливе звернення до таблиць будь-яких БД, якщо вони в запиті вказані явно. Для таблиць системної БД і БД обраного підприємства не потрібно явно вказувати базу даних. Редактор дозволяє створювати запити до БД під СКБД MS SQL чи ORACLE, з дотриманням особливостей синтаксису відповідної реалізації SQL. При цьому, для звернення за допомогою SQL-запитів доступні як постійні, так і тимчасові таблиці, наявні у БД на поточний момент.

Права на виконання дій з об’єктами БД визначаються правами користувача сервера СКБД, яким підключений сервер аплікацій Комплексу.

Управління вікном Редактора SQL-запитів реалізоване за допомогою верхнього спадаючого меню, гарячих клавіш, вказаних у верхньому спадаючому меню, і графічних кнопок на формі головного вікна Редактора. Дані в редакторі представлені:

  • у верхній частині вікна редактора:
    • секція Схема – представлений перелік БД підприємств (схеми даних);
    • секція із вкладками Результат 1, Результат 2, Результат 3, Результат 4, Повідомлення – виводиться результат виконання SQL-запитів та інформація про виконання. Результат виконання запиту виводиться на ту вкладку, яка відкрита під час запуску виконання (по пункту меню Правка / Виконати, за допомогою клавіші F5, через іконку на панелі інструментів – або кнопку );
  • у нижній частині вікна редактора:
    • секція редактора запитів – виконується введення тексту SQL-запиту;
    • секція деталізація – виводиться текст SQL-запиту з назвами таблиць та схеми даних, до якої звертається запит.

Якщо у вікні редактора введено SQL-запит з синтаксичними помилками, або запит не може бути виконаний, то відповідне повідомлення буде виведено на вкладці Повідомлення редактора, а місце помилки буде підсвічено іншим кольором.

Редактор SQL-запитів. Повідомлення про помилку виконання запиту на вкладці Повідомлення

У SQL-редакторі Комплексу здійснюється пошук (заміна) полів і таблиць, в яких вони знаходяться, по пункту меню Правка / Найти/Замінити або клавіші F7.

По пункту меню Функції вікна редактора можна обрати необхідну функцію для створення запиту:

  • Строкові (LTRIM, RTRIM, UPPER, LOWER, CHARINDEX, PATINDEX, REPLACE);
  • Перетворення (CAST, CONVERT);
  • Дата/Час (GETDATE, DATEPART, DATEDIFF, DATEADD);
  • Математичні (POWER, ROUND).

За допомогою Навігатора таблиць (викликається по пункту меню Правка / Вибрати таблицю або комбінації клавіш Alt+F3) можна переглядати доступні таблиці (Id таблиці) та їх поля (Id поля, Тип, Коментар). У Навігаторі таблиць по пункту меню Правка представлено перелік ключових команд вибірки, які можуть бути застосовані до обраних таблиць та полів.

Редактор SQL-запитів. Навігатора таблиць

Для зручності, у формі Навігатор таблиць реалізовано функції фільтрації по пункту меню Вид / Фільтр по поточному (комбінація клавіш Alt+F11).