Download User Guide - Ecava IntegraXor 4.1

Transcript
User Guide - Ecava IntegraXor 4.1
User Guide - Ecava IntegraXor 4.1
© !
" #
#
$%& & ' (
&&& % !
& ) )* (
( % +* , &* * & * &
( % % &
% & &+ && - & ./ - &./ & & 0
& %& 1 & ( % Table of Contents
2&$%&
$
&#3&
$
4 &"
5-0
'
'0&
$+"5
6$%
7
4 !+%
4 5$%&-
4 5
4 0&
4 4 $8-
4 9 2
4 : 0
4 2
4 ; 6
4 < "&
4 9 =%
9 >
9 0 "
9 ?8@,
9 4 @&=&
9 9 02
9 : 9 "&A(
9 ; 0
9 < >
9 7,
: $+"5
: 5"&
: "&
: !"&
: 4 "&
: 9 8"&
: : 8"&
: #"&
: ; 0"&
: < "&
: B&"&
: "&
: "&
: 0,"&
;
;
9
4
9
:
:
;
4
44
49
4;
99
99
9
9;
9;
9<
9<
:
:
:;
:<
4
9
:
;
;
;
;9
;:
;
;<
<
<
6 5 D $H 4 : 4 "&
#
#
&#
#0>
; ; #
; 6%
; ; 4 "%
< &&
< &&
< >
< > 0
% "2"
< 4 $&&>
< 9 8 0
% "2"
22
>
@$
C7 % 4 %
9 @>
: $:;D9D-4
>#
>@(+#
@(+#%
>&#
4 &#%
'>&
!+'
>-'
5&
4 60&
9 0
: E+(
2
E+(
$+
; E+(
F&G
F($
$+"5
'
=D
4 >
$,
<
<9
<:
;
4
4
:
4
:
;
4
4
4
4
49
4<
4<
9
9
9
9
9
9
9
9
;
<
;
;
Documentation Information
0
6 5 ( $H AI 4 4: 0
& >% E( * ;* H* A* J ;* J :4 % & >
%% ( & ( % & * & %
% (
% ' & &* % * & & (
, 2= %& ( ( & % ( I--((( , &-- % & %& &
% $H % * ' = % & I--((( , &- & + % %
%&
0
+ % %% &
Chapter 1. Introduction
$H "2" E E & @
( & %% 0
& & D , & ( % (- && !(- & - &
" 5 & % &+ ( ' %
% & 0
& % & % % (
%
% ' 1.1. Support
" % %% $H & D% %,
= 3* %( K
$H =& D I--((( , &-%&-
K
$H "2" 2 @(+ .!/ D I--((( , &--
K
&
K
8 . & /
K
0
. & /
#&& %
$H ( & (
&& 0
L,L J LL & " &
& + ) M (+)* )M )
1.2. System Requirements
+ % $H %& N & D " $H
$M & ' % (
3 % M %
8
( ( & ' & & &&
N(* ' % ? A! % (
( + & " & M , + = * &
% L G* L * L G & L GO* L O* L GO "
&
(*
M
(
P
I--((( , &--
DD(DDDD
Q % & % % & %
2 &, & (
( "( ( & % ( (
* &
& ( ( & & (
(
0
%
P
I--((( , &--
(DDD%DD%&D
DQ (
(
%
= ( ( &
1.2. System Requirements
2& % "2" ' & ( & 0
(-' ! $H & 3 % +D .(
D
(/ ( ( & (+
&
1.3. Installation
#
( '
!( % 3& G #& 2&
K
$H E( H* A E( K
> E !( .(
3 (
A5 / 3 % ( >G =D
%, 9R* 5 & R* >% $ , ;R .(
" A5 A( / D
&& " A5 A( ( I--( &---&-(-(- ,- --A5A( ,
K
' & $H % $ & +D
* * &* * $ 3 (
, N0>7 ? % K
$+ "5 % && & (
( $H (
I--((( , &-( & "5 % "& 5
$H "2" (
%% &* ( " %( & % &&
3& ' (
4 (
9 & $ S T U ::5NG
2+ 9>! % #& R
>! % 2&
>&
5!
1.3. Installation
0
%& I--((( , &-( & $ "2" 3 "& 3 % "& %& &-(+
& % (
& & N(* ( & ( 3 2 %( ( % % $H 8
(
$H (
( ( (+ > % &* & %( & %
& (
$H % % &
1.3. Installation
& % %( " % $H = * 2 @ =&(+ & E( %& G $% M & $H * + 0+ > >$H H
& % E( $M & , % N( ( & (
( %& " M && % %& E( &
& & * + )$) 4
1.3.1. Incomplete Download Error
= 1.3.1. Incomplete Download Error
$H % % 0
+ % % & ( % ( !( % (( % + 9
1.3.1. Incomplete Download Error
)2 ) % % (
:
1.3.1. Incomplete Download Error
)2 ) & % & (
1.4. System Architecture
$& & (
I ) & %& I)
6 = 2( > P
I--((( %(& -( &Q % % & (
"
& (
&I)" % & ) $
E( * (
& % % E( 6 & >$ + 0
%& & (
& >$ = * G & P
I--((( DG -( &Q 0
%& % E( -
E( & %* $H 1.4. System Architecture
$H ' % ' %* +D % % .L ,/
N0>7 J A5 0
' & + % % .L ,/*
% + MM 8
L , (
& % %
% +D* & % > " +D % % (
0
% % & N0>7* A5 J % (
& % %D
! ' %* % % % && )) % %* )&) % '* % & )) % 8 )&) % ;
1.4. System Architecture
& % %D & ? + ( %* % (
8 $H %& ' %* %
% ' % ( %
@(+ $ (
$H & * % & E 0+ " ,& ( + + I
"http://localhost:7131/projectID/"* (
"projectID" % (
' = & * 6#7 & "localhost" (
$
$H = * % $H & (
$ %
< :; &
6#7
"http://192.168.1.1:7131/projectID/"
<
1.4. System Architecture
" & ' (
6#7 0
' % & (
" L , > ' & & Chapter 2. Getting Started /Tutorial
$H E "2" & 0
+D "2" & (
3 (
E %D ( ( " +( % ( ( % % & N(* & %
&& (
&
%% E
( ' * ' & ( * M
3 (
> 0* 5
A(* "& A( # A(
" ' & % % & % %( %* (* + %
% L , ( % ' % 2 + L , % ' $H & #
+ MM ( ' %
% " && & N0>7 A5 %*
>
" "2" 2= % % (
P
I--((( , &-(- %Q ( .>!/
2.1. Project Editor
' % %& % ' ' %&
& &* ' ( 0
' ( " (( % %& %
% 2.1. Project Editor
' % (+
0 (+ ( '* + =D@( ' " & ' & ( 0
' & ( ' $2 (
( (
'
% & (
8 & ( 8F ( '
& ( '
!( ( ( ' & (
% % (
+ # (
2.1. Project Editor
( '
" (( (( % " & (
0 % %3 % >* 0 % ( % % & %
2.1. Project Editor
' ( % &G ( 0 > = > 0
0 % % %
4
" % (+ & ( * + D
& = * $ , & (
%
' @ ' $2 ( & ( ' & 2.1. Project Editor
( '
0& % (
' 0
% + 3 0& % 2 7 % * 7 * 0 %& % & &+
% (+ = * ( * ( ( %
% % 2 %* 2 % % 0 0
( * 2 0 8 & &
2 * ' G* 2 & % 0
& D% (
8> 0N 8 2 D% % > " 2 D% % > N(* & & &
(
M && 0
( ( A 2
(
& ( $-8 0
0 & + * 0 2* 2 " % & ( ./ "2"
$ & V 0
& 2 && . / "% % (
./ = +
, * 0 ( * & 9
2.1.1. Auto-Complete for Tag
Entry
(
0 ' 2 % % & * @ (+ D
3 & &* >% " ( ( ' % $% & * % ,
82! & 0
% %% && 0
%
& &&
& (
"& ' :
0
? 0
% ( + 3 $ * & ( ? A! % ( $ 2.2. Project Template
2.1.1. Auto-Complete for Tag Entry
" % D&* % % %( % D (+
,& ( MM ( ( ( % (
MM 2.2. Project Template
' & ( (
@( ' G ' 0
' &
% & % & N>$-"2" & 8 %& % % *.igx 0
& ( * D + M&M* MM* MM M&M " M&M & ( &
% D 3 $H
0& % $H & (
& (
2 &, & % ( %% % & &
7
7 % $H % % I N* ! = & ( % ,* ( +* ( = & 0
3 & ' & %* , %& '
N !
0
)
) & % &* ' &* &
&* & & 0 &&G $
M (+* -
( + ' !( ,&I
2.3. Inkscape SAGE
> &
" ,& ( & & & % )5
) "%
)5
) +* & % ) ) ) ) ( * ( % % & MIM
" % % ' %
% I A5* 2= N0>-N0>7 % $ * ,
. / % % & MIM & 3
=
0
)%) & % &- = & %
& & &
"& A(
"& A( % % & ( (*
+( + & $ % % & % 2
= D * % >% " ) &) % 3+ 0
& % (
2.3. Inkscape SAGE
$+ (% J D A5 & &&* % ,
"2" & $+ 2 % (% % ( *
M % 0
M N & $+ % *
&
8
%
&
I--&' % %-$@F"->"@6"7-
&- 0
+ + N > D
$+ > $, % % "2" & "2" "&
5
* "5
;
2.3. Inkscape SAGE
$+ $+ % ( &* %( % ( (
( "2" & , <
2.3. Inkscape SAGE
N
% @& (
(
* & * 3& % & % 0
G %
* $H ( % && &
2.3. Inkscape SAGE
2& 2.3. Inkscape SAGE
"& N(* M &
3 % * %
"& + M
%RR0M
4
+ MGM %( M9M
9
+ MGM %( MM
2.3. Inkscape SAGE
:
+ MM # !"
+ MM
;
#$" + MM + %& % ( * %& % (
<
% &
+ MM & + , ( ' ( ))
+ MM
> %& E+ (
$+
4
Chapter 3. Server User Interface
0
$H % %( % , 0
% % &'
* & 0
% & (( 0+ E( .R
%R0/
(
( + % ( E( (
& ( N& (( 0+ E( .R
%R/ %
& %& % +* % * ( % % $-8 7* E
E( .R
%RE/ (
& % & $H & %
9
= * D
% % %
&G
0
( ( ' " ' '
- * &* % + 0+ -
% + % ( % 0 % +* + % * 0+ # ( :
3.1. Licensing
0 (
% % 0 & & % 0 E
(( 6 %
% ( ( * + + = 0* ( 0 % &G % &
"
+ % +* (
'* (* (
(M % M ( $H & , %
(
3.1. Licensing
$H && %( $ (
% % & & % (
, & " & ( & M ,* ' ,
# ( & %
& G %& %
3.1. Licensing
@ ( , &
0
% % *.ilr '
&* % * U, & 0
%( G % *.ila %( +
' ( % &
6 & 3 % G + % & % ( ( %
$ + %& &* N* )7 ) " + ( ( ;
3.1. Licensing
7 %&
" & % 6 & + ( + %& % 0
) &) * G % ( &
" % ( & & & ( & &* ( & 8 % * # % L + )#3 ) * $M && + % *.ilr & *.ila ' % % @ &
' % " & & % & '
&
0
' $ 2 & % ' & * ( +*
0
% ' $ 2 M&M & + M'M M&M (
( ' " ' $2 %% * ( % ( 0
E #&
<
3.1. Licensing
& % && (* %& %% $
% 7"@ E"@ ( * ( % & 0
$-8 & ( & % $-8 (
%
M 3* % @ $-8 & ( $-8 * D & % & $-8 0
& % $-8
( , (
@ -&&-& , & &
2& " ( % &I )9: $-8 )
8 "
G % * & 7 E( &
G + M"
G M !( G % 0
%
' % &
$ &* & (
-% , 3 $M % % 3.1. Licensing
* & & % * %
' - * (
& 8 & G * %& ( Chapter 4. Back End Configuration
" +D + % $H ' #
+ L , % (
E( , MM % (+* ' ( &
E( , 4.1. General Information/Convention
K
" & %( + & ' +
%%
K
> % % &* @&* 2 J +, 0
&
%% % &./ +
K
! % % &* ( K
% , % & % & * 3
K
#&+ % ( * --
K
0
( & & (+ ,&
+ @& & (
(
3 &* D& >* & * * &
& J * & 4.1.1. Sequence of Configuration
"
& % 3* %(
3 4.2. General
K
0$># D 0& % &* % + " 0& & % (
& % &* + * * >$@* >$@9* N# %
K
8#0 D " & & &&* & % &D
& (
, 2 $-8 % K
2"0"!" D 2 % 0* "& & K
"7"#> D "& % % ./ K
86060* #$0* 6# D 0
+ % 3* & & , &+ 4.2. General
5 % ' %&
' $2 % & % % ' $ ( ( +*
$ & ' $2 ' + ( * (
2
" 4
4.3. Timer
' ( D& % !"
' & + ( % % D
" & ( , % @& (
0
%( ( &
% ( (
' & "<BROWSER>" "<HOMEPAGE>index.html"
& ( ++ & % = $ ,
++ & (
%( && I
"C:\Program Files\Internet Explorer\iexplore.exe" -k "<HOMEPAGE>index.ht
,& ( ( % =%, 0
&& , ( %& (
"D:\PortApps\PortableApps\FirefoxPortable\FirefoxPortable.exe" "<HOMEPAG
D
" & ( , % G
$% & & * & && 4.3. Timer
0& % &* & + (
0& 0
( % &* M$M (
% %( M
M 0
% % 0& & ' 6,-7, &*
(
&& , & % &
& 8 & % & && = * )) & ( &+ & & "
,& )*) & ( &+ & " 3 &
2
" 0
$-
$
@& &
W
= >
2
2 % E+
:
N
>
9<
9
4.4. IO /Port
9<
# & ( % ( '
4.4. IO /Port
" & ( N>$-"2" % && (
, %
& , " && * * , * % $ % " & % %& 2 " #
= * % * )8>) " % * $ * % & * &* )< :; I9) % > 0-$ * )
) % 8 4.5. Device
8 & N>$-"2" & % 2 (
% -
% ./ " 7* #06 * & && :
4.5. Device
2 %& * & " 3 & % % 2
" #
@& * $ 2 > $
* $ 2 8 &I M#7, 8 M
0
& % + &
A % % (+ & & = * % &
)7)* % ( % 0
& % %& 0 (( $% + ( + &
"
%
P7Q $
D * D $G* D 2* D 2
# * 9 D E * 8
D 6+( 4.6. Tag
"
%
P7Q !
0-=
P7Q $
2 .&/
P7Q ,
- $G - 2 - 2 - # E - 6+( > % % = * & %% % = & 7 $* ( 4.6. Tag
0 && & % && & $ ( N>$ & && "2" & ( % * $8 D$8 $8 (
, * D$8 + & & &&
0 %& 2 0 ( * 0
& % 3& 0
% % % && ;* :* * & (
M % % 7 * & && : & % % *
& && % & :4
" 3 & * & + * * 0 &+ ? & , ( % 0 , 0 % % (+ & %
( * : ( &
2
" %
:-
-
-%
:4-
;-
;-!W0
:-E8#2
-2E8#2
;
4.6. Tag
7
7
% !
!
& % + % % ( % & $ & + &
+ * % * % ( &+
& 0
&& %
&&
> & && * ( ( @ (
$-8 * & %& 8
( % * &G % & + % "
2 % & > 2 " @ % & (
, + 8
2 % 8 J 5 = @ 8 * M %
+ >
7
$2 % 2 0+ 0
& $ 2 E
&* +D % % % 3
# 7
( * ' ) (+ %) , * - (+ ' ./// ( / ' ()+ % ) 0+
E 7
( * ' ) + %) , * - (+ ' .///, / ' ()+ % ) 0+
# 7
1( 2 ( ) ( 2, ( ' 1+
E 7
3 2 ) ( 2, ( ' 1+
$ ,
% & ( -0 ) ) ( , 24
) , ( ' + ( ) 0 ((( ' ( ( 0.001+ ( , 0 54 5, ' 9 / 5 * $ +
32, ' 6 +
0 + ) 0
)-' , ' ($ / $KFac) * 3600 * $MFac, ' MFac
7 KFac ) 8 7 9: '+
8
,
; & ( -0 ) ( ( , ) ,
( ( (+ ( ) 0
( ' ( ( 1000+ ( , 0 5
54 , ' 5 / 9 * ($ - 32), ' 6 +
6 & (
N
J 7( & Math.max(
LIM_LO, Math.min( LIM_HI, $))1 (
LIM_LO J LIM_HI <
4.6.1. Tag Expression
2%
2% G %+ && N(* % #
./ ( ( * % (
#
2 $ 2 % 0
& 0
% & (
(
* & ( ( , & * && # ( (
( 2% (
" % &% (( (
$ 0
% #D8 $ > * , J , 8@ 0
&* $ * ! (
8@* $ #* $-= (
8@ 8
(* & 8== @ % $ 0 & , $-8 E $% * ( % ( ( %&
E
&* (
% ( & &
$8 . / (
% " MOM (
&
% (
& M
4.6.1. Tag Expression
= 3&* & & = * 0.001* % + & 1000
6 ( G & ( & (
& , (
X & (
( %& % " ,& * 0.001 ( $*(0.001)* 1000 ( $*(1000) 0+ (
+ , &* & ( % 4
4.6.1. Tag Expression
, % -
0
& $*0+ % % " % & $+0
6 & & + Y Y=* & (9/5)*$+32 $
,* ($-32)*5/9 8 , 6 + =
%( + %3 * & ($/$KFac)*3600*$MFac* (
MFac
J KFac % > = J FD= "
7 ( ,&* % ( % 819 10°C* 4095
60°C* , ((60-10)*($-819)/(4095-819))+10*
, (($-10)*(4095-819)/(60-10))+819
6 & %D% + (
N
J 7( & Math.max( LIM_LO, Math.min( LIM_HI, $)) 8 ,1 (
LIM_LO J
LIM_HI = * Math.max(0,Math.min(100,$)) (
%& G , = +
%
,*
,
&
%%
%
($>LIM_HI?LIM_HI:$)<LIM_LO?LIM_LO:$
$M
&&
%&
(
P
I-- &G -D6--E-?-#%-8-!(O8Q
(
, (
, & 0 7! >! : * , $&1 $&65536 . / 8 * *
$
,
(
$0+$b0*1+$b1*2+$b2*4+$b3*8+$b4*16+$b5*32+$b6*64+$b7*128+$b8*256+$b9*512+$bA*1024+$bB*
4
4.7. Database
+$bF*32768 (
b0...b9 & bA...bF : &
( , & %& 8 ,* & $ & % %
& % ? M %& ( 6 :4 :4 ( ( , 4.7. Database
2 (
, & % $ 82! C7 =
>% C7 9 , * (
% % 4 5! % " 3 & % 0 "& 2
" &
"
0
(+ ,& % >% C7 9 , $ * 2"0"!" & &% (G = % &O'* & & ( )2"0"!"Z&O') @ %
* & ( * * Provider=MSDASQL.1;
Extended Properties="DRIVER=SQL Native Client;
SERVER=<COMPUTER_NAME>SQLEXPRESS;
DATABASE=my_job;
trusted_connection=yes";
4
4.7. Database
+ ( P Q 2 7+ (
0
> % % (I
I--((( &- 2 82! % = * >C7 82! ( %& I--((( &3 &-(---
"( 82! % % % 8 & :4
7
2% ( %3 ( 2% ( %3 ( %& 3
4
4.8. User
'"
& 2% ( ( + = * % < & ( % < ! =$=8 * < ( 0
"( %, M M & (+ = $ = 8 * (
%
4.8. User
( " >& (
. / ' 0
+ % * * (
3 & 3 %& + %& (
(( % $H
* , , E
3 O( * % ! ( % % * %
G ./ > (
0 & +* & %
% ./
6 $ 0
& & %% $ %)
& & $ 0
& %& $ &
$ * % & 6 E
& * ( & 6 + & . / ( . / 8F $% & ( * ( ( & (( % ( & 6 + (( % % % & " &
2
" " (
44
4.8.1. Web Access Information
*+
, 22D>>DWWWW %& DD<<<< % D, +
% % &,&& & & & , & & % +* ( ( 4.8.1. Web Access Information
0 * ( 6#7 %( %&I
http://ip_address:7131/PROJECT_ID/login?* (
PROJECT_ID ' & $ + N00 % $6 % $% $6 ,* (
% 0
$6 %& %(I
IgUser: {name:'xxxx', level:xxx}
$ ? eval() % ? ' &
8 * ( ( & ( & % $H % 3 3 (
, 3 !( ( (
( ((
$ ,* ( 6#7 %( %&I
http://ip_address:7131/PROJECT_ID/logout?* (
PROJECT_ID ' & 0
$ %& & ! N00 %%* ( +
$H * (* ( &
4.9. Alarm
# (
% % & 3 ' "& % * & (
%% &
@&
@& % &* (
&
> &
5 & ,& % "& 0 &* N(* 8 $ G " 0
+ 2 (
(
& 0
+ (
& $ % .8>/ .70/ * >-& 49
4.9. Alarm
" 0
0 " & & "" ,%
0
I
& & & I
ZZI 3
[\I 3
[I \I [ZI 3
\ZI 3
&
&/
.& 0
& (
& 0 & * & 2 % &
&+ & + "&
"
2
" &
@& % &
4:
4.9.1. Additional Information
for Deadband
8 % * > &
$% & * & + ( %
I
var
var
var
var
S1
S2
S3
S4
=
=
=
=
getTag
getTag
getTag
getTag
(
(
(
(
'SIM1_Lek');
'SIM1_Breuk');
'SIM1_Service');
'SIM1_Loopim');
//turning on anyone of the tag will trigger the event.
setTag( 'SIM1_Alarm', S1 | S2 | S3 | S4);
" %
&% M 0 ,
$SIM1_Lek | $SIM1_Breuk | $SIM1_Service | SIM1_Loopim
4.9.1. Additional Information for Deadband
2 % %+ % $% + % & &*
& & & + & %% & 0
&
(
* & %% (
( &
4
4.9.2. Alarm Scripting
= * % & ;* * & (
;
N(* & ( %% (
% ;* & %% (
%
( 8 & % ; 2 & * (
& ( % & & & (
% & %& 8 * & ( LL %
M % = * + ( 4.9.2. Alarm Scripting
$H ( & ( & & & = (
( %& % app.alarm[Group.Name].enable % & %& % app.alarm[Group.Name].status
-
" J +(
4
" J +(
$ J +(
$
0
( & 8# ( app.alarm[Group].status 0
0 & % + % %
(
& 4.10. Script
> % . / , (
( N(* & & & M (
( 8* & & (
( (
( 0
%& %& & %% (
8 % ? %* $H & (
%( % % , 0( & && % getTag('tagname') setTag('tagname',
data)
& (
MOM M6M = +* (
&+ %& & &
2
2 % . 2 ? %
"" /%
>
% &* % % % ""
2 & )0 !)* & % & 0& * $-8 "H
"H %
4;
4.10.1. Additional Functions
"H (
"H % (
E( 8 6 & app.startup * 6 & & 4.10.1. Additional Functions
$H & (
%( % &
&% && (+*
& % && (
*
<*, " 0 * (
0@& * 2 % 0
*
<*" 0 * 2=" , % % &* 27"W & 0&./ $./ & (+ & **, 2=>, 1%<
1?"* % ( ./ (
+ &+ & 0
& , (
& + & &* & .
&* 27"W/ & % 0
& #$@0# & (
% &* % ( % % &
* (
% % 0
% % * %
* 0
% ( & % 6 getTag( 'same_tag') %
%& & 6 & & %& ' ( 6 " var max = getTag( 'Tag001');
for (var i=0; i<max; i++) {
//do something
}
4.10.2. Advanced Scripting
= * %& %(
3I
POST /run?script=script_name;param1=value1;param2=value2
" & + (
& 0 0 M0M* %& + 4<
4.10.3. Database Functions
0./ & (
M & & % setTag( 'tag', data, option); E
option ?8@ ' time &
? Date() " & & %( var opt = {
"time" : new Date(
2020, //yyyy
0, //M; 0: Jan, 1: Feb...
1, //D
1, //h
2, //m
3, //s
456//msec
)
};
setTag( "myTag", 123.45, opt);
4.10.3. Database Functions
-" ( %& C7 3 (
string !( &
getSql([string] sql, [object] option)
[object] option format:
{
dbgroup: 'xx', // [string] database name created in database table,
// default to all database if not supplied.
offset: 0,
// [integer] skip the first stated number of result, default to no offset
limit: -1,
// [integer] limit to return stated number of result, default to no limit
skip: 0,
// [integer] skip certain number of rows between results, default to no s
outfmt: 'xx'
// [string] output format, valid values are csv/csvh/json/xml, default to
}
&
I
var
result
=
getSql(
"select
*
{dbgroup:"dblog",offset:2,limit:3,skip:2,outfmt:"json"});
from
log",
5
% ,& % & @ * 9 ; *
#
&
8%% 8%% 1 .
+ 4
+ 9
1 @
:
+ + ;
1 A
<
+ 9
4.10.4. Debugging Functions
+ # 4
-" ( %& C7 3 (
!( &
setSql([string] sql, [object] option)
[object] option format:
{
dbgroup: 'xx'
// [string] database name created in database table,
// default to all database if not supplied.
}
& I setSql(
{dbgroup:"mdb"});
"insert
into
alarm
values
(cell1,
cell2...)",
4.10.4. Debugging Functions
> % % * & % 0
%
3 & + 2 * %& ( E( (
0+ E(
( " E(
(
" & 0& E(
2 %& + , E(
9
4.10.5. ActiveX Scripting
!( & & % % % $ & %(
var a = getTag( "tagA") || 1; //default value 1
var b = getTag( "tagB") || 2; //default value 2
var c = getTag( "tagC"); //no default value
if (c > 1000) {
a = 1;
b = 2;
}
a = a + 1;
setTag( "tagA", a);
b = b + 2;
setTag( "tagB", b);
c = a + b;
setTag( "tagC", c);
debugTag( "tagC"); //this is a sample use of debugTag().
//debuging function will be executed in debug mode only
debugString( "Script is successfully executed."); //keep this as last line.
4.10.5. ActiveX Scripting
E
"H * ( >% E( 0
P
I--& &% &-D--+];A ;9]< ,Q* & % % ?
P
I--& &% &-D--
,<;.A ;9/ ,Q @ +D * % &
% (- .&&/ = *
% & ' P
I--& &% &-D--G,%(;];A ;9]< ,Q % A % & ( , , & %& (
!( , %&
>2@ ( ( ( , & & *
(
* ( (
% * +*
%& $8 N( & ( & var WshShell = new ActiveXObject("WScript.Shell");
var oExec = WshShell.Exec("calc");
while (oExec.Status == 0)
{
WScript.Sleep(100);
}
" && 28 % + (I
var obj = new ActiveXObject("WScript.Shell");
obj.Run("c:\\doswork.bat");
6 & %& ( % * ( & % ,
C7 & & A* & &G (
& ( , 9
4.10.5. ActiveX Scripting
//compose your sql for desired data
var sql = "select time_stamp, tag_name, nvalue from log";
//assign to a string
var csv = "time_stamp,tag_name,nvalue\n" + getSql(sql, {dbgroup: 'mdb',outfmt: 'csv'}
//File System Object operation
var fso, tf;
fso = new ActiveXObject("Scripting.FileSystemObject");
tf = fso.CreateTextFile("c:\\testfile.txt", true);
tf.Write ( csv);
tf.Close();
debugString( "File is saved.");
" "H ( & & & 9
94
Chapter 5. Front End Configuration
$H ( * % N0>7 0
% (
, &% % ( " $H % 3 && % & %
8 ( ( %& % M % % % , & 3 "
( * ( ,& + " %& "
+( 3 ( N>$-"2" &M
% N(* +( 3* % & ( &
+ ( >* ( % ' % & N>$-"2" > &* ,& ! N0>7 %& ( * & ( & +( %
N0>7 & % && 3 (
* % %
0
& % , N0>7 &+ % % % , + @ RR P
I--D % Q (
(+ (
" P
I--((( &Q ( & + (
% 5.1. Menu
"% && A5-N0> %& * + & + @(
&-& + $ & -( % @( %& % & %& & >*
% & (
( ( (
&
99
5.1. Menu
& ' 7 % "2" & % " ( D
&&* (
3+
9:
5.2. Scripting and Tag Access
> & &
0 ( && * E( , A5 N0>7 , & %
5.2. Scripting and Tag Access
,1 & ( ? &* &
(+ (
A!* M $ ? ( "
(* + ? * RR* ^ & * ? ' D+
(
%& & %& * * & & %%
( & @( & & % &% % ( %
%& % 0 %& ,1 * %( N0>7 *
& N0>7 && (
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
var
'tagname', data) (
data
=
getTag(
'tagname') setTag(
( .% / +* % M 9
5.3. JSON Syntax
( % * (
M 0
' % ( * % %& (
(* % 6#7 ) - -) ) -) 5.3. JSON Syntax
$H % ?8@ .? 8' @/ P
I--((( ' Q %&
, %& ( I )$ (
D
%& $ % & ( $ % &
)
+( * & & &&G & % ?8@ %&
{'param1': data1, 'param2': data2, 'paramN': dataN}
" * M & %& * ' , (
( (
" & ( (
* &
& & &&
& & % % %&* %( %&I
[data1, data2, data3]* % % &@ %&* (
, +
+I
{'param1': data1, 'param2': data2, 'paramN': [dataN1, dataN2, dataNM]}
? + && * % % * & (
% 3 3 = {'param1': 'this is string',
'param2': 123.45}
&
! ( & & (
&& " 3 & &
* (* , & ] &%& ? "* & + J
5.4. Number Formating
! & %& A5 N0>7 % & & + .^/*
G ./* && .*/ . / %& & >* $H & %&
%,* D & & G
& %& " * * 4 & !( & ,& % %& &
9;
5.5. Tabulate Data
,
.
49: 49:
#.##
1234567.12
49: 49:
#,###.####1,234,567.1235
49
#.##
.12
0.###
0.1
49: ;<
# ###,##
1 234
567,89
49: ;<
#.###,##
1.234.567,89
49: ;<
#,####.## 123,4567.89
49: ;<
#,##
1234567,89
49: ;<
#'###.##
1'234'567.89
& ( ( 2&* & % & = * 49: ;< "#,### " ( 1,234,568
5.5. Tabulate Data
N0>7 , 2 ( N0>7 (
&
%% 6+ N>$-"2"* &
% & (
%% G % , "
M N0>7 * % ( % @ % N0>7 * + 0 "* %( I
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
0 ( * & $2 % {attr:'get',
tag:'tagname'}
E
& (
&* M && % (
@D!+
* &nbsp; 0
( %& ' , %
(
% ( (
5.6. Printing
N0>7 (+ ' + # % &
N>$-"2" &* %% 6+ N>$-"2" &* $H ( ( 8 % N0>7 M ((* & 3& + & N>$-"2" &* % & 3 D + # >% , 9<
5.7. Alarm Viewer
@ * ( + , " & (
N0>7 & % $ E( &
(
( , (
& + N(*
(
( % $ E( ' $H D % print('url', DELAY, 'nu') (
, @ %& * (
(+
> 7 5.7. Alarm Viewer
"& A( (+ ' (
& % * & 3 & %
"& A( N0>7 ' (
&% & + "& A( M& &M (
'* ' % ' & !( %D
M % % 0
* -+ ( " &*
(-(
( " +( &* -& ( @D +( &
"& A(
"& A( &G % +
var opt = {
"mode": "alarm",
"row-per-page": 30,
"audio": "media/ding.wav",
"column": {
"time_stamp": true,
"tag_name": false,
:
5.7. Alarm Viewer
"group_name": true,
"description": false,
"message": true,
"nvalue": true,
"old_nvalue": true,
"inactive_timestamp": true,
"ack_timestamp": true,
"ack_user": false
}
};
$ %* & ( % &* * )&)* )%)* ))
"& & & & & (
+( % = & & & &* , . * &-
&/ " & ( , )(DD) % & % &-( & ( 0
& &G % !) 0 & % & %
& 0& &
&O&
0
& ( && % &
0
O&
0 % &
5
O&
5 %
2
2 % &
>
&
"& & A
A & % &
7&
O
% & & % %
$ 0&&
O&&
0&& % "+( 0&&
+O&&
0&& % & +(&
6 "+(
+O
6 (
+( &
0 &-
% %* index.html % & &* %
0 & % * %( <header> &G <style type="text/css">
.alarm-table .active {
background-color: blue;
}
.alarm-table .inactive {
background-color: pink;
}
.alarm-table .active-ack {
background-color: brown;
}
.alarm-table .inactive-ack {
background-color: purple;
:
5.7.1. Audit
}
</style>
6 ( & (
% . + %/ & & 0
( & & ( % %% var opt = {
"mode": "alarm",
"row-per-page": 30,
"column": {
"time_stamp": true,
"tag_name": false,
"group_name": true,
"description": false,
"message": true,
"nvalue": true,
"old_nvalue": true,
"inactive_timestamp": true,
"ack_timestamp": true,
"ack_user": false
},
"filter": {
"group_name": "Generator"
}
};
5.7.1. Audit
"* +( * D& % & ( 0 &* ?8@
% ( %& ( (I
var opt = {
"mode": "audit",
"row-per-page": 30,
"column": {
"time_stamp": true,
"tag_name": false,
"group_name": true,
"description": false,
"message": true,
"nvalue": true,
"old_nvalue": true,
"inactive_timestamp": true,
"ack_timestamp": true,
"ack_user": false
}
};
" & & & ( $ & &* ( ( (
% $ &* ( ( 5.8. Trending
:
5.8. Trending
5 0 3 "% %* % & % :
5.8. Trending
0 ' % (" (
N0>7 % (
2$A !( & % ( <html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" media="screen" href="system/styles/igrX.css"/>
</head>
<body>
<div class='trend' id='placeholder'></div>
</body>
<script type="text/javascript" src="system/scripts/igrX.js"></script>
<script type="text/javascript">
var pen = [
{
name: 'Temperature',
enabled: true,
unit: 'Celsius',
min: 0,
max: 100,
pens: [
{
name: 'Temperature Cook',
tag: 'temperature_cook'
}
]
}
];
var opt = {
lograte: 5000,
backgroundColor: 'white'
};
var plot = new trend( '#placeholder', {
:4
5.8. Trending
'pen_setting': pen,
'option': opt
});
</script>
</html>
0
( & 3I 2$A 0
% ( 2$A
' (
$2 )
)
var plot = new trend( "#placeholder", {
"pen_setting": pen,
"option" : option
});
?8@ ' % '* pen_setting (Array) option (JSON)
$ O* 3 % % " & %
O % % 0& (I
var pen = [
{
name: "Temperature",
enabled: true,
unit: "°C",
min: 0,
max: 100,
pens: [
{
name: "Temp A",
tag: "temp_a",
},
{
name: "Temp B",
tag: "temp_b",
},
{
name: "Temp C",
tag: "temp_c",
}
]
},
{
name: "Pressure",
enabled: true,
unit: "kPa Abs",
min: 0,
max: 10,
pens: [
{
tag: "press_a",
}
]
}
];
//
//
//
//
//
(String)
(Boolean)
(String)
(Number)
(Number)
// (String)
// (String)
// (String)
// (String)
// (String)
// (String)
//
//
//
//
//
(String)
(Boolean)
(String)
(Number)
(Number)
// (String)
& O & & % = &* 3 % &
:9
5.8. Trending
.
%
@& % &* 0&
!
0 (./ - .%/ & 2% %
%
6 % &* @&
>&& % &
&
@&
>,&& % &
0 & % A % ( + G % % &
% G % "
&
" % ?8@ '* (
% ?8@ ' % % .
%
&
7 % 2% % %
0 % !
0 (-
$% %* ( %&
& ' 8 (
!( ,&I
var option = {
lograte: 5000,
backgroundColor: "white"
};
.
%
,
@&
@& % HD, 2% % %
@&
@& % WD, 2% % %
!
0 ( % 2% % % %
@&
% & % & 2% : ./ %
%
0&
!
% 2% % %
@&
7 % & & %
2% 2% )) % %
2% & % (
0
%
& 2% )) % %
+
!
0 ( & + %& 3* && & % 0
::
5.8. Trending
.
%
%& 2% % % %
+&
@&
2% ( & & ( & $% & ( * ( ( 2% , % %
+
!+D % 2% (
% %
%7
#% % 2% + % %
" ( * (
( &,&&-&&& %
>,&&-&&& % &* ( % (
(( (
& + >,&& &&& % & , 6 + % " (
( %
0
% % I !+&+ "
!+&+ ( + (
&
& % ( & * (
( E
+
% * +&+ ( . / 6 +&+ + . / ! + * % ( &
@ & ! %& %I 7% * 7% 5* -*
#
5* #
* B& * B& 8
* %
& & + -& & % & " +-&+ (
& % $% -& -& * ( & 6&* + % % G& :
5.9. Multilingual support
" +* -& ( & 8 ( + )) & & &
" ? G ' % % 0
% ,* " " 0&&./ + &
8' %&* (
& )) 6@$H %& % & (
& )) 6@$H
%& % & 0&./ + &* % & &
0&./ (
& ( ( &
var new_time = {
"bgn": 1270000000000,
"end": 1271000000000
};
plot.setTimeStamp(new_time);
plot.realTime(false);
" &
2$A $2 classname % 0
& % 28>* * )^) $2 ) ) & classname %* ".placeholder" % & % trend() % 5.9. Multilingual support
6 % , lang.txt % (
' % D /lang % 0
, % 60=D; %&
:;
5.10. Logical Expression
> % ( %
5.10. Logical Expression
7 , %D %* .X/ % % & $H & &
& % % & 0& & & A @& ( * & + + * & " ,& & ( &
, % %D (
%% ( %% %& = '* + 0
% & * & , + I $tagname * 100
= * ' 3& ( G &
(
I ($tag_bool)? $tag_int: 0 "
%
, % (
GI $tag||1.01325
:<
5.10. Logical Expression
, % &M ( ( ">-> 2 , * & (
( & %D %& * ( , %
( , % , %D ( %& 6
Chapter 6. Inkscape SAGE
! "2" & % $* #* ! .7/* >&* 0, .2/* 8
.N-
(/ > "2" & !( "2" & % (
$+R"5
P
I--% -'-D-Q > & $
#D& $ "2" 2& P
I--((( , &-& &VZQ
! "2" "& >&
"5 ."2" "& 5
/ &% % % $+ "% & (
*
, + & & 0
' 8 ' '* + + 8' "*
' 0#7 R N$=0 R 8 8' ((
6.1. Get Animation
#
+ ' 6.1. Get Animation
5 & & ( ./ A5 * & 0 5 &* A5 8' & , ( 5 & 8' $% &* 6 %& %& A5 , ' & %& .,& @& =& /
6.1.1. Inkscape Text Alignment
5 "&
= ( & % ' 8 M0M % !
M"&M J M0M
% % 0, "& % & %
6.1.1. Inkscape Text Alignment
0,
&
P
I--&' % %-$@F"->"@6"7-
&-0,D=& &^0,D=&D?%Q %* J (
$+ % 0* (
( (
, & + 0,* =; (
, "* , 0, J = R
%R0 (
, ! ( , ( & (
, " , ( (
(* % , (
6.2. Set Animation
& , & % , ( %* J %
&
2 , & "5D5 &* & & (
$+ D & ( , &
6.2. Set Animation
& & ( ( .(/ + A5
8'* & & ,* & (
A5 8'
4
6.3. Bar Animation
"&
= ( & % ' 0
& I 0 ( $8 $H (
( (* (
& ( & %
& & %& 0 ( & % I
2 A $% 0 2* ( ( $% 0 A* ( * (
% ( ( $% 0 . %/* & ( & , % &
6.3. Bar Animation
! & & (
'M ( & &&& &,&& * % 0
%% ( &,&&
&&& ( % 9
6.4. Color Animation
! "&
= ( & % ' 0
& I * & &, 0 ( $8 $H (
( * (
& &&&
&, &,&& ' ( G + 8F ,* & % @ * 0
%*
% ' (
' 0 & ,* H>7 + %
& 6.4. Color Animation
& % & &* & (
&
% (
+ M"M & * + ) +) " % +
:
6.4. Color Animation
(( ( & % @ % & D + )> ) )> () +
"% * ( & !( & % % % M * E
* ( ( (
* ( ( @ & ( + % % % ( ( % =
,&* % * ( ( 0 +* MM % = * + %% * + + M-M* M^==-M 0 + %%*
* % * M(-M ( + ( ( *
M(
--M ( + 3
6.4. Color Animation
"&
$% % * ( (
(( R
%RE "' (( M7M MA5M
;
6.5. Opacity Animation
& (
= & & &* ' + 0 , $ % % & = * % % (
J % % * , ( 1 < $tag && $tag < 10 " & 1 (
& * % % % J %
* % , ( $tag <= 1 || 10 <= $tag $M ( & <
6.5. Opacity Animation
6.5. Opacity Animation
8 & & % ' 0
I
0* > >, 6 ( 3 $HM > &, (
& % '* (
& ( &+ ' &, ( &+ '
8 "&
& &* (
% * % %
' ( * &, & % = ,&* % & % &, * ( ( % I ;
6.6. Open Animation
8 & && %% 0
&+ &,&& & &&& 6.6. Open Animation
8 & ( ( ( + ' A5 6 ( + ( (
' 8 "&
0 0
% ( + 0
& & 6#7 % ( * $HM (
6#7 - % % (
;
6.7. Rotate Animation
%0 0
& & (
& 6#7 . ( /* $HM E
6#7 * & ( 6#7* ( 6#7 ' + E
0"5 * & ( $H * & ( , 6#7 6 ( 6#7 0
%* (
% ) %0 0
& & ( ( 6 ( ( %& % -
( "2"* ( (( < 3( ( ( (
((* (
4 3( ( %&
1
2 31
2 $2 $"$
0 0
% (( % % (
(( H W % % ((* (
(
% G % ((
6.7. Rotate Animation
& &* & & ( '
% &,&& &&&* % * %& %
:_ ;
6.7. Rotate Animation
# "&
0
, % ( % % ' % ' 0 %
* & % !( + (
( % ;
6.7. Rotate Animation
E
' % .% +/
8 +* ' % * .R / &* D
, % $ % ' % ,&I
;4
6.8. Tooltip Animation
" ' ( (* & % (
& &, E
* ( & E
* ' ( % - , :* ;_ "D+( &&& &,&&
6.8. Tooltip Animation
0 "& ( & (
& & ' 6 % 9 (
%% & 0, G % G %* % ,
;9
6.9. Slider Animation
0 "&
6.9. Slider Animation
& & ( % ' *
& (
;:
6.10. Zoom Animation
"&
0 * 3 * &&& &,&& % + )D) +, % % * * && 0
* % ' + \ \ * & "70R2 " ( % ' 6 3 & * (
% ' ( % * 'M ( % 2 &* ' ( & * ( ( ( % &,&& &&& % $%
)D) +* ( + ' 6.10. Zoom Animation
;
6.10. Zoom Animation
B& & ( G& % (
+
B& "&
,& G& & 6 ( ' G& & ( "& & % (
G&* 'M & 0 % % 6 G& ' ( + + & $% + ' G& '* ( + % G&
;;
6.11. Script Animation
5
G&D G&D + G& % %
6.11. Script Animation
& ( + ' 0
% ?
6 ( & * "&
,& & 0
,& & & $ & % % * ((
;<
6.12. Pop up Animation
alert("Result: " + (getTag('tag1') + getTag('tag2')));
"
& ,& * (
' % 6
%
& &
setTag( 'tag_bool', !getTag('tag_bool'));
6.12. Pop up Animation
& ( (( (
(* (
% D% & . &/
<
6.13. Text Animation
"&
,& & & * % (
& .
&/ ( ( 8
& % & ; & & 3 & (( 6 ( & & % & . &/ % %( 3 &+ .V/ = * %( % M &M & MM (
% M
(MI
popup.htm?string=helloworld
$ ,&* ( % 6#7 & 0
%* %& 3 &+ .V/ %
& '
6.13. Text Animation
0, & ( , (
0
( % M & & , % 0, "& %(* & * % % % , <
6.14. Clone Animation
0, "&
& 5 &* 8' & 0, 0, "& 0
& ( 0, "& 0 ( 8' 6.14. Clone Animation
& ( ' (
+ 3 & 0
% (
& & ' &* * * % ' & & %% 0
% & % ' (
8' 0 &* & % %% % <
6.14. Clone Animation
= ,&* & &* ( &* I
pump_1_state, pump_1_reading, pump_2_state & pump_2_reading 0
%%
( & & E
&* pump_%n_state
and pump_%n_reading "% & & (* ( 0#7R5
0
& ' @(* & ' 0#7R2 % ' & * (
A n A
1 % & (
pump_1_state & pump_1_reading & = &* & & &+ A 2
"&
0
& % % & &* % 3 A %
" ( % (
' = ,&*
tag_%n_%s_%d ( <
<4
Chapter 7. Report
$H & (
& % % ( 0
& 3 , D , & N0>7 * + & * % & % = *
- &* - & % $H D <9
7.1. Snapshot Report
" % &
7.1. Snapshot Report
7 = N0>7
% H>7 &* (* M HN0>7 & "
N0>7 & & ( ( = *
[\ & %( [-\ % * [\ " + + + [-\ G + [
-\
(
M N0>7 & % + F&B
2 7+
% + * + &
"
= %* (
D
% & % $ $ M &+ &&* (
%& , % D
"
+ && % $ &
56$ &* & - &
<:
7.1.1. Creating Layout
> "& # "
"
7.1.1. Creating Layout
!( & % & N0>7 % @ D D1 56$
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IntegraXor Snapshot Report</title>
<link rel="stylesheet" type="text/css"
href="system/styles/igrX.css" />
</head>
<body>
<div id="idButtons" class="paragraph"></div>
<h1>High Plant Production Report</h1>
<table width="60%">
<tr>
<th>Item</th><th>Description</th><th>Quantity</th>
</tr>
<tr>
<td>1</td>
<td>Part A</td>
<td></td>
</tr>
<tr>
<td>2</td>
<td>Part B</td>
<td></td>
</tr>
<tr>
<td>3</td>
<td>Part C</td>
<td></td>
<
7.1.2. Link to Datasource
</tr>
<tr>
<td>4</td>
<td>Part D</td>
<td></td>
</tr>
</table>
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
<script type="text/javascript">
var rpt = igrx.report();
</script>
</body>
</html>
(
M N0>7 & % + F&B
8 ( %& 0
%& && &
7.1.2. Link to Datasource
8 * & % (
0 % (
* ?8@ & , + I
data-igrx="{attr:'get',tag:'tagname'}" !( & % +
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<;
7.1.3. Archiving Report
<title>IntegraXor Report</title>
<link rel="stylesheet" type="text/css"
href="system/styles/igrX.css" />
</head>
<body>
<div id="idButtons" class="paragraph"></div>
<h1>High Plant Production Report</h1>
<table width="60%">
<tr>
<th>Item</th><th>Description</th><th>Quantity</th>
</tr>
<tr>
<td>1</td>
<td>Part A</td>
<td data-igrx="{attr:'get',tag:'part_a'}"></td>
</tr>
<tr>
<td>2</td>
<td>Part B</td>
<td data-igrx="{attr:'get',tag:'part_b'}"></td>
</tr>
<tr>
<td>3</td>
<td>Part C</td>
<td data-igrx="{attr:'get',tag:'part_c'}"></td>
</tr>
<tr>
<td>4</td>
<td>Part D</td>
<td data-igrx="{attr:'get',tag:'part_d'}"></td>
</tr>
</table>
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
<script type="text/javascript">
var rpt = igrx.report();
</script>
</body>
</html>
7.1.3. Archiving Report
0
% % & % "& & :& 0
:& % $% M % * & :& $ &* % MOM* MOM* MOM* MOM
MOM %
:&
" (
% & 2 ,
% + && & G & ( * && %& %( 9 &* & % ,& $ & ( & ( & 9 * ( & :II9* <<
7.1.3. Archiving Report
2 % % 5 % ( &G & ( 2% (+ ( " & %
# %
" + %* , # + "
7 % ( .
<
@& % "
& 2
2 % 7.2. Statement Report
.
'
& N0>7 % " & , 2 # % * (
& ( % & !
% % % 8 = ' , * ( , <
( % & %
, 7.2. Statement Report
0
(% & ( & ( & &&
,& % & + * + & (
*
& N(* % &* & & % &
7.2.1. Layout Configuration
7.2.1. Layout Configuration
0 & * , & * (
( (
( !( ( % % <!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IntegraXor Report</title>
<link rel="stylesheet" type="text/css"
href="system/styles/igrX.css" />
</head>
<body>
<div id="idButtons" class="paragraph"></div>
<h1>High Plant Production Report</h1>
<table width="60%">
<tr>
<th>Item</th><th>Description</th><th>Quantity</th>
</tr>
<tr>
<td>1</td>
<td>Part A</td>
<td data-igrx="{attr:'get',tag:'part_a'}">0.00</td>
</tr>
<tr>
<td>2</td>
<td>Part B</td>
<td data-igrx="{attr:'get',tag:'part_b'}">0.00</td>
</tr>
<tr>
<td>3</td>
<td>Part C</td>
<td data-igrx="{attr:'get',tag:'part_c'}">0.00</td>
</tr>
<tr>
<td>4</td>
<td>Part D</td>
<td data-igrx="{attr:'get',tag:'part_d'}">0.00</td>
</tr>
</table>
<h1>Production Log</h1>
<table width="60%">
<tr>
<th width="28%">Description</th>
<th width="18%">Density</th>
<th width="18%">Pressure</th>
<th width="18%">Level</th>
<th width="18%">Weight</th>
</tr>
<tr>
<td>Time/Unit</td>
<td>(kg/m3)</td>
<td>(bar g)</td>
<td>(m)</td>
<td>(kg)</td>
</tr>
<tr>
<td></td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
</tr>
<tr>
<td>Summary</td>
<td>Avg</td>
7.2.2. Link to Datasource
<td>Max</td>
<td>Min</td>
<td>Sum</td>
</tr>
<tr>
<td></td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
</tr>
</table>
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
<script type="text/javascript">
var rpt = igrx.report();
</script>
</body>
</html>
8 ( %& 7.2.2. Link to Datasource
8 * & % (
0 %
(
% ( ( * , + I
data-igrx="{attr:'log',tag:'tagname'}" !( & % +
7.2.2. Link to Datasource
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IntegraXor Report</title>
<link rel="stylesheet"
type="text/css" href="system/styles/igrX.css" />
</head>
<body>
<div id="idButtons" class="paragraph"></div>
<h1>High Plant Production Report</h1>
<table width="60%">
<tr>
<th>Item</th><th>Description</th><th>Quantity</th>
</tr>
<tr>
<td>1</td>
<td>Part A</td>
<td data-igrx="{attr:'get',tag:'part_a'}">0.00</td>
</tr>
<tr>
<td>2</td>
<td>Part B</td>
<td data-igrx="{attr:'get',tag:'part_b'}">0.00</td>
</tr>
<tr>
<td>3</td>
<td>Part C</td>
<td data-igrx="{attr:'get',tag:'part_c'}">0.00</td>
</tr>
<tr>
<td>4</td>
<td>Part D</td>
<td data-igrx="{attr:'get',tag:'part_d'}">0.00</td>
</tr>
</table>
<h1>Production Log</h1>
<table width="60%">
<tr>
<th width="28%">Description</th>
<th width="18%">Density</th>
<th width="18%">Pressure</th>
<th width="18%">Level</th>
<th width="18%">Weight</th>
</tr>
<tr>
<td>Time/Unit</td>
<td>(kg/m3)</td>
<td>(bar g)</td>
<td>(m)</td>
<td>(kg)</td>
</tr>
<tr>
<td data-igrx="{attr:'log',tag:'app.currentTime'}"></td>
<td data-igrx="{attr:'log',tag:'part_a'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_b'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_c'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_d'}">0.00</td>
</tr>
<tr>
<td>Summary</td>
<td>Avg</td>
<td>Max</td>
<td>Min</td>
<td>Sum</td>
</tr>
<tr>
<td></td>
4
7.2.2. Link to Datasource
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
</tr>
</table>
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
<script type="text/javascript">
var rpt = igrx.report();
</script>
</body>
</html>
$M && && ( % & " D % + ./* &,&& .&,/* &&& .&/ J && .&/ ./ , + !( & % && ( % (
&& ,
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IntegraXor Report</title>
<link rel="stylesheet" type="text/css"
href="system/styles/igrX.css" />
</head>
<body>
<div id="idButtons" class="paragraph"></div>
<h1>High Plant Production Report</h1>
<table width="60%">
<tr>
<th>Item</th><th>Description</th><th>Quantity</th>
</tr>
<tr>
<td>1</td>
<td>Part A</td>
<td data-igrx="{attr:'get',tag:'part_a'}">0.00</td>
</tr>
<tr>
<td>2</td>
<td>Part B</td>
<td data-igrx="{attr:'get',tag:'part_b'}">0.00</td>
</tr>
<tr>
<td>3</td>
<td>Part C</td>
<td data-igrx="{attr:'get',tag:'part_c'}">0.00</td>
</tr>
<tr>
<td>4</td>
<td>Part D</td>
<td data-igrx="{attr:'get',tag:'part_d'}">0.00</td>
</tr>
</table>
<h1>Production Log</h1>
<table width="60%">
<tr>
<th width="28%">Description</th>
<th width="18%">Density</th>
<th width="18%">Pressure</th>
<th width="18%">Level</th>
<th width="18%">Weight</th>
</tr>
<tr>
<td>Time/Unit</td>
9
7.2.3. Archiving Report
<td>(kg/m3)</td>
<td>(bar g)</td>
<td>(m)</td>
<td>(kg)</td>
</tr>
<tr>
<td data-igrx="{attr:'log',tag:'app.currentTime'}"></td>
<td data-igrx="{attr:'log',tag:'part_a'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_b'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_c'}">0.00</td>
<td data-igrx="{attr:'log',tag:'part_d'}">0.00</td>
</tr>
<tr>
<td>Summary</td>
<td>Avg</td>
<td>Max</td>
<td>Min</td>
<td>Sum</td>
</tr>
<tr>
<td></td>
<td data-igrx="{attr:'avg',tag:'part_a'}">0.00</td>
<td data-igrx="{attr:'max',tag:'part_b'}">0.00</td>
<td data-igrx="{attr:'min',tag:'part_c'}">0.00</td>
<td data-igrx="{attr:'sum',tag:'part_d'}">0.00</td>
</tr>
</table>
<script type="text/javascript" src="./system/scripts/igrX.js"></script>
<script type="text/javascript">
var rpt = igrx.report();
</script>
</body>
</html>
7.2.3. Archiving Report
& * & 3 & % & 8 % *
& % :
7.3. Report Toolbar Menu
& &
" & (
%
7.3. Report Toolbar Menu
7.3. Report Toolbar Menu
#
&
(
&
<div
id="idButtons"
class="paragraph"></div>* & % (
( 0
& % % && * * 8* * * , 2
# 0 ( "& "
# 0 % &* *J 8
# 0 % * , & E
+ D& &* ( (
&&* & & ( " ( + D& & 8
8 & E
8 + D& & "
, % * & % ( 8 * + ( & ( ( & % & + %
D& &
+ & + D& &
;
7.3. Report Toolbar Menu
E
+* , * &
,
E
, +* " , + " (
* + , N0>7 %* && A H>7 % , &
2
2 &* (
( E
2 +* ( ( & & & D& & % <
Chapter 8. Security
$H "2" & , * * J )2)
& & * )) && * % "+( %
&* * , 0
& # * J %
" & E * 2 # J E 0
%& (
* % %
% - &,&& % % * &,&& &
% * & % % " & & &* ( & .(
( & &+ +
/ % ( &
% "2" & = *
, ( & * ( & ( & * (
( ( %& %
& % >* ( %* ( & ( (
( (
" #-" 8.1. Security Role
$H "2" #D! " .#!"/* & % (
= * & % * * 0
J 8 0
% % * % * " % 8.2. User Configuration
# % & & 3* & * & & ! ( (
* ( % + & +* - & + 3& 0
& &
" #-" (
&,&& &,&& ( 0
7
% 0
% % &,&& (
& &,&& ( % $% &* ( N(* % (
(
& * & (
% & E
&,&& ( ( & % ( & E
& * ( ( & % @& % E
&* ( % & * && % & & %
& M 0
&% && * * M &-
=& # )7) $ ( & )#) , 8.2. User Configuration
"& & 3& (
%% % 6M , $ 6 %* "2" (* , &,&& $% % ./*
%& & 8.3. Protection
6 %
8 * 3& @ & && =
&* 7 $ % % % * % * 192.168.1.*
& ( %& $ (
192.168.1 > $ (
&&
0
& % (
* ( % M * 0
& (
(
%& = * & & & ( ( 8 & %& & + &
%& %% &* ( & %& J %% + & %& &* & ( & %& % $ " 7 "2" + %&
+( * % "2" & $ = * "2" & (
& (* % (+ (
& % $ + < :; L " % & & % $ *
& + $ %& ( '"
0
7 6 + % 8.3. Protection
* * 0 %
% %(* & ./ % 0
%
( % .( / " & %% % ( &* & ( % , " 8.4. Additional Security Configuration
J (
%% % % (
% * (* && ( %& N(* (
%+ && %
>& % % 8.4. Additional Security Configuration
4
8.4. Additional Security Configuration
5 %, % (
0 , & (
& %% (
* &,&& &
' 7
" % 0
% , E > & ( ( & & $% MN
M M * % & * (
M &% = ,&* M"M (
"& (
(
(
(
9 E
(
MM &* ( ( & % M"M N(* (
M"&M &* ( & ( * (
( % % & ( M"M 0
% E & ( % &
% ( & E
M"&M
& * ( & ( , && & (
+(& % E
M&M & * % 3
& $% % (
% * 3 ( 0 ( & E &* E & 8 E
7 ( (
"& ( & & * $ * % 9
:
Chapter 9. Communication
&& & && $M % (+ = * &&
* 3 D %& && (* ( 0
(
& ( ( (
&
%
0
$H %( % % & , & &&
9.1. Setting Communication Port
= %& + % * (
M + , @( & 3 (
8> 6! D
& 8> 8> ( & 0 % 8> % * N 0& %& E( & ` " ` && + 8> % % 9.1. Setting Communication
Port
8> % ;
9.1. Setting Communication
Port
!& % ( MM @ & %
M & N 0& && (
, N 0& % %& % 8
( & &
& 0 && %(
%( && ( = * 8 % %& + + 3 && & &' &
( "2" & %& & % , & % * ! #* 2 G* J ! <: ; 0-$ + ( &
& + "
( % & % % & +( %
% % * & &' &
!% && * %
& % % , "( ( ( % " (* D
M 4
$% && %( & &&* M <
9.2. Port Monitor
& (
% =* 56$* + $8 0+* + $% M & &&* ,& &+ , $8 0+ E( " , $% & &D
* + 0+ & &* + # 0+ $8 " $8 $8 + & + && 9.2. Port Monitor
$H & (
D > $ && (
& && %% % &
9.2. Port Monitor
> ( %% % 0
> ((- ( & & ((* % E
% & (
' 6 > %(* & % && * ' &
9.3. Modbus Troubleshooting
for SCADA
&
9.3. Modbus Troubleshooting for SCADA
8 % && * M > % > + 6+ & % >* & % +(
% && && 0
( & % & $ > & && *
&+ % ( & 0 & % & & % ( %& %% % % & 6 (
+ N # .:/ 8
./* ( & % & & + & % & (
& % 0
& & D& &* & ( &
1
!4%% 8(
> #06 "$$ && & #06 & & "$$ M & % 8 "$$ & ( (
&& . / M % && . &&/ & 0
(+
0
G % & ; % #06 % "$$
8!"
0
% > > , + & (+ > (+ && > (
* & (
M )>D
) (+ @& > 7 ./
& & 0
> ( ( 3 ( D
0
% & (+ (
& ( & * M & ( & && + #-4-4;9 > 0-$ (+ & > % & > (+
% #4;9 J #4 (+ %* % # &D (+
<( %
> &D ./ (+ " > & (
$2 % %* %
M @& M % @ $2 2 $2* $2* 2 "* " >
9.3. Modbus Troubleshooting
for SCADA
" & & @ "* (
((
& ( 2 " # & " 2 " , & %%
%& * (* % &
<<< % 8%% % R D $ 7 &&* %, & % %% 4, % 8 #* , % $ #* , % 8
, % $ N( &
"2" & ( & = (
:
* 4 (
3
.* % / "2" 7+( (
9 *
( "2" (
3 .R/
(( 0
& %, > 0
D
% %,* % * * 4 0
M %, (M ( D
" *
+ 4 0
& & &% &
% &
'
0
% %& >* 8 .,/* $ .,/* N # .4,/ J $ # .,/ !
8 .+ / J $ .+ / %D
& $ # J 8D
# : $ %
$ $ # M ( * * 8 8 # M ( E
+* M && & % &
$ & % %& % * + % .%/ ./* ( 8 # E
% % 3* & + > 7 ( + & &* & & '
3 (
+ % 6 & % M & J & %
% .%:4/ .:4/* + M &% >* & &% + 0& & ; %
13 1;
8 && #-E * ' #
8 0
& % 9.4. Interpreting Communication Message
& @& $ # .,/ $ .,/ && # 8
3( = % * D
( % ( .:/ . .;/ % & /
> && % %
( & .:/ 2%% %% &&D
* (
7 !
0
& % %& % "R!
!R" (
" ! : " % % * &D
, "R!RR2* !R"R2R* R2R"R! 2RR!R"
& % % % %% %& * % &
( &
>&
% ( ( > && ( D # !
8&G !+- &G* (
' % $ %* & > D
3 M!
8&GM % ' >
& . + / && 0
% % & & & = * 4* 4* 4*
4 ( & N(* D
.,/ 4 .4,/ 9.4. Interpreting Communication Message
4
E
% * ( & ( % I )= @&.8>/ ) (
)@&) % & &
3 = & ( + %3 % &
9.4. Interpreting Communication Message
& (
% E
% %* Success & ( I )
@& .8>/ )* (
@& % & & N(* % +* * (
& D&
& * * ( & Failed & ( + % Success &
& (
$% ( %* & %& ( % I Illegal data value: Implied length is incorrect 0
( & &
% %* M %& && &
% &
N(* * %% 0 R* D 9
9.5. OPC Troubleshooting for
SCADA
& % %& &
& (
( %
9.5. OPC Troubleshooting for SCADA
8 % % "2" (M &
& $H ( &
% % 28> N(* & 8 - & + % &
8 - % M & % ( % P
I--((( , &----&-O& Q % &
- & ( , :
Chapter 10. Device Driver
$Date:: 2011-01-25 #$
0
% % &' 0
( % $-8
% & %% 0
' % * %( 2 0
M & % % * (
& (+ $-8 % % * 2 0
10.1. Modbus
> & % && $H >
% J * #-4;9-4 J 0$ $ % % % % ( 10.1.1. Port & Device
&& 10.1.1. Port & Device
E
(
& % )8>)* )8>)* 3 &* 2 ( & % % & 8 * >
0-$ (
$ (
& + )< :; I9) @ )I9) & % >* & & > 8
&& * % & % %
$%& % & & (
& + %
;
10.1.1. Port & Device
<
10.1.2. Tag
> : (( ))
"' %( +( % &&
(
"2" : 3 '
@& % ( -&
: (( ) A@ (
0
% = 7 &
+ 7M % * % % ( + (
& & $ * % : (( ) BC (
0
% = 7 &
M :4 % 4 * % %
& 4 $ * % 4
: @ ' .B "
& & ( 0
(
: . ' D "
0
( : C ' A@ "
0
& % & % G* M & % && % *
%& ( @& )4)
)4)
: D ' BC "
0
( :4 :4 ( ' + % %% 10.1.2. Tag
0 4 % > 7* N # .4,/* $ #
.,/* 8 .,/ J $ .,/* (
N # J $ # : (
8 J $ ! = J 7 :4 & N $ # 0 % % $ # .,/ $
.,/ ( $ 0 % 0 )0)* D M setTag() % 10.2. EtherNet Industrial Protocol
@-$T ( #+( "& <<* 82A" (
( @-$ (+ 0-$* & % (
$ 0( & % # J 0
& &
(
7 %( !& %
&## %
!887
10.3. SQL driver for database
integration
!& %
&## %
$@0
;
$@0
:
2$@0
7$@0
:4
#"7
@-$ + > && % 0
% & % (
& N( D
> @-$
% G ./ ( &+ (
& &
@-$ & % & " & % =
(
$-8 %& 0
& &
(
&
0* #7,9 % % $-8 7
% @-$ "2"
0 $ % #D8 10.3. SQL driver for database integration
C7 2 && (
,-" 2 & ( & $ + (
% C7 2 82!
10.3.2. Tag
10.3.1. Port & Device
6 C7 2 %(* % % $ (
% C7 0
%% %& (
% 2
= * & %( % >C7 I
"Provider=MSDASQL.1;Persist
Security
Info=False;Extended
Properties="Driver={MySQL
ODBC
5.1
Driver};Server=localhost;Database=igxlog;User=root;Option=3";Initial
Catalog=igxlog" 0
" % % * % 3 % %
% % C7 @ %
% 10.3.2. Tag
& + * " % % % 3 (
10.3.2. Tag
% , % (
0 & (
2 & 0
& ( %( &
A & % 0
, % & %( %( %& $ ( C7 &* & % +* & & (+ %%
I
database_table_name/function_name:data_column_name[sql_where_condition
]@time_stamp_column_name
0
& % , % & database_table_name data_column_name % ,* , function_name:* (
&
%& & + min:* max:* avg: J count: @ count: ( & % ( % % % &
"
& ( 3 + sql_where_condition (
%& & C7 &* %
(
order by &
( ( 0
% , time_stamp_column_name* ( , & & $H & & 0
&* (
"& 0+ 0 0+* , & & ( % "2" & & $ (
D%& (D %%* & & & , % ( !( & , (
J ( % %% (
%% log1/read_fr_column[tag_name='tag'
order
desc];log2/write_to_column[data is not NULL]
by
time_stamp
' % & + 6 & , * J %& % + ( P Q % , " , ( &
10.4. Profinet
C7 , &
! ( M % % , (
%D% + % %&* & %& % & &
10.4. Profinet
#8=$@0T % #8=$!6 J #8=$@0 $ .$/ %
& #8=$@0T 0-$ $0 * * %%* D& * & % (
$ 0( & % 6 J
@&
#8=$@0T & % & " & % =
(
$-8 %& 0
& &
(
&
& D 0* 0$" % 4
10.4. Profinet
% $-8 0$" % #8=$@0 $H
9
10.5. SNMP
" ( %& ,& * & &
(
7 %( !& %
" %
!
! - $@0
;
$ - E
:
2$ - 2(
6$
;
6$
:
62$
#
0 $ 0 % #D8 10.5. SNMP
@> .& @(+ >& / $ & (+ 0
% (
$ & 0
% & : 0
@> * # * && * 0&D* @> 0-$%& & %
@> 0 0
& % (
% % >$! .>& $%& !/ %
% @> $H
0
% @> 0
& % (
8$2
:
10.6. IEC60870-5-101/104
.8' $%/ % % @> $H
" ( %& ,& * & &
(
@> %( %
" %
!$0
:4
:4
5
$@05#
$
$"
8!?0 $2@0$=$#
800 0#$@5
83
0& 0+
6
0 $ 0 % #D8 10.6.1. Port & Device
10.6. IEC60870-5-101/104
$ :;D9D P$Q % ( & &* &&
% * * && % ( & 0
&
& (
$ :;D9D $ :;D9D9 D
% ( 20 2 0
% & % +
DD* * & $ :;D9D4 .$ 4/ , % $ (
*
(+* + & (+ 0
0-$
% (+ 7"@ .7 " @(+/ (
%% %
.$2@* H 9* =& / E"@ .E " @(+/ " %
$ 4 & % $ (
& % % 0
(
+ % * (
% % .
D DD / 0
% % $4 % &
& % %%
% (+ G
&& 10.6.1. Port & Device
E
(
& % )8>)* )8>)* 3 &* 2 ( & % % & 8 * $4
(
$ (
& + )< :; )
8
&& * % & % %
$%& % & & (
& + %
;
10.6.1. Port & Device
$ : 4 ) 2
7
% % &
: 4 (( 2 7
% && : 4 ((
&& % "26
<
10.6.2. Tag
: 20 (( 2 7
% + : %
$ 3 (
: 8 (( 2
7
% & : 24 0 8 &1 = &
10.6.2. Tag
0
9 % $:;* 2 .2/* ./* > A
.>/* 2 && .2/ && ./ (
> A : * * 2 && && ! 2 ; 0 % % 2 * > A ( $ 0
% 0 )0)* D M setTag() % $ 0 %
4
Chapter 11. Multiple Redundancy
$H % * @(+ 7 # &
7 # !
% & * (
& & % & % 8 * @(+ 7 # D % (
&
7 # ( 3 & 8 * @(+ 7
# ( % % & &* ( & % % = * % * % % * $-8 ( 11.1. Multiple Network Redundancy
> @(+ # -(+ J %% (
$ && && 0
(+ (
(
&
$H @(+ ( &% % && (+ ' * (
% & & ( 8 ( , & %& %% (
M % & % 0
& (
% M %& -
" % $ %* ( 0
& %& & % $H ( 8 % * ( %& &
4
11.2. Network Redundancy
Configuration
" @(+ & +
0
% 3 & ( % & (+ + 0
D3 % % & & &&
* %% * ( &
@ & % &* %%a 0
% (
& & && (
%% * %% + #4;9 &, (
# $HM %
11.2. Network Redundancy Configuration
% -(+ % %(* & [n] % & % & &
0
& & ( & * % DeviceA[1]* 3
DeviceA[2] %
0
% & %% && *
& ( + % % & & (
&
8 % & &* + % & ( &
8 & % $H ( 4
11.3. Multiple System Redundancy
2PQ ( ( % 2PQ* "
& ( & +* $-8 % ( & % 11.3. Multiple System Redundancy
$H & * % & 0
$ % %D ( $% & %* ( + & 0
(
+ .( & / & & ( &
& & ( G* G* $-8 +* +* +
2 G
0
G 0
&* * * *
* * 0
& 0
G % 4
11.3. Multiple System Redundancy
0 G
0 G E
* & 0 G $-8 $-8* 8 +
E
* & $-8*
+ $% & (* (
+ ( + & + $ " (+ % ( && % @(+ 44
11.4. System Redundancy Configuration
" (+ % ( & % J C7 6 % ( ( # &-
11.4. System Redundancy Configuration
&
@(+ & % # M && * %
(
& (M %
2
G
G @& G
&* * (
"2" '
0 G G 0
& G (
%% % @7! @7! "
@(+ 7 ! .@7!/ % @7! & % $ @7! $ $ 3 (
@7! $ % 49
11.4. System Redundancy Configuration
5 % % 2 > # % * % & $ % <
@& % 2
" %& ((
7 % $ && % 10
0
#+ & % % 0
(
( & & ( & & 0
( %& * 0
& 3 % 8 + & ( & %
% (+ (
&
% D& ,
82! " % & % G + %( % & * G % =3
2% ( %3 %& @& (
+ & 4& ( && % 6
# 0
2% (
& % & % 2 =$=8 .= $ = 8/ # 2% ( ./ ( & ./ +
8 & # * + E
7 % & ( % & %
4:
11.4. System Redundancy Configuration
% (
# +
8 C7 P
I--((( 3 -Q % 6 % > C7
( ( & % G
4
4;
Chapter 12. Project Management
$H % ' % % ' + ( ' %
(
% &* %, % ' & $* % % & (+ !+
' & % % * & % % & ' % (
(M & & N>$-"2" & N(* ( % ' " (
' % (
% % G (
'
0
% & )) )I`& =)* )> 2&`>
') % ' E( , %& (
= A( + %
E
( * + #%
=9 @
% ' % * & % ' G * ( % & @ (+ , %
( " % % 12.1. Backing up project
!+ $H ' & ' % = % % &&*
4<
12.2. Migrating/upgrading
project
& % % ( % A % & G ( &
& % G* G % & % & && % %& + G G = G & % & GO GO %
& $M && ' & & & N( M 3
% ' L , L ' % & + & % & 0
, % , % ( +( % (
= * project.zip & project.zip_ 7+(*
& & &
#& L & % %
%G
12.2. Migrating/upgrading project
E
( % $H * & % ' ( & 6 % + , ' % & & (
' ( $H " (
& % %& ( ' , ' $M index.html* alarm.htm user.htm %& ( ' , ' $ & * & plot.htm
%& 4* & % & & % (
' % $H ( & D & % (
% 0
( &% ' %& 4 * + (
"H ( % % setTag() ( settag()* getTag() ( gettag()
12.3. Group development
%& & ' ( $% ' 3 &* ' & (+ & ,-& & (+ "* & & ' 12.4. Updating Template
' & G % % ' % $ & (
$H * % )I`& =``$H 4 )* & @( & ( %& & & (
(
( & + % $ (
&G ( &* & &% * & (
' & G template.zip '
( &G template.zip % , ' 12.5. Suggested Supporting Tools
? + ( '* $H ' & % , % % N0>7 * 8
% % & %* & , %
(
& % , % = * & ( ' %
(
E> P
I--(& Q % %%* " #+
9
12.6. Working with Database
P
I--((( &
% &-+Q % , E( H &
!( % %& , 6 % %& $H* ( & (
+ &
* & E %( % %
0, 0
& % , , + )0,) (
( I--((( , , )@RR) I--D % (
% I--((( &-
# " % & + - % (+ % )A@) % I-- # 56$
(
& 0 % &
I-- &
$% % ( & % (
& * & , & && % & % & &
)E>) ( I--(& $ E( H* , % +( % % & & + )"
#+) (
( I--((( &
% &-+
)0
# ( & 0
% (
& * ( ( G (
) I--((( , &-%-' &
+
),) + ,* #5!* N0>7* >WF NA % ' I--((( ( &-, &
'"
0
M ( % & &
- $H 12.6. Working with Database
! %* >% " % % ( ' (
M '
" 3& "2" 0 % 0*
"&* 0 # "
$% & >% " 3* $H 82!D& >% C7* 8* >C7 C7 >% C7 , % % (
5! &* (
%% & $ % && (
* &% ( 6 >& 0 &G % 3& ( $ ( I--((( &% &-,-20 (
, * +* (
) ) " &
% % % (I I--((( &- && %( 9
12.6. Working with Database
,
>%
,
&
"
C7
Provider=MSDASQL.1;
Extended Properties="DRIVER=SQL Native Client;
SERVER=<COMPUTER_NAME>SQLEXPRESS;
DATABASE=my_job;
trusted_connection=yes";
C7
Driver={PostgreSQL};
Server=IPaddress;
Port=5432;
Database=myDataBase;
Uid=myUsername;
Pwd=myPassword;
>C7
Driver={MySQL ODBC 5.1 Driver};
Server=localhost;
Database=myDataBase;
User=myUsername;
Password=myPassword;
Option=3;
! ( 82! 2 9* &
! ( ( & % & 9
12.7. Working with Inkscape
+ ( P Q 2 7+ (
0 "% * , C7 (
% > C7 P
I--((( , &---&3 3Q* >C7
P
I--((( , &---&3 3Q*
C7
P
I--((( , &--- 3Q
8
P
I--((( , &--- 3Q
12.7. Working with Inkscape
+ N D $+ > & % % ( "
( (
%* &&G + %
&& + % 0
+ I--+ --+4: &* (
& % N D F >
#%
9
12.7.1. Multiple Layer
> A5 ,& %& I-- 0
& & % + 8 && ' (
% I--&' % %-$@F"->"@6"7-
&-! &
12.7.1. Multiple Layer
$ ( % + $ ' (
& + (
$ %& % (+ + (
(
(+ % ( & % , % ( &* , & ( ( G& 7 > % !& 12.7.2. Resize and Background
@ $H D% % (
( ( (
&& G
% ((* & " M ( % & G * M & ( %% G % & %% 94
12.7.2. Resize and Background
2& 99
12.7.3. Complicated Shape
% ( + ( ( (
N(* % + ( (
, G* % (
( ( (
G " %
&
( (
(( G &
(
&&* & & M % $ , + & & (
2 ( ( % * + ( & (
12.7.3. Complicated Shape
0( & % ( $+ # E
% % &
& V = & & & ( % !G J
7* (* 6 8 J 2%% 8 ( 0
% &* M + % R J R > $ & * (
)&) )) * &
&
! %
9:
12.7.3. Complicated Shape
8 >
!( & % 8 ( & & & + (
" & & & (
9
12.7.3. Complicated Shape
2( % & &
9;
12.7.3. Complicated Shape
N ( + MRM %& 6 2( % ( & 9<
12.7.3. Complicated Shape
4 N
( ( + & .D/ %& 2%% :
12.7.3. Complicated Shape
9 0
% & : 0
, ( % &
:
12.7.3. Complicated Shape
2 2%% ( %% & :
12.7.4. Gradient Effect
; & * ( & &
& &
12.7.4. Gradient Effect
5 %% & * &+ '
& $ & "2" + % ' (
%% 0
+ %% " "2" & & (
+ !( 3+ & & ( ( + (
&
+
" & + (
%%
:
12.7.4. Gradient Effect
2( (
+ + G &
& ( & +
:4
12.7.4. Gradient Effect
R 2 % ( ( & & % ' 0& & % & 0
& , ' , ' + N ( (
' ( & & %& 4 N
% & R > %& 2%% 8 2 +
:9
12.7.4. Gradient Effect
%
% ' * % 3
9 E
+ ' * MM 5 * & '
%& & $% ( %% %* ( ' ( & ::
12.7.4. Gradient Effect
: > ' + * ( ( * +
&
R 2 & + :
12.7.4. Gradient Effect
; = * + + I + M+M & %
M!+M 0
G ( :;
12.7.4. Gradient Effect
< N & + & %& &G + & 3 ( ( + % (
2 & 3 ( &* G ( &
:<
12.7.4. Gradient Effect
=
G &+ - % + (
& +
MM & (
%%
12.7.4. Gradient Effect
R 2 & * M
M % G 0
5 ( + % ( %%
4 > ( * + % %% 12.8. Working with Kompozer
9 2( (
* + % : = * M# 5M % %% " ' G & +
12.8. Working with Kompozer
& % A 0 % = F&B
P
I-- &--&-OQ % (
%
12.8. Working with Kompozer
6 , % 12.8. Working with Kompozer
" 4
Chapter 13. Known Issues
0
& +( * %, & %&
% 4 4: ! (
%% '
* % (
, + % & 0
( &% (
& % %,
13.1. Inkscape SAGE
0
( ( % , A5* ( & + * ( ,
, %( (
M ,M & ( , % , (
6% , &' ,
( E( % & % ( & , % &' ( $+ ( % , &
&* ( , %& + J
0
9
13.1. Inkscape SAGE
"A % $ ( + % , :
13.1. Inkscape SAGE
=%, ( + , 5 & ( + , 13.1.1. Miscellaneous
'"
" * $+ & (
P
I--(+ + -(+-, -#O@- 4;^F(O$Q "
&
% * R %3 (+
13.1.1. Miscellaneous
"5 M +D
.`/ ( $% +D
+ P"Q ( 0
(+ * P"Q & + P8FQ # $& !( % &
P
I--((( , &--(D(DDDD(
DGDD&DDQ + L ' L ( & &
& (
& + + % % * ' G (
M % D
E
( A5 % (
+ D
%* & + % D& (
0 &* & % &* & ( "
(+ ( && A5 ' &* & % 13.2. Project Editor
J (
& ( % 3 ( % % * 8
( ( &
& E+ % %
% ( + ( & % 0, 0, ( & (
E( 87 %& (
* # J 7= = +( 2-!+ ( (
& + +( =D" ( ( % & 0
(+ 87 6,-8H %& = @RR %
&& >``87 N0>7 + & % 0- N0>7-0, D
( & = (+* & & . 4 /
6 % ' % (+ ' %3 * D
.R=4 RE/
;
13.3. Front-end
6 %& & &
6 ' menu.js ' (
) & '* + )*
& & menu.js %& & ' 13.3. Front-end
"& " A5 & & M&M $+ "5 ( % (
& +( &
" = %%D
" A5 & & )%&)* ( A5
&& ( % &
%& ( %%D & A % M%&M & "5 D 2 % ' & % 5
& % ( "& % 5 ' =%, D =%, & %&* (* ( & ( =%, ( (
$% M % &+ * & ( %& " R=9 % %% %
8
(
(
P
I-- &G &-D6-+-N(]]]
]
Q
2 &* ( %
I
http://localhost:7131/job/page.htm?YYMMDD-hhmm -0 E 0
+( D + (
&& & & %
,
& D 5
&
$
&
P
I-- &-
&-(-<94:4V
ZQ 5 & D 7 - 5 & && ( *
<
13.4. Miscellaneous
% & ( 0
+( P I-- &--
&&--VZ94<Q
% 5 &
!( ( 0
(
&
G (M
& &
A5
& (
P
I--((( , &--(D(DDDD(
DGDD&DDQ
A5 & 8
( (
+* EW$EW5 (M 13.4. Miscellaneous
# D 6
;
# N0>7 + J1* J1 & & &
Index
A
&
%* 49
* 4
* 4;
&
* 9
* :
* ./* ;
(( * ;
* <
* ;
* ;<
* 4
* ;:
0,* <* <
* ;9
G&* ;
"&
, &* * ;
C
&&
* :
* :
* %
' * 3* D
%* 4
* 9
2&
* 9
%* :
* @-$* $:;D9D-4* ;
&* %* 4
@>* :
C7* F
%D
& (* :
,* :<
& * 9<
* 99
* :;
& %&* 9;
* 9<
* :
G
%* 4
I
+
* :
* 9
* ;
* 94
* 9:
"5* G J +* 94
* * 9
L
J G* M
>
%* :
&* 4
* N
@(+ #
%* 4
$* 4
O
8& D =
%* :
8
%* :
28> * :
P
%* :
;
'
+* 4<
&* 9
' * &* R
#
$* 4
#
$* <9
3&* S
* 9
"H * 9
%* 4<
* 4<
%* 4;
%* 9
%* 9
?8@* 9;
* 4
* * %* %* 9
#
%* 49
$* 4
T
%* ;
-,* 4
&
* ' %* 4<
* 9
&
%* 9
* 9
0
A N0>7 * %%
* * ;
U
6#7
* 49
%* 44