Дополнителна лента со алатки за програмери на InterSystems IRIS

Панел од дополнителни алатки за следење и истражување на грешки во апликациите и решенијата за интеграција на податочната платформа InterSystems IRIS, платформата за интеграција на Ensemble и Caché DBMS или приказната за друг велосипед.

Во оваа статија сакам да зборувам за апликацијата која, заедно со стандардните административни алатки, ја користам секој ден за да ги надгледувам апликациите и решенијата за интеграција на платформата InterSystems IRIS и да наоѓам грешки кога ќе се појават.
Решението вклучува прегледување и уредување на глобални низи, извршување на прашања (вклучувајќи JDBC/ODBC), испраќање на резултатите од пребарувањето преку е-пошта како зипувани XLS-датотеки. Приказ на објекти на класата со можност за уредување. Неколку едноставни графикони за системските протоколи.

Ова е апликација CSP базирана на jQuery-UI, графикон.js, jsgrid.js
Доколку сте заинтересирани, ве молиме погледнете подолу и внатре складиште.

Се започна со проучување на прашањето како да се евидентираат промените на објектите во InterSystems IRIS, Ensemble и Caché DBMS.

После читање одлична статија за ова, јас чаталестите Проектот. и почна да го завршува за неговите потреби.

Добиеното решение е имплементирано како подкласа на панелот на %CSP.Util.Pane, која има главен прозорец за команди и копче Run, плус дотерување поставки за командите.

Кога ќе внесете „?“ добиваме краток опис на овие команди:

Дополнителна лента со алатки за програмери на InterSystems IRIS

Глобални

Мојата најчеста команда е да ја гледам глобалната. Како по правило, ова е глобален протокол кога дебагирате ваш или туѓ проект. Можете да го видите во обратен редослед, како и со примена на филтер и на врската и на податоците. Пронајдените јазли може да се уредуваат и избришат:

Дополнителна лента со алатки за програмери на InterSystems IRIS

Можете да го избришете целиот глобален со внесување минус ^logMSW- во командата по името.
Но, на овој начин можете да ги избришете само глобалните почнувајќи со ^log (протоколски глобални), т.е. Воведено е ограничување за случајно бришење.

Ако внесете „*“ по името, ќе добиете список на глобални со дополнителни карактеристики. Второто „*“ ќе додаде ново поле „Доделени MB“, а друга ѕвездичка ќе биде „Користена MB“. на големите глобални.

Дополнителна лента со алатки за програмери на InterSystems IRIS

Од оваа табела можете да следите активни врски за да ја видите самата глобална или да ја видите/уредите на стандарден начин од порталот за управување со кликнување на R или W во полето Permission.

Барања

Конвертирање на извештај во формат Excel

Втората најчесто користена функција е извршување на барањето. За да го направите ова, внесете ја изјавата sql како команда.

Главната работа што ми беше доволна во стандардниот портал за управување со системот беше извршување на барања за извори на JDBC/ODBC конфигурирани во DBMS и излегување на резултатите во XLS формат, архивирање и испраќање на датотеката по е-пошта. За да го направите ова, во мојата алатка, пред да ја извршите командата, треба да го овозможите полето за избор „Преземи во датотека Excel“.

Оваа функција ми заштедува многу време во мојата секојдневна рутина и успешно ги интегрирам готови модули во нови апликации и решенија за интеграција.

Дополнителна лента со алатки за програмери на InterSystems IRIS

Но, за да го направите ова, прво треба да ја конфигурирате патеката за создавање датотеки на серверот и ингеренциите на корисникот и серверот за пошта; за ова, пак, треба да ги уредите јазлите на глобалните поставки на програмата ^%App.Setting .

Дополнителна лента со алатки за програмери на InterSystems IRIS

Зачувување извештаи на глобално ниво

Многу често е неопходно глобално да се зачуваат резултатите од извршувањето на извештајот. За да го направам ова, ги користам следниве постапки:

За JDBC:
##class(App.sys).SqlToDSN

За ODBC:
##class(App.sys).SaveGateway

За SQL изрази:
##class(App.sys).SaveSQL

За барање:
##class(App.sys).SaveQuery

На пример, ако во панелот командата
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Ајде да го зачуваме резултатот од барањето за броење употреба на лиценца во низата ^GN и може да видите што е зачувано во панелот со командата: result ^GN("%SYSTEM.License:Counts",0)

Дополнителна лента со алатки за програмери на InterSystems IRIS

Модули за зголемена функционалност

И второто подобрување, кое во голема мера ја поедностави и автоматизира мојата работа, е имплементацијата на способноста за извршување на специјално напишани модули при генерирање на секоја линија за пребарување. На овој начин можам да вградам нова функционалност во извештајот во лет во едно поминување, на пример, активни врски за дополнителни операции на податоци.

Пример 1: Работа со класата App.Parameter

Направете параметар со помош на „Навигатор на табела“

Уредете параметар преку „Опции“

Дополнителна лента со алатки за програмери на InterSystems IRIS

Пример 2: Преглед на глобалната преку врската „Историја“.

Дополнителна лента со алатки за програмери на InterSystems IRIS

Графикони

Инспирирани од статијата [9] и за да се визуелизира растот на базите на податоци, беше креирана страница која прикажува месечен график на големини на базата на податоци создадени од датотеката iris.log (cconsole.log) користејќи записи „Прошири“ ретроспективно од тековниот ден.

Како пример, во InterSystems IRIS е создаден и графикон за настани, кој исто така се генерира од датотеката со протокол:

Дополнителна лента со алатки за програмери на InterSystems IRIS

Линкови до материјали:

[1] потсистем за сеча во Каша
[2] Инстант каша - правење CRUD во Кеш со помош на jqGrid
[3] Алтернативни SQL менаџери за Кеш DBMS
[4] Примери за генерирање и испраќање е-пошта со користење на кеш DBMS
[5] Кеш + jQuery. Брз почеток
[6] Распоредување на апликацијата
[7] Поддршка за UDL
[8] Прикажување глобални во Порталот за управување со кешот
[9] Прометеј со Кеш
[10] Локализација во кешот DBMS

Благодарност до авторите на овие и други статии кои ми помогнаа да ја креирам оваа алатка.

П.С Овој проект се развива и многу идеи се уште не се имплементирани. Во блиска иднина планирам да направам:

1. Шаблон за апликација на рамката уикит
2. Автоматска документација на формат на код Доксеген со интеграција во CStudio

Извор: www.habr.com

Додадете коментар