Professional Documents
Culture Documents
3
Java Programming Interface (Java-API)
1MRS756648 MicroSCADA Pro SYS 600 9.3
Issued: 31.3.2010
Java Programming Interface (Java-API)
Version: A/31.3.2010 Users Guide
Contents
Copyrights .....................................................................................5
1. Introduction ...............................................................................7
1.1. This manual ...................................................................................7
1.2. Use of symbols ..............................................................................8
1.3. Related documents .......................................................................9
1.4. Document revisions .......................................................................9
2. Safety information ...................................................................11
2.1. Backup copies .............................................................................11
2.2. Fatal errors ..................................................................................11
3. Instructions ..............................................................................13
3.1. IP Address ...................................................................................13
3.2. Hardware and software requirements .........................................13
3.3. Installation ...................................................................................14
3.4. Environment Settings ..................................................................17
3.5. Configuration ...............................................................................20
3.6. Configuring Java API for several products ..................................22
3.7. Using Java classes, applications and applets .............................22
3.7.1. Java classes ....................................................................22
3.7.2. Java applications .............................................................23
3.7.3. Examples .........................................................................24
4. Technical reference ................................................................31
4.1. Java classes ................................................................................31
4.1.1. SCIL_Connection .............................................................31
4.1.2. SCIL_SSL_Connection ....................................................32
4.1.3. SCIL_Interface .................................................................32
4.1.4. SCIL_Object .....................................................................35
4.1.5. Objects inherited from the SCIL_Object ..........................36
4.1.5.1. SCIL_BaseSystemObject ...................................36
4.1.5.2. SCIL_CommandProcedureObject ......................37
4.1.5.3. SCIL_DataObject ...............................................37
4.1.5.4. SCIL_EventChannelObject ................................38
4.1.5.5. SCIL_EventObject ..............................................38
4.1.5.6. SCIL_ProcessObject ..........................................38
4.1.5.7. SCIL_ScaleObject ..............................................39
4.1.5.8. SCIL_SystemObject ...........................................39
4.1.5.9. SCIL_TimeChannelObject .................................40
4.1.6. SCIL_FreeTypeObject .....................................................40
3
SYS 600 9.3 MicroSCADA Pro 1MRS756648
4
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Copyrights
The information in this document is subject to change without notice and should not
be construed as a commitment by ABB Oy. ABB Oy assumes no responsibility for
any errors that may appear in this document.
In no event shall ABB Oy be liable for direct, indirect, special, incidental or
consequential damages of any nature or kind arising from the use of this document,
nor shall ABB Oy be liable for incidental or consequential damages arising from use
of any software or hardware described in this document.
This document and parts thereof must not be reproduced or copied without written
permission from ABB Oy, and the contents thereof must not be imparted to a third
party nor used for any unauthorized purpose.
The software or hardware described in this document is furnished under alicense and
may be used, copied, or disclosed only in accordance with the terms of such license.
Copyright 2010 ABB Oy
All rights reserved.
Trademarks
ABB is a registered trademark of ABB Group. All other brand or product names
mentioned in this document may be trademarks or registered trademarks of their
respective holders.
Guarantee
Please inquire about the terms of guarantee from your nearest ABB representative.
5
6
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
1. Introduction
Java_API
Fig. 1.1.-1 The applets, as well as the applications, are connected to SYS 600 via
the Java API and Java classes complementing the API.
Benefits
The main advantage is to provide an easy-to-use programming environment for the
development of the application extension programs. In this environment, dynamic
data types (vectors, lists etc.) are handled in a safe way. The temporarily allocated
7
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
memory in the SYS 600 memory pool will be automatically released, if it is not
needed any more. One purpose to use Java API is to get information from SYS 600
to the office computers without opening SYS 600 monitors.
Java API functions
The main purpose for Java API is to provide the same functionality as in C-API, but
in the Java environment. The functions in the C-API are grouped into several Java
classes. The Java classes which handle the communication with SYS 600 are located
in the SCIL.jar file.
The SCIL_Interface functions can be used to read/write variables, execute SCIL
commands, read SYS 600 events etc. When the SCIL_Interface class has been
created, a new SCIL_Context is also created. The context remains the same until the
SCIL_Interface is destroyed. When there is more than one SCIL_Interface, each of
the SCIL_Interfaces have their own SCIL context. The variables used in one
SCIL_Context cannot be accessed in another context.
The data is transferred between Java and SYS 600 mainly using the SCIL_Value
class. The SCIL_Value encapsulates the SCIL data types. The SCIL_Message class
is used when working with the SYS 600 events. The EP messages from SYS 600 can
be used by methods in the SCIL_Interface. The user can select which events to order
by using the methods in SCIL_Interface. The message can be read by using the
getAepMessage function. Depending on the timeout value, the function will be
blocked infinitely until the message is found or the time limit is reached.
Although warning hazards are related to personal injury, and caution hazards are
associated with equipment or property damage, it should be understood that
operation of damaged equipment could, under certain operational conditions, result
in degraded process performance leading to personal injury or death. Therefore,
comply fully with all warning and caution notices.
8
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
9
10
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
2. Safety information
This chapter gives information about the prevention of hazards.
11
SYS 600 9.3 MicroSCADA Pro 1MRS756648
3. In Windows, the data kept in the main memory at the moment of a fatal error is
placed in the drwtsn32.log file. It is placed in a system folder, for example,
Winnt. Analyse and copy the data in this file.
4. Restart the system.
Report the program break-down together with the possible SYS 600 error messages
and the information from drwtsn32.log file to the SYS 600 supplier.
Status codes
Error messages in SCIL are called status codes. A list of status codes and short
explanations can be found in SYS 600 Status Codes.
12
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
3. Instructions
All of the Java classes are packaged in an archive file. Since all browsers do not
support the same archive format, there are both SCIL.jar and SCIL.cab files.
The latest version of the JDK can be found (at least) at the WWW-sites of the Sun
Microsystems (http://www.sun.com, http://java.sun.com). Sun also provides very
useful information about the Java programming language.
Java Secure Socket Extension is used to handle sequred TCP/IP connections. The
latest version of JSSE can be found at the WWW site http:/java.sun.com/products/
jsse/ .
The numbering of the SYS 600 application is dependent on the application that the
AEPs have been started from. More information about the numbering can be found
from Application Mapping in Chapter 5 of SYS 600 System Objects.
3.1. IP Address
Each node or host in a TCP/IP network has a unique identifier, an IP address. The
IP address is composed of four numbers which range from 0 to 255. The numbers
are separated with dots:
aaa.bbb.ccc.ddd
The IP address is requested during the configuration of the LAN software, i.e.,
during the installation of the Windows operating system in the base system and
workplace computers, and during the installation of the PC/TCP software in front-
ends.
The IP addresses of the SYS 600 base system, workplace and front-end computers
must comply with the addresses of other nodes on the network. Consult your local
area network administrator for valid IP addresses and other LAN configuration
issues. More information on configuring SYS 600 for LAN can also be found from
SYS 600 Installation and Administration Manual.
13
SYS 600 9.3 MicroSCADA Pro 1MRS756648
3.3. Installation
This section describes the main steps of the installation of the Java API for SYS 600
with the help of figures describing the informative dialog boxes seen during the
installation. The Java API for SYS 600 is installed into a computer which already
has SYS 600, a WWW server and the JRE/JDK. More information of installing SYS
600 can be found in SYS 600 Installation and Administration Manual. If Peer Web-
server is installed to the server computer after installing SYS 600, odbc32.dll and
odbcint.dll files are replaced with older versions of the same files. If this happens,
the newer files can be found in the SYS 600 Java API installation disk and should
be copied to the Windows system32 directory. Windows administrator rights are
required before the installation of Java API can be started.
The main steps for installing the Java API for SYS 600 are as follows:
1. When the installation execution file is run from the installation disk, the first to
appear on the screen is the Welcome - SYS 600 Java API Installation dialog
box, shown in Figure 3.3.-1.
Welcome
Fig. 3.3.-1 The Welcome dialog box is the first to appear when the installation
program is started.
2. The Welcome dialog box gives two options, OK and Cancel. If you click the OK
button, the installation will continue. If you click the Cancel button instead, the
Install dialog box will appear on the screen, with an option for terminating the
installation.
3. The installation program will check which SYS 600 products have been
installed already. The checking is done in the following order:
3.1. SYS 600 9.0 or newer
3.2. SYS 500 8.4.3 or newer
3.3. COM 500 3.0 or newer
14
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
15
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java_API_Inst
Fig. 3.3.-2 The Select dialog box contains options for customizing the
installation.
5. At the bottom of the Select dialog box there are again two options for starting
and exiting the installation. If you click the Start command button, extraction of
the files from the source disk to the destination drive will be started. An
installation progress indicator dialog box will also appear on the screen. You can
terminate the installation by clicking Exit, or after having started the extraction
of files, by clicking Cancel on the installation progress indicator dialog box. By
clicking Help you will get information about the installation. Back returns to the
previous dialog box.
6. After all the files have been extracted from the disk to the destination drive, a
dialog box will appear on the screen with a text Your MicroSCADA system has
been successfully installed.
The files scil_jni.dll, scil2java.exe, SCIL.jar and SCIL.cab are placed in
C:\MS_Interfaces\Java\. The scil2java.exe is an application extension program and
must be started from the SYS 600 by the aep_start function. It is possible to start the
16
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
scil2java from the command prompt by giving NO_AEP as the first argument.
This may be useful when testing the Java programs. When the scil2java is started
from the command prompt, it is not possible to use the SYS 600 messages.
The JRE or the JDK and JSSE must be installed on the host before
this Java API can be used.
The JRE and JSSE are included in the Java API package, but the modules need to be
installed separately. The JRE installation execution file, j2re-1_3_1_02-win-i.exe
and the JSSE installation file is jsse-1_0_2-gl.zip, can be found under
sc\MS_INterfaces\Java\Drivers\ on the hard drive, after the Java API package has
been installed. After JRE is installed JSSE archive should be unzipped and added to
JRE as an extension library (see installation instructions in the JSSE package).
Java API Server needs to load JVM.DLL file from the JRE package. Before it can
be started the path to this DLL must be added to the system PATH variable. The
DLL location depends on the JRE/JDK version. If 1.3.x version is used, the path is
<JRE_HOME>\BIN\HOTSPOT\. If 1.4.x version is used, the path is
<JRE_HOME>\BIN\CLIENT\. Here <JRE_HOME> is the root folder of JRE.
17
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Drive:\j2sdk1.4.2_13\jre\bin
Select PATH from the System variables pane.
Click Edit.
Enter new paths. Separate each path entry with a semicolon (;).
7. Click OK.
8. Restart the PC.
9. Verify that MicroSCADA user can access the defined environment variables:
@t_Classpath = environment("CLASSPATH")
@t_Path = environment("PATH") from the test dialog of
MicroSCADA.
10.Edit the file C:\sc\sys\active\sys_sys_java.ini as follows:
[Config]
Default_Access = READ_WRITE
18
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
@i_Aep_Nr=AEP_START("C:\MS_INTERFACES\JAVA\SCIL2JAVA:
EXE")
19
SYS 600 9.3 MicroSCADA Pro 1MRS756648
3.5. Configuration
The configurations described in this section will be necessary to perform only if
remote applets or applications are used.
20
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Access control
The configuration for Java API is stored in \sc\sys\active\sys_\sys_java.ini. There
must be at least the following lines:
[Config]
Default_Access = READ_WRITE
The Default_Access can also be READ. If there is no configuration file at all, the
default access will be NO_ACCESS. More information concerning the
configurations can be found in the following two sections of this manual.
21
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Instead of the access level defined in the default access field, the host(s) may have
its (their) own access level(s) defined in the following way:
Number_Of_Hosts The number of host sections. If there are N hosts, there
must be corresponding sections [Host1],
[Host2][HostN].
[Host<X>] Section for host specific information (IP number, access
level etc.). The <X> is the number of the host entry.
IP_Number The IP number for the host.
Access_Level The access level for this IP address. It can be one of the
access levels mentioned above in the Dafault_Access
paragraph.
Clients names and passwords can be defined in the following way:
[Passwords] Section for storing client names and passwords. Its used
only when the Authentication_Type = INI_FILE.
<Client name> Specifies the password for the <Client name>.
SYS 600
The scil2java can be started, for example, from the command procedure apl_init
which will be executed automatically when the SYS 600 application is started. The
following command line can be added to the command procedure:
@ret=aep_start(c:\MS_Interfaces\Java\scil2java.exe)
22
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
There can be only one server process in the same host at the same
time.
The API can be used on the local host also by creating a Java application whose
name is then given as an argument to the scil2java program. Details about the usage
of the related objects will be given in the following chapters and sections of this
manual.
Local applications
It is possible to create a Java application and run it using the scil2java.exe. In this
case the Java class is given as an argument to the scil2java program. The name of
the Java class should be without the .class extension. Because this Java class is an
application, the main(String [])method is required.
The scil2java and the Java class make an application extension program. together.
The number of the application extension program (from SYS 600) is given as the
first argument to the Java class. The second argument is the application number from
where the application extension program was started.
The Java application is started in the following way:
@aepn = aep_start(c:\MS_Interfaces\Java\scil2java.exe, prg_name)
23
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Remote_Appl
3.7.3. Examples
The following six sections include small examples of SCIL Interface, SYS 600
events, SCIL objects, free type objects, a Java application and a Java applet.
The SYS 600 interface classes must be imported before they can be
used (add Import SCIL.*; to the Java code).
SCIL interface
Here is a simple example of how to use the SCIL Interface to execute SCIL
commands, read variables etc.
This example also demonstrates the use of the SCIL_Connection.
public void test() {
SCIL_Interface iface;
SCIL_Connection con;
SCIL_Value v;
iface.executeCommand(@XYZ=100);
24
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
// The variable is now defined and the value of the variable can
// be received by getVariable() method.
// Note that variables in other SCIL_Interfaces can not be seen
// from here because of the different contexts.
v = iface.getVariable(XYZ);
if (v != null)
System.out.println(v.toString());
// Writes the value to the standard output
}
SCIL_Interface iface;
SCIL_Message msg;
iface.subscribeEvent(event_name,
SCIL_Message.SCIL_ALL_OBJECT_INDEX);
msg = iface.getAepMessage(100000);
// Block until timeout or until a message is received.
}
The following example is applet, which works until exit event is received and
handles different type of events:
import java.awt.*;
import java.applet.*;
import SCIL.*;
25
SYS 600 9.3 MicroSCADA Pro 1MRS756648
System.out.println("Reading message...");
do{
Msg = iface.getAepMessage(10000);
if(Msg != null)
{
if(Msg.message_type == 3)
exitEventHandler(); // Handles the exit event
else
eventHandler(Msg); // Handles all other events
}
} while(Msg == null || Msg.message_type != 3);
}
public void exitEventHandler()
{
s="Exit event received!";
System.out.println("Exit event received!");
}
public void eventHandler(SCIL_Message Msg)
{
// handles all subscribed MicroSCADA events except the exit event.
}
public void paint(Graphics g) {
g.drawString(s,10,10);
}
}
SCIL Objects
This example shows how to access the SYS 600 objects.
public void test() {
SCIL_DataObject data;
SCIL_Value v,
tmp;
int i;
v = data.getAttribute(OV, 1, 10);
if (v.getValueType() == v.SCIL_VECTOR_TYPE)
for (i=0; i<10; i++) {
tmp = v.elementAt(i);
System.out.println(tmp.toString());
}
}
26
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
super.readAttributes();
obj_name.XX = 123;
The new object can now be used e.g. in the following way:
public void test() {
MyObject obj;
obj.readAttributes();
obj.XX = 100;
obj.writeAttributes();
Java application
This simple Java application example demonstrates the use of the classes in the
SCIL package.
import java.awt.*;
import java.applet.Applet;
import SCIL.*;
/*
This is a very simple Java application which demonstrates the use of
the classes in the SCIL package. This application reads the current time from
MicroSCADA and shows it on a window.
*/
27
SYS 600 9.3 MicroSCADA Pro 1MRS756648
public test_application() {
//
// A window is created.
//
MainWindow = new Frame();
MainWindow.show();
MainWindow.setSize(150, 100);
fnt_Font=new Font("Courier",Font.PLAIN,14);
lbl_Txt1=new Label("Reading...");
lbl_Txt1.setForeground(Color.blue);
lbl_Txt1.setFont(fnt_Font);
MainWindow.add(lbl_Txt1);
//
// The MicroSCADA must be on the same host than this application
//
ifc_Iface1 = new SCIL_Interface();
}
void getTime() {
SCIL_Value val_Value1;
if (ifc_Iface1 == null)
return;
val_Value1 = ifc_Iface1.evaluateExpression("tods");
if (val_Value1.getValueType() == val_Value1.SCIL_TEXT_TYPE) {
s_txt1 = val_Value1.getString();
}
else
s_txt1 = "???";
if (thr_Thread1 == null) {
thr_Thread1 = new Thread(this);
thr_Thread1.start();
}
}
28
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
}
catch (InterruptedException e) {
}
getTime();
}
thr_Thread1=null;
}
if (thr_Thread1 != null) {
thr_Thread1.stop();
thr_Thread1 = null;
}
}
test_application apl;
Java applet
This simple Java applet example demonstrates the use of the classes in the SCIL
package.
import java.awt.*;
import java.applet.Applet;
import SCIL.*;
/*
This is a very simple applet which demonstrates the use of the classes in the
SCIL package. This applet reads the current time from MicroSCADA.
*/
Thread thr_Thread1;
SCIL_Connection con_Connection;
SCIL_Interface ifc_Iface1;
SCIL_Value val_Value1=null;
Label lbl_Txt1;
Font fnt_Font;
String s_txt1;
lbl_Txt1=new Label("Reading...");
lbl_Txt1.setForeground(Color.blue);
lbl_Txt1.setFont(fnt_Font);
add(lbl_Txt1);
//
// Connect to the host where this applet was loaded from.
//
con_Connection=new SCIL_Connection(getCodeBase().getHost());
29
SYS 600 9.3 MicroSCADA Pro 1MRS756648
SCIL_Value val_Value1;
if (ifc_Iface1 == null)
return;
val_Value1 = ifc_Iface1.evaluateExpression("tods");
if (val_Value1.getValueType() == val_Value1.SCIL_TEXT_TYPE) {
s_txt1 = val_Value1.getString();
}
else
s_txt1 = "???";
if (thr_Thread1 == null) {
thr_Thread1 = new Thread(this);
thr_Thread1.start();
}
}
while (thr_Thread1!=null) {
try {
Thread.sleep(1000);
}
catch (InterruptedException e) {
}
getTime();
}
thr_Thread1=null;
}
con_Connection.closeSCIL_Connection();
if (thr_Thread1 != null) {
thr_Thread1.stop();
thr_Thread1 = null;
}
}
}
30
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
4. Technical reference
This chapter gives technical reference information about the Java Classes.
4.1.1. SCIL_Connection
The SCIL_Connection class is the basic element in a client/server connection. It
provides remote programs with an interface to SYS 600. When the other classes are
used remotely, the SCIL_Connection handles the data transfer over the TCP/IP
network. The idea of using the SCIL_Connection class between the
SCIL_Object(s)/SCIL_Interface(s) is that the SCIL_Connection works like a
multiplexer. There is no need for a separate connection for each object Instead, there
is only one connection to the server for each applet/application. The commands are
executed in the same order as they are requested by the objects on the client.
The server is a multithread Java application that listens to a TCP/IP socket waiting
for object(s) to connect. The server creates a new thread for each connection. The
server itself communicates with SYS 600 using JNI which is actually a program
written in C. The functions handle translations of SYS 600 data types to Java data
types. Special care has been taken to make this multi-thread safe (both Java and C
codes).
The server listens to a TCP/IP port (the default is 1501). When a method is called in
the client side, the class sends only the id of the method and the arguments to the
server. The server will execute the actual code and send the return values if they are
available.
Constructors
public SCIL_Connection(String address)
Creates a new SCIL_Connection.
Parameter:
'address' The address of the SYS 600 host.
31
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Methods
public void closeSCIL_Connection()
This method must be run after the SCIL_Connection is not needed anymore. In case
of an applet, this method must be run in the stop method of the applet in order to stop
the receiver thread in the SCIL_Connection.
public boolean isConnected()
This method returns the connection state: true - if connection is established and false
otherwise.
4.1.2. SCIL_SSL_Connection
The SCIL_SSL_Connection class is the child class of the SCIL_Connection. The
only difference between these classes is that SCIL_SSL_Connection class handles
the data transfer with SSL encoding.
Constructors
public SCIL_SSL_Connection(String address)
public SCIL_SSL_Connection(String address, int port)
public SCIL_SSL_Connection(String address, String name, String password)
public SCIL_SSL_Connection(String address, int port, String name, String
password)
Methods
The same as in the SCIL_Connection class.
4.1.3. SCIL_Interface
This is the interface to the SYS 600 SCIL interpreter. By using this interface it is
possible to read and set variables, execute SCIL commands, get events etc.
Local Constructors
public SCIL_Interface()
Creates a new SCIL_Interface for the default application.
32
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Remote Constructors
public SCIL_Interface(SCIL_Connection conn)
Creates a new SCIL_Interface reference for the default application and connects it
to SYS 600 using the SCIL_Connection.
Parameter:
'conn' The SCIL_Connection that has been connected to SYS
600.
public SCIL_Interface(SCIL_Connection conn, int apl)
Creates a new SCIL_Interface reference and connects it to SYS 600 using the
SCIL_Connection.
Parameters:
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
Methods
The methods are the same for both local and remote constructors.
public int getStatus()
This function reads the status from SYS 600.
Returns:
The status value.
public void executeCommand(String command)
Executes the SCIL command in SYS 600.
Parameter:
'command' The SCIL command to be executed.
33
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
34
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
4.1.4. SCIL_Object
This class is used only as a superclass for the SCIL object classes described in
Section 4.1.5.
Methods
public int getStatus()
Reads the status from SYS 600.
Returns:
The status code from SYS 600.
public String getName()
Returns the name of the object.
Returns:
The name of this object.
public void setAttribute(String name, SCIL_Value value)
Sets the value of the given attribute.
Parameters:
'name' The name of the attribute.
'value' The value of the attribute.
public void setAttribute(String name, int start, int end, SCIL_Value value)
Sets the value of the given attribute. This method is used when there is more than
one index in the SYS 600 object.
Parameters:
'name' The name of the attribute.
'start' The start index of the attribute.
'end' The end index of the attribute.
'value' The value of the attribute. The type is vector if startend.
35
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
4.1.5.1. SCIL_BaseSystemObject
This object can be used to access a base system object in SYS 600.
Constructors
public SCIL_BaseSystemObject(String name, int apl)
This constructor initialises a local base system object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_BaseSystemObject(String name, SCIL_Connection conn, int apl)
This constructor initialises a remote base system object.
Parameters:
'name' The name of the object (in SYS 600).
36
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
4.1.5.2. SCIL_CommandProcedureObject
This object can be used to access a command procedure object in SYS 600. It is also
possible to activate an object of this type.
Constructors
public SCIL_CommandProcedureObject(String name, int apl)
This constructor initialises a local command procedure object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_CommandProcedureObject(String name, SCIL_Connection
conn, int apl)
This constructor initialises a remote command procedure object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.5.3. SCIL_DataObject
This object can be used to access a datalog object in SYS 600. It is also possible to
activate an object of this type.
Constructors
public SCIL_DataObject(String name, int apl)
This constructor initialises a local data object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_DataObject(String name, SCIL_Connection conn, int apl)
This constructor initialises a remote data object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
37
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
4.1.5.4. SCIL_EventChannelObject
This object can be used to access an event channel object in SYS 600 . It is also
possible to activate an object of this type.
Constructors
public SCIL_EventChannelObject(String name, int apl)
This constructor initialises a local event channel object.
Parameters:
'name' The name of the object (in SYS 600 ).
'apl' The number of the SYS 600 application.
public SCIL_EventChannelObject(String name, SCIL_Connection conn, int
apl)
This constructor initialises a remote event channel object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.5.5. SCIL_EventObject
This object can be used to access an event object in SYS 600. It is also possible to
activate an object of this type.
Constructors
public SCIL_EventObject(String name, int apl)
This constructor initialises a local event object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_EventObject(String name, SCIL_Connection conn, int apl)
This constructor initialises a remote event object.
Parameters:
'name' The name of the object (in the SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.5.6. SCIL_ProcessObject
This object can be used to access a process object in SYS 600.
38
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Constructors
public SCIL_ProcessObject(String name, int apl)
This constructor initialises a local process object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
4.1.5.7. SCIL_ScaleObject
This object can be used to access a scale object in SYS 600.
Constructors
public SCIL_ScaleObject(String name, int apl)
This constructor initialises a local scale object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_ScaleObject(String name, SCIL_Connection conn, int apl)
This constructor initialises a remote scale object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.5.8. SCIL_SystemObject
This object can be used to access a system object in SYS 600.
Constructors
public SCIL_SystemObject(String name, int apl)
This constructor initialises a local system object.
39
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_SystemObject(String name, SCIL_Connection conn, int apl)
This constructor initialises a remote system object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.5.9. SCIL_TimeChannelObject
This object can be used to access a time channel object in SYS 600.
Constructors
public SCIL_TimeChannelObject(String name, int apl)
This constructor initialises a local time channel object.
Parameters:
'name' The name of the object (in SYS 600).
'apl' The number of the SYS 600 application.
public SCIL_TimeChannelObject(String name, SCIL_Connection conn, int
apl)
This constructor initialises a remote time channel object.
Parameters:
'name' The name of the object (in SYS 600).
'conn' The SCIL_Connection that has been connected to SYS
600.
'apl' The number of the SYS 600 application.
4.1.6. SCIL_FreeTypeObject
This object is usually used as a parent class for some inherited objects. The free type
process objects can be defined by the user, and that is why it is useful to create your
own object which handles the user-defined attributes in a useful way. The basic idea
of this object is that first all of the user-defined attributes are read from SYS 600 to
a byte array by using the readAttributes method. The data in the byte array is then
handled by the get*** -functions in order to get the attribute. The attributes must be
read in the same order in which they have been defined in SYS 600. It is the users
responsibility to read the attribute as the same data type as it was defined in SYS
600.
When the values of the attributes are set using the set*** -methods (in the right
order), they must be written to SYS 600 by using the writeAttributes method.
40
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Constructors
public SCIL_FreeTypeObject(String name, int apl_num)
Creates a new SCIL_FreeTypeObject.
Parameters:
'name' The name of the free type object.
'apl_num' The number of the application.
public SCIL_FreeTypeObject(String name, SCIL_Connection conn, int
apl_num)
Creates a new (remote) SCIL_FreeTypeObject.
Parameters:
'name' The name of the free type object.
'conn' The connection to the SYS 600.
'apl_num' The number of the application.
Methods
public void readAttributes()
Reads the attributes from SYS 600.
public void writeAttributes()
Writes the attributes to SYS 600.
public int getInt()
Reads the next attribute as integer.
public String getString(int length)
Reads the next attribute as string.
Parameter:
'length' The length of the string.
public float getFloat()
Reads the next attribute as float.
public boolean getBoolean()
Reads the next attribute as boolean.
public Date getTime()
Reads the next attribute as scil time value.
public BitSet getBitString(int length)
Reads the next attribute as bit string.
Parameter:
'length' The length of the bit string.
41
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
42
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
4.1.7. SCIL_Value
This class encapsulates the SCIL data types. Before the value of this object is read,
it is very wise to check the data type by using the getValueType method before the
actual get*** method, unless you are sure about the current data type of the object.
Trying to read a wrong data type can cause an unwanted result. Methods that return
an object, throw a runtime exception in case of a wrong data type. Methods like
getInt() throw a runtime exception in case it is a sensible value and can cause
misunderstandings in some cases.
Constants
The constants listed below indicate the different types of SCIL_Values. They are
simply integers. The return value of the getValueType -function can be compared to
these constants to find out the actual type of the SCIL_Value.
SCIL_BIT_STRING_TYPE
The SCIL_Value is of type bit string. The bits in the bitstring can be handled with
functions bitSet() and bitClear().
SCIL_BOOLEAN_TYPE
The SCIL_Value is of type boolean. The valid values are true and false.
SCIL_BYTE_STRING_TYPE
The SCIL_Value is of type byte string.
SCIL_INTEGER_TYPE
The SCIL_Value is of type integer.
SCIL_LIST_TYPE
The SCIL_Value is of type list.
SCIL_NO_TYPE
There is actually no value in the SCIL_Value. The setValue(***) functions can be
used for this type of SCIL_Value, but it is not possible to read this type of
SCIL_Value.
SCIL_REAL_TYPE
The SCIL_Value is of type real.
SCIL_TEXT_TYPE
The SCIL_Value is of type text.
SCIL_TIME_TYPE
The SCIL_Value is of type SCIL time. The time is handled as a Date object in Java.
Note that if you are using the time as seconds from the specified year, there is a
difference between SYS 600 and Java. In SYS 600 the seconds start from the year
1978 but in Java the start is earlier, in 1970.
SCIL_VECTOR_TYPE
The SCIL_Value is of type vector.
43
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Constructors
public SCIL_Value()
Creates a SCIL_Value object of SCIL_NO_TYPE.
public SCIL_Value(String value)
Creates a SCIL_Value object of SCIL_TEXT_TYPE.
Parameter:
'value' Sets a String type value for the created object.
public SCIL_Value(int value)
Creates a SCIL_Value object of SCIL_INTEGER_TYPE.
Parameter:
'value' Sets an int type value for the created object.
public SCIL_Value(float value)
Creates a SCIL_Value object of SCIL_REAL_TYPE.
Parameter:
'value' Sets a float type value for the created object.
public SCIL_Value(boolean value)
Creates a SCIL_Value object of SCIL_BOOLEAN_TYPE.
Parameter:
'value' Sets a boolean type value for the created object.
public SCIL_Value(Date value)
Creates a SCIL_Value object of SCIL_ TIME _TYPE.
Parameter:
'value' Sets a Date type value for the created object.
public SCIL_Value(BitSet value)
Creates a SCIL_Value object of SCIL_BIT_STRING_TYPE.
Parameter:
'value' Sets a BitSet type value for the created object.
public SCIL_Value(byte value[])
Creates a SCIL_Value object of SCIL_BYTE_STRING_TYPE.
Parameter:
'value[]' Sets a byte type value for the created object.
44
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Methods
public void setValue(String value)
Sets the value of the SCIL_Value. The type of the SCIL_Value will be
SCIL_TEXT_TYPE.
Parameter:
'value' Resets a String type of value for an earlier created
SCIL_Value object.
public void setValue(int value)
Sets the value of the SCIL_Value. The type of the SCIL_Value will be
SCIL_INTEGER_TYPE.
Parameter:
'value' Resets an int type of value for an earlier created
SCIL_Value object.
public void setValue(float value)
Sets the value of the SCIL_Value. The type of the SCIL_Value will be
SCIL_REAL_TYPE.
Parameter:
'value' Resets a float type of value for an earlier created
SCIL_Value object.
public void setValue(boolean value)
Sets the value of the SCIL_Value. The type of the SCIL_Value will be
SCIL_BOOLEAN_TYPE.
Parameter:
'value' Resets a boolean type of value for an earlier created
SCIL_Value object.
45
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
46
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
47
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
48
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
4.1.8. SCIL_Message
These messages are sent to the application extension program by using the scil
function aep_send, a process object or another application extension program.
Variables
public SCIL_Value arguments[]
The arguments as an array of SCIL_Values. This value is valid when the type of the
message is SCIL_EP_MESSAGE_SCIL.
public int count
The number of the arguments. This value is valid when the type of the message is
SCIL_EP_MESSAGE_SCIL.
public byte data[]
The message data. This value is valid when the type of the message is
SCIL_EP_MESSAGE_EP.
public int index
The index of the event. This value is valid when the type of the message is
SCIL_EP_MESSAGE_EVENT.
public int length
The length of the message data. This value is valid when the type of the message is
SCIL_EP_MESSAGE_EP.
public int message_type
The type of the message. The value can be one of the types defined above
(SCIL_EP_MESSAGE_NONE...SCIL_EP_MESSAGE_EP).
public String name
The name of the event. This value is valid when the type of the message is
SCIL_EP_MESSAGE_EVENT.
49
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Constructors
public SCIL_Message()
Creates a new SCIL_Message of type SCIL_EP_MESSAGE_EP.
public SCIL_Message(int type)
Creates a new SCIL_Message.
Parameter:
'type' The type of the message.
EventLog
This class is used to write messages to the NT event log. It can be used only in a local
Java application loaded by AEP_START(scil2java.exe, <java_class>) command.
Remote applications and applets cannot use this class.
50
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Constructors
public EventLog()
Creates a new EventLog object.
Methods
public void writeUserError(int userErrorCode, String errorStr)
Writes external application event of type Error to the NT event log.
Parameters:
'userErrorCode' The error code.
'errorStr' The error message.
public void writeUserInformation(int userInfoCode, String infoStr)
Writes external application event of type Information to the NT event log.
Parameters:
'userInfoCode' The information code.
'infoStr' The information message.
public void writeUserWarning(int userWarningCode, String warningStr)
Writes external application event of type Warning to the NT event log.
Parameters:
'userWarningCode' The warning code.
'warningStr' The warning message.
public void writeUserAuditSuccess(int userAuditCode, String auditStr)
Writes external application event of type Audit Success to the NT event log.
Parameters:
'userAuditCode' The audit success code.
'auditStr' The audit success message.
public void writeUserAuditFailure(int userAuditCode, String auditStr)
Writes external application event of type Audit Failure to the NT event log.
Parameters:
userAuditCode' The audit failure code.
'auditStr' The audit failure message.
51
52
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
5. Example application
This chapter describes an example implementation of Java API. It also describes
how the applets communicate with each other and how they function in general. The
installation of the example application is described in Section 3.3. of this manual.
The purpose of the implementation is to show how Java can be used to present data,
fetched directly from SYS 600, in the Internet.
A small demonstration of a typical System Diagnostics program has been made with
Java, HTML and SCIL.
Use Microsoft Internet Explorer 4.01, or a later version, to get the right layout on the
pages.
Abbreviations
The following abbreviation will be used in this chapter:
'labeltype' An applet which displays information of text or numbers
in labels, choices and textfields.
53
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Frontpage
Fig. 5.1.1.-1 SYS 600 System Diagnostics is the first page to appear on the screen when the web connection to
SYS 600 is established. After 5-10 seconds this page will automatically change into General
System Information page (see Figure 5.1.2.-1).
54
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
General_Sys_Info
55
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Basic_Sys_Conf
56
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
57
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
58
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Applications
Fig. 5.1.3.1.-2 The Applications page. Links to Diagnostics and Mapping pages can be found here.
59
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Shadowing watchdog
Time synchronisation interval
60
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Diagnostic interval
Diagnostic timeout
Node type
61
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
62
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Vu_Meter
63
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Memorymeter
Memoryblocks (memblocks.html)
This is also a graphical applet. It shows the memory block sizes and memory blocks
used as a diagram.
Almost everything in this applet is painted. One special thing is that the applet reads
the file sc\temp\memblocks.txt every time it is started and when the x-axis scale
needs to be updated. A loop is made through a vector which contains the current
values of the memoryblocks being used. The value is calculated as SYS:BMS *
SYS:BMU.
64
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Clock
65
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Bar_Chart
Fig. 5.1.3.11.-1 An example of a bar-chart with data from a specific data object
66
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
The second graphs minimum and maximum values are sorted out
The second graph is painted
This applet is updated every second
Line_Diagram
Fig. 5.1.3.12.-1 Line diagrams with information fetched from two data objects
67
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
68
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
69
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
70
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
6. Terminology
Term Description
INI-file Initialisation-file.
71
72
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
7. Abbreviations
Abbreviation Description
LIB 500 The LIB 500 Application Software Library consists of product
packages for building the applications in a SYS 600 application.
73
74
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
8. Index
A
Access level .............................................................................................. 21
Access levels ............................................................................................ 22
AddLabel .................................................................................................. 55
Administrator rights .................................................................................. 14
AEP ........................................................................................................... 13
Aep_send .................................................................................................. 50
Aep_start function .................................................................................... 16
Alarm signal size ...................................................................................... 58
Animated link ........................................................................................... 53
Animations ............................................................................................... 56
Apl_init ..................................................................................................... 22
APL:BEM ................................................................................................. 65
APL:BEU ................................................................................................. 65
APL:BPM ................................................................................................. 65
APL:BPU .................................................................................................. 65
Apl.html .............................................................................................. 60, 61
Aplcom ..................................................................................................... 62
Aplcom.class ...................................................................................... 57, 58
Apldiag ..................................................................................................... 59
Apldiagnostics.html .................................................................................. 58
Aplinfo ...................................................................................................... 58
Apllist ....................................................................................................... 58
APL-mapping ........................................................................................... 60
APLn:BAP ................................................................................................ 60
APLn:BMO .............................................................................................. 60
APLn:BSD ................................................................................................ 59
APLn:BST ................................................................................................ 60
Aplshadow ................................................................................................ 59
Aplshadow.class ....................................................................................... 59
Applet ............................................................................... 24, 32, 53, 55, 62
Applet - applet communication ................................................................ 57
Application ............................................................................................... 60
Extension program ................................................................................ 7
Name ................................................................................................... 58
Number ............................................................................................... 58
Page .................................................................................................... 59
State ...................................................................................................... 7
Application extension program .................................................... 23, 31, 50
Application mapping ................................................................................ 13
Archive format .......................................................................................... 13
Argument .................................................................................................. 31
Arguments ................................................................................................ 31
75
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Array ......................................................................................................... 49
AS attribute ................................................................................................ 7
Audit failure message ............................................................................... 51
Audit success code ................................................................................... 51
Audit success message ............................................................................. 51
Auth_SCIL_File_Name ........................................................................... 21
authentication mechanism ........................................................................ 21
Authentication_Type ................................................................................ 21
AUTHETICATED ................................................................................... 21
B
B_Sendflag ............................................................................................... 58
Bar-chart ............................................................................................. 65, 66
Base .................................................................................................... 65, 66
Base system object ................................................................................... 36
Basic System Configuration ..................................................................... 56
Benefits ...................................................................................................... 7
Bit string ....................................................................................... 41, 42, 43
Bit string object ........................................................................................ 47
BitSet type of value .................................................................................. 46
BitSet type value ...................................................................................... 44
Boolean ........................................................................................ 41, 42, 43
Boolean type of value ............................................................................... 45
Boolean type value ................................................................................... 44
Boolean value ........................................................................................... 47
Browsers ................................................................................................... 13
BSWNETILIN ......................................................................................... 62
BSWNETINET ........................................................................................ 62
Byte array ........................................................................................... 40, 42
Byte string ................................................................................................ 43
Byte type of value .................................................................................... 46
Byte type value ......................................................................................... 44
C
Cancelling of events ................................................................................. 50
C-API ......................................................................................................... 8
Caption of the label .................................................................................. 55
Choice-component ................................................................................... 65
Class aplcom ............................................................................................ 57
Classes ...................................................................................................... 27
Client ........................................................................................................ 31
Client name .............................................................................................. 32
Client password ........................................................................................ 32
Client use .................................................................................................. 13
CLIENT_NAME ...................................................................................... 21
CLIENT_PASSWORD ............................................................................ 21
76
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
77
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
E
Easy to use programming environment ...................................................... 7
Enable routing .......................................................................................... 56
ENQ limit ................................................................................................. 61
EP messages ............................................................................................... 8
Error code ................................................................................................. 51
Error message ........................................................................................... 51
Event
Channel queue length maximum ........................................................ 65
Channel queue used ............................................................................ 65
Event channel object ................................................................................ 38
Event object .............................................................................................. 38
EventLog .................................................................................................. 50
EventLog object ....................................................................................... 51
Eventmeter.class ....................................................................................... 65
Events ............................................................................................. 8, 25, 32
Example application ........................................................................... 15, 53
Example implementation of Java API ...................................................... 53
Examples .................................................................................................. 24
exit event .................................................................................................. 34
Exit event handler ..................................................................................... 25
External clock ........................................................................................... 64
External clock address .............................................................................. 64
F
Fairness count ........................................................................................... 61
FALSE ...................................................................................................... 21
Fatal error ................................................................................................. 11
File sync criteria ....................................................................................... 56
Float .................................................................................................... 41, 42
Float type value ........................................................................................ 44
Font .......................................................................................................... 55
For customising the installation ............................................................... 15
Free attributes ..................................................................................... 26, 42
Free type objects ....................................................................................... 26
Free type process objects .................................................................... 26, 40
G
General info .............................................................................................. 53
General System Information .............................................................. 54, 55
Generalinfo ............................................................................................... 59
Generalinfo.java ....................................................................................... 54
Get functions ............................................................................................ 47
Get*** -functions ..................................................................................... 40
Get*** method ......................................................................................... 43
GetAepMessage function ........................................................................... 8
78
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
GetBytes() ................................................................................................. 42
GetByteString() ........................................................................................ 47
GetInt() ..................................................................................................... 43
GetValues() function ................................................................................ 55
GetValueType method .............................................................................. 43
Gif-pictures ............................................................................................... 56
Graphical applet ........................................................................................ 64
GridBagConstraints .................................................................................. 55
GridBagLayout ......................................................................................... 55
H
Hard drive space ....................................................................................... 15
Hard drive space available ........................................................................ 15
Hardware .................................................................................................. 54
Hardware requirements ............................................................................ 13
Hashtable .................................................................................................. 47
Hashtable type of value ............................................................................ 46
Hashtable type value ................................................................................. 45
Help-text ................................................................................................... 66
History buffer ........................................................................................... 58
Host ........................................................................................................... 22
Host entry ................................................................................................. 22
Host sections ............................................................................................. 22
Host specific information ......................................................................... 22
Hot application state ................................................................................... 7
HSB ............................................................................................................ 7
HTML ....................................................................................................... 53
HTML page .............................................................................................. 24
HTML-page ........................................................................................ 65, 66
I
IE .............................................................................................................. 13
IIS ............................................................................................................. 13
Import SCIL.* ........................................................................................... 24
Index ......................................................................................................... 48
Index of the event ..................................................................................... 49
Individual attributes .................................................................................. 26
Info.html ................................................................................................... 56
Infoapplet .................................................................................................. 57
Information code ...................................................................................... 51
Information message ................................................................................ 51
Inheritance ................................................................................................ 26
Inherited .................................................................................................... 36
Inherited objects ....................................................................................... 40
INI_FILE ............................................................................................ 21, 22
Initialisation .............................................................................................. 55
79
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
80
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
L
Label ............................................................................................. 55, 56, 64
Labeltype .................................................................................................. 53
LAN
Node name .......................................................................................... 60
Transport ............................................................................................. 61
Last transaction number ........................................................................... 60
Layout ....................................................................................................... 55
LIB 500 package ....................................................................................... 62
Librevision ................................................................................................ 54
License ...................................................................................................... 54
Lin.txt ....................................................................................................... 61
Lindiagnostics.html .................................................................................. 61
Line diagrams ..................................................................................... 66, 67
Line per page ............................................................................................ 61
Linediagram.class ..................................................................................... 66
Lininfo.class ............................................................................................. 61
Link
Diagnostic counters ............................................................................ 62
Diagnostics ......................................................................................... 58
Number ......................................................................................... 60, 61
Type .................................................................................................... 61
Link-frame .......................................................................................... 56, 58
Links.html ................................................................................................. 56
Linlist.class ............................................................................................... 61
LINn:BDC ................................................................................................ 62
List ........................................................................................................ 7, 43
Listapplet ............................................................................................ 57, 58
Little endian format .................................................................................. 42
LN ............................................................................................................. 62
Local ................................................................................................... 22, 33
Local Applications .................................................................................... 23
Log
Directory ............................................................................................. 61
Flush timeout ...................................................................................... 61
Length ................................................................................................. 61
Log_Enable ............................................................................................... 21
Logged in / APL ....................................................................................... 60
Logging messages .................................................................................... 21
Logical Name ........................................................................................... 62
Logo.java .................................................................................................. 54
M
Main2.html ............................................................................................... 53
Mapping pages .......................................................................................... 59
Mapping.html ........................................................................................... 58
81
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
Max_Connections .................................................................................... 21
Max-value ................................................................................................. 65
Memblocks.html ....................................................................................... 62
Memblocks.txt .......................................................................................... 64
Memmeters.html ...................................................................................... 62
Memory
Block sizes ......................................................................................... 64
Page .................................................................................................... 62
Memory.class ........................................................................................... 62
Memorymeter ........................................................................................... 64
Message data ............................................................................................ 49
Microsoft Internet Explorer ...................................................................... 53
Mon.txt ..................................................................................................... 60
Moninfo.class ........................................................................................... 60
Monitor ..................................................................................................... 60
Monitor number ....................................................................................... 60
Monlist.class ............................................................................................. 60
MON-mapping ......................................................................................... 60
Multiplexer ............................................................................................... 31
Multithread Java application .................................................................... 31
N
NAK limit ................................................................................................. 61
Name of the font ....................................................................................... 55
Net list ...................................................................................................... 62
Netrevision ............................................................................................... 54
Netscape ................................................................................................... 13
New object ................................................................................................ 27
New value ................................................................................................. 34
NO_ACCESS ........................................................................................... 21
NO_AEP .................................................................................................. 17
Nod.txt ...................................................................................................... 60
Node number ................................................................................ 56, 58, 60
Node type ................................................................................................. 61
Nodinfo.class ............................................................................................ 60
Nodlist.class ............................................................................................. 60
NONE ....................................................................................................... 21
NT event log ....................................................................................... 21, 50
NT Server ................................................................................................. 13
Number of the application extension program ......................................... 33
Number of the arguments ......................................................................... 49
Number of the MicroSCADA Pro application ......................................... 33
Number_Of_Hosts ................................................................................... 22
Numbering of the MicroSCADA Pro application .................................... 13
82
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
O
Object
Identity ................................................................................................ 62
Text ..................................................................................................... 62
Value ................................................................................................... 62
Object type ................................................................................................ 26
Objects Inherited From the SCIL_Object ................................................. 36
OI .............................................................................................................. 62
Open on job basis ..................................................................................... 61
Operating system ...................................................................................... 13
Output destination .................................................................................... 61
OV ............................................................................................................ 62
OX ............................................................................................................ 62
P
Pagecom ............................................................................................. 58, 62
Pagecom.class ..................................................................................... 59, 62
Parallel queues .......................................................................................... 58
Parent class ............................................................................................... 40
............................................................................................................ 21, 22
Passwords section ..................................................................................... 21
Peer Web-server ....................................................................................... 13
Picmeter.class ........................................................................................... 63
Picture cache ............................................................................................. 63
Picture cache size ..................................................................................... 62
Preload.java .............................................................................................. 53
Prg_name .................................................................................................. 23
Pri.txt ........................................................................................................ 61
Priinfo.class .............................................................................................. 61
Prilist.class ................................................................................................ 61
PRI-mapping ............................................................................................. 60
Printer
Number ............................................................................................... 61
Spooler queue length maximum ......................................................... 65
Spooler queue length used .................................................................. 65
Printermeter.class ..................................................................................... 65
Process object ........................................................................................... 39
Process printouts ....................................................................................... 65
Public BitSet getBitString() ...................................................................... 47
Public BitSet getBitString(int length) ...................................................... 41
Public boolean getBoolean() .............................................................. 41, 47
public boolean isConnected() ................................................................... 32
Public byte data(( ...................................................................................... 49
Public Date getTime() ........................................................................ 41, 47
Public Enumeration listAttributes() .......................................................... 48
public EventLog() ..................................................................................... 51
83
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
84
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
85
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
86
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Printouts .............................................................................................. 65
SCIL commands ....................................................................................... 24
SCIL data types ........................................................................................ 43
SCIL expression ....................................................................................... 34
SCIL Interface .......................................................................................... 24
SCIL package ..................................................................................... 27, 29
SCIL time ........................................................................................... 43, 47
Scil time .................................................................................................... 42
Scil time value .......................................................................................... 41
SCIL variable ............................................................................................ 34
SCIL_ EP_MESSAGE_SCIL .................................................................. 50
SCIL_ LIST _TYPE ................................................................................. 45
SCIL_ LIST_TYPE .................................................................................. 47
SCIL_ TIME _TYPE. ............................................................................... 44
SCIL_ VECTOR _TYPE ......................................................................... 45
SCIL_ALL_OBJECT_INDEX ........................................................... 34, 50
SCIL_BIT_STRING_TYPE ................................................... 43, 44, 46, 47
SCIL_BOOLEAN_TYPE ...................................................... 43, 44, 45, 47
SCIL_BYTE_STRING_TYPE ..................................................... 43, 44, 46
SCIL_Connection ......................................................................... 23, 24, 31
SCIL_Connection class ............................................................................ 22
SCIL_Context ............................................................................................. 8
SCIL_EP_MESSAGE_EP ....................................................................... 50
SCIL_EP_MESSAGE_EVENT ......................................................... 49, 50
SCIL_EP_MESSAGE_EXIT ................................................................... 50
SCIL_EP_MESSAGE_NONE ........................................................... 49, 50
SCIL_EP_MESSAGE_SCIL ............................................................. 49, 50
SCIL_FILE ............................................................................................... 21
SCIL_FreeTypeObject ....................................................................... 26, 41
SCIL_INTEGER_TYPE ........................................................ 43, 44, 45, 47
SCIL_Interface ............................................................................... 8, 23, 32
Scil_jni.dll ................................................................................................ 16
SCIL_LIST_TYPE ....................................................................... 43, 46, 48
SCIL_MAX_EP_MESSAGE_ARGUMENTS ........................................ 50
SCIL_Message ..................................................................................... 8, 50
SCIL_NO_TYPE .......................................................................... 43, 44, 47
SCIL_Object classes ................................................................................. 23
SCIL_REAL_TYPE ............................................................... 43, 44, 45, 47
SCIL_SSL_Connection ............................................................................ 32
SCIL_TEXT_TYPE ............................................................... 43, 44, 45, 47
SCIL_TIME_TYPE ...................................................................... 43, 46, 47
SCIL_Value .............................................................................. 8, 34, 45, 48
SCIL_Value object ............................................................................. 45, 46
SCIL_Values ............................................................................................ 43
SCIL_VECTOR_TYPE ......................................................... 43, 46, 47, 48
SCIL.* ...................................................................................................... 53
87
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
88
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
89
SYS 600 9.3 MicroSCADA Pro 1MRS756648
Java Programming Interface (Java-API)
Users Guide
90
1MRS756648 MicroSCADA Pro SYS 600 9.3
Java Programming Interface (Java-API)
Users Guide
Y
Y-axis ....................................................................................................... 66
Y-coordinates ........................................................................................... 55
91
Contact us
www.abb.com/substationautomation
1MRS756648 A/31.3.2010