Plia programilbreto sur InterSystems IRIS

Panelo de kromaj iloj por monitorado kaj esploro de eraroj en aplikoj kaj integriĝsolvoj sur la InterSystems IRIS-datumplatformo, la Ensemble-integra platformo kaj la Caché DBMS, aŭ la rakonto de alia biciklo.

En ĉi tiu artikolo mi volas paroli pri la aplikaĵo, kiun, kune kun normaj administraj iloj, mi uzas ĉiutage por monitori aplikaĵojn kaj integrigajn solvojn en la platformo InterSystems IRIS kaj trovi erarojn kiam ili okazas.
La solvo inkluzivas vidi kaj redakti tutmondajn tabelojn, ruli demandojn (inkluzive de JDBC/ODBC), sendi serĉrezultojn per retpoŝto kiel zipitaj XLS-dosieroj. Rigardu klasobjektojn kun la kapablo redakti. Pluraj simplaj grafikaĵoj por sistemaj protokoloj.

Ĉi tio estas CSP-aplikaĵo bazita sur jQuery-UI, diagramo.js, jsgrid.js
Se vi interesiĝas, bonvolu vidi sube kaj en deponejo.

Ĉio komenciĝis per studado de la demando pri kiel registri ŝanĝojn al objektoj en InterSystems IRIS, Ensemble kaj la Caché DBMS.

Post legado bonega artikolo pri ĉi tio, mi forkiĝis la projekto. kaj komencis ĝin fini por siaj bezonoj.

La rezulta solvo estas efektivigita kiel panela subklaso de %CSP.Util.Pane, kiu havas ĉefan komandan fenestron kaj Run-butonon, plus komandajn rafinajn agordojn.

Kiam vi enigas "?" ni ricevas mallongan priskribon de ĉi tiuj komandoj:

Plia programilbreto sur InterSystems IRIS

Tutmondoj

Mia plej ofta komando estas vidi la tutmondan. Kiel regulo, ĉi tio estas tutmonda protokolo kiam vi elpurigas vian propran aŭ aliulan projekton. Vi povas vidi ĝin en inversa sinsekvo, same kiel aplikante filtrilon kaj al la ligilo kaj al la datumoj. Trovitaj nodoj povas esti redaktitaj kaj forigitaj:

Plia programilbreto sur InterSystems IRIS

Vi povas forigi la tutan tutmondan enmetante minus ^logMSW- en la komando post la nomo.
Sed tiamaniere vi povas nur forigi globalojn komencantajn per ^log (protokolo globals), t.e. Limigo kontraŭ hazarda forigo estis efektivigita.

Se vi enmetas "*" post la nomo, vi ricevos liston de globaloj kun pliaj trajtoj. La dua "*" aldonos novan kampon "Asignita MB", kaj alia asterisko estos "Uzata MB". Ĉi tiu kombinaĵo de du raportoj kaj la divido en "asteriskoj" estas farita por dividi la ofte longforman raporton en okupatajn blokojn. de grandaj tutmondaj.

Plia programilbreto sur InterSystems IRIS

El ĉi tiu tabelo vi povas sekvi aktivajn ligilojn por vidi la tutmondan mem aŭ por vidi/redakti ĝin laŭ la norma maniero de la administra portalo klakante R aŭ W en la Permesa kampo.

Petoj

Konverti raporton al Excel-formato

La dua plej ofte uzata funkcio estas demanda ekzekuto. Por fari tion, enigu la sql deklaron kiel komandon.

La ĉefa afero, kiu sufiĉis por mi en la norma Sistemadministrada Portalo, estis plenumi demandojn pri JDBC/ODBC-fontoj agorditaj en la DBMS kaj eligi la rezultojn en XLS-formato, arkivi kaj sendi la dosieron retpoŝte. Por fari tion, en mia ilo, antaŭ ol ekzekuti la komandon, vi devas aktivigi la markobutonon "Elŝutu al Excel-dosiero".

Ĉi tiu funkcio ŝparas al mi multan tempon en mia ĉiutaga rutino, kaj mi sukcese integras pretajn modulojn en novajn aplikojn kaj integrigajn solvojn.

Plia programilbreto sur InterSystems IRIS

Sed por fari tion, vi unue devas agordi la vojon por krei dosierojn sur la servilo kaj la akreditaĵojn de la uzanto kaj poŝtservilo; por tio, siavice, vi devas redakti la nodojn de la tutmondaj programaj agordoj ^%App.Setting .

Plia programilbreto sur InterSystems IRIS

Konservado de raportoj tutmonde

Tre ofte necesas konservi la rezultojn de raporta ekzekuto tutmonde. Por fari tion mi uzas la jenajn procedurojn:

Por JDBC:
##class(App.sys).SqlToDSN

Por ODBC:
##class(App.sys).SaveGateway

Por SQL-esprimoj:
##class(App.sys).SaveSQL

Por Demando:
##class(App.sys).SaveQuery

Ekzemple, se en la panelo la komando
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Ni konservu la rezulton de la peto de kalkulado de permesilo en la ^GN-tabelo, kaj vi povas vidi kio estis konservita en la panelo per la komando: result ^GN("%SYSTEM.License:Counts",0)

Plia programilbreto sur InterSystems IRIS

Pliigitaj funkciecaj moduloj

Kaj la dua plibonigo, kiu multe simpligis kaj aŭtomatigis mian laboron, estas la efektivigo de la kapablo efektivigi speciale skribitajn modulojn kiam oni generas ĉiun demandlinion. Tiel mi povas konstrui novajn funkciojn en la raporton sur la flugo en unu paŝo, ekzemple, aktivaj ligiloj por pliaj operacioj pri datumoj.

Ekzemplo 1: Laborante kun la klaso App.Parameter

Kreu parametron per la "Tabla Navigilo"

Redaktu parametron per "Opcioj"

Plia programilbreto sur InterSystems IRIS

Ekzemplo 2: Vidante la tutmondan per la ligilo "Historio".

Plia programilbreto sur InterSystems IRIS

Furorlistoj

Inspirite per la artikolo [9] kaj por bildigi la kreskon de datumbazoj, paĝo estis kreita kiu montras ĉiumonatan grafeon de datumbazgrandecoj kreitaj de la iris.log dosiero (cconsole.log) uzante "Expand" rekordojn retrospektive de la nuna tago.

Ekzemple, okazaĵa grafeo ankaŭ estis kreita en InterSystems IRIS, kiu ankaŭ estas generita de la protokoldosiero:

Plia programilbreto sur InterSystems IRIS

Ligiloj al materialoj:

[1] registra subsistemo en Kasha
[2] Tuja kaĉo - farante CRUD en Caché uzante jqGrid
[3] Alternativaj SQL-manaĝeroj por la Caché DBMS
[4] Ekzemploj de generado kaj sendo de Retpoŝto uzante la Caché DBMS
[5] Cache + jQuery. Rapida komenco
[6] Apliko Deplojo
[7] UDL-subteno
[8] Vidante tutmondajn en la Caché Administra Portalo
[9] Prometeo kun Cache
[10] Lokigo en la Caché DBMS

Dankon al la aŭtoroj de ĉi tiuj kaj aliaj artikoloj, kiuj helpis min krei ĉi tiun ilon.

PS Ĉi tiu projekto disvolviĝas kaj multaj ideoj ankoraŭ ne estas efektivigitaj. Baldaŭ mi planas fari:

1. Aplika ŝablono sur la kadro uikit
2. Aŭtomata dokumentado de koda formato Doxegen kun integriĝo en CStudio

fonto: www.habr.com

Aldoni komenton