4.12 Èñïîëüçîâàíèå ÁÄ äëÿ õðàíåíèÿ áèáëèîòåê âèäæåòîâ è ïðîåêòîâ
Âñå äàííûå êîíöåïöèè ÑÂÓ äîëæíû õðàíèòüñÿ â ÁÄ. Ýòî ïîçâîëèò ãèáêî ðàñïðîñòðàíÿòü è èñïîëüçîâàòü äàííûå ÑÂÓ, âûáèðàÿ íàèáîëåå ïîäõîäÿùóþ ñëó÷àþ ÁÄ èç ñïèñêà ïîääåðæèâàåìûõ ñèñòåìîé OpenSCADA. Ïðîåêöèè îñíîâíûõ òàáëèö çàïèøåì òàêèì îáðàçîì :
- Libs( ID, NAME, DSCR, DB_TBL, ICO ) -- Áèáëèîòåêè âèäæåòîâ <ID>.
ID -- èäåíòèôèêàòîð;
NAME -- èìÿ;
DSCR -- îïèñàíèå;
DB_TBL -- ÁÄ ñ âèäæåòàìè;
ICO -- çàêîäèðîâàííîå (Base64) èçîáðàæåíèå èêîíêè áèáëèîòåêè.
- LibWigets( ID, ICO, PARENT, PROC, PROC_PER, USER, GRP, PERMIT, ATTRS) -- Âèäæåòû <ID> áèáëèîòåêè.
ID -- èäåíòèôèêàòîð;
ICO -- çàêîäèðîâàííîå (Base64) èçîáðàæåíèå èêîíêè âèäæåòà;
PARENT -- àäðåñ âèäæåòà îñíîâû â âèäå /wlb_originals/wdg_Box ;
PROC -- âíóòðåííèé ñöåíàðèé è ÿçûê ñöåíàðèÿ âèäæåòà;
PROC_PER -- ïåðèîäè÷íîñòü âû÷èñëåíèÿ ñöåíàðèÿ âèäæåòà;
USER -- âëàäåëåö âèäæåòà;
GRP -- ãðóïïà ïîëüçîâàòåëåé âèäæåòà;
PERMIT -- ïðàâà äîñòóïà ê âèäæåòó;
ATTRS -- ïåðå÷åíü àòðèáóòîâ âèäæåòà, ìîäèôèöèðîâàííûõ ïîëüçîâàòåëåì.
- LibWidgetIO( IDW, ID, IO_VAL, SELF_FLG, CFG_TMPL, CFG_VAL ) -- Ðàáî÷èå àòðèáóòû <ID> âèäæåòà <IDW>.
IDW -- èäåíòèôèêàòîð âèäæåòà;
ID -- èäåíòèôèêàòîð IO;
IO_VAL -- çíà÷åíèå àòðèáóòà;
SELF_FLG -- âíóòðåííèå ôëàãè IO;
CFG_TMPL -- øàáëîí ýëåìåíòà êîíôèãóðàöèè, îñíîâàííîãî íà äàííîì àòðèáóòå;
CFG_VAL -- çíà÷åíèå ýëåìåíòà êîíôèãóðàöèè (ññûëêà, êîíñòàíòà ...).
- LibWidgetUserIO( IDW, ID, NAME, IO_TP, IO_VAL, SELF_FLG, CFG_TMPL, CFG_VAL ) -- Ïîëüçîâàòåëüñêèå àòðèáóòû <ID> âèäæåòà <IDW>.
IDW -- èäåíòèôèêàòîð âèäæåòà;
ID -- èäåíòèôèêàòîð IO;
NAME -- èìÿ IO;
IO_TP -- òèï è ãëàâíûå ôëàãè IO;
IO_VAL -- çíà÷åíèå IO;
SELF_FLG -- âíóòðåííèå ôëàãè IO;
CFG_TMPL -- øàáëîí ýëåìåíòà êîíôèãóðàöèè, îñíîâàííîãî íà äàííîì àòðèáóòå;
CFG_VAL -- çíà÷åíèå ýëåìåíòà êîíôèãóðàöèè (ññûëêà, êîíñòàíòà ...).
- LibWidgetIncl( IDW, ID, PARENT, ATTRS, USER, GRP, PERMIT ) -- Âêëþ÷åííûå â êîíòåéíåð <IDW> âèäæåòû <ID>.
IDW -- èäåíòèôèêàòîð âèäæåòà;
ID -- èäåíòèôèêàòîð ýêçåìïëÿðà âëîæåííîãî âèäæåòà;
PARENT -- àäðåñ âèäæåòà îñíîâû â âèäå /wlb_originals/wdg_Box ;
ATTRS -- ïåðå÷åíü àòðèáóòîâ âèäæåòà, ìîäèôèöèðîâàííûõ ïîëüçîâàòåëåì;
USER -- âëàäåëåö âèäæåòà;
GRP -- ãðóïïà ïîëüçîâàòåëåé âèäæåòà;
PERMIT -- ïðàâà äîñòóïà ê âèäæåòó.
- LibWidgetMime( ID, MIME, DATA ) -- Audio, video, media è äðóãèå ðåñóðñû âèäæåòîâ áèáëîòåêè.
ID -- Èäåíòèôèêàòîð ðåñóðñà.
MIME -- Mime òèï äàííûõ ðåñóðñà (â ôîðìàòå - <mimeType;Size>).
DATA -- Äàííûå ðåñóðñà êîäèðîâàííûå Base64.
- Project( ID, NAME, DSCR, DB_TBL, ICO, USER, GRP, PERMIT, PER, FLGS ) -- Ïðîåêòû èíòåðôåéñîâ âèçóàëèçàöèè <ID>.
ID -- èäåíòèôèêàòîð ïðîåêòà;
NAME -- èìÿ ïðîåêòà;
DSCR -- îïèñàíèå ïðîåêòà;
DB_TBL -- ÁÄ ñî ñòðàíèöàìè ïðîåêòà.
ICO -- çàêîäèðîâàííîå (Base64) èçîáðàæåíèå èêîíêè ïðîåêòà;
USER -- âëàäåëåö ïðîåêòà;
GRP -- ãðóïïà ïîëüçîâàòåëåé ïðîåêòà;
PERMIT -- ïðàâà äîñòóïà ê ïðîåêòó;
PER -- ïåðèîäè÷íîñòü âû÷èñëåíèÿ ïðîåêòà;
FLGS -- ôëàãè ïðîåêòà.
- ProjPage( OWNER, ID, ICO, PARENT, PROC, PROC_PER, USER, GRP, PERMIT, FLGS, ATTRS ) -- Ñòðàíèöû <ID> ñîäåðæàùèåñÿ â ïðîåêòå/ñòðàíèöå <OWNER>.
OWNER -- ïðîåêò/ñòðàíèöà - âëàäåëåö äàííîé ñòðàíèöû (â âèäå - "/AGLKS/so/1/gcadr")
ID -- èäåíòèôèêàòîð ñòðàíèöû;
ICO -- çàêîäèðîâàííîå (Base64) èçîáðàæåíèå èêîíêè ñòðàíèöû;
PARENT -- àäðåñ âèäæåòà îñíîâû ñòðàíèöû â âèäå /wlb_originals/wdg_Box ;
PROC -- âíóòðåííèé ñöåíàðèé è ÿçûê ñöåíàðèÿ ñòðàíèöû;
PROC_PER -- ïåðèîäè÷íîñòü âû÷èñëåíèÿ ñöåíàðèÿ âèäæåòà;
USER -- âëàäåëåö ñòðàíèöû;
GRP -- ãðóïïà ïîëüçîâàòåëåé ñòðàíèöû;
PERMIT -- ïðàâà äîñòóïà ê ñòðàíèöå;
FLGS -- ôëàãè ñòðàíèöû;
ATTRS -- ïåðå÷åíü àòðèáóòîâ âèäæåòà, ìîäèôèöèðîâàííûõ ïîëüçîâàòåëåì.
- ProjSess( IDW, ID, IO_VAL ) -- Òàáëèöà ïðîåêòà <IDW> äëÿ õðàíåíèÿ äàííûõ ñåàíñîâ, èñïîëíÿþùèõ ïðîåêò.
IDW -- ïîëíûé ïóòü ýëåìåíòà ïðîåêòà;
ID -- àòðèáóò ýëåìåíòà;
IO_VAL -- çíà÷åíèå àòðèáóòà.
- ProjPageIO( IDW, ID, IO_VAL, SELF_FLG, CFG_TMPL, CFG_VAL ) -- Ðàáî÷èå àòðèáóòû ñòðàíèö. Ñòðóêòóðà ôàêòè÷åñêè ñîâïàäàåò ñ òàáëèöåé LibWidgetIO.
- ProjPageUserIO( IDW, ID, NAME, IO_TP, IO_VAL, SELF_FLG, CFG_TMPL, CFG_VAL ) -- Ïîëüçîâàòåëüñêèå àòðèáóòû ñòðàíèö. Ñòðóêòóðà ôàêòè÷åñêè ñîâïàäàåò ñ òàáëèöåé LibWidgetUserIO.
- ProjPageWIncl( IDW, ID, PARENT, ATTRS, USER, GRP, PERMIT ) -- Âêëþ÷åííûå íà ñòðàíèöû âèäæåòû. Ñòðóêòóðà ôàêòè÷åñêè ñîâïàäàåò ñ òàáëèöåé LibWidgetIncl.