Vous êtes sur la page 1sur 152

A 1

I.- TRABAJANDO CON INTOUCH

Para crear una nueva aplicacin en Intouch, seleccione Create Directory, o para seleccionar una aplicacin existente basta con hacer doble click sobre el nombre del archivo a abrir. Cuando se crea un directorio, tenemos la opcin de hacer varias pantallas dentro de est, al seleccionar el comando New Windows en el men File aparece el cuadro Windows Properties (propiedad de pantalla), tal como se indica a continuacin:

Donde se coloca el nombre de la pantalla con un mximo de 32 caracteres, se selecciona el color de fondo de la pantalla en Window Color, se definen las dimensiones de la pantalla, tambin se define la visibilidad o no del titulo de pantalla. Se puede ingresar a los Scripts, aplicacin que ser detallada mas adelante, luego de terminadas las propiedades de pantalla se presiona OK y se comienza a trabajar en la confeccin de la pantalla. Cuando se est dentro de una nueva pantalla aparece la barra de herramientas Toolbox, es una caja de herramientas con una coleccin de objetos grficos que son utilizados en la aplicacin. La caja de herramientas queda normalmente visible al abrir Window Maker.

A 2

La barra de herramientas es tal como se muestra a continuacin:

La primera lnea de herramienta es usada para crear objetos grficos, escribir nombres, seleccionar objetos, etc. Los cuales pueden ser mostrados o animados en el modo de trabajo Runtime. La segunda lnea cuenta con la herramienta Wizard. Al seleccionar est herramienta aparece un cuadro con elementos bsicos que se utilizan para hacer eficiente y rpido la construccin de las pantallas.

Basta con hacer doble click en el objeto seleccionado para que se de la opcin de colocarlo donde se requiera en la creacin de la pantalla, tambin se pueda variar su tamao y dar Configuracin de acuerdo a lo requerido en la construccin de la pantalla.

A 3

Encontrndose tambin en est cuadro opciones de grficos en tiempo real, histricos y ventanas de alarmas. Luego los componentes restantes de est lnea, son herramientas que permiten alinear, desagrupar, crear botoneras 3D con sus respectivos nombres, borrar, copiar, pegar, etc.

II.- MENU WINDOWMAKER

WindowMaker contiene una barra de men provista con numerosas funciones. Esta barra de men esta localizada en la parte superior de la pantalla y se puede acceder a ella solamente haciendo click sobre la opcin que se desea utilizar.

2.1.- Men File (archivo) El men archivo contiene un Set de comandos que se utilizan para crear, abrir, salvar, imprimir, cerrar, borrar, exportar e importar archivos, tambin se cuenta con Exit que es salir del programa.

Adems cuenta con WindowViewer que es un switch para cambio de WindowMaker a WindowViewer (pantalla de simulacin).

A 4

2.2.- Men Arreglar El men Arreglar contiene un conjunto herramientas tales como rotar en sentido del reloj y en contra, transformar el objeto seleccionado en imagen de espejo vertical u horizontal, combina varios objetos seleccionados en uno solo o viceversa, habilitar o desabilitar grid (grilla). Para usar cualquier de los comandos del men arreglar, seleccione l o los objetos donde el comando va a ser aplicado y entonces seleccionado el comando desde el men arreglar se aplica. Usted puede configurar el Toolbox para mostrar herramientas del men arreglar. Muchas de estas herramientas se incluyen en el toolbox. El Toolbox se configura por medio de Special / Configure.

2.3.- Men de Texto El Men de Texto es parte del Toolbox por lo tanto se maneja directamente de la barra de herramientas. 2.4.- Men de Lnea Los comandos de Men de Lnea se usan para cambiar el estilo y la anchura de lneas que son usada sobre objetos individualmente. Cualquier objeto seleccionado que contiene una lnea (es decir, crculos, cuadrados, polgonos, lneas, etc.) ser

A 5

modificado. Despus de seleccionar el o los objetos, y haciendo click sobre el tipo de lnea deseado que muestra en el men de lnea, esta ser cambiada. 2.5.- Men Especial El Men Especial contiene un conjunto de comandos y subcomandos permitiendo desempear funciones especiales tal como sustituir tagnames, strings, acceder al Diccionario de Tagname, cambiar los nombres DDE, etc. En este men se encontraran comandos tales como mostrar y quitar el Toolbox de la pantalla (Show/hide toolbox), Vnculos de Animacin (Animation Links), sustitucin de tagnames, sustitucin de string que son utilizados para cambiar el contenido de los String (botoneras), llamar el diccionario de definiciones de tagnames, crear nombres de grupos de alarmas o modificar viejos nombres de grupos, tambin se pueden crear subgrupos de alarmas, seleccionar el nombre de accesos DDE (Dynamic Data Exchange). Tambin existe el comando Configurar con el cual Intouch, provee la habilidad de personalizar completamente la funcionalidad y aspecto final de la aplicacin seleccionando varias opciones. Estas opciones se obtienen desde este comando. Por ejemplo, puede colocarse las opciones que impidan al usuario salir de WindowVewer, la barra de ttulo puede personalizarse para mostrar el nombre de compaa, la barra de men puede eliminarse, la tecla ALT puede estar incapacitado, etc.

A 6

El comando borrar tag inutilizados, permite mostrar una lista de todos los tagnames inutilizados en el Diccionario de Datos. Todos estos tagnames pueden borrarse desde la base de datos. Adems se incluye una lista de Script que son editores de lgica, los cuales pueden ser usados por los usuarios. Dependiendo de que Script se edita, la lgica puede implementarse (Aplicacin Script), cuando se selecciona el comando Script, los Scripts de Lgica son utilizados para crear simulaciones, contrasea de proteccin, clculos de sistemas de variables o cambio de ventanas debido a los cambios en el proceso de variables, etc. Ms adelante se profundizar ms sobre los Scripts. 2.6.- Men de Ventana El men de Ventanas contiene las Propiedades de Ventana y una lista de todas las pantallas que se encuentran abiertas. Haciendo Click sobre cualquier de los nombres de las pantallas har que las propiedades de la pantalla se active. 2.7.- Qu es el Diccionario Tagname? El diccionario de datos tagname es el corazn de Intouch. En orden crea la rutina de la base de datos, Intouch requiere informacin aproximadamente de todas las entradas/tags que son creados. Cada entrada se le debe asignar un tagname. Un tagname es un nombre simblico que se entra en el Diccionario de Tagname. Este nombre simblico puede entonces configurar valores min., max., alarmas, etc. y tambin se define como un tipo especfico, por ejemplo, un tag DDE. Este tag DDE puede llegar a ser entonces un link entre Intouch, el servidor de I/O y el mundo real. El Diccionario de Tagname es el mecanismo usado para ingresar esta informacin sobre la variables/entradas en la base de datos. En el modo Runtime, contiene el valor actual de todos los artculos en la base de datos. La creacin de la base de datos o el Diccionario de Datos puede realizarse usando tres diferente mtodos. El primer mtodo es la creacin de un manual donde usted accesa el tagname de diccionario y define cada tag individualmente hasta completar la base de datos. El segundo mtodo es el mtodo automtico donde usted crea un objeto grfico, asignando vnculos de animacin al objeto y el sistema

A 7

rpidamente define el tagname. El tercer mtodo es el mtodo externo donde usted usa el utilitario de Wonderware DB de Basurero y DB carga para transferir la base de datos desde una aplicacin de InTouch a otra aplicacin de InTouch. Si usted escoge el mtodo automtico o manual para crear la base de datos, aparece el cuadro de dialogo "Diccionario - TagName de Definicin". En el mtodo automtico el cuadro de dialogo aparecer una vez que se presiona OK, cuando pide definir los tagnames, asignando despus los vnculos de animacin del objeto. Para acceder al cuadro de dilogo cuando se usa el mtodo manual de creacin, primero se selecciona Special/Tag Name Diccionary.

Details Seleccione este botn para mostrar el cuadro de dilogo usado para ingresar los detalles del tipo especfico de tag. El inicialmente cuadro de dialogo Dctionary Tag Name Definition es usado para ingresar la informacin bsica con respecto a un tagname. Muchos puntos, especialmente entradas y salidas, requieren grandes detalles. Para cada tipo de tagname especificado, existe un cuadro de dialogo Details especifico para ingresar el detalle del tipo de tagname. Cuando un tipo de tagname es seleccionado, aparece automticamente un cuadro de dialogo Details

respectivamente. Si el cuadro de dilogo "Details" para la definicin del tagname actualmente mostrado en pantalla no aparece, seleccione Details en la parte superior del cuadro.

A 8

Alarms Seleccione este botn para definir la condicin de alarma del tagname. Cuando definimos un tagname anlogo (entero o verdadero), el siguiente cuadro de dilogo se usa para seleccionar tipos de alarmas y entrar sus valores. Los valores de campos ingresados para cada tipo de alarma no aparecern hasta que un tipo de alarma sea habilitado por un click en su respectivo cuadro de chequeo como se muestra ms adelante:

Both Seleccione este botn para mostrar ambos cuadros de dilogos details y alarms simultneamente. El siguiente es un ejemplo como la pantalla se ver cuando un tagname "Memoria Real" est siendo definido y este botn se selecciona:

A 9

None Seleccione este botn para remover el cuadro de dilogo details y/o alarms desde la pantalla. 2.7.1.- Ingresar Campos, Botones y Permitir al Usuario Opciones de Entrada...

A 10

Tag Name: Ingrese el nuevo tagname en este campo. Los Tagnames pueden ser hasta un largo de 32 caracteres y el primer carcter debe ser A-Z o a-z y puede seguirse con AZ, a-z, 0-9,! , Q, -,? , #, $ , %, _ y &.

Comment:

Los Comentarios son opcionales, pero pueden ser mostrados en una

Ventana de Alarma. Ingrese cualquier informacin opcional para documentar el tagname en este campo (hasta 50 - caracteres). (Estos comentarios pueden mostrarse en ventanas de alarmas.)

Hacer click sobre este botn para acceder al Escoger tipo de Tag..., el cuadro de dilogo selecciona el tipo de tagname:

Hacer click sobre este botn para acceder al cuadro de dilogo Escoger Grupo de Alarmas... para asignar el tagname a un grupo de alarmas especfico o crear un nuevo grupo de alarma. Read only Seleccione este botn para restringir a WindowViewer para que solamente sea capaz de leer el valor del tagname. Read Write Seleccione este botn para permitir a WindowViewer leer/escribir de/desde el valor del tagname.

A 11

Log Data Registra automticamente el tagname en el archivo Histrical Log cada vez que sus valores de unidades de ingeniera cambien, especificado Deadband. ms el valor del Registro

Log Events Priority

999

Registra todos los cambios de valores del tagname que fueron establecidos por el operador, DDE, un script o por el sistema. Cuando esta opcin es habilitada, el campo de Prioridad aparecer. El valor ingresado en la Prioridad determina la preferencia de nivel del suceso para el tagname. Las entradas vlidas en este campo son de 1 a 999 donde 1 es la ms alta prioridad y 999 es la ms baja.

Retentive Value Esta opcin es usada para retener el valor actual del tagname. Este valor, entonces es usado como el valor inicial para el tagname cuando WindowViewer se reinicie.

Retentive Parameters No vara los cambios del valor de cualquier campo de alarma para el tagname. Este valor se usar como el valor inicial para las alarmas cuando WindowViewer es reiniciado. 2.8.- Tipos de Tag Cada tagname debe ser asignado a un tipo especfico segn el uso del tagname. Por ejemplo, si el tagname es para leer o escribir valores que vienen desde otra aplicacin de Windows tal como un servidor DDE, este debe ser un tag tipo DDE. Se debe considerar si el Tag esta representando una seal Discreta, que es un solo bit (tal como una sola entrada del PLC) o una seal Anloga (tal como un registro de 16, 32, o 64 bits). Los tag analgicos son separados en dos de tipos, Enteros y Reales. A

continuacin se describe cada tipo de tag y su uso respectivo.

A 12

2.8.1.- Tagname tipo Memoria Estos tipos de tag existen solamente dentro del programa Intouch. Ellos pueden usarse para crear constantes de sistema, demostraciones y simulaciones. Estos tambin son tiles en la creacin de clculos de variables para ser accesados en otros Programas de Windows. Por ejemplo, si un tagname de memoria real es creado llamado PI, podra asignarse a l, el valor inicial de 3.1416; o las frmulas podran almacenarse en grupos de tagname de memoria. En simulaciones; los tagnames de memoria pueden usarse para controlar las acciones de unos antecedentes de script. Por ejemplo un tagname de memoria "STEP" podra ser cambiado con una accin presionando un botn Script para provocar varios efectos de animacin. Hay cuatro tipos de Memoria:

Memory Discrete Tagname Discreto Interno con un valor de O (Falso, Fuera) o 1 (Verdadero, Habilitado).

Memory Interger Es asignado un valor entero de 32 bit entre -2,147,483,648 y 2,147,483,647.

Memory Real Tagname de memoria con punto flotante (decimal). El valor del punto flotante puede estar entre 3.4e38. Todos los clculos del punto flotante se realizan con 64 bit de resolucin, pero el resultado se almacena en 32 bit.

Memory Message El Texto del tagname de una fila puede ser de un largo de 131 caracteres. 2.8.2.- Tagname tipo DDE Todos los tagnames que leen o escriben sus valores hacia o desde otro programa de Wndows son Tagname DDE. Esto incluye todas las entradas y salidas desde

controladores programables, procesos de computadoras, otros programas de Windows y

A 13

datos desde nodos de red. Los Tagnames DDE se ingresan por medio del Protocolo Dynmic Data Exchange (DDE) de Microsoft. Cuando el valor del tagname DDE de lectura/escritura cambia, ste es inmediatamente escrito en la aplicacin remota por medio de DDE. El tagname tambin puede ser actualizado desde la aplicacin remota cuando el item al cual el tagname es vinculados cambia a la aplicacin remota. Por defecto Leer / Escribir es un conjunto de todos los tagnames DDE. Sin embargo, ellos pueden restringirse para Leer solamente al seleccionar el botn Read Only en el cuadro de dilogo Diccionary Tag Name Definition. Hay cuatro Tipos de DDE:

DDE Discrete Tagname de entrada/salida discreta con un valor entre 0 (Falso, Off) o 1 (Verdadero, On).

DDE Integer Es asignado un valor entero de 32 bits entre 2,147,483,648 y 2,147,483,647. DDE Real Tagname de memoria con punto flotante (decimal). El valor del punto flotante puede estar entre 3.4e38. Todos los clculos del punto flotante se realizan con 64 bit de resolucin, pero el resultado se almacena en 32 bit.

DDE Message El Texto del tagname de una fila puede ser de un largo de 131 caracteres. 2.8.3.- Tagnames de Tipo Miscelneo Estos son un tipo de tags especiales que son asignados a tagnames que realizan funciones complejas, tal como mostrar despliegues de alarmas dinmicas, histricos, monitoreo y / o cambio del tagname en cada trazado histrico que es dibujado y tagname indirectos que permiten reasignar los tagname a mltiples fuentes. Estos tipos de tags son los siguientes:

A 14

Group Var Este tipo de tag es asignado a un tagname que tenga el nombre de un Grupo de Alarma asignado a l. Esto es muy til en hacer despliegues de alarma, registros de discos e imprimir dinmicamente los registros. Las ventanas de alarmas o registros de alarmas pueden configurarse para mostrar todas las alarmas asociadas con un Group Var. Mediante asignacin un grupo de Alarma diferente al nombre del Grupo de Variable, la seleccin de alarmas a mostrar o a registrar puede ser controlada. Un tagname de Group Var puede usarse para crear un botn que selectivamente muestre las alarmas de diferentes partes de una planta en la misma Ventana de Alarma. Todos los campos asociados con los Grupos de Alarma pueden ser aplicados a Group Var.

Hist Trend Este tipo de tag es asignado a un tagname para ser usado como un diagrama Histrico de Tendencia. Cuando configuramos un mapa Histrico de Tendencia,

InTouch requiere que un tipo de tagname HistTrend sea asignado a un grfico.

Tag ID Este tipo de tag es usado para obtener informacin sobre los tagnames que estn siendo registrados en un mapa de Tendencia Histrica. El uso ms comn es mostrar el nombre del Tagname de la tendencia. Por ejemplo, Pen4 de un mapa Histrico de Tendencia se muestra la tendencia del tagname "Analog1". Una ventana puede ser creada con un campo de salida que muestra el tagname actualmente asignado a Pen4.

Indirect Discrete

Indirect Analog

Indirect Messaga

El tagname de tipo Indirecto permite al operador crear una de ventana y reasignar el tagname en esa ventana a mltiples fuentes. Por ejemplo, uno Cambio de

A 15

Datos de Script pueden ser creado para cambiar la fuente de todos los tagnames en una ventana basado sobre el cambio de un valor. Cuando un tag indirecto es igual a otro tag de fuente, ambos llegan a ser iguales el uno al otro en cada aspecto. Por ejemplo, campos, scripts, etc., si el valor del tag de fuente cambia, en el tag indirecto se reflejar el cambio. Si el valor del tag indirecto cambia, el tag de fuente cambia consiguientemente. Los valores del tagname indirecto pueden establecer en la base de datos como retentivo y tambin se pueden modificar. Esto les permite tomar su ltima asignacin de tagname en la partida. 2.9.- Tagnames Placeholder Cuando una ventana es importada o es exportada a una aplicacin, todos los tagnames asociados con la ventana son transferidos con la ventana, pero no son agregados a la nueva base de datos de aplicacin. Ellos sern automticamente cambiados en el tagnames "placeholder" (ndice) y deben ser convertidos y definidos por la nueva aplicacin. 1. Para convertir el tagnames, seleccione el comando /Edit/Select All (F2) luego el comando /Special/Substitute All Tags...(Ctrl+U). El cuadro de dilogo Sustitute Tag Names... aparecer listando todos los tagnames usados por todos los objetos en la ventana:

2. Note el " ?d: " , " ?h: " , etc. que precede el tagnames, estos son "placeholders". La letra "d" indica que el tagname se defini originalmente como un tipo "discreto", la

A 16

"h" indica un HistTrend, etc. haciendo Click sobre el botn Convert se remover automticamente el placeholders: 3. Una vez que los tagnames son convertidos, haga click sobre OK. Si el tagname no existe en la actual base de datos de la aplicacin, el siguiente cuadro de mensaje aparecer verificando la creacin del nuevo tagname:

4. Haciendo Click sobre OK permitir que el cuadro de dilogo Diccionary - Tag Name Definition aparezca y el tagname pueda definirse y agregarlo a la base de datos de la actual aplicacin.

2.10.- Qu son los Links (Vnculos)? Una vez que un objeto grfico o el smbolo se ha creado, ste puede ser animado uniendo vnculos de animacin a l. Los vnculos de animacin permiten que el objeto, smbolo o celda cambien su apariencia reflejando los cambios en el valor de una variable de la base de datos del tagname. Por ejemplo, el smbolo de una bomba puede ser de color rojo cuando esta apagada y de color verde cuando est encendida. El smbolo de la bomba tambin puede ser encendida por un pulsador que se usa para encender y apagar la bomba cuando se pulse. Estos y muchos otros efectos de animacin son obtenidos cuando se definen los vnculos de animacin para un objeto o smbolo seleccionado. Conjuntamente con los tagnames, algunos vnculos de animaciones tambin permiten el uso de expresiones lgicas usados para calcular variables (por ejemplo integer1 + 100, discretel AND discrete2 AND NOT discrete3, etc.).

A 17

2.10.1.- Uniendo y Seleccionando un Vnculo Cuando un objeto se selecciona y el comando /Special/Animation Links... se ejecuta hay dos cuadros de dilogo que siempre aparecen; el "Item Description" y el "Links selection". Ambos cuadros de dilogo son descritos ms adelante. Nota: Haciendo Doble click sobre el que objeto deseado se llama directamente la pantalla de los Links de Animacin.

A continuacin se describe cada campo en el cuadro previo de dilogo: Prev Link y Next Link Si varios vnculos han sido adjuntos al objeto, estos dos botones pueden usarse para avanzar y retroceder rpidamente mediante el cuadro de dilogo de detalle para cada Links adjunto al objeto sin salir del cuadro de dilogo de Vinculo de Animacin. Nota: En un objeto o smbolo pueden tener mltiples links definidos. La

capacidad para combinar los vnculos de animacin provee la capacidad para crear casi cualquier animacin de pantalla y efecto imaginable. Horizontal/Vertical Loc. Width/Height Corresponde a la ubicacin Horizontal y Vertical como tambin al Largo y Alto del objeto expresado en pixeles de la pantalla.

A 18

Este cuadro de dilogo se usa para seleccionar el Link (s) deseado (s) para el objeto, haciendo click sobre el botn con el nombre del links. Haciendo Click sobre el cuadro de chequeo, solamente selecciona o deshabita el links. Haciendo Click sobre el botn del nombre del links selecciona y permite que aparezca el especfico cuadro de dilogo de definicin de detalle para el links.

Informacin comn del Links... La Paleta de Seleccin de Color: El cuadro de seleccin de color aparece cuando un color de links est siendo unido para animar el color de la lnea, llenado de color, (y/o para atributos de color de texto de un objeto). El cuadro de seleccin de color ofrece una cantidad de 32 colores. La primera columna (desde la izquierda) muestra los ocho colores slidos primarios. Las tres columnas que quedan muestran los ocho colores slidos o colores derivados dependiendo de la tarjeta de grficas instalada en la computadora. Asignando una tecla a un Vinculo de Animacin: Una Tecla especfica o combinacin de teclas en el teclado pueden ser asignado para activar ciertos links, cuando la tecla se presiona en WindowViewer. La tecla equivalente es solamente operacional cuando el objeto con el link es visible. Si una tecla se define en ventanas mltiples, la definicin en la ventana abierta ms recientemente ser la que se active primero. Para asignar una tecla, haga click sobre el botn Key... en el cuadro de dilogo de detalle de animacin. El cuadro de dilogo "Choose Key... " aparecer rpidamente para que usted seleccione la tecla deseada.

2.10.2.- Cuadro de dilogo Choose Name... Haciendo doble - click sobre Blank Tag Name o Expression, entre el campo en el cuadro de dilogo de detalle de links de animacin que ocasionar que aparezca el cuadro "Choose Name...", rpidamente usted puede seleccionar el tagname deseado que ha sido previamente ingresado en la base de datos. Haciendo doble - click sobre un

A 19

nombre se remueve el cuadro de dilogo y se inserta el nombre seleccionado en el tagname o campo de expresin en el cuadro de dilogo.

2.11.- Qu Links estn disponibles?

Touch Links Touch Link convierte cualquier objeto o smbolo en un botn de accin. Un botn de accin puede ser activado al presionar el botn del mouse sobre l, tocando la imagen en la pantalla (si la pantalla es sensible al tacto), presionando alguna letra asignada o presionando la tecla [Enter (s el objeto est marcado alrededor). Hay nueve de tipos de Touch Links que pueden ser definidos, que se describen a continuacin.

Nota: Si el objeto o smbolo utilizado para estos vnculos contiene un campo de texto, todos atributos diseados para el texto aparecern cuando el objeto aparezca en el modo Runtime. El valor de salida que usted haya ingresado ser mostrar en el campo de a menos que la opcin Input Only sea habilitada en el cuadro de dilogo de Details.

A 20

Valor Slider Touch Links El Slider (Deslizador) Touch Links se usa para crear un objeto o smbolo que pueda moverse con el mouse. Como el objeto o smbolo se mueve, este altera el valor de una variable vinculada a l. Esto permite la capacidad de crear dispositivos para colocar valores en el sistema. Un objeto puede ser un Slider Horizontal, un Slider Vertical, o ambos. Para usar ambos Link sobre un objeto nico, el valor de las dos variables anlogas pueden ser cambiadas simultneamente.

Vnculos con Touch Pushbutton Los Touch Pushbutton son vnculos de objeto que ejecutan inmediatamente una operacin cuando son activados. Estas

operaciones pueden ser cambios de Valores Discreto (Discrete Value), ejecucin de Script (Action), mostrar Ventanas (Show Window) u Ocultar Ventanas (Hide Windows).

Vinculo de Colores Los vnculos de Colores permiten la animacin de atributos de color de lnea, llenado, y/o texto de un objeto. Cada uno de estos atributos pueden ser creados dinmicamente al definir un color vinculado al atributo. El atributo de color puede vincularse al valor de una expresin discreta, expresin anloga, condicin discreta de alarma o condicin anloga de alarma.

A 21

Vnculos de Colores de Objetos a Estados de Alarma El color de texto, lnea, y llenado de un objeto pueden ser vinculados al estado de alarma de un Tagname, Group Name, o Group Variable. Hay dos tipos bsicos de alarmas orientados al color. El primero es el Estado del tag de Alarma Discreta (Discrete Alarm) que puede usarse con cualquier tipo de variable. El segundo tipo es el Estado de Alarma Anloga (Analog Alarm) que es nicamente aplicable a las variables de tipo anlogas. [Value Alarm Color Link] Provee la capacidad para seleccionar hasta cinco diferente colores basados en los lmites de alarma definidos para ese tagname. [Deviation Alarm Color Link] Proveen la capacidad para seleccionar hasta tres diferente colores dependiendo de los estados de las alarmas de desviacin que se definen para el punto. [Rate-Of-Change Alarm Color Link] Provee la capacidad para seleccionar dos colores diferentes dependiendo del estado de la razn de cambio de la alarma definido para el punto.

Vnculos del Tamao del Objeto Este vinculo se usa para variar la altura y/o ancho de un objeto segn el valor de una expresin analgica. Provee la

capacidad para controlar la direccin en que el objeto se agranda en altura y/o anchura seteando el Anchor (Top, Middle, o Botton) del vinculo. Ambos vnculos, de anchura y altura, pueden ser usados en el mismo objeto.

Vnculos de Localizacin Este vinculo se usa para hacer que un objeto se mueva horizontalmente, verticalmente, o en ambas direcciones

automticamente con respecto a cambios en el valor de una expresin.

A 22

Vnculos del Porcentaje de Llenado Este vinculo provee la capacidad para variar el nivel de relleno de una forma o un smbolo que se llenan segn el valor de una expresin analgica. Por ejemplo, este vinculo puede usarse para mostrar el nivel de lquidos en una embarcacin. horizontal, vertical, o ambos. Vnculos Miscelneos Existen cuatro vnculos miscelneos, Visibility, Blink, Un objeto o smbolo puede ser llenado en forma

Orientation y Disable. Los vnculos de visibilidad controlan la visualizacin de un objeto dependiendo del valor de un tagname discreto o expresin. Este vinculo puede usarse para hacer que aparezcan y desaparezcan objetos. Los vnculos Blink proveen la capacidad para hacer que un objeto parpadee de acuerdo al valor de un tagname discreto o expresin. (Cada uno de los atributos de color del texto, Lnea y relleno pueden ser seleccionado para que un objeto parpadee). Los vnculos de orientacin proveen la capacidad para hacer que un objeto gire sobre un eje especificado de acuerdo al valor de un tagname o expresin. El vinculo Disable provee la capacidad de impedir a un usuario particular o un grupo de usuarios tener acceso a presionar un botn en particular si sus AccessLevel no es lo suficientemente alto por ejemplo (si el vinculo disable es verdadero, el texto sobre el botn 3-d no se destacar indicando que esta desabilitado). Vnculos de valores de salida Estos vnculos proveen la capacidad para usar un texto objeto para mostrar el valor de una variable discreta (Discrete), anloga (Analog), o alfanumrica (String).

A 23

III.- Men WindowViewer 3.1.- Men File El men File de WindowViewer es muy similar a cualquier men de una aplicacin en comn. Permitiendo abrir, cerrar, salir, etc. ventanas de la aplicacin.

3.2.- Controlador Logic El Men de Logic contiene los comandos de partida (Start Logic) y parada (Stop Logic) de la ejecucin de los scripts que se crearon en el WindowMaker. 3.3.- Men Special Este men de WindowViewer contiene los comandos que son utilizados para iniciar o reiniciar conversaciones DDE, reanudar Registros de Alarmas, iniciar/detener registros Histricos y accesar al Wonderware Logger para ver informacin de error.

A 24

3.4.- /Special/Security Los comandos de seguridad de este men son usados para iniciar y cerrar la aplicacin, cambiar passwords o contraseas y para configurar la lista de usuarios, passwords y niveles de acceso. Cuando este comando es seleccionado aparece un men secundario de comandos:

La seguridad ser discutida ms adelante. 3.5.- Development! Este es un interruptor rpido que cambia a la aplicacin WindowMaker. Este es habilitado en WindowMaker usando el comando \Special\Configure\WindowMaker. 3.6.- Diseo de Scripts en InTouch La variedad de scripts de Wonderware expande las capacidades de InTouch para proporcionar la ejecucin de comandos y operaciones lgicas segn las necesidades. Por ejemplo presionar una tecla, abertura de ventanas, cambio de valores, etc. Al usar Scripts, se pueden crear una gran variedad de funciones y sistemas automticos personalizados. Existen seis tipos de Scripts disponibles: Scripts de Aplicacin Scripts de Ventanas

A 25

Scripts de Teclas Scripts de Condiciones Scripts de Cambio de Datos Scripts de Accionamiento de Botones (Touch Pushbotton)

Los comandos para crear estos Scripts (a excepcin del Accionamiento de Botones) se ubican en el men /Special/Scripts.

3.7.- Scripts de Aplicacin Los Scripts de Aplicacin son vinculados a una aplicacin completa y se pueden usar para correr otras aplicaciones, crear simulacin de procesos, clculo de variables. Al seleccionar este comando aparece el siguiente cuadro de dilogo:

A 26

On Startup permite crear un Script que se ejecute una vez cuando la aplicacin comienza. While Running crea un Script para que se ejecute continuamente cada cierta cantidad de tiempo mientras corre una aplicacin. Este tiempo se ingresa en milisegundos. On Shutdown ejecuta el Script una vez que la aplicacin termina. Una vez que el botn Script es presionado, aparecer en pantalla el cuadro de dilogo de seleccin de script. Nota: Los tres tipos de scripts pueden ser utilizados en una misma aplicacin. Un Script While Running se ejecutar despus de transcurridos el tiempo establecido. Para una ejecucin inmediata se debe crear un script On Starup.

3.8.- Script de Ventana Estos tipos de scripts son vinculados a una ventana especfica. La seleccin de este comando causar la aparicin de la ventana de dilogo Window Action Script for Nombre de Ventana

On Show permite crear un Script que se ejecute una vez cuando la ventana se abre por primera vez.

A 27

While Showing crea un Script para que se ejecute continuamente cada cierta cantidad de tiempo mientras la ventana est abierta. Este tiempo se ingresa en milisegundos. On Hide ejecuta el Script una vez que la ventana se cierra. Una vez que el botn Script es presionado, aparecer en pantalla el cuadro de dilogo de seleccin de script. Nota: Los tres tipos de scripts pueden ser utilizados en una misma ventana. Un Script While Showing se ejecutar despus de transcurridos el tiempo establecido. Para una ejecucin inmediata se debe crear un script On Show.

3.9.- Script de Teclas Estos tipos de scripts son vinculados a una tecla especfica del teclado. Pueden muy tiles para crear teclas globales para la aplicacin, por ejemplo, volver a una ventana del men principal, salida del operador (log off). Seleccionando este comando aparecer el cuadro de dilogo Keyboard Action Script:

On Key Down permite crear un Script que se ejecute una vez cuando la tecla inicialmente es presionada por primera vez. While Down crea un Script para que se ejecute continuamente cada cierta cantidad de tiempo mientras la tecla est presionada. Este tiempo se ingresa en milisegundos.

A 28

On Key Up ejecuta el Script una vez que la tecla es dejada de presionar. Una vez que el botn Script es presionado, aparecer en pantalla el cuadro de dilogo de seleccin de script. Nota: Los tres tipos de scripts pueden ser utilizados en una misma ventana. Un Script While Down se ejecutar despus de transcurridos el tiempo establecido. Para una ejecucin inmediata se debe crear un script On Key Down. Nota especial: Si un objeto o botn de accin en la ventana activa (abierta) es asignado a una misma tecla usada para un Script de teclas, el vnculo en la tecla de la ventana tendr preferencia sobre la ejecucin del Script.

3.10.- Scripts de Condiciones Estos Scripts estn vinculados a un tagname o expresin discretos. Cuando este comando es seleccionado aparecer el cuadro de dilogo Condition Action Script:

On True ejecuta un Script una vez cuando la condicin pasa a ser verdadera. On False se ejecuta cuando la condicin pasa a ser falsa. While True ejecuta el Script continuamente a una

frecuencia especificada mientras la condicin es verdadera. While False ejecuta el Script continuamente a una frecuencia especificada mientras la condicin es falsa.

A 29

Nota: El valor para la condicin debe pasar a la transicin verdadera o falsa antes de que el Script se ejecute. Por ejemplo, si el valor inicial cuando parte el WindowViewer es verdadero, el valor debe transformarse en falso y nuevamente a verdadero para que se ejecute un Script On True.

Establece el tiempo (en milisegundos) en que los Scripts While True y While False se ejecutarn en forma repetitiva. Una vez que un botn de Script es pulsado aparecer en pantalla el cuadro de dilogo del Script. Nota: Los cuatro tipos de Scripts pueden ser usados a la misma condicin. Ambos Scripts, While True y While False, se ejecutarn despus de transcurridos el tiempo en milisegundos establecido. Para una ejecucin inmediata, se crea o se crean los Scripts On True y/o On False. Nota Especial: Los tagnames que son modificados (escritos) en un Script de Condicin o Script de Cambio de Dato, no deberan ser usados como el tagname para un Script de Cambio de Datos o en la expresin de un Script de Condicin. Ejemplo, un Script de Cambio de Dato ejecuta un valor A cambiando el contenido lgico de B=B+1. El tagname B no debera ser usado cono el tagname para un Script de Cambio de Dato o ser parte de la expresin de un Script de Condicin.

3.11.- Scripts de Cambio de Datos Estos Scripts se vinculan a un tagname o tagname field. Se ejecuta una vez cuando el valor del tagname o campo de un tagname cambien por un valor mayor que la banda muerta (dead band) definida para l, el tem /point en el Tagname Dictionary.

A 30

Nota Especial: Los tagname que son modificados en un Script de Condicin o Script de Cambio de Dato no deben ser usados con el tagname para un Script de Cambio de Datos o en la expresin de un Script de Condicin.

3.12.- Scripts de Accionamiento de Botones Estos Scripts son vinculados a un objeto tipo Botn. Cuando el operador presione el botn el Script de Accionamiento es ejecutado. Seleccionando un vnculo de animacin usando un Botn de Accin aparecer el cuadro de dilogo Touch Script. Action

On Key Down permite crear un Script que se ejecute una vez cuando el objeto inicialmente es presionado. While Down crea un Script para que se ejecute continuamente cada cierta cantidad de tiempo mientras el objeto est presionado. Este tiempo se ingresa en milisegundos. On Key Up ejecuta el Script una vez que el objeto se deja de presionar. Una vez que el botn Script es presionado, aparecer en pantalla el cuadro de dilogo de seleccin de script. Nota: Los tres tipos de scripts pueden ser utilizados al mismo botn. Un Script While Down se ejecutar despus de transcurridos el tiempo establecido. Para una ejecucin inmediata se debe crear un script On Key Button Down.

A 31

3.13.- Ingreso de la Operacin Lgica En la mayora de los casos, una vez que el tipo de Script es seleccionado en su respectivo cuadro de dilogo, aparecer tambin el siguiente cuadro de dilogo en la pantalla:

Significado de cada uno de los Botones

Pulsando alguno de estos botones aparecer la palabra escrita de ellos. Pulsando alguno de estos botones de equivalencia o matemtica ingresa la funcin correspondiente a l.

A 32

El texto seleccionado (resaltado) es eliminado del Script. El texto eliminado no es guardado en la carpeta de Windows.

El texto seleccionado (resaltado) es borrado del Script. El texto cortado es guardado en la carpeta de Windows. El texto seleccionado (resaltado) es copiado a la carpeta de Windows. El texto copiado no es borrado del Script.

Pega el contenido de la carpeta de Windows en la posicin del cursor en el Script. Se devuelve a la ltima operacin de edicin. Remueve el primer carcter tabulado a la izquierda de la posicin del cursor. Inserta una tabulacin a la derecha de la posicin del cursor.

Borra completamente el texto del Script. (El Script no es borrado de la aplicacin). Valida el Script ingresado. Si existen errores aparecer el correspondiente cuadro de mensaje.

Aparece en pantalla los tpicos de ayuda de WindowMaker para todas las funciones del editor de Script. Pulsando este botn aparecer el cuadro de dilogo Reemplazar:

A 33

Funciones especficas estn creadas internamente en el sistema y pueden ser seleccionadas e insertadas al Script seleccionando uno de esos botones. Al seleccionar uno de ellos aparecer el cuadro de dilogo Choose Function.

A 34

A 35

A 36

A 37

Esta funcin entrega el valor absoluto de un nmero especfico(el equivalente sin signo). Ejemplo:

ResultNumericTag= Abs(InputNumericTag);

En esta instruccin el valor absoluto del NumericTag es calculado y dado como ResultNumericTag.

Esta funcin puede ser usada en un botn para reconocer cualquier alarma desconocida. Esta funcin puede ser aplicada a un tagname, Grupo de Alarmas o Grupo de Variables. (Un Grupo de Variables es un tagname que tiene el nombre de algn Grupo de Alarma asignado a l.) Ejemplo:

A 38

Ack $System; (Reconoce todas las alarmas) Ack Tagname; Ack GroupName; Ack GroupVariable;

Esta funcin activa otra aplicacin en Windows que est ejecutando. Ejemplo: ActivateApp Title Text;

Title Text es la palabra o texto exacto, incluyendo espacios, que aparece en la Lista de Tareas. Ejemplo: ActivateApp Microsoft Excel;

Nota: El Title Text o aplicacin a activar debe estar entre comillas.

Entrega la funcin arco coseno expresado en grados entre 0 y 180. Ejemplo: ResultNumericTAg=ArcCos(InputNumericTag) Ejemplo: ArcCos(1) estregar el valor 0 ArcCos(-1) entregar el valor 180

Entrega la funcin arco seno expresado en grados entre -90 y 90. Ejemplo: ResultNumericTAg=ArcSin(InputNumericTag)

A 39

Ejemplo: ArcSin (1) estregar el valor 90 ArcSin(-1) entregar el valor -90

Entrega la funcin arco tangente expresada en grados entre -90 y 90. Ejemplo: ResultNumericTAg=ArcTan(InputNumericTag) Ejemplo: ArcTan (1) estregar el valor 45

ArcTan (0) entregar el valor 0 Entrega el coseno de un ngulo en grados. Ejemplo: ResultNumericTAg=Cos(InputNumericTag) Ejemplo: Cos (90) estregar el valor 0 Cos(0) entregar el valor 1

Esta funcin cambia en forma dinmica un tagname de mensaje basado en un tagname de una variable discreta. Ejemplo: MsgTag=DText(Discrete, OnMessage, OffMessage);

MsgTag es un tagname tipo mensaje, Discrete es un tagname tipo discreto, OnMessage es el mensaje que aparecer cuando el valor de Discrete es 1(True, On, Yes, S). El mensaje se convertir en OffMessage es el mensaje que aparecer cuando

A 40

el valor de Discrete es 0(False, Off, No). (Los mensajes de estado On y off deben estar entre comillas)

Esta funcin entrega el valor de la potencia de . Ejemplo: ResultNumericTag=Exp(InputNumericTag) Ejemplo: Exp(1) dar el valor 2.71828182..........

El rango de esta funcin es entre -88.72 hasta 88.72

Esta funcin es usada para copiar un archivo fuente a un archivo destino, similar al comando de DOS o la funcin de copiado en el administrador de archivos.

FileCopy(SourceFile, DestinationFile, MonitorTag); donde: SourceFile - nombre del archivo fuente (incluyendo la ruta completa) DestinationFile - nombre del archivo destino (incluyendo la ruta completa) o nombre del directorio. MonitorTag - Nombre de un tag que usar el comando FileCopy() para informar el progreso del copiado. Este parmetro debe tener un caracter referenciando el nombre del tag(no el mismo nombre del tag). Si el tag monitor se llama Monitor, se debe agregar Monitor o Monitor.name, no Monitor. Cuando la funcin FileCopy() es usada, sta automticamente arroja un valor 1 si el procedimiento fue iniciado exitosamente. 0 si existe otro procedimiento en ejecucin (el nuevo procedimiento no podr ser inicializado) 1 si existe un error. Usando estos valores, la inicializacin de FileCopy() puede ser monitoreada:

A 41

Status=FileCopy(C:\*.TXT, C:\BACKUP,Monitor);

donde: Status es un tag entero el cual puede ser 1, -1 0. FileCopy() es ejecutado en segundo plano lo cual no interfiere en la operacin de InTouch. El propsito del MonitorTag es permitir que el progreso de copiado sea monitoreado por una aplicacin o un usuario. De esta forma, el usuario puede ser alertado de errores que puedan ocurrir DESPUES que el procedimiento sea inicializado. Este es diferente que el valor Status descrito recientemente, el cual indica procedimiento ha sido iniciado exitosamente. Una vez que el copiado ha sido exitosamente iniciado, el valor del MonitorTag es entonces asignado. El valor est en 0 mientras el procedimiento est an en progreso. Es 1 cuando se complet exitosamente -1 si hay un error antes de que sea completado normalmente, SourceFile y DestinationFile son nombres de archivos. Sin embargo, si un archivo es copiado con FileCopy, el destino tambin puede ser un directorio, como muestra el siguiente ejemplo: si el

FileCopy(C: \DATA.TXT, C: \BACKUP, Monitor);

El tag Monitor ser 1 cuando la copia sea realizada por completo. Si SourceFile contiene varios archivos, sin embargo, el destino DEBE ser un directorio. En caso contrario la funcin dar un cdigo de error. Ejemplo: FileCopy(C: \*. TXT, C: \BACKUP, Monitor); El tag Monitor ser 1 cuando la copia sea realizada por completo.

Esta funcin es FileDelete(Filename). Ejemplo:

usada para borrar archivos indexados o innecesarios.

A 42

Status=FileDelete(C:\DATA.TXT)

Si el o los archivos son encontrados y borrados, la funcin estar en 1. En caso contrario en 0.

Similar a FileCopy(), excepto que esta funcin mueve archivos de un lugar a otra en vez de hacer una copia.

FileMove(SourceFile,DestinationFile,MonitorTag); donde: SourceFile - nombre del archivo fuente (incluyendo la ruta completa) DestinationFile - nombre del archivo destino (incluyendo la ruta completa). MonitorTag Nombre de un tag que usar el comando FileMove() para informar el progreso del movimiento. Este parmetro debe tener un caracter referenciando el nombre del tag(no el mismo nombre del tag). Si el tag monitor se llama Monitor, se debe agregar Monitor o Monitor.name, no Monitor. Cuando la funcin FileMove() es usada, sta automticamente arroja un valor 1 si el procedimiento fue iniciado exitosamente. 0 si existe otro procedimiento en ejecucin(el nuevo procedimiento no podr ser inicializado) 1 si existe un error. Usando estos valores, la inicializacin de FileMove() puede ser monitoreada:

Status=FileMove(C:\DATA.TXT,C:\BACKUP\DATA.TXT,Monitor); donde: Status es un tag entero el cual puede ser 1, -1 0. FileMove() - es ejecutado en segundo plano y no interfiere en la operacin de InTouch. MonitorTag - permite que el progreso de copiado sea monitoreado por una aplicacin o un usuario, el usuario puede ser alertado de errores que puedan ocurrir DESPUES que el procedimiento sea inicializado. Este es diferente que el valor Status descrito recientemente, el cual indica si el procedimiento ha sido iniciado exitosamente.

A 43

Una vez que el movimiento ha sido exitosamente iniciado, el valor del MonitorTag es entonces asignado. El valor est en 0 mientras el procedimiento est an en progreso. Es 1 cuando se complet exitosamente -1 si hay un error antes de que sea completado. Si el SouceFile y DestinationFile se encuentran en el mismo disco, la funcin cambia la referencia de directorio de archivos sin mover los datos. En este caso el procedimiento ser rpido, sin importar el tamao del archivo. Si el SouceFile y DestinationFile se encuentran en diferentes discos, el tiempo de depender del tamao del archivo. En este caso es transferida de un disco fsico a otro. Ejemplo: FileMove(C:\DATA.TXT, D:\DATA.TXT,Monitor);

Nota: Tambin puede ser usado para renombrar archivos cuando el SourceName y el DestinationName especifican el mismo directorio pero diferentes nombres de archivos. Ejemplo: FileMove(C:\DATA.TXT, C:\DATA.bak,Monitor);

El archivo DATA.TXT es renombrado a DATA.BAK. El tag Monitor ser 1 cuando la copia sea realizada por completo.

Esta funcin lee variables separadas por coma, Comma Separated Variable (CSV) de un archivo especfico.

FieldReadFields(Filename,BytePosition,Tagname,NumberOfFields); donde: Filename especifica el archivo donde se leern los campos. BytePosition especifica la posicin del comienzo de la lectura.

A 44

Tagname especifica el nombre de un tag Intouch donde el primer tem ser escrito. El name de este tag debe terminar en un nmero(ej. :MyTag1). Este parmetro debe ser un caracter indicando el nombre del tag (no el tag mismo). Si el tag fuera MyTag, se debe agregar MyTag o MyTag.name; no solamente MyTag1. NumberOfFields especifica el nmero de campos a leer (el nmero de campos separados por coma en cada registro del archivo). Si el Tagname es MyTag1 y NumberOfFields es 3, entonces hay 3 campos ledos del archivo y son almacenados en MyTag1, MyTag2 y Mytag3. Estos tags, con nombres consecutivos deben ser primeramente creados en InTouch y deben ser de tipos diferentes(Integer, Message, etc.). Ejemplo: Si la primera lnea de C:\DATA\FILE.TXT es: This is text, 3.1416,5 El siguiente script leer esta lnea y almacena This is text en MyTag1, 3.1416 en MyTag2 y 5 en MyTag3:

BytePosition=FileReadFields(C:\DATA\FILE.TXT,0,MyTag,3)

La funcin toma el nuevo valor de Byte position despus de la lectura. Se puede usar este valor como el BytePosition para la siguiente lectura. Por ejemplo: FileReadFields(C:\DATA\FILE.TXT, BytePosition,MyTag1,3)

Esta funcin leer un nmero especfico de bytes (o una lnea completa) de un archivo especfico.

FileReadMessage(Filename,BytePosition,MessageTag,ByteCount); donde: Filename especifica el archivo desde donde se leer. BytePosition especifica la posicin en el archivo para comenzar a leer.

A 45

MessageTag corresponde al lugar donde almacenar el dato elido del archivo. ByteCount especifica cuantos bytes a leer desde el archivo. Para archivos de texto, ByteCount puede ser sesteado en 0. La funcin entonces leer hasta el prximo linefeed en el archivo. Ejemplo: FileReadMessage(C:\DATA\FILE.TXT,0,MsgTag,0);

La primera lnea ser leda desde el archivo C:\DATA\FILE.TXT y almacenada en MsgTag.

La funcin toma el nuevo byteposition despus de la lectura. Este valor se puede usar como el BytePosition para la prxima lectura.

Esta funcin escribe un registro tipo CVS para un archivo especfico.

FileWriteFields(Filename, BytePosition; TagName, NumberOfFields); donde: Filename especifica el nombre del archivo a escribir. Si no existe es creado. BytePosition especifica la ubicacin en que archivo comenzar a ser escrito. Si BytePosition es -1, la escritura comienza al final del archivo. Tagname especifica el nombre de un tag InTouch de donde proviene el primer tem de dato. El nombre de este tag debe terminar con un nmero. Debe tener un caracter indicando el nombre del tag. NumberOfFields especifica el nmero de campos a escribir(nmero de campos separados por coma grabados en el archivo). Si el TagName es MyTag1 y el NumberOfFields es 3, entonces 3 campos se escriben en el archivo (desde MyTag1, MyTag2 y Mytag3). Estos tag con nombres consecutivos deben ser primero creados en InTouch y deben ser de diferentes tipos(Integer, Message, etc.)

A 46

El siguiente script escribir la lnea This text, 3.1416, 5 a la primera lnea de C:\DATA\FILE.TXT. This text es el actual valor en MyTag1, 3.1416 en MyTag2 y 5 en MyTag3:

FileWriteFields(C:\DATA\FILE.TXT,0,MyTag,3);

La funcin toma el nuevo valor del byte de posicin despus de la escritura. Este valor se puede usar como el BytePosition para la prxima escritura. El siguiente script escribir el siguiente texto de MyTag al final de C:\DATA\FILE.TXT: FileWriteFields(C:\DATA\FILE.TXT,-1,MyTag1,3);

Esta funcin escribir un numero de bytes especficos (o una lnea completa) en un archivo especfico.

FileWriteMessage(Filename, BytePosition, MessageTag, linefeedFlag); donde: Filename especifica el archivo a escribir. Si el archivo no existe, ser creado. BytePosition especifica la ubicacin en el archivo para comenzar a escribir. Si el BytePosition es -1, la funcin escribir al final del archivo. MessageTag especifica los caracteres a escribir en el archivo. LineFeedFlag especifica agregar o no una lnea despus de la operacin de escritura. Al escribir en un archivo de texto, setear el LineFeddFlag en 1. La funcin retoma el nuevo byte de posicin despus de la escritura. Este valor se puede usar como el BytePosition para la prxima escritura. Ejemplo: FileWriteMessage(C: \DATA\FILE.TXT, -1,MsgTag,1);

A 47

Esta instruccin escribir el tag de mensaje MsgTag al final del \DATA\FILE.TXT.

archivo

C:

Esta funcin puede ser usada en un script para obtener el nombre de un nodo NetDDE a una variable de caracteres. Formato vlido:

GetNodeName(messagetagname, 131);

Cuando este script se ejecuta, la funcin GetNodeName() leer el nombre del nodo local y lo registrar en el messagetagname. (El nmero 131 establece la longitud del caracter para el tagname de mensaje.) Nota: Esta funcin se ejecuta slo si se est ejecutando NetDDE.

Esta funcin oculta varias ventanas con un script. Un comando Hide debe preceder a cada ventana que se desea cerrar. Ejemplo: Hide WindowName;

WindowName debe ser el nombre de una ventana que existe o ser creada. En runtime, si la ventana no existe, WindowViewer ignora la sentencia. Tambin, si el nombre de la ventana es usado en un script de cambios, sta tambin ser cambiada en esta instruccin. Nota: Si el script es solamente para mostrar u ocultar pantallas, se recomienda usar el botn Touch Pushbotton que vincula Show Window o Hide Windows en vez de esta funcin. Si esos botones son usados y cambia el nombre de la ventana, Intouch har el cambio en el vnculo.

A 48

Esta funcin crea un botn genrico para ocultar a travs de una aplicacin para ocultar la actual ventana activa. Ejemplo: HideSelf;

Nota: el funcionamiento del script de botn Hideself es slo aplicable para un action pushbutton script.

Esta funcin es usada para determinar si hubo algn error durante la ltima recuperacin de escritura. Ejemplo:

HTGetLastError(TrendName, UpdateCount; Pen#); donde: TrendName es un tag HistTrend representando el nombre la tendencia. UpdateCount es un entero representando la tendencia. El campo UpdateCount, y Pen# es un tag entero que representa el nmero de escritura (de 1 -4).

Los siguientes tag enteros ResultCodes sern dados:

0= Sin Error. 1=Error General del Servidor 2=Reuqerimiento Antiguo 3=Error de Archivo 4=Servidor no Cargado. 5= Tendencia/Escritura en la Funcin no Existe 6=Nombre del Tag de Tendencia no existe en la Base de Datos 7=Nmero de Escritura en la funcin es Invlida (fuera del rango 1 a 4)

A 49

Ejemplo: ResulCode=HTLastError(Trend1.UpdateCount, Pen3);

Esta instruccin recupera el error para la ltima recuperacin de Pen3 de la tendencia

con el tagname Trend1 y el resultado es puesto en el tag entero ResultCode. Esta funcin convierte el tagname del tag actualmente usado por el pen# de la tendencia especificada.

HTGetPenName(TrendName, UpdateCount, Pen#) donde: TrendName es un tag de HistTrend representando el nombre de la tendencia. UpdateCount es un entero que representa la tendencia. El campo UpdateCount y Pen# es un tag entero que representa el nmero de escritura (1-4). Un tag de mensaje es dado representando el tag especfico del pen.

Ejemplo: TrendPen2=HTGetPenName(Trend1, Trend1.UpdateCount, Pend2);

Este ejemplo recupera el tagname para el Pen2 de la tendencia con el tagname Pen1 y coloca el resultado en el tag de mensaje TrendPen2.

Esta funcin retorna el tiempo en segundos desde 00:00:00 hrs. GMT, January 1, 1970 para el muestreo en la ubicacin del scooter especificado por Scooter# y ScooterLocation. UpdateCount, Scooter#, y ScooterLocation permiten evaluar la expresin ser evaluada cuando alguno de estos parmetros cambian. Esto asegura que la expresin es evaluada despus de nuevos restablecimientos o desplazamientos del scooter.

A 50

HTGetTimeAtScooter(TrendName, UpdateCount, Scooter#, ScootertLocation) donde: TrendName es un tag HistTrend representando el nombre de una tendencia, UpdateCount es un entero representando el campo UpdateCount de la tendencia, Scooter# es un entero representando el scooter izquierdo o derecho (1=Scooter Izquierdo, 2=Scooter Derecho), y ScooterLocation es un nmero real representando el campo ScooterPosRight o ScooterPosLeft. Un entero es dado representando el tiempo en segundos desde 1/1/70. Ejemplo: HTGetTimeAtSCooter(Trend1,Trend1.UpdateCount,1,Trend1.ScooterPosLeft); Esta funcin restablece el tiempo en segundos por el valor a la posicin del scooter actual para el scooter izquierdo de la tendencia etiquetada Trend1.

Esta funcin retorna en la variable la hora/fecha para el muestreo a la ubicacin del scooter especificada por Scooter# y ScooterLocation. UpdateCount, Scooter# y ScooterLocation causan que la expresin sea evaluada cuan algunos de estos parmetros cambian. Esto asegura que la expresin es evaluada despus de nuevos restablecimientos o desplazamientos del scooter. El formato de la variable determina el contenido del valor retornado. Ejemplo: NewRightTimeString=HTGetTimeStringAtScooter(TrendName,Update Count,Scooter#,ScooterLocation,Format) donde: TrendName es un tag HistTrend representando el nombre de la tendencia, UpdateCount es un entero representando el campo UpdateCount de la tendencia. Scooter# es un nmero real que representa el scooter izquierdo o derecho(1=Scooter

A 51

Izquierdo, 2=Scooter Derecho), ScooterLocation es un nmero real que representa el campo ScooterPosRight o ScooterPosLeft de la tendencia, Format es una variable que especifica el formato tiempo/fecha a usar, NewRightTimeString es un tag message donde el resultado de la funcin ser retornado. Ejemplo: HTGetTimeStringAtScooter(Trend1, Trend1.UpdateCount, 2,Trend1. ScooterPosRight,Time); Esta instruccin restablece el valor tiempo/fecha a la posicin del scooter actual por el scooter derecho de la tendencia llamada Trend1. El valor es almacenado en el tag message NewRightTimeString y est en formato Time. Los formatos pueden ser los siguientes: Date, Time, DateTime, DOWShort(Wed, por ejemplo), y DOWLong(Wednesday, por ejemplo).

Esta funcin toma un valor del tipo requerido para la tendencia completa de un Pen especificado. El parmetro UpdateCount causar que la expresin sea evaluada despus que una recuperacin es completa. Ejemplo: HTGetValue(TrendName, UpdateCount, Pen#, ValueType) donde: TrendName es un tag HistTrend que representa el nombre de la tendencia. UpdateCount es un entero que representa el campo UpdateCount de la tendencia. Pen# es un tag entero que representa el nmero de escritura (1-4), ValueType es una cadena que indica el tipo de valor. Este ValueType puede ser uno de los siguientes:

PenAverageValue= Promedio de la tendencia completa PenMaxValue= Mximo para la tendencia PenMinValue= Mnimo para la tendencia PenStdDev= Desviacin standard para la tendencia

A 52

Un tag de memoria real es dado representando el valor calculado de estos tipos. Ejemplo:
LeftHemisphereSD=HTGetValue(Trend1, Trend1.UpdateCount, Pen2,PenStdDev)

Esta funcin obtendr la desviacin standard para el dato capturado para las tendencias Trend1, Pen2. El valor es almacenado en el tag de memoria real LeftHemisphereSD.

Esta funcin entrega del tipo requerido para el muestreo en la posicin del scooter, tendencia y pen# especificados. El parmetro UpdateCount permite que la expresin sea evaluada despus de un restablecimiento completo.

HTGetValueAtScooter(TrendName, UpdateCount, Scooter#, ScooterLocation, Pen#, ValueType) donde: TrendName es un tag HistTrend que representa el nombre de la tendencia, UpdateCount es un entero que representa el campo. UpdateCount de la tendencia, Scooter# es un entero que representa el scooter izquierdo o derecho (1=Scooter Izquierdo, 2=Scooter Derecho) Pen# es un entero que representa el nmero de pen (1-4) ValueType es una variable que indica el tipo de valor a entregar. ValueType puede ser:

PenValue= Valor de la posicin del Scooter. PenVaid= 0 si no es vlido, 1 si lo es.

Un tag de memoria real entrega el valor calculado PenValue. Un tag discreto de memoria representa el valor para PenValid. Ejemplo: ValidFlag=HTGetValueAtScooter(Trend1,Trend1.UpdateCount,2, Trend1.ScooterPRigh,Pen3,PenValid);

A 53

Esta instruccin almacena un 1 si el valor es un muestreo actual o un 0 si no lo es para el Pen3 de la tendencia Tren1 en un a flag el discreto de memoria Valid Flag para la posicin actual del scooter derecho.

Esta funcin retorna un valor del tipo requerido para el dato contenido entre las posiciones del scooter derecho y el izquierdo para un escrito especfico de la tendencia. El parmetro UpdateCount permitir que la expresin sea calculada despus de un restablecimiento completo.

HTGetValueAtZone(TrendName, UpdateCount, Scooter1, Scooter2Location, Pen#,ValueType) donde: TrendName es un tag HistTrend que representa el nombre de la tendencia. UpdateCount es un entero que representa el campo UpdateCount de la tendencia. Scooter1Location es un real que representa el campo ScooterPosLeft de la tendencia. Scooter2Location es un real que representa el campo ScooterPosRight de la tendencia. Pen# es tag entero representando el nmero de escrito (de 1 a 4). ValueType es una variable indicando el tipo de valor a retornar. Valuetype puede ser uno de los siguientes:

PenAverageValue= Valor medio para la zona entre el scooter derecho y el izquierdo. PenMaxValue= El mximo para la zona entre el scooter derecho y el izquierdo. PenMinValue= El mnimo para la zona entre el scooter derecho y el izquierdo. PenStdDev= Desviacin standard para la zona entre el scooter derecho y el izquierdo.

Un tag de memoria real es dado representando el valor calculado de los tipos dados anteriormente. Ejemplo :

A 54

AvgValue=HTGetValueAtZone(Trend1, Trend1.UpdateCount, Trend1. ScooterPosLeft, Trend1.ScooterPosRight, Pen1,PenAverageValue);

Esta instruccin calcula el valor medio para el dato entre los scooters derecho e izquierdo de la tendencia Trend1, Pen1. El valor es almacenado en el tag de memoria real AvgValue. Esta instruccin establece el tiempo de partida de la tendencia a un valor anterior que el actual tiempo de partida por un porcentaje del ancho de la tendencia. El efecto es mostrar el grfico date/time a la izquierda por un porcentaje dado. Ejemplo: HTScrollLeft(TrendName, Percent) donde: TrendName es un tag HistTrend representando el nombre de la tendencia. Percent es un nmero real representando el porcentaje del grfico a desplegar (0.0 a 100.0). Ejemplo: HTScrollLeft(Trend, 10.0);

Esta instruccin despliega el time/date para una tendencia con un tagname de Trend1 al 10%. Si la pantalla actual comienza a las 12:00:00 PM y en ancho de pantalla es de 60 segundos, entonces, la nueva tendencia comenzar a las 11:59:54 AM(despus que la funcin es ejecutada).

Esta instruccin establece el tiempo de partida de la tendencia a un valor anterior que el actual tiempo de partida por un porcentaje del ancho de la tendencia. El efecto es mostrar el grfico date/time a la derecha por un porcentaje dado.

HTScrollRight(TrendName, Percent) donde:

A 55

TrendName es un tag HistTrend representando el nombre de la tendencia. Percent es un nmero real representando el porcentaje del grfico a desplegar (0.0 a 100.0). Ejemplo: HTScrollRight(Trend, 20.0);

Esta instruccin despliega el time/date para una tendencia con un tagname de Trend1 al 20%. Si la pantalla actual comienza a las 12:00:00 PM y en ancho de pantalla es de 60 segundos, entonces, la nueva tendencia comenzar a las 12:00:12 PM (despus que la funcin es ejecutada).

Esta funcin es usada para asignar un diferente tagname a un trazado de tendencia. HTSetPenName(TrendName.Pen#,PenName) donde: TrendName es un tag HistTrend que representa el nombre de la tendencia Pen# es un tagname entero representando el nmero de trazado(de 1 a 4) PenName es una variable que representa el nuevo tagname asignado al trazado. Ejemplo: HTSetPenName(Trend1, Pen3, OutletPressure);

En esta instruccin Pen3 de Tendencia1 usar como tagname OutletPressure.

Esta funcin causa que el dato sea recuperado y mostrado con una hora final igual a la hora actual. La hora de inicio ser igual al EndTime - Ancho del grfico.

HTUpdateToCurrentTime(TrendName) donde: TrendName es un tag HistTrend correspondiente al nombre de la tendencia.

A 56

Ejemplo: HTUpdateToCurrentTime(Trend1);

Esta instruccin recupera y muestra el dato para el tag histrico Trend1 a la hora exacta. Si fueran las 3:04 PM y el ancho de la tendencia es 60 segundos, la nueva hora de trmino ser 3:04 PM. La nueva hora de inicio ser 3:03 PM.

Esta funcin calcular un nuevo ancho de grfico y tiempo de inicio. Si el campo ScooterPosLeft de la tendencia es 0.0 y ScooterPosRight es 1.0, entonces el nuevo ancho del grfico es igual al ancho antiguo dividido por dos. El nuevo tiempo de inicio ser calculado de acuerdo al valor de LockString.

HTZoomIn(TrendName, LockString)

donde: TrendName es un tag HistTrend del nombre de la tendencia. LockString es una variable que representa el tipo de zoom. Puede ser uno de los siguientes: StartTime= Mantiene el tiempo de inicio igual al de antes del zoom. Center = Mantiene el tiempo central igual al de antes del zoom. EndTime= Mantiene el tiempo final al de antes del zoom.

Si las posiciones de los scooters no estn al final, el nuevo ancho del grfico es el tiempo entre ScooterPosLeft y ScooterPosRight. En ese caso, el valor de LockString no se usa. El ancho mnimo del grfico es 1 segundo. Las posiciones de los scooters sern para ScooterPosLeft=0.0 y para ScooterPosRight=1 despus del zoom. Ejemplo: HTZoomIn(Trend1, StartTime);

A 57

Esta instruccin mostrar la pantalla en factor de dos y mantendr el mismo tiempo de inicio para el tag de tendencia Trend1. Trend1.ScooterPosRight es igual a 1 y Trend.ScooterPosLeft es igual a 0.0. Si el tiempo de inicio antes del zoom era 1:25:00 PM y el ancho del grfico era 30 segundos (despus de realizar el zoom), el tiempo de

inicio todava ser 1:25:00. Pero en ancho ser de 15 segundos. Calcula un nuevo ancho del grfico y tiempo de inicio. El nuevo ancho del grfico es el antiguo multiplicado por dos. El nuevo tiempo de inicio ser calculado de acuerdo al LockString.

HTZoomOut(TrendName, LockString) donde: TrendName es un tag HistTrend del nombre de la tendencia. LockString es una variable que representa el tipo de zoom. Puede ser uno de los siguientes: StartTime= Mantiene el tiempo de inicio igual al de antes del zoom. Center = Mantiene el tiempo central igual al de antes del zoom. EndTime= Mantiene el tiempo final al de antes del zoom.

Si las posiciones de los scooters no tienen efecto sobre HTZoomOut. ScooterPosLeft=0.0 y ScooterPosRight. =1 despus del zoom. Ejemplo: HTZoomOut(Volume, Center);

Esta instruccin mostrar la pantalla en factor de dos y mantendr el mismo tiempo central para el tag de tendencia Volume. Si el tiempo de inicio antes del zoom era 2:15:00 PM y el ancho del grfico era 30 segundos, el tiempo de inicio despus de realizar el zoom todava ser 2:15:00. El ancho ser de 60 segundos y el tiempo central de la tendencia permanecer en 2:15:15.

A 58

Prueba cuando una aplicacin est Activa.

ResulDiscrete=InfoAppActive(TaskListname);

El ttulo para una aplicacin en particular puede ser determinado usando la funcin InfoAppTitle. Ejemplos: InfoAppActive(Microsoft Excel) ser 1 (si se est ejecutando) InfoAppActive(Calculator) ser 0 (si no se est ejecutando)

Esta funcin retorna al programa especificado que est corriendo en la Lista de Tareas. ResultMessage=InfoAppTitle(ProgramEXEName);

En esta instruccin, el programa, si existe, de nombre ProgramExeName ser asignado a ResultMessage. Por ejemplo, un ProgramExeName calc ser Calculator. Ejemplos: InfoAppTitle(calc ser Calculator InfoAppTitle(excel) ser Microsoft Excel

Entrega la informacin de un disco local o conectado en la red.

ResultInteger=InfoDisk/DriveLetter, InfoType, Trigger);

A 59

En esta instruccin, la informacin acerca del disco especificado por la letra del DriveLetter es asignada a ResultInteger. InfoType determina la informacin deseada en particular: Case1: Entrega el tamao total del disco (en bytes). Case2: Entrega el espacio disponible en el disco (en bytes). Trigger ejecutar la funcin InfoDisk cada tiempo que el valor del Trigger cambia. Ejemplo: InfoDisk(C, 1, $Minute) ser 233869345 (capacidad total) InfoDisk(C, 2, $Minute) ser 3238935 (espacio disponible)

En estos ejemplos, la funcin se ejecutar cada minuto y entregar el valor actual.

Nota: Trigger puede ser algn tagname (no est limitado a un sistema de variables). Nota: As como en otras funciones se usan caracteres simples, si el tag message contiene ms de una letra y es usado en InfoDisk (como DriveLetter), slo el primer caracter del tag ser considerado.

Esta funcin retorna la informacin sobre un archivo o subdirectorio especfico en un computador (o equipo conectado en red).

ResultInteger=InfoFile(FileName, InfoType, Trigger);

En esta instruccin, la informacin acerca de un archivo especificado como FileName es retornada a ResultInteger. El FileName debe incluir la ruta completa del archivo, pero tambin puede incluir los caracteres comodines(*,?). InfoType determina la informacin en particular que se muestra a continuacin: Case 1: Existe el archivo?. Es 1 si el nombre del archivo es un archivo actual. Es 2 si el FileName es un directorio. Es 0 y la funcin no puede encontrar el archivo.

A 60

Caso 2: Tamao del archivo(en bytes) Caso 3: Fecha/Hora del archivo. ( en segundos desde Jan-1-1970) Caso 4: Nmero de archivos que cumplen con la descripcin del filename. Este valor ser mayor que 1 para bsquedas semejantes. Trigger ejecutar la funcin InfoFile cada vez que el valor de Trigger Cambie. Ejemplos: InfoFile(c:\intouh\view.exe, 1, $Minute) ser 1 (encuentra el archivo) InfoFile(c:\intouh\view.exe, 2, $Minute) ser 634960(tamao del archivo) InfoFile(c:\intouh\view.exe, 3, $Minute) ser 736701852 (encuentra el archivo) InfoFile(c:\intouh\*. exe, 4, $Minute) ser 17 (encuentra 17 archivos.EXE) En estos ejemplos, la instruccin se ejecutar cada minuto.

Nota: Trigger puede ser cualquier tagname (no est limitado a variables del sistema).

Esta aplicacin retorna al directorio actual de la aplicacin InTouch.

ResultMessage=InfoInTouchAppDir();

En esta instruccin, la aplicacin InTouch actual es asignada a ResultMessage. Ejemplo: InfoInTouchAppDir() ser c:\demoapp1

Esta funcin retorna varios valores en los recursos.

ResultInteger=InfoResources(ResourceType, Trigger);

A 61

En esta instruccin, el recurso del sistema en particular especificado por el entero ResourceType es almacenado en ResultInteger. ResourceType determina el valor del recurso establecido, el cual puede ser: Caso 1: Entrega el porcentaje de espacio libre para recursos GDI. Caso 2: Entrega el porcentaje de espacio libre para recursos del USUARIO. Caso 3: Entrega el nmero de bytes de memoria libre actual. Caso 4: Entrega el nmero de tareas que estn corriendo actualmente. Trigger ejecutar la funcin InfoResources cada vez que el valor de Trigger Cambie. Ejemplos: InfoResources(1, $Minute) ser 54 (% libre) InfoResources(2, $Minute) ser 36 (% libre) InfoResources(3, $Minute) ser 11524093 (bytes) InfoResources(4, $Minute) ser 14 (tareas)

En estos ejemplos, la instruccin se ejecutar cada minuto.

Nota: Trigger puede ser cualquier tagname (no est limitado a variables del

sistema). Esta funcin retorna el prximo entero menor o igual a un nmero especfico.

ResultNumericTag=Int(InputNumericTag)

Cuando se ingresan nmeros reales negativo, esta funcin retorna el entero ms alejado del cero. Ejemplos: Int(4.7) ser 4 Int(-4.7) ser -5

A 62

Esta funcin retorna el logaritmo natural de un nmero.

ResultNumericTag=Log(InputNumericTag) Ejemplos: Log(100) ser 4.605... Log(1) ser 0 Log(0) es indeterminado.

Esta funcin escribir un mensaje definido por el usuario en el WWLogger.

LogMessage(Message);

En esta instruccin, el contenido de Message ser escrito en el WWLogger. Ejemplo: LogMessage(Report Script is Running);

La siguiente lnea aparecer en el WWLogger: 94/01/14 15:21:14 WWSCRIPT Message: Report Script is Running

Entrega el valor del logaritmo en base n.

ResultNumericTag=Log(InputNumericTag, BaseNumericTag) Ejemplos: LogN(8,3) ser 1.89279... LogN(3,7) ser 0.564...

Base 1 es indeterminado.

A 63

Esta funcin retorna el valor de Pi(). ResultNumericTag=Pi() Ejemplo: Pi() ser 3.1416926...

Esta funcin toca una msica o sonido especificado por un archivo .wav o una entrada en la seccin [sounds] del archivo WIN.INI mediante el dispositivo de sonidos (si est instalado). Ejemplo: PlaySound(c:\horns.wav, 1);

En esta instruccin, el 1 permite tocar el sonido en forma asincrnica. Para un sonido repetitivo, se ingresa un 9.

Nota especial: El sonido debe estar en la memoria fsica disponible y ser ejecutado en una unidad de sonido instalada. Los directorios en donde se buscan los archivos de sonido estn en orden: Directorio actual; Directorio Windows; Directorio Windows\System; los directorios listados en el PATH. Si un archivo .wav especifico no puede ser encontrado, se escuchar el sonido por defecto por la entrada del SystemDefault en la seccin [sounds] del archivo WIN.INI Si no existe el sonido por defecto o no es encontrado, la funcin no se escuchar.

Esta funcin crea un botn para ser usado en la impresin del grfico Historical Trend asociado con el tagname HistTrend especfico. La Tendencia Histrica debe estar visible cuando se usa esta funcin. Ejemplo: PrintHT(HistTrend1);

A 64

Esta funcin es usada para imprimir una ventana. Al usar esta funcin muchos reportes pueden ser encolados. Cuando se selecciona esta funcin, el View carga la pantalla en un rea de memoria off screen o fuera de pantalla. Entonces el View espera 10 segundos para permitir a todas las variables DDE ser actualizadas. La ventana entonces en enviada a la impresora. El tiempo de espera que el View tiene puede ser controlado al agregar la siguiente lnea al archivo INTOUCH.INI:

PrintWindowWait=10000

donde: 10000 representa el nmero en milisegundos de espera.

Las fuentes son impresas como fuentes, los objetos se imprimen como mapas de bits. Las ventanas con fondo blanco que contienen slo letras se imprimen rpidamente. Las que contienen fondo de color y varios objetos toman un tiempo considerable en imprimir. Ejemplo: PrintWindow(WindowName, left, top, width, height, options) donde: WindowName es el nombre de la pantalla a imprimir. left nmero con punto flotante en pulgadas correspondiente al margen izquierdo. top nmero con punto flotante en pulgadas correspondiente al margen superior. width nmero con punto flotante en pulgadas que establece el ancho que no se imprime. Este por defecto puede ser 0, o puede tener un ancho especfico. height nmero con punto flotante en pulgadas que establece el largo que no se imprime. Este por defecto puede ser 0, o puede tener un ancho especfico. options puede ser 0 1 y slo se usan si width y height estn en 0. Si options est en 1, la ventana se imprime con el aspecto de la razn del largo que es un entero mltiplo del tamao de la ventana. Si options est en 0, la ventana se imprime con el aspecto ms amplio que se ajuste a la pgina.

A 65

Nota: Si la ventana contiene mapas de bits, options debe estar en 1 para evitar imgenes angostas. El siguiente ejemplo de Script de Condicin podra imprimir 3 pginas de reporte cada da a las 8:30 AM: $Hour==8 and $Minute==30; PrintWindow(1sr Shift Summary, 1,1,0,0,0); PrintWindow(2nd Shift Summary, 1,1,0,0,0); PrintWindow(3rd Shift Summary, 1,1,0,0,0);

La funcin PrintWindow() es 1 si la ventana existe y pudo ser encolada para imprimir. De otro modo, es 0. Adems, el estado de la funcin puede ser monitoreado. Ejemplo: Status=PrintWindow(Shift Summary Overview, 1,1,0,0,0); donde: Status es un tag discreto que puede ser 1 0.

Esta funcin redondea un nmero real a una precisin especfica.

ResultNumericTag=Round(InputNumericTag, Precision);

El parmetro Precision establece la precisin a la cual el InputNumericTag ser redondeado. Ejemplos: Round(4.3,1) ser 4 Round(4.3, .01) ser 4.30 Round(4.5,1) ser 5 Round(-4.5,1) ser -5 Round(106,5) ser 106 Round(43.7, .5) ser 43.5

A 66

Esta funcin activa teclas para otra aplicacin. En la otra aplicacin, las teclas aparecern como si se hubiesen ingresado desde el teclado mismo. Esta capacidad puede ser usada para ingresar datos a la aplicacin como tambin comandos a ella. La mayora de las teclas del teclado pueden usadas en el SendKeys. Cada tecla se representa por uno o ms caracteres tal como la A es para la letra A o {Enter} para la tecla Enter. Para especificar ms de una tecla, se debe concatenar los cdigos para cada caracter. Por ejemplo, para especificar el signo pesos ($) seguido por una b, ingresar $b. La siguiente lista muestra los sendkeys con sus teclas vlidas para ser utilizadas por el teclado: BACKSPACE {HELP} BREAK {BREAK} HOME INSERT {HOME} {INSERT} {BACKSPACE} o {BS}HELP

CAPSLOCK {CAPSLOCK} DELETE DOWN END ENTER ESCAPE F1 {DELETE} o {DEL} {DOWN} {END} {ENTER} o { } {ESCAPE} o {ESC} {F1}*

NUMLOCK {NUMLOCK} PAGE DOWN {PGDN} PAGE UP PRTSC RIGHT TAB UP {PGUP} {PRTSC} {RIGHT} {TAB} {UP}

* Igual con las dems teclas de funcin

Para especificar que las teclas Shift, Ctrl y/o Alt sean presionadas mientras otra tecla lo est, la otra tecla debe estar en minsculas y entre parntesis. Ejemplo: Sendkeys^(p); Si dos de esas teclas son usadas juntas, se utiliza un segundo par de parntesis. Por ejemplo, para presionar Ctrl+Alt+p se debe ingresar: ActivateApp Microsoft Excel; SendKeys ^(%(p));

A 67

El comando debe ser precedido por una ActivateApp para dirigir las teclas a la aplicacin respectiva.

Esta funcin modifica la aplicacin o las porciones de un nombre o tpico de un DDE Access Name durante la ejecucin runtime lo cual permite la implementacin de estrategias de respaldo (hot-backup) para InTouch. Ejemplo: SetDddeAppTopic(DDEAccessName, Application, Topic);

El DDEAccessName es el nombre actual de la definicin DDE Access Name a ser modificado. Application es el actual programa de la nueva aplicacin, por ejemplo, genius; y Topic es el nuevo nombre a ser usado por el DDE Access Name. (Estos trminos deben estar entre comillas como se muestra en el ejemplo). Si la nueva aplicacin o tpico est en blanco, la aplicacin o tpico no cambian. Ejemplo:

SetDdeAppTopic(PLC1, genius, );

Estos tres argumentos pueden ser variables de caracteres constantes o variables.

Nota: Cuando se ejecuta SetDdeAppTopic, existe un retardo cuando se inicia como cuando se termina una conversacin DDE. Durante este tiempo cualquier modificacin al nuevo tpico se perder.

Esta funcin determina el signo de un valor(si es positivo, negativo o cero).

ResulNumericTag=Sgn(InputnumericTag);

A 68

Si la entrada es positiva, el resultado ser 1. Para nmeros negativos ser -1 y para el 0 ser 0. Ejemplos: Sgn(425) ser 1 Sgn(0) ser 0 Sgn(-37.3) ser -1

Muestra una ventana especfica. Ejemplo:

Show WindowName;

WindowName debe ser el nombre de una ventana existente o una ventana que ser creada. En runtime si la ventana no existe, WindowViewer ignora la instruccin. Tambin, si el nombre de la ventana cambia, el script tambin debe ser cambiado.

Nota: Si el script solo est mostrando u ocultando ventanas, es recomendable usar los vnculos Show Window o Hide Window. Si se usan y el nombre de la ventana cambia, InTouch automticamente har los cambios.

Esta funcin especifica la posicin del pixel horizontal y vertical de una ventana cuando es mostrada. Cuando se abre la ventana, sta ser centrada a las coordenadas vertical y horizontal. Ejemplo:

ShowAt(WindowName, 100,200);

En esta instruccin, el 100 representa el pixel horizontal y 200 el vertical. Objetos de entrada anloga (Analog Input) tambin pueden ser creados y vinculados a tagnames de

A 69

memoria, por ejemplo, Horz y Vert, a cambios dinmicos de la posicin de la ventana durante el runtime. En este caso la instruccin podra ser:

ShowAt(WindowName, HORZ, VERT);

Para determinar la ubicacin de los pixel en un objeto, los tagnames internos $ObjHorz y $ObjVer pueden ser asignados a vnculos de salidas anlogas que mostrar las posiciones del objeto seleccionado actualmente. Una ventana puede ser creada para aparecer centrado sobre un objeto o botn usando los tagnames $ObjHorz y $ObjVer en un script vinculado al objeto o botn. Ejemplo: ShowAt(WindowName, $ObjHor, $ObjVer);

Esta funcin muestra la(s) ventana(s) home. Las ventanas Home son configuradas a travs del comando /Special/Configure... /View Home Windows... Ejemplo: ShowHome;

Especifica la ubicacin horizontal y vertical del pixel de la esquina superior izquierda de una ventana cuando es mostrada. Cuando se abre la ventana, su esquina superior izquierda ser ubicada donde las coordenadas horizontal y vertical se ubiquen. (La esquina superior izquierda ms extrema de la ventana est en la ubicacin del pixel 0,0). Nota: Esta funcin trabaja exactamente igual que la funcin ShowAt descrita anteriormente excepto que sta ltima controla donde la esquina superior izquierda de la ventana aparecer.

A 70

Esta funcin entrega el valor del seno de un ngulo en grados.

ResulNumericTag=Sin(InputNumericTag) Ejemplos:
Sin(90) ser 1

Sin(0) ser 0

Permite al InTouch calcular automticamente la raz cuadrada de un valor. Ejemplo: AnalogTag1=Sqrt(AnalogTag2);

Esta funcin automticamente ejecuta otra aplicacin de Windows. La instruccin es la siguiente:

StartAppAplicationName{DocumentName};

AplicationName es el actual nombre del programa de aplicacin que ser ejecutado, Por ejemplo; Excel.exe. La parte DocumentName es opcional y se refiere a abrir un documento especfico cuando parte la aplicacin. Ejemplo: StartAppExcel.exe Report.XLS;

Esta instruccin ejecutar el Excel y abrir inmediatamente la hoja de clculo llamada Report.XLS. Si No es usado el nombre del documento la instruccin ser:

StartAppExcel.exe;

A 71

Esta instruccin ejecutar Excel.exe y la hoja de clculo por defecto ser Sheet1. Aunque no es un requerimiento, es recomendable incluir la extensin.exe en el nombre del programa o aplicacin.

Entrega el valor en cdigo ASCII del primer caracter de un tag de mensaje especfico. IntegerTag=StringASCII(MessageTag);

En esta instruccin, el valor ASCII del primer caracter en MessageTag ser entregado al IntegerTag. Ejemplos: StringASCII(A) ser 65 StringASCII(A Mixer is Running) ser 65 StringASCII(a mixer is running) ser 97

Nota: Como en otras funciones donde el primer caracter es chequeado o afectado, si el tag de mensaje dado para la instruccin StringASCII contiene ms de un caracter, slo el primero del tag ser utilizado para la conversin.

Entrega el caracter correspondiente a un cdigo ASCII especfico.

MessageTag=StringChar(IntegerTag);

En esta instruccin, el caracter ASCII especificado por el IntegerTag es retornado al MessageTag. Una utilizacin de esta funcin es que se puede agregar caracteres ASCII que normalmente no estn representados en el teclado para tags de mensajes. Ejemplo: ControlString=MessageTag+StringChar(13)+StringChar(10);

A 72

En este ejemplo, un [CR y un [LF han sido agregados al final de MessageTag y traspasados a ControlString. La insercin de caracteres fuera del rango normal de 32 a 126 de caracteres visuales pueden ser tilmente usados en la creacin de cdigos de control para ciertos dispositivos externos tales como impresoras o mdems.

Convierte un entero en una representacin de caracteres de diferente base numrica. ResultMessage=StringFromIntg(IntegerTag, Base);

En esta instruccin, IntegerTag es convertido a la Base especificada y el resultado es almacenado en ResultMessage. Ejemplos: StringFromIntg(26,2) ser el cdigo binario 11010 StringFromIntg(26,8) ser el nmero octal 32 StringFromIntg(26,16) ser el nmero hexadecimal 1A

Convierte un valor real a una representacin como un nmero con punto flotante o como notacin exponencial.

ResultMessage=StringFromReal(RealTag, Precision, StringType);

En esta instruccin, RealTag es convertido a la precisin y tipo y caracter especificado y el resultado es almacenado en ResultMessage. La variable Precision especifica cuantos decimales sern mostrados. StringType determina el mtodo en que aparecer de acuerdo a: StringType=f muestra la notacin con punto flotante. StringType=e muestra la notacin exponencial en minscula e.

A 73

StringType=E muestra la notacin exponencial en mayscula E. Ejemplos: StringFromReal(263.355,2,f) ser 263.36 StringFromReal(263.355,2,e) ser 2.63e2 StringFromReal(263.55,3,E) ser 2.636E2

Convierte un valor del tiempo (en segundos desde Jan 01-1970) a una representacin particular.

ResultMessage=StringFromTime(TimeValue, StringType);

En esta instruccin, TimeValue es convertido al StringType especificado y el resultado es almacenado en ResultMessage. StringType determina la forma en que se mostrar de acuerdo a: Caso 1: Muestra la fecha en el mismo formato del panel de control. Similar al que es mostrado por $DateString. Caso 2: Muestra la hora en el mismo formato del panel de control. Similar al que es mostrado por $TimeString. Caso 3: Muestra una cadena de 24 caracteres indicando la fecha y la hora. Ejemplo : Wed Jan 02 02:03:55 1993 Caso 4: Muestra el da de la semana abreviado. Ejemplo: Wed. Caso 5: Muestra el nombre completo del da de la semana. Ejemplo: Wednesday.

Ejemplos: StringFromTime(86400,1) ser 1/2/70 StringFromTime(86400,2) ser 12:00:00 AM StringFromTime(86400,3) ser Fri Jan 02 00:00:00 1970 StringFromTime(86400,4) ser Fri StringFromTime(86400,5) ser Friday

A 74

Esta funcin retorna la posicin en el MessageTag donde ocurre primero MessageToFind. IntegerTag=StringInString(MessageTag, MessageToFind, StartPosition, CaseSensitive);

En esta instruccin, el MessageTag es buscado para encontrar el MessageToFind. Si est varias veces en el MessageTag, La posicin del primer encuentro ser dado a IntegerTag. StartPosition es un entero que determina desde que posicin comienza la bsqueda en el MessageTag. El parmetro CaseSensitive determina cuando la bsqueda ser exacta (0=n0 y 1=yes). Ejemplos: StringInString(The mixer is running, mix, 1,0) ser 5 StringInString(Today is Thursday, day, 1,0) ser 3 StringInString(Today is Thursday, day, 10,0) ser 15 StringInString(Today is Veterans Day, Day,1,1) ser 20

StringInString(Today is Veterans Day, Night, 1,1) ser 0 Considera los primeros caracteres de un tag de mensaje especfico.

ResultMessage=StringLeft(MessageTag, IntegerTag); Ejemplos: StringLeft(The Control Pump is On, 3) ser The StringLeft(Pump 01 is On, 3) ser Pum StringLeft(Pump 01 is On, 3) ser Pump 01 is On

Determina la longitud de un tag de mensaje especfico.

A 75

IntegerTag=StringLen(MessageTag);

En esta instruccin, la longitud (en caracteres) de MessageTag es dada a IntegerTag. Todos los caracteres en el tag de mensaje, incluyendo los que no aparecen en pantalla son contados. Ejemplos: StringLen(Twelve percent) ser 14 StringLen(12%) ser 3 StringLen(The end. [CR ) ser 10

Nota: [CR es el caracter retorno de carro, en ASCII es el 13.

Convierte todos los caracteres en maysculas a minsculas de un tag de mensaje especfico. ResultMessage=StringLower(MessageTag);

Los caracteres en minsculas, smbolos, nmeros y otros caracteres especiales no son afectados. Ejemplos: StringLower(TURBINE) ser turbine StringLower(22.2 Is The Value) ser 22.2 is the value

Toma un nmero especfico de caracteres de un tag de mensaje, partiendo de la posicin especificada.

ResultMessage=StringMid(MessageTag, StartInteger, SpanInteger);

A 76

Esta funcin es levemente diferente de las otras StringLeft y StringRight en que permite al usuario especificar el comienzo y el final de la cadena de caracteres que ser extrado del tag de mensaje. StartInteger especifica la posicin del primer caracter a extraer. SpanInteger el nmero total de caracteres a retornar. Ejemplos: StringMid(The Furnace is Overheating, 5,7) ser Furnace StringMid(The Furnace is Overheating, 13,3) ser is StringMid(The Furnace is Overheating, 16,50) ser Overheating

Reemplaza o cambia partes especficas de una variable de caracteres dada.

ResultMessage=StringReplace(MessageTag, SearchForString, ReplaceWithString, CaseSensitive, NumberTo.MatchWholeWord);

Usando esta instruccin se pueden cambiar caracteres, palabras o frases con tag de string. Los parmetros de StringReplace() son: MessageTag es la cadena de caracteres o frase que se desea modificar. SearchForString es la cadena de caracteres que se desea buscar y reemplazar. ReplaceWithString es la cadena que es reemplazada. CaseSensitive determina la exactitud de los cambios(0=no y 1=yes) NumberToReplace determina el nmero de ocurrencia a reemplazar (-1=todas) MatchWholeWord determina si la funcin limitar el reemplazo a palabras completas (0=no y 1=yes). Si MatchWholeWord se deja en 1 y SearchForString es and, el and en la palabra handle no ser reemplazado. Si el WatchWholeWord est en 0, todo puede ser reemplazado. Ejemplos: StringReplace(In From Within, In, Out, 0, 1,0 es Out From Within (slo se reemplaza el primer caracter encontrado).

A 77

StringReplace(In From Within, In, Out, 0, -1,0 es Out From WithOut (reemplaza todos los encontrados). StringReplace(In From Within, In, Out, 1, -1,0 es Out From Within (Reemplaza el caracter encontrado). StringReplace(In From Within, In, Out, 0, -1,1 es Out From Within (reemplaza todas las palabras completas).

Considera los ltimos caracteres de un tag de mensaje especfico.

ResultMessage=StringRight(MessageTag, IntegerTag); Ejemplos: StringLeft(The Control Pump is On, 2) ser On StringLeft(Pump 01 is On, 5) ser is On StringLeft(Pump 01 is On, 87) ser Pump 01 is On

Esta funcin es usada para generar una cadena de espacios en un tag de mensaje o una expresin.

MessageTag=StringSpace(IntegerTag);

En esta instruccin, StringSpace entrega una serie de espacios cuya longitud est especificada por el IntegerTag.

Nota: En el siguiente ejemplo, todos los espacios son representados por el caracter x. StringSpace(4) ser xxxx
Pump + StringSpace(1) + Station ser PumpxStation

A 78

Esta funcin determina el primer caracter de un tag de mensaje para determinar si es de un cierto tipo.

DiscreteTag=StringTest(Message Tag, IntegerTag)

En esta instruccin, StringTest dar un valor positivo a DiscreteTag si el primer caracter en MessageTag es del tipo especificado en IntegerTag. Los diferentes casos que pueden ser chequeados estn dentro de las siguientes categoras:

Clase 1: Clase 2: Clase 3: Clase 4: Clase 5: Clase 6: Clase 7 Clase 8: Caso 9 Caso 10 Caso 11

Caracter Alfanumrico (A -Z, a - z y 0 - 9) Caracter Numrico (0 - 9) Caracter Alfabtico (A - Z y a - z) Caracter en Mayscula (A - Z) Caracter en minscula (a - z) Caracter de puntuacin (0x21 - 0x2F) Caracteres ASCII (0x00 - 0x7F) Caracteres Hexadecimal (A - F o a - f 0 - 9) Caracteres de impresin (0x20-0x1E) Caracteres de Control (0x00 - 0x1F o 0x7F) Caracteres de Espacio en Blanco (0x09 - 0x0D o 0x20)

Como en las otras funciones, slo es chequeado el primer caracter cuando el StringTest contiene ms de un caracter. Ejemplos: StringTest(ACB123, 1) ser 1 StringTest(ACB123, 5) ser 0

A 79

Convierte el valor numrico de un tagname de mensaje a un valor entero que pueda ser calculado. Ejemplo: IntegerTag=StringToIntg(MessageTag);

En esta instruccin, IntegerTag es un tagname tipo entero y MassageTag es un tagname tipo mensaje. Cuando esta instruccin es evaluada, el sistema lee el primer caracter en busca de un valor numrico. Si el primer caracter es distinto a un nmero (sin considerar los espacios en blanco), el valor de la variable es cero(0). Si el primer caracter es un nmero, el sistema contina leyendo los siguientes caracteres hasta encontrar un valor no numrico. Ejemplos: Si MessageTag=ABCD, entonces IntegerTag=0 Si MessageTag=22.22 is the value entonces IntegerTag=22 Si MessageTag=The Value is 22 entonces IntegerTag=0

Esta funcin convierte el valor numrico de un tagname de mensaje a un valor real(punto flotante) que pueda ser calculado. Ejemplo: RealTag=StringToReal(MessageTag);

En esta instruccin, RealTag es un tagname tipo real y MassageTag es un tagname tipo mensaje. Cuando esta instruccin es evaluada, el sistema lee el primer caracter en busca de un valor numrico. Si el primer caracter es distinto a un nmero (sin considerar los espacios en blanco), el valor de la variable es cero(0). Si el primer caracter es un nmero, el sistema contina leyendo los siguientes caracteres hasta encontrar un valor no numrico. Ejemplos:

A 80

Si MessageTag=ABCD, entonces RealTag=0

Si MessageTag=22.261 is the value entonces RealTag=22.261 Si MessageTag=The Value is 22 entonces RealTag=0

Esta funcin es usada para remover espacios indeseados en un tag de mensaje.

ResultMessage=StringTrim(MessageTag, IntegerCode);

En esta instruccin, MessageTag es buscado por espacios en blanco (Cdigo ASCII 0x0D o 0x20) que sern removidos. IntegerCode determina el mtodo a usar en la funcin.

Caso 1: Remover espacios iniciales(a la izquierda del primer caracter) Caso 2: Remover espacios finales(a la derecha del ltimo caracter) Caso 3: Remover todos los espacios a excepcin del espacio entre palabras. Ejemplos: StringTrim(xxxxThisxisxaxxtestxxxx, 1) ser Thisxisxaxxtestxxxx StringTrim(xxxxThisxisxaxxtestxxxx, 2) ser xxxxThisxisxaxxtest StringTrim(xxxxThisxisxaxxtestxxxx, 3) ser Thisxisxaxtest

Nota: En estos ejemplos los espacios en blanco son representados por x. Nota: La funcin StringReplace() puede ser usada para remover TODOS los espacios de un tag de mensaje especfico. Simplemente reemplazar todos los espacios con un caracter nulo.

Esta funcin convierte todos los caracteres en minscula a mayscula.

ResultMessage=StringUpper(MessageTag);

A 81

Los caracteres en maysculas, smbolos, nmeros y otros caracteres especiales no son alterados. Ejemplos: StringUpper(abcd) ser ABCD
StringUpper(22.2 is the value) ser 22.2 IS THE VALUE

Entrega el valor de la tangente de un ngulo en grados.

ResulNumericTYag=Tan(InputNumericTag) Ejemplos: Tan(45) ser 1 Tan(0) ser 0

Esta funcin permite que un tagname de tipo mensaje muestre el valor de un tagname anlogo(entero o real) de acuerdo a un formato especfico. Ejemplo: MessageTag=Text(AnalogTag,#.00);

En esta instruccin, MessageTag es un mensaje tipo tagname, AnalogTag es un tagname tipo entero o real y #.00 representa la forma en que se muestra el valor. Ejemplo: Si AnalogTag=66 entonces MessageTag=66.00. Si AnalogTag=22.269 entonces MessageTag=22.27. Si AnalogTag=9.999 entonces MessageTag=10.00.

A 82

Esta funcin trunca un nmero real eliminando la parte a la derecha del punto decimal. ResultNumericTag=Trunc(InputnumericTag)

Esta funcin toma el mismo valor y el contenido de un nmero real lo convierte en un tag entero. Ejemplos: Trunc(4.3) ser 4 Trunc(-4.3) ser 4

Esta funcin permite al usuario controlar otra a aplicacin desde InTouch, dando la capacidad de Restaurar, Minimizar, Maximizar o Cerrar tal aplicacin.

WWControl(TaskListname, ControlAction);

El TaskListname para una aplicacin en particular puede ser determinado usando la funcin InfoAppTitle. El parmetro ControlAction determina el control de la aplicacin (estas acciones son las mismas en la seleccin correspondiente al men de control de la aplicacin), las cuales son: ControlAction= Restore: Activa y muestra la ventana de la aplicacin. ControlAction=Minimize: Activa una ventana y la minimiza en un icono. ControlAction=Maximize: Activa y muestra la ventana de la aplicacin. ControlAction=Close: Cierra una aplicacin.

Ejemplos: WWControl(Calculator,Restore); WWControl(Microsoft Excel, Close);

A 83

Esta funcin enviar un comando (usando una ejecucin DDE) a una aplicacin y tpico especficos.

WWExecute(Application, Topic, Command);

En esta instruccin, el Command ser enviado a un Application y Topic especficos. El siguiente Script ejecuta una macro en Excel:

Macro= Macro1!TestMacro; Command=[Run(+StringChar(34) + Macro + StringChar(34) + 0) ; WWExecute(excel, system, Command);

El siguiente script ejecuta una macro en Microsoft Access:

WWExecute(MSAccess, system,MyMacro);

La funcin WWWexecute() est en 1 si la aplicacin est corriendo, existe el tpico y el comando ha sido enviado satisfactoriamente. Est en 0 cuando la aplicacin est ocupada, y en -1 cuando existe un error. De esta manera, se puede monitorear el estado del comando: Status= WWExecute(excel, system, Command);

Donde: Status es un tag entero que puede ser 1, -1 0.

Est funcin enva un valor usando un DDE Poke a una Aplicacin, Topic, e Item especficos. WWPoke(Application, Topic, Item, ValueMessageTag);

A 84

En esta instruccin el valor ValueMessageTag enviar al Application en particular, Topic e Item especificados. Notar que el valor enviado debe ser un caracter alfanumrico. Si el valor a enviar es un nmero debe ser convertido usando las funciones Text(), StringFromIntg(), o StringFromReal(). El siguiente script convertir un valor a texto y lo posesionar en una celda de una planilla excel: String= Text(Value,"0"); WWPoke(excel, sheet1, r1c1, String);

La funcin WWPoke() est en 1 si la aplicacin est corriendo, y el valor ha sido enviado satisfactoriamente. Est en 0 cuando la aplicacin est ocupada y en -1 cuando hay un error. De este modo el estado de este comando puede ser monitoreado:

Status=WWPoke(excel, sheet1, r1c1, String); Donde: Status es un tag entero que puede ser 1, -1 0.

Esta funcin realiza un requerimiento de una vez por un valor (usando DDE Request) de una Application, Topic e Item.

WWRequest(Application, Topic, Item, ValueMessageTag);

En esta instruccin el valor DDE en la Application, Topic e Item en particular ser dado al ValueMessageTag. Notar que el valor ser entregado como una cadena de caracteres al MessageTag. Si el valor es un nmero se debe convertir usando las funciones StringFromIntg(), o StringFromReal(). El siguiente script pedir un valor de una celda de una planilla Excel y convertir el texto a un valor: WWRequest(excel,sheet1,r1c1, Result);

A 85

Value=StringToReal(Result);

La funcin WWRequest() est en 1 si la aplicacin est corriendo, y el valor ha sido obtenido satisfactoriamente. Est en 0 cuando la aplicacin est ocupada y en -1 cuando hay un error. De este modo el estado de este comando puede ser monitoreado:

Status=WWRequest(excel, sheet1, r1c1, Result);

Donde : Status es un tag entero que puede ser 1, -1 0.

3.14.- Definicin de Window Name to Insert Accionando este botn se inserta automticamente el nombre de una ventana en un script, aparecer el cuadro de dilogo Window Name to Insert:

3.15.- Definicin de Choose Name Accionando este botn se accesa a todos los tagnames de la base de datos (incluyendo todos los tagnames internos del sistema) para ingresar el script en la posicin respectiva; aparecer el cuadro de dilogo Choose Name...

A 86

Lee solamente el tagname de seguridad entero usado en expresiones o script para controlar las propiedades del operador en la ejecucin de funciones especficas. Por ejemplo, para hacer que un objeto sea visible dependiendo del registro de nivel de acceso del operador, la siguiente expresin podra ser usada para en vnculo de visibilidad:

$AccessLevel=>2000;

Nota: La funcionalidad de tocar objetos puede ser tambin basado en valor del $AccessLevel usado en una expresin para un objeto, botn, etc., que es asignado al vnculo de animacin Disable.

Es un tagname discreto de lectura/escritura que se setea en 1 para reiniciar el registro de alarma y de impresin durante el runtime cuando el comando /Special/Restart Alarm Log ha sido desabilitado en el WindowViewer.

A 87

Nota Especial: El tagname $AlarmLogging no puede ser usado para desactivar un registro de alarma o de impresin. Este es usado estrictamente en lugar del comando /Restart Alarm Log. Si el valor de $AlarmLogging es mostrado siempre ser 0 (off) (cada vez que el registro se realiza).

Lee solamente el tagname discreto que est en 1 si existe un error de impresora.

Lee solamente el tagname discreto que est en1 si la impresora no tiene papel.

Lee solamente el tagname discreto que est en 1 si la impresora est fuera de lnea.

Lee solamente el tagname discreto que est en 1 si la impresora est sobrecargada.

Lee slo el tagname real que muestra el nmero actual de la versin de la aplicacin. Este nmero cambia cada vez que un tagname o script es cambiado, agregado o borrado.

Es

un

tagname

de

seguridad

discreto

de

Lectura/Escritura que puede ser usado en un botn discreto para permitir al operador establecer el valor de 1 en el tagname $ChangePassword para hacer que aparezca el cuadro de dilogo Change Password. (Una vez que el cuadro desaparece, el sistema automticamente deja el valor en 0).

Es

un

tagname

de

seguridad

discreto

de

Lectura/Escritura que puede ser usado en un botn discreto para permitir al operador establecer el valor de 1 en el tagname $ChangePassword para hacer que aparezca el

A 88

cuadro de dilogo Configure Users para editar la lista de usuarios de seguridad. (Una vez que el cuadro desaparece, el sistema automticamente deja el valor en 0).

Es un tagname entero slo de lectura que muestra el nmero total de das que han transcurridos desde 1/1/70.

Es un tagname entero slo de lectura que muestra la fecha en el mismo formato que el archivo WIN.INI. Por ejemplo 4/18/92. (Este formato de fecha es establecido a travs del Panel de Control de Windows.)

Es un tagname real slo de lectura que muestra el nmero completo de das que han transcurridos desde 1/1/70.

Es un tagname entero slo de lectura que muestra el da y su valor puede ser desde 1 a 31.

Es un tagname discreto de Lectura/escritura usado para monitorear y/o controlar la partida y parada de un registro histrico.

Es un tagname real slo de lectura que muestra la hora y el da y su valor puede ser de 0 a 23.

Es un tagname de seguridad discreto slo de Lectura que es igual a 1 cuando el tiempo configurado para un registro automtico del operador ha terminado.

Nota: El tiempo para $InactivityTimeout es establecido (en segundos) en el men /Special/Configure... /View Generic

Es un tagname de seguridad discreto slo de Lectura

A 89

que es igual a 1 cuando el tiempo configurado para advertir al operador que ha terminado el tiempo de espera para termino de sesin o de tarea.

Nota Especial: El tiempo para los dos ltimos tagnames explicados es establecido en el men /Special/Configure... /View Generic al ingresar el nmero de segundos en los siguientes campos.

Es un tagname discreto de Lectura/Escritura usado para monitorear y/o controlar la ejecucin de scripts.

Es un tagname real slo de lectura que muestra los minutos y su valor puede ser de 0 a 59.

Es un tagname entero slo de lectura que muestra el mes y su valor puede ser de 0 a 12.

Es un tagname entero slo de lectura que muestra los milisegundos y su valor puede ser de 0 a 999. (Este nmero se incrementa cada segundo)

Es un tagname discreto de lectura/escritura que es igual a 1 cada vez que ocurre una nueva alarma. Este tagname puede ser vinculado a programa WWBeeper o al tagname interno PlaySound para provocar una alarma sonora

A 90

para alertar al operador sobre la nueva condicin de alarma. Un botn puede ser creado para permitir resetear este valor en 0.

Es un tagname entero slo de lectura usado para mostrar la ubicacin del pixel horizontal de un objeto seleccionado.

Es un tagname entero slo de lectura usado para mostrar la ubicacin del pixel vertical de un objeto seleccionado.

Es un tagname de mensaje de seguridad slo de lectura que puede ser usado en una expresin o script para controlar la capacidad del operador de ejecutar funciones especficas. Por ejemplo, acceder a una ventana especfica podra ser controlada al ingresar el siguiente script:

IF $Operator==DayShift THEN Show Control Panel Window; ENDIF

Es un tagname de mensaje de seguridad slo de lectura/escritura que puede ser usado para crear una ventana de registro (log on) personalizada. Los objetos de entrada Touch-sensitive y/o scripts pueden ser vinculados a este tagname para configurar el UserName del operador.

Es un tagname de mensaje de seguridad que puede ser usado para crear una ventana de registro (log on) personalizada. Los objetos de entrada Touch-sensitive y/o scripts pueden ser vinculados a este tagname para configurar el Password del operador. Ejemplo: $PasswordEntered;

A 91

Nota: Si las dos entradas recin mencionadas son vlidas, $AccessLevel y $Operator son establecidos a sus valores predefinidos.

Es un tagname entero slo de lectura que muestra los segundos y su valor puede ser de 0 a 59.

Es un tagname discreto de lectura/escritura usado para partir conversaciones DDE no iniciadas durante el runtime cuando el men /Special ha sido deshabitado.

Es un tagname del tipo grupo de alarmas del sistema (system alarm group) slo de lectura para el grupo raz de alarmas (alarm root group). Si el nombre de un AlarmGroup no est creado para un tagname, es automticamente asignado a este grupo raz por defecto. Todos los Grupos de Alarmas definidos derivan de $System.

Es un tagname entero slo de lectura que muestra la hora en milisegundos desde la medianoche.

Es un tagname de mensaje de memoria slo de lectura que muestra la hora en el mismo formato que el archivo WIN.INI. Por ejemplo 12:01:59 PM. (Este formato de fecha es establecido a travs del Panel de Control de Windows.)

Es un tagname entero slo de lectura que muestra el ao en cuatro dgitos, por ejemplo, 1990.

Definiciones de los Campos de Alarma en Choose Field Name Todos los tagnames en el Data Dictionary tienen campos (.fields) asociados a ellos que pueden ser usados para crear a una variedad de

A 92

aplicaciones dinmicas, por ejemplo, establecer y mostrar lmites de las alarmas, cambiar el tiempo de partida y longitud de un grfico de Tendencia Histrica (Historical Trend), etc. Este botn accesa al cuadro de dilogo Choose field name...:

Es un .field discreto de lectura/escritura usado para monitorear y/o controlar el estado de reconocimiento de alarmas de los tagnames, Alarm Groups y/o Group Variables. Ejemplos: Tagname.Ack=1; GroupName.Ack=1 GroupVariable.Ack=1;

Es un .field discreto slo de lectura que es igual a 1 cuando existe una condicin de alarma para el tagname, Alarma Group Name o Group Variable especificados. Ejemplo: AlarmaGroup.Alarm;

Es un .field anlogo de lectura/escritura (vlido solamente para tags enteros o reales) que monitorea y/o controla del porcentaje de desviacin de la

A 93

banda muerta para las alarmas de mayor y menor desviacin. Por ejemplo, para cambiar el porcentaje de desviacin a 25%, se puede usar la siguiente instruccin: Tagname.AlarmDevDeadband=25

Es un .field discreto de lectura/escritura que habilita o deshabita sucesos y alarmas en un tagname, Alarm Group o Group Variable. Ejemplo: GroupVariable.AlarmEnabled=1;

Es un .field anlogo de lectura/escritura (vlido solamente para tags enteros o reales) que monitorea y/o controla el valor de la banda muerta de una alarma. Este campo es vlido para Alarm Groups y Group Variables como tambin para tags comunes.

Tagname.AlarmValDeadband=10;

Es un .field anlogo de lectura/escritura (vlido solamente para tags enteros o reales) que monitorea y/o controla el target para las alarmas de mayor y menor desviacin. Ejemplo: Tagname.DevTArget=500;

Es un .field del tagname discreto slo de lectura usado para determinar cuando existe una alarma de tipo especfico. Por ejemplo, .HiHiStatus ser 1 cuando existe una alarma HiHi para el tagname. (Tambin se aplica a .HiStatus, .LoStatus, .LoLoStatus, .MinorDevStatus, .MajorDevStatus, .ROCStatus y .SPCStatus.)

Es un .field de tagname anlogo de lectura/escritura usado para monitorear y/o controlar los lmites para los valores que la alarma contiene y esos

A 94

campos son validos slo para tags enteros o reales. (Tambin se aplica a .HiLimit, .LoLimit y .LoLoLimit) Ejemplo: RealTag.LoLoLimit Es un .field de un tagname entero tipo lectura/escritura usado para monitorear y/o controlar el contenido de la desviacin de la alarma. (Tambin se aplica a .MajorDevPct, .ROCPct). Ejemplo: IntegerTag.ROCPct

Son .Field de tagname discreto slo de lectura usados para determinar cuando existe una alarma de un tipo especfico. Por ejemplo:

.MinorDevStatus ser 1 cuando hay una alarma MinorDevStatus para el tagname.

Campo slo de lectura que muestra el campo comment del tagname. Ejemplo: Tagname.Comment

Campo de las Tendencias Histricas en la Definicin de Choose Field Name... En los siguientes ejemplos asumir que ht es un tagname tipo HistTrend.

Es un .field de un tagname entero de tipo lectura/escritura usado para controlar el tiempo de partida y/o desplegar el grfico de la tendencia histrica correspondiente. .ChartStart muestra el nmero de segundos transcurridos desde el 1/1/80 a las 12:00 a.m. Ejemplos:

A 95

Desplazar a la derecha por 1 minuto: ht. ChartStart = ht. ChartStart + 60;

Desplazar a la izquierda por 1 hora: ht.ChartStart = ht.ChartStart -3600;

Es .field de un tagname entero de lectura/escritura usado para mostrar la longitud del tiempo mostrado en un grfico de tendencia histrica. .ChartLength muestra la longitud del grfico en segundos. Ejemplos :

Forzar el intervalo del grfico a 1 hora: ht.ChartLength = 3600 {60 minutos * 60 segundos/minuto}

Despliegue del grfico izquierdo por la mitad: ht.ChartStart = ht.ChartStart - ht.ChartLenght / 2;

Despliegue del grfico izquierdo en un 10%: ht.ChartStart = ht. ChartStart - 1 * ht. ChartLength

Son .fields de tagname real de escritura/lectura usados para representar el porcentaje del rango en Unidades de Ingeniera del tagname que podra ser mostrado por cada tag que est siendo dirigido. Las unidades para .MaxRange y .MinRange son de 0 a 100 y .MinRange debe ser siempre menor que .MaxRange. Si un valor menor que 0 o mayor que 100 es asignado a estos campos sern aproximados a 0 o 100. Si .MinRange es mayor o igual que .MaxRange la tendencia no mostrar ninguna informacin.

Es un .field de tagname anlogo de lectura/escritura usado

A 96

para determinar el mtodo a usar en mostrar los valores en la tendencia. Ejemplo: HistTrendChart.DisplayMode=2 Las entradas son:

1. Muestra el min/max por cada perodo de muestreo (por defecto). 2. Muestra el valor medio por cada perodo de muestreo usando un diagrama scatter(dispersin). 3. Muestra el valor medio por cada perodo de muestreo usando un diagrama bar chart(grfico de barras).

Es un .field de un tagname TagID de lectura/escritura usado en conjunto con los tagnames TagID Historical Trend .Pen1 - .Pen4 para monitorear y/o controlar el tagname que est siendo dirigido por un trazador (descrito a continuacin).

Es un .field de un tagname tipo TagID de lectura/escritura usado para controlar el tagname que est siendo histricamente dirigido por cada trazador. (Tambin se aplica a .Pen2, .Pen3 y .Pen4. Un tagname tipo TagID solo puede ser igualado por otro tagname TagID. Este no puede ser mezclado con otro tipo de tagname a menos que el campo de extensin .TagID sea agregado al otro tagname. Por ejemplo, de acuerdo a HistTrendTag.Pen1 para dirigir el tagname Temperature, este debe tener agregado el campo .TagID. Ejemplo: HistTrendTag.Pen1= Temperature.TagID; Pen01 = HistTrendTag.Pen1;

Este script iguala el tagname TagID HistrendTag.Pen1 a Temperature.TagID y tambin Pen01 a HistTrendTag.Pen1. Donde Pen01 es un tagname tipo TagID. Entonces un campo de salida vinculado a Pen01.Name mostrar Temperature.

A 97

Para controlar dinmicamente el despliegue de Unidades de Ingeniera mnimo y mximo, por el tagname que est siendo dirigido por cada trazador, el tagname TagID debe ser igualado a un tagname tipo Indirect Analog. Por Ejemplo: IndirectAnalogTag.Name = Pen01.Name;

Donde el tagname TagID Pen01 se iguala al IndirectAnalogTag el cual puede ser usado en cuatro script de cambio de dato ( Data Change Scripts) que son vinculados a los campos Historical Trend.Pen1-.Pen4. Por ejemplo, un Data Change Script podra ser creado por HistTrendTag.Pen1 como sigue:

Pen01 = HistTrendTag.Pen1; IndirectAnalogTag.Name = Pen01.Name;

Los vnculos Analog Output pueden ser entonces creados y vinculados a las siguientes instrucciones para mostrar los Eus ( Unidades de Ingeniera) mnimo o mximo de acuerdo con el tagname que est siendo dirigido:

IndirectAnalogTag.MinEU; IndirectAnalogTag.MaxEU;

Es un .field de un tagname discreto de lectura/escritura que puede estar en 1 para actualizar un grfico de tendencia histrica usando todos los valores actuales. Un cambio debe ser hecho para comenzar el grfico, longitud de grfico, etc. de acuerdo al grfico para actualizar y mostrar los valores actuales para los tagnames especificados. Usando este .field en un script de action pushbutton permitir al operador actualizar el grfico cuando sea necesario durante el runtime. Ejemplo: HisTrendTag.Update Trend = 1;

A 98

Es un campo entero solo de lectura que es incrementado cuando una recuperacin es completa para una tendencia.

Es un campo discreto solo de lectura que muestra el estado de recuperacin de informacin histrica (0=no hay recuperacin, 1= recuperacin en curso).

Es un campo discreto de lectura/escritura. Cuando el valor de este campo es TRUE, el scooter derecho no se puede mover hacia la izquierda (0=FALSE, 1= TRUE).

Es un campo discreto de lectura/escritura. Cuando el valor de este campo es TRUE, el scooter izquierdo no se puede mover hacia la derecha (0= FALSE, 1=TRUE).

Es un campo real de lectura/escritura que representa la posicin del scooter izquierdo (Rango 0.0-1.0).

Es un campo real de lectura/escritura que representa la posicin del scooter derecho (Rango 0.0-1.0).

Definicin de .Field Miscellaneous en el Choose Field Name ...

Es un .field anlogo slo de lectura que muestra el valor mximo del tagname en Unidades de Ingeniera.

Es un .field anlogo slo de lectura que muestra el valor mnimo del tagname en Unidades de Ingeniera.

A 99

Es un .field de tagname de mensaje slo de lectura usado para mostrar el nombre de un Alarm Group que est indicando un Group Variable, o el nombre de un tagname TagID, o slo es el nombre de un Tagname de Intouch.

Es un .field de un tagname de mensaje slo de lectura que es igual a 1 cuando no hay alarmas para el nombre especificado. Este campo es vlido para Alarm Groups y Group Variables como tambin tag comunes.

Es un .field de un tagname anlogo slo de lectura que muestra el valor del tagname especificado.

Direccionando Bit .Fields para Tagnames Anlogos Los bits simples dentro de un tagname entero pueden ser direccionados usando el bit.field. Todos ellos son considerados como discretos (0/1) y si se graban, el tagname es actualizado inmediatamente. Estos campos pueden ser usados donde se utilice un tagname discreto, por ejemplo, DDE, scripts, expresiones, etc.

.00 bit menos significativo (LSB) .01 .02 . . . .31 Bit ms significativo en un entero de 32 bits (MSB)

El siguiente ejemplo muestra como usar el bit fields dentro de una expresin:

Temperature.08==1;

A100

o, dentro de un script: IF Temperature.29 THEN Temperature.29=0; ENDIF;

Nota: El bit 31 representa el bit de signo. Si es 1 el nmero es negativo. Si es 0 el nmero es positivo. Se usa complemento 2s. IF-THEN-ELSE y Comparaciones de Scripts La instruccin IF-THEN-ELSE es usada para ejecutar condicionalmente varias instrucciones basadas en el estado de una expresin. Las siguientes operaciones de comparacin son usadas para establecer las condiciones en la instruccin IF-THENELSE: < > <= >= == <> Menor que Mayor que Menor o igual que Mayor o igual que Equivalencia (es igual a) Distinto

Ejemplos de IF-THEN-ELSE

Instruccin IF-THEN sin condicin ELSE: IF a<>0 THEN a=a+100; ENDIF;

Nota: Cada IF debe tener un ENDIF y un punto y coma debe terminar cada lnea de instruccin.

A101

3.16.- Caracterstica de Seguridad Seguridad en una aplicacin

es

una

caracterstica

opcional.

Si

la

implementamos, proporcionamos el desarrollo de una aplicacin la capacidad de controlar o no una operacin especifica donde se permiten realizar funciones especificas a una aplicacin que estn vinculadas a esa funcin de variables de seguridad interna. Adems, cuando la seguridad es establecida en una aplicacin el establecimiento de rutas puede ser creado con vnculos de registros del operador para todas las ALARM/EVENTS que ocurren durante el tiempo en que se han creados en el sistema. La seguridad esta basada en el concepto de que el operador registra para la aplicacin y entra el/los User Name y Password. ( La aplicacin establece desarrollos de cada operador con un User Name, o preasignando Password y un Access Level va el comando /Special/Security/Configure User en cualquiera de los dos WindowMaker o WindowViewer.) Una vez que el operador registra la aplicacin, accede a algunas funciones de proteccin que son reconocidas por la verificacin del registro de los operadores en el Password y Access Level a travs de valores especficos para la variable de seguridad interna que esta vinculada a esta funcin. Por ejemplo, acceder a Windows, o ver un objeto, pushbutton, etc., pueden ser controlados especificndose el Access Level que tiene que ser mayor que 2000. 3.16.1.- Comandos del Men Seguridad El comando usado para establecer seguridad en una aplicacin es accesible desde el men /Special en ambos, WindowMaker o WindowViewer. El comando /Special/Security son usado para habilitar y desabilitar la aplicacin, cambiar la Password y configurar la lista de nombres de usuarios, password y niveles de acceso. Cuando se llama este comando un segundo men de comando aparece en pantalla:

A102

Variables de Seguridad Interna Son 2 variables de seguridad interna que se usan en expresin o lgica de control si el registro del operador permite llevar a cabo funciones especificas:

$AccessLevel Entero $Operator Mensaje

0-9999 16 Caracteres max.

Leer solamente Leer solamente

Por ejemplo, crear un objeto que se haga visible basado en el registro en usuario nivel de acceso, el siguiente estamento puede ser usado:

$AccessLevel => 2000;

o, un script puede ser limitado por un estamento IF: If $Operator ==DayShift THEN Show Control Panel Window Endif Los objetos pueden ser tambin desabilitados basados sobre el valor de una variable de seguridad interna usando l vinculo de animacin Disable. Por ejemplo:

3.17.- Introduccin de Alarmas La mayora de los sistemas automticos dependen de serios tipos anlogos de medidas junto con el estndar digital de I/O para controles precisos de estos procesos. Estas medidas tienen que ver con temperatura, posicionamiento, flujos y niveles, por nombrar unos pocos. En muchos casos, las medidas criticas necesitan ser monitoreadas

A103

cerradamente y/o registradas. Una solucin a esto son los vnculos de variables de alarmas. La mayora de los conceptos de alarmas implican un menor setpoint o valor normal para la variable junto con un valor de limite bajo y alto. Intouch apoya este concepto y ms. Los tipos de alarmas de apoyos para variables anlogas son: LowLow, Low, High, HigHigh, RateOfChange, Minor Deviation, y Major Deviation. Adems, una variable discreta puede ser una alarma definida para uno de estos conocidos estados.

Nota: Un tagname se transforma en alarma habilitada tan pronto como es configurada por los parmetros de alarma desde el diccionario del tagname.

Estos campos de alarma pueden ser usados por un control dinmicamente y/o monitor de varias condiciones de alarmas. Por ejemplo un pushbutton es quizs creado para crear una alarma individual, grupo de alarma o todas alarmas. Muchos de estos campos son accesibles usando DDE, expresiones y/o script. Los accesos DDE proporcionan al operador la habilidad de monitorear y/o controlar una informacin de alarma especifica usando otras aplicaciones de Windows, ejemplo, Excel o una aplicacin View remota. (Usando NetDDE).

3.18.- Alarma o Evento Un evento existe generalmente cuando un tagname predefinido es mejorado por el operador, DDE, una lgica script o por el sistema. En orden para el evento para ser ingresado en la ventana de alarma, registro o impresin, el tagname empieza a verse afectado necesita ser configurado para dejar registrados los eventos.

El grupo de alarmas de jerarqua Cada tagname es asignado a un grupo de alarma. Si un nombre de grupo de alarma no es creado, el tagname es automticamente asociado con el arraigamiento al grupo $System. Algunos grupos de alarmas tienen ambos tagnames y otros nombres de grupos de alarmas asociados a l. Los grupos de alarmas son organizados en una

A104

estructura de rbol jerrquico con el grupo de arraigamiento, $System, en la parte superior del rbol. Todos los grupos de alarmas se definen automticamente en forma descendiente del grupo de arraigamiento. Este rbol tiene hacia arriba 8 niveles. Cada grupo de alarmas tiene un mximo de 16 subgrupos. Cada subgrupo tiene un mximo de 16 grupo, etc. Esta ilustracin muestra solamente el grupo de alarma y no tagname con cada grupo. Este concepto de rbol es anlogo para la estructura MS-DOS, cuando un directorio ve el contenido de otro subdirectorio (grupos analgicos) y nombre de archivos (tagname analgico). Una vez que la estructura de grupos es creada, esto puede ser usado en mucho caminos que son discutidos ms adelante.

3.18.1.- Creando un Grupo de Alarmas Para crear un tagname de grupo de alarma realizar los siguientes pasos:

1.- Llamar el men /Special/Alarm Groups, o hacer click en el botn Group en el cuadro de dialogo DICCIONARY TAGNAME DEFINITION apareciendo el siguiente cuadro de dialogo:

2.- Hacer click en el botn ADD para acceder al cuadro Add Alarm Group.

Nota: Los botones Modify y Delete pueden hasta desabilitar un nuevo grupo de alarmas creado. El grupo de alarma $System no puede ser modificado o creado.

A105

3.- Entre el nombre del nuevo campo Group Name. En este ejemplo GroupA a sido creado como un subgrupo de Parent Group $System. Hacer click en Done para entrar un nuevo Group Name (nombre de grupo) y retornar a la ventana de seleccin del grupo de alarma. Para seleccionar otro Parent Group, hacer click en el botn Parent Group. El cuadro de dialogo Alarm Group Selection aparece. Seleccione el grupo deseado y presione Done.

Para modificar o borrar un grupo de alarma hacer click sobre el nombre del grupo que se modificara o borrara y seleccionar al botn apropiado.

Nota: Cuando un grupo de alarma es borrado con todos los tagnames que fueron asignados a ese grupo son bajados a un nivel en el rbol del grupo de alarmas.

Creando un Objeto Alarma Evento Intouch proporciona la habilidad de crear 2 tipos de alarmas de objetos; Alarm Summary y Alarm History. La principal diferencia entre las 2 es el que una Alarm Summary solamente muestra la alarma hasta que esta vuelva a la normalidad o es reconocida.

A106

En una ventana de alarma histrica, todas las condiciones de alarma son siempre mostrada. Estas ventanas pueden mostrar todas las Alarm/Events activas o un subseteo de los archivos de alarmas basada en el valor actual del grupo de alarmas y expresiones prioritariamente asociados con la muestra de una alarma particular adems de mostrar alarmas de redes.

Nota: l nmero de memorias de entrada de Alarm/Events mantenidas por WindowViewer /Alarm/Events. es configurado va el comando /Special/Configure

Nota: Una alarma muestra un objeto vinculado a otro dibujo de objeto en WindowMaker. Esto puede ser movido tomando con el mouse o puede ser modificado su tamao tomando uno de los Handles (pequeo cajas alrededor de la ventana). El texto que aparece usando la alarma objeto es inicialmente dibujado y muestra el texto proporcionando una idea como la muestra actual mostrado en el runtime. Mltiples alarmas muestran objetos que pueden tambin ser localizados dentro de una ventana.

A107

3.18.2.- Configurando un objeto Alarm/Events Inicialmente, el objeto Alarm/Events mostrado es dibujado con cualquiera de las dos configuraciones por defecto o para un objeto dibujado previamente. El cambio del seteo de configuracin, para cualquiera de las dos hacer click en el objeto Alarm/Events o llamando el comando /Special/Animation Links con el objeto Alarm/Events seleccionado. Donde aparece el cuadro de dialogo siguiente:

Seleccione el tipo de Alarm/Event visualizado. Estos son dos tipos : Alarm Summary y Alarm History.

Seleccione esta opcin para mostrar la barra de ttulos con niveles para cada columna en la alarma del objeto mostrado. Habilitando esta opcin provoca que aparezca el cuadro de seleccin Title Bar y Title Text Color: (todas las funciones de seleccin de color en el mismo camino y son descritos detalles pequeos).

Hacer click en el cuadro coloreado para acceder a la paleta de

A108

seleccin de color para elegir el color del objeto Alarm/Events mostrado en la barra de ttulo. Hacer click en el cuadro coloreado para seleccionar el color para la columna en la barra de ttulo. Hacer click en el cuadro coloreado para seleccionar el color de fondo de pantalla.

Hacer click en el cuadro coloreado para seleccionar el color del borde.

Hacer click en el cuadro coloreado para seleccionar el color del texto para alarmas no reconocidas mostradas en la pantalla de alarma.

Hacer click en el cuadro coloreado para seleccionar el color del texto para alarma reconocidas mostradas en la pantalla de alarma.

Hacer click en el cuadro coloreado para seleccionar el color del texto para retornar a la alarma normal mostradas en la pantalla de alarma.

Hacer click en el cuadro coloreado para seleccionar el color del texto para mostrar eventos en el objeto Alarm/Events.

Nota: La seleccin del color RTN y evento son solamente seleccionable para una ventana tipo Alarm History.

Para ver el evento de nodo local, configure una ventana Alarm History y seleccione Local (viene por defecto). Es una configuracin maestro/esclavo, seleccione Server para mostrar una lista de Alarm/Events para el nodo servidor. (El nodo servidor es especificado va el comando /Special/Configure/View Generic.)

A109

Haciendo click en este botn se accede al cuadro de dialogo Format Alarm Message para seleccionar varios items que son mostrados y cada mensaje de alarma visualizado en el objeto Alarm/Events.

Nota: Visualizando, imprimiendo y registrando mensajes de alarmas son todas formateadas de la misma manera.

Entre el nombre de un grupo de alarmas o de un grupo de variables en este campo. Si un grupo de alarmas es ingresado, el objeto Alarm/Events mostrara solamente la alarma en este grupo especifico. Para mostrar todas las alarmas en todos los grupos, use el nombre de grupo de arraigamiento, $System. Para controlar la eleccin de alarmas que se muestran en runtime, entre el nombre de una variable de grupo en este campo y entonces configure una accin de pushbutton o una tecla script para asignar un especifico nombre de grupo de alarma para el grupo de variable. Por ejemplo, lo siguiente presenta en la entrada en la accin para el pushbutton: GroupVariableTagname=AlarmGroupName;

A110

Entre el nivel alto de alarma para el rango de prioridades que sern visualizadas en el objeto alarma. Un tagname anlogo puede ser ingresado en este campo. El valor del tagname esta determinando la prioridad del nivel para ser mostrados. La prioridad de los nmeros de alarma para ser visualizado puede estar controlados por asignaciones de valores para estos tagnames a travs de un vinculo de entrada anloga o script.

Entre el nivel de alarma para el rango de prioridades que sern visualizadas en el objeto alarma. Un tagname anlogo puede ser ingresado en este campo. El valor del tagname esta determinando la prioridad del nivel para ser mostrados. La prioridad de los nmeros de alarma para ser visualizado puede estar controlados por asignaciones de valores para estos tagnames a travs de un vinculo de entrada anloga o script.

Nota: La prioridad de alarmas parte de un nivel alto, ejemplo, 1 es la prioridad alta.

Entre un tagname discreto que ser usado para mostrar la pagina a travs de la lista de mensajes de alarma (s hay ms del numero que permite la pantalla). Cuando el valor de la transicin de una variable discreta desde ON (1, verdadero) a OFF (0, falso), el objeto visualizado Alarm/Events mostrara la pagina previa. Una vez que se muestra la pagina previa, la variable discreta automticamente s resetea en ON, a menos que alcance la parte de arriba de la lista. En este caso, el valor de la variable que da en OFF y la accin de la pagina previa queda desabilitada. Para crear un pushbutton de pagina previa, crear un objeto y unir un vinculo Discrete Value Pushbutton usando el tagname discreto usado en el campo de pagina previa. Un vinculo de visibilidad puede ser tambin usado en el pushbutton de valor discreto para ocultar el botn cuando el valor del tagname discreto es OFF.

A111

Los datos ingresados en este campo de trabajo son lo mismo que el del campo de pagina previa descrita arriba excepto, en control de la funcin Next Page (siguiente pagina).

Hacer click sobre este botn para seleccionar el comando Font, este estilo y tamao se usa para mostrar el mensaje en el objeto visualizado Alarm/Events. Al llamar este comando se accede al cuadro de dialogo FONT:

3.18.3.- Configuracin de Alarm/Events Estos son 3 tipos de cuadros de dialogo de configuracin usadas para alarmas, el Alarm/Events, Alarm Loggin y Alarm Priting. A todas ellas se accede va el comando /Special/Configure:

3.19.- Alarm/Events Hacer click en este botn para configurar varios parmetros que afectan a Alarm/Events. El cuadro de dialogo Alarm/Events Configuration aparecer:

A112

3.19.1.- Registro de Alarmas Hacer click sobre este botn para configurar el archivo de registro de alarmas. El siguiente cuadro de dialogo aparece:

Seleccione esta opcin para habilitar el registro de alarmas. Los archivos se pondrn en el directorio seleccionado y nombrados automticamente como sigue: YYMMDDHH.ALG

Donde:

YY MM DD HH

es igual al ao en que el archivo fue creado. es igual al mes en que el archivo fue creado (01-12). es igual al da en que el archivo fue creado (01-31). es igual a la hora en que el archivo fue creado (00-23).

Por ejemplo, si un archivo es creado cada 8 horas a partir de las 6 AM en Abril 30 de 1992, entonces el nombre quedara como sigue:

92043006.ALG 92043014.ALG 92043022.ALG

A113

Entre el nmero de valor de la hora del dato de alarma para ser provisto en cada archivo de registro. Los valores de ingreso son entre 1 y 24.

Entre el intervalo de hora para que el primer registro empiece. Las entradas validas deben estar entre 0 (para 12:00 AM) y 23 (para 11:00 PM). Ejemplo 1: El operador de planta realiza 3 cambios. El primer cambio comienza a las 6:00 AM. Las alarmas son registradas por cambios individuales. Entonces, ingrese 8 en el campo Numer of Hours to Cycle Filaname y 6 en el campo Starting at Hour (023). Ejemplo 2: El operador de planta realiza 3 cambios. Las alarmas son registradas por das con la partida del registro de archivo para medianoche. Entonces, ingrese 24 en el campo Numer of Hours to Cycle Filaname y 0 en el campo Starting at Hours (0-23).

Entre el nmero del valor de das del registro de archivo para ser retenido en el disco. Por ejemplo, si 10 es ingresado y es el da 12 del mes, el registro archiva desde el segundo al 12 y el 1 automticamente ser borrado.

Nota: Cuando se ingresa 0 (cero) para el da, el archivo de registro ser guardado indefinidamente.

Seleccione este botn para acceder al cuadro de dialogo Format Alarm Message para configurar el contenido del mensaje de alarma escrito para el archivo de registro.

3.19.2.- Imprimiendo Alarmas Hacer click sobre este botn para configurar la puerta que

A114

ser usada para imprimir, el formato de impresin de mensaje de alarmas, grupos especficos de alarmas y/o prioridad de alarmas para ser impreso. Al llamar este comando accede al cuadro de dialogo Alarm Printer Configuration:

Si usa una puerta paralela, seleccione la puerta donde se usara la impresora. (None es el seteo por defecto).

Si la impresora usa una puerta serial, seleccione la puerta donde se usara la impresora. Una vez hecha la seleccin, el campo Configuracin aparece. El formato del valor ingresado en este campo es el mismo que el requerido por el comando del modo DOS (BaudDate, Parity, DataBits, StopBits). El siguiente es el valor valido para cada entrada en la variable:

BaudRate: Parity: DataBits: StopBits:

110, 150, 300, 600, 1200, 4800, 9600, 19200 O (odd), E (even), N (none) 7o8 1o2

Nota Especial: Cuando se imprime alarmas, Intouch toma el control completo de la puerta. Por lo tanto, una impresora seleccionada es requerida . No para otras aplicaciones, ejemplo Excel puede usar la impresora hasta que la impresin de alarma la desabilita.

A115

Seleccione este botn para acceder al cuadro de dialogo Format Alarm Message para configurar el contenido de la impresin del mensaje de alarma.

3.20.- Campos de Alarmas La sintaxis Tagname.FieldName puede ser usada para acceder al campo de datos asociados con un tagname en la base de datos. Esto es til para el seteo y visualizacin del limite de alarma, etc.

Campo discreto de lectura y escritura usado para monitorear y/o controlar el estado de tagname, grupo de alarma y/o grupo de variables. Ejemplo:

Tagname.Ack=1; GroupName.Ack=1; GroupVariable.Ack=1;

Campo discreto solamente de lectura, esto es igual a 1 cuando existe una condicin de alarma para el tagname especifico, nombre del grupo de alarma o grupo de variable, ejemplo: AlarmGroup.Alarm;

Campos anlogo de lectura y escritura, (solamente validos para tagnames enteros o redes). El monitoreo y/o control del porcentaje de desviacin de banda muerta para mayor y menor desviacin de alarmas. Por ejemplo, para cambiar el porcentaje a 25%, el siguiente estamento ser usado:

Tagname.AlarmDevDeadband=25;

Campos discreto de lectura y escritura, esto desabilita y/o

A116

habilita eventos y alarmas para un tagname, grupo de alarmas o grupo de variables. Ejemplo: GroupVariable.AlarmEnable=1;

Campo anlogo de lectura y escritura (solamente validos para tagnames enteros o reales) esto monitorea o controla el valor de una alarma de banda muerta. Este campo es valido para grupos de alarmas y grupo de variables para un tagname ordinario. Tagname.AlarmValDeadband=10;

Campo anlogo de lectura y escritura (solamente valido para tagnames enteros y reales) esto monitorea y/o controla la tarjeta para menor y mayor desviacin de alarmas. Ejemplo: Tagname.DevTarget=500;

Campo solamente de lectura de tagnames discretos usados para determinar si una alarma de tipo especifico existe. Por ejemplo .HiHiStatus ser igual a 1 cuando hay una alarma HiHi para el tagname. (Algunas aplicaciones para .HiStatus, .LoStatus, .LoLoStatus, .MinorDevStatus, .MajorDevStatus, .ROCStatus y .SPCStatus.).

Campos de lectura y escritura de tagnames anlogos usados para monitorear y/o controlar los limites para valores de chequeo de alarmas y estos campos son solamente validos para tagnames enteros y reales. (Algunas aplicaciones para .HiLimit, .LoLimit, y .LoLoLimit.). Ejemplo: RealTag,LoLoLimit

Campos lectura y escritura de tagname enteros usados para

A117

monitorear y/o controlar el chequeo de la desviacin de alarma. (Algunas aplicaciones para .MajorDevPct, .ROCPct.). Ejemplo:

IntergeTag.ROCPct

Campos de solamente de lectura de tagnames discretos usados para determinar si una alarma de un tipo especifico existe. Por ejemplo: .MinorDevStatus ser igual a 1 cuando hay una alarma de MinorDevStatus para el tagname.

3.21.- Campo de acceso DDE de alarma El siguiente campo de alarma es accesible usando DDE, una expresin y/o Scripts. El acceso DDE provee al operador la habilidad de monitorear y/o controlar una informacin de alarma de tagname especifico usando otra aplicacin de Windows, ejemplo: Excel o una aplicacin View remota (usando NetDDe).

.Ack .Alarm .AlarmEnable

(0/1) (0/1) (0/1) Lee solamente

Los siguientes campos de alarmas son aplicables para tagnames reales o enteros solamente:

.AlarmDevDeadband .AlarmValDeadband .HiHiLimit .HiHiStatus .HiLimit .HiStatus (0/1) Solamente lectura (0/1) Solamente lectura

A118

.LoLimit .LoStatus .LoLoLimit .LoLoStatus .DevTarget .MajorDevPct .MajorDevStatus .MinorDevPct .MinorDevStatus .ROCPct .ROCStatus (0/1) Solamente lectura (0/1) Solamente lectura (0/1) Solamente lectura (0/1) Solamente lectura (0/1) Solamente lectura

El siguiente es un ejemplo de cmo usar este campo dentro de una expresin:

Temperature.HiHiStatus==1;

O dentro de un script IF Temperature.HiHiStatus THEN Temperature.AlarmValDeadband=3; ENDIF;

3.22.- Tendencia de Tiempo Real y Tendencia Histrica El paquete del software Intouch tiene la capacidad de mostrar tendencias de grficos de la entrada de la base de datos. Ellos son creados por el uso especial de herramientas desde la barra de herramientas de WindowMaker. La tendencia de grfico puede ser muy pequea o abarcar un rea de pantalla entera. No hay limite para el nmero de grficos que puedes colocarse en una pantalla. Los grficos tienen la apiencia de papel grfico con el valor del tiempo en movimiento desde derecha a izquierda. Varias opciones estn disponibles para personalizar la apariencia del grfico de tendencia. El operador puede especificar el tiempo abarcado, valores de rango,

A119

resolucin de grilla, localizacin de la marca de tiempo, localizacin de la marca de valores, nmero de anotaciones (sobre 4) y atributos de color. Existen 2 tipos de objetos grficos, Tendencia de Tiempo Real y de Tendencia Histrica. Adems para la capacidad de tendencia de Intouch, 2 utilidades son incluidas en el paquete del software, HDMerger y HistData. Ambos son diseados para trabajar con el registro Histrico. La utilidad HistData convierte archivos de registro de datos histricos (.log) en archivos separados por coma (.CSV) para ser usados en hoja de calculo o entorno a una edicin de texto (ej. MSExcel). La utilidad HDMerge permite la unin de varios archivos de registro .CSV con el archivo ONE.CSV.

3.22.1- Tendencia de Grfico en Tiempo Real La tendencia de objetos en tiempo real provee la habilidad para cambiar un grfico y registro cuando ellos estn pasando para alguna base de datos de un tagname especifico o a una expresin que contiene uno o ms tagnames. Un grfico de tendencia de tiempo real es creado para seleccionar la herramienta de tendencia en tiempo real (tercera herramienta en la segunda fila) en la barra de herramienta de WindowMaker y usando la herramienta se crea el rectngulo de tendencia.

A120

Nota: La tendencia en tiempo real del objeto es vinculada a algn otro objeto. Esto puede ser movido agarrando del centro con el mouse o redimencionado al agarrar uno de las esquinas circundantes.

3.22.2.- Configuracin de una tendencia en Tiempo Real Cuando una tendencia de tiempo real de un objeto es dibujada, sta configuracin se sesteara por defecto para cualquiera de los dos sistemas (s este es el primer dibujo de tendencia) o para el seteo de configuracin del dibujo de tendencia previo. Para cambiar el seteo de configuracin hacer doble click en la tendencia del objeto. El cuadro de dilogo Real Time Trend Configuration aparecer:

Entre el valor para todo el largo de tiempo para ser mostrado horizontalmente (eje X) en el grfico de tendencia. Entonces seleccione el botn para el incremento del tiempo que

empieza a contar. Por ejemplo, si se ingresa 30 y se selecciona Mn, el tiempo ser horizontalmente en el grfico por 30 Minutos.

Entre un nmero para la frecuencia en que la tendencia de expresin ser evaluada. Entonces seleccione el botn para incrementar el tiempo en

A121

que empiece a contar. Por ejemplo, si se ingresa 10 y se selecciona Sec. la expresin ser evaluada cada 10 segundos.

Haga click en el cuadro coloreado para acceder a la paleta de colores de Intouch para seleccionar el color de fondo y del borde para la tendencia.

Entre el nmero de lneas de mayor desviacin para ser visible en el rea de tendencia. El color de estas lneas es mostrado en el cuadro adyacente, para un nuevo color hacer click sobre este cuadro.

Entre el nmero de lneas de menor divisin para ser visibles las lneas de menor divisin. El color de estas lneas se muestra en el cuadro adyacente, para elegir un color nuevo hacer click sobre este.

Chequee el cuadro para la etiqueta de tiempo deseado. Entre el nmero de la etiqueta de tiempo por mayor divisin en el cuadro de entrada. Haga click sobre el cuadro coloreado para seleccionar el color de la etiqueta. Seleccionar al formato deseado para la etiqueta de tiempo.

El valor de la etiqueta se configura igual que la etiqueta de tiempo. El valor Mn/Mx. es ingresado en el seteo del rango del valor vertical (eje Y) para la ventana de tendencia. Este rango es en Unidad de Ingeniera (EU) y el mismo para todos los tagnames de tendencia.

Nota: para puntos decimales se muestra una runtime para el valor mnimo y mximo ello se hace entrando en los cuadros Mn y Mx.

A122

Ms de 4 anotaciones pueden ser visibles en una ventana de tendencia. Las anotaciones pueden ser usadas para mostrar uno o ms tagnames. La habilidad para la tendencia de expresin es til en la creacin de ventanas personalizadas para mostrar tagnames con muchos rangos ampliamente diferentes. El color del tagname tender en est muestra en el acompaamiento en el cuadro coloreado que al hacer click sobre l se selecciona el nuevo color. El ancho de la anotacin puede tambin ser configurado en el entrada del ancho del cuadro.

Nota: Seleccionando un gran ancho de anotacin mayor que una significancia reduce el rendimiento en la actualizacin de pantalla e impresin.

Seleccionando sta opcin causa que la tendencia solamente actualizada cuando est es parte de una ventana visualizada (ayuda en RAM).

Hacer click en este botn para acceder al cuadro de dilogo Font para seleccionar el tipo de letra, el estilo y tamao para ser usado en la impresin.

Aumentando la representacin en tiempo real Para la aumentar la representacin de tendencia en tiempo real haga lo siguiente: 1.- Setee la anotacin con ancho 1 2.- Asegrese de que otro objeto no este en el lugar de arriba del grfico de tendencia de tiempo real. 3.- Los nmeros ms bajos de muestra son tomados. Por ejemplo:

A123

Si la envergadura del tiempo en el seteo es de 30 Minutos y los intervalos de muestra estn seteados a 2 segundos, el nmero de muestras que sern tomadas durante 30 Minutos pueden ser calculado como sigue: 30*60/2

3.23.- Grfico de tendencia Histrica La tendencia histrica no es dinmica. Esto provee una imagen Snap Shot de datos para un tiempo y datos del pasado. Distinto de la tendencia de tiempo real, la tendencia histrica solamente se actualiza cuando Told se hace va script, expresin o por el operador pulsando un botn. Hasta 4 tagnames pueden ser tendencia de una vez sin limite del nmero de tendencia de objetos visualizados. Se tiene completa flexibilidad en disear una interface para el grfico de tendencia. Se pueden crear Scooters o cursos de datos, el operador puede crear Slides por encima de la tendencia para acceder a una variedad de datos basados en la actual localizacin del scooters. Por ejemplo, cuando el scooters es posesionado sobre un rea en la tendencia estos datos son visibles, la localizacin del scooters retornar el tiempo y valor para todas las anotaciones (tagnames) que son tendencia. Se pueden crear botones para aumentar (zoom In) o disminuir (zoom Out) entre los scooters o datos, tal como el valor mximo y mnimo. El promedio y desviacin estndar pueden ser mostrados del grfico completo o del rea entre scooters. El grfico de tendencia histrica puede tambin ser mostrado por algn tiempo. Se puede crear escalas personalizadas y vincular campos .MnEU y MaxEU para mostrar en EU los mximos y mnimos. Para crear un grfico de tendencia histrica, seleccione la herramienta de tendencia histrica en la barra de WindowMaker, entonces mover el cursor para alguna rea en blanco de la pantalla. Dibujar el objeto de tendencia histrica soltando y manteniendo el botn del mouse apretado un momento, dibujando con el mouse diagonalmente para hacer un rectngulo. Suelte el botn y un objeto de tendencia histrica aparecer.

A124

El objeto de tendencia histrica es vinculado a algn otro objeto. Esto puede ser movido agarrando del centro con el mouse o esto puede ser redimencionado agarrando una de las esquinas del objeto.

3.23.1.- Configuracin de una tendencia histrica Cuando un objeto de tendencia histrica es dibujado, est configurado por defecto para cualquiera de los dos sistemas (si este es el primer dibujo de tendencia) o configurado por el dibujo de tendencia anterior. Para cambiar la configuracin haga doble click sobre el objeto de tendencia. El cuadro de dilogo Historical Trend Configuration aparecer:

A125

Nota: Para grficos de tendencia histrica solamente, cuando no comienza la tendencia de inmediato, el color del rea mostrada ser la misma que el color del borde seleccionado. Por ejemplo, si la mquina es impulsada desde las 6:00 a las 7:00, los datos para este intervalo de tiempo ser graficado usando el color del borde seleccionado. Por lo tanto, esto se recomienda para que el color sea diferente para alguno de los colores de anotacin.

Entre el nombre de un punto de la base de datos que este definido como un tipo Hist Trend. Si un nuevo tagname es ingresado, este puede ser definido. En general, esto es recomendado para crear distintos nombres para cada grfico histrico. Sin embargo, mltiples grficos pueden usar el mismo nombre.

Esta entrada determina el largo del tiempo inicial horizontalmente mostrado (eje X) en el grfico de tendencia. Para setear el Chart Initial Time Span, escriba un nmero en el cuadro y seleccione el botn para el incremento del tiempo para que empiece a contar. Por ejemplo, si se ingresa 1 y se selecciona Hrs., la envergadura del tiempo mostrado horizontalmente en el grfico ser de 1 hora de largo

Seleccione el botn para indicar el tipo inicial de muestra para el grfico nombrado. Si se selecciona el modo Mn/Mx., cada pixel en el grfico se mostrar el rango mximo y mnimo de puntos ocultos en el tiempo representado por este pixel. Si se selecciona el modo Average el grfico mostrar el valor promedio para cada pixel. Ejemplo, segmento de tiempo.

Nota: Varias de estas configuraciones ingresadas son las mismas que se discutieron en la configuracin de tendencia de tiempo real.

A126

Estos campos de rangos setean el valor inicial para el rango de la tendencia. Las unidades para rango Mn/Mx. son un porcentaje de la escala de unidad de ingeniera. As estos valores son de 0 a 100. Esto es diferente para la tendencia en tiempo real, ya que el rango de la escala de EU es del 0 %.

Hasta cuatro anotaciones pueden ser visibles en una ventana de tendencia. Estas pueden ser usadas para mostrar algunos tagnames de base de datos. La habilidad de la tendencia de expresin es til en la creacin personalizada de pantallas para mostrar tagnames con muchos rangos diferentes. El color de cada anotacin de tendencia se muestra en el cuadro coloreado y al hacer click sobre ste cuadro se selecciona un color nuevo. El ancho de la anotacin tambin puede ser configurado en un cuadro de ingreso de ancho. Al seleccionar un ancho ms grande que una significancia influye en la presentacin. Nota Especial: Una vez completada la configuracin, la opcin de habilitar la anotacin se har valida va el comando Special/Configure...Historical Logging. Para un control dinmico la partida/parada del registro histrico durante el runtime, el tagname $Historical Logging del sistema interno puede ser vinculado a un objeto o ser usado en un script si el registro es habilitado.

Seleccione sta opcin para permitir al operador hacer cambios en la configuracin de la tendencia histrica durante el runtime.

Haga click sobre ste botn para acceder al cuadro de dilogo para seleccionar la letra, estilo y tamao para ser usada en la impresin.

A127

3.23.2.- Actualizacin de una tendencia histrica durante runtime. En WindowViewer cuando una tendencia histrica es mostrada por primera vez, sta mostrara datos para la configuracin especifica. Distinto de la tendencia de tiempo real, la tendencia histrica no se actualiza ella misma continuamente. Un cambio debe estar echo para la tendencia es orden para ser actualizado despus que los datos iniciales son mostrados. Algunos de los siguientes mtodos pueden ser usados para actualizar la tendencia: 1.- Habilitar la opcin Allow runtime changes en el cuadro de dilogo de tendencia histrica (en WindowMaker) para permitir al operador cambiar manualmente la tendencia de tiempo y/o datos para forzar la actualizacin. 2.- Use lo siguiente en un script o en un pushbutton para permitir al operador actualizar el grfico: Tagname.UpdateTrend=1

3.- Use lo siguiente en un script o en un pushbutton: HTUpdateToCurrentTime(Hist_tag); HTScrollLeft(Hist_tag,Percent); HTScrollRigh(Hist_tag,Percent); HTZooMin(Hist_tag,LockString); HTZoomOut(Hist_tag,LockString);

Para ms detalles sobre algunos de las funciones de arriba, vea la seccin Historical Function de ste captulo.

A128

3.23.3.- Configuracin de una tendencia histrica durante runtime. Si la opcin Allow Runtime Changes (descrita arriba) es habilitada cuando el objeto de tendencia es configurado, el grfico ser Touch-sensitive y puede ser configurado por el operador durante runtime. Durante runtime, hacer click en Trend para hacer que el cuadro de dilogo Historical Trend Setup aparezca:

Entre el dato de partida y el tiempo para el grfico en este campo.

Seleccione el botn para indicar el modo de mostrar el grfico. Estos son tres modos de mostrar un grfico de tendencia:

1 Mn/Mx. 2 Average/Scatter 3 Average/Bar Chart.

El modo mostrar de los grficos afecta la presentacin. El primer factor aqu es

A129

el largo de las lneas que sern dibujadas para generar el grfico. El largo de las lneas, es tomado para generar el grfico. El ancho de la lnea es tambin factor de presentacin, el ancho de las lneas toma un significado grande para el grfico. Los grficos Mn/Mx. o Average/Scatter son generalmente mucho ms rpido para generar que la tendencia Average/Bar Chart.

Entre el largo del tiempo para ser mostrado horizontalmente (eje Y) sobre la tendencia.

Esta unidad para el rango es un porcentaje de la escala de EU. As, estos valores sern de 0 a 100. Entre el porcentaje de la escala EU para que la tendencia sea aumentada y disminuida. Por ejemplo, para la tendencia de la varianza del tagname seleccionado desde el porcentaje 40 a 45 de la escala, ingrese 40 y 45 en el mnimo y mximo en el campo de rango respectivamente.

Para seleccionar el tagname para ser tendencia, haga click en el botn de la anotacin deseada PEN #. Al seleccionar el cuadro de dilogo Tag for the Pen aparecer rpidamente para hacer click sobre un tag.

Nota: Solamente estos tags son opcin de datos de registros que sern habilitados en el diccionario de datos de tagname siendo mostrado en este cuadro de dilogo.

Alguna tendencia histrica puede ser impresa haciendo click en el botn Print. La operacin de impresin toma lugar en el Background mientras continua WindowViewer para procesar todas las otras entradas, normalmente WindowViewer

A130

agrega dos tems a este men durante la impresin: CancelPrint y X % Done. Haciendo click en CancelPrint para cancelar la actual impresin. Un botn pushbutton puede tambin ser creado para imprimir la tendencia histrica para ser usada en la accin interna del script de la funcin PrintHT. Lo siguiente es una entrada en la accin script para el pushbutton:

PrintHT(HistTrendTagname);

La operacin de impresin usa la actual tendencia histrica como base para imprimir. Por lo tanto, si algn campo en el cuadro de dilogo Hitorical Trend Setup es cambiado, el botn Print ser desabilitado. Algunos cambios hechos en el setup no pueden ser impresos hasta que el botn OK en el cuadro de dilogo Historical Trend Setup sea presionado para ingresar estos cambios.

Nota: Despus de seleccionado la impresora, no se puede cambiar la tendencia hasta que el men CancelPrint y X % Done aparezcan. Durante este tiempo, WindowViewer est salvando la informacin de tendencia en la memoria para imprimirla. Una vez que estos dos mens aparecen, la tendencia puede ser cambiada sin afectar la impresin que sta en progreso.

3.24.- Escribiendo Tagname para el Archivo de Registro Histrico. Los valores escritos en el archivo de registro histrico todo el tiempo son cambiados una vez cada hora, a pesar de todo cambio. Para cada valor de un tagname escrito en el archivo de registro histrico, har que el setup se registre en la base de datos de Intouch. Al llamar el comando Special/Tag Name Dictionary... se accede al cuadro de dilogo Dictionary-Tag Name Definition y mostrara la definicin del tagname deseado.

A131

Una vez que la definicin del tagname deseado es mostrada, habilite sta opcin.

Para ingresar un tipo de tagname real (punto flotante), un campo Log Deadband ser mostrado en su respectivo detalle en el cuadro de dilogo. Un valor puede ser en este campo controlado por la EU del valor de un punto que fue cambiado antes en el registro del disco.

Habilitando el Registro Histrico. En orden para el tagname estos son definidos para ser registrados y escritos en el archivo de registro histrico, la funcin registro ha de ser habilitada. Para habilitar el registro, Llame al comando Special/Configure. La seleccin de Intouch Configuration hace que aparezca el siguiente cuadro de dilogo:

A132

3.25.- Configure/Historical Logging. Este comando es usado para configurar el archivo de registro histrico. Al llamar este comando se accede al cuadro de dilogo Historical Logging Configuration:

Seleccione sta opcin para habilitar el registro. Los archivos se colocaran en el directorio seleccionado y nombrado automticamente como sigue: YYMMDD00.LOG

Donde:

YY es igual al ao en que fue creado el archivo. MM es igual al mes en que fue creado el archivo (01-12). DD es igual al ao en que fue creado el archivo (01-31). 00 siempre mostrara ceros.

Por ejemplo, si el archivo fue creado un 30 de Abril de 1992, su nombre ser:

92043000.LOG

A133

Nota: Los registros histricos pueden ser activados y detenidos durante runtime siendo vinculado al tagname del sistema interno $Historical Logging para un botn de toque o script. Adems, si el computador queda sin espacio en el disco para registro de archivos histricos, el operador creara espacio libre en el disco llamando al comando Special/Restart Historical Logger en WindowViewer para continuar registrando.

Seleccione esta opcin para causar que los datos histrico sean registrados en el directorio de la aplicacin.

Seleccione este botn y entre un pathname en el cuadro para provocar que el objeto histrico sea registrado en el directorio especifico. (Esto es recomendado si el pathname completo a sido ingresado, ejemplo C:\Intouch).

Entre el nmero de valor de das (prioridad el actual da) del archivo de registro histrico para ser retenido en el disco. Por ejemplo, si se ingresa 10 y es el da 12 del mes, el archivo de registro del da 2 hasta el da 12 sern archivados y el da 1 ser automticamente borrado.

Nota: Cuando se ingresa cero (0) en el da, el archivo de registro es guardado indefinidamente.

Estos son muchos factores que afectan la presentacin de la impresin del grfico de tendencia histrica. El primer factor de presentacin es el tamao del grfico en la pgina impresa. La presentacin puede ser mejorada siendo cambiado el porcentaje de la pgina que esta siendo usada. Por ejemplo, entrando 50 en este campo

A134

causar que WindowViewer use la mitad de la pgina (verticalmente

horizontalmente). Una impresin esta dimensionada para tomar un cuarto del tiempo para preparar toda la pgina impresa.

Entre la seccin de tiempo de duracin del proceso (en milisegundos) con l modulo de impresin de la tendencia histrica.

Entre el tiempo (en milisegundos) para que l modulo de impresin de la tendencia histrica esperara antes de ingrese a otra seccin de tiempo del procesador.

3.26.- Campo de Tendencia Histrica. Para una entrega de tagname de tendencia histrica hay mucho campos que estn solamente aplicados a los tagnames de tendencia histrica. Lo siguiente describe cada uno de los campos de tendencia histrica.

Nota: En el ejemplo de abajo, se supone que ht es un tagname de tendencia histrica. Es un .field de un tagname entero de tipo lectura/escritura usado para controlar el tiempo de partida y/o desplegar el grfico de la tendencia histrica correspondiente. .ChartStart muestra el nmero de segundos transcurridos desde el 1/1/80 a las 12:00 a.m. Ejemplos: Desplazar a la derecha por 1 minuto: ht. ChartStart = ht. ChartStart + 60;

Desplazar a la izquierda por 1 hora: ht.ChartStart = ht.ChartStart -3600;

A135

Es .field de un tagname entero de lectura/escritura usado para mostrar la longitud del tiempo mostrado en un grfico de tendencia histrica. .ChartLength muestra la longitud del grfico en segundos. Ejemplos :

Forzar el intervalo del grfico a 1 hora: ht.ChartLength = 3600 {60 minutos * 60 segundos/minuto} Despliegue del grfico izquierdo por la mitad: ht.ChartStart = ht.ChartStart - ht.ChartLenght / 2; Despliegue del grfico izquierdo en un 10%: ht.ChartStart = ht. ChartStart - 1 * ht. ChartLength

Son .fields de tagname real de escritura/lectura usados para representar el porcentaje del rango en Unidades de Ingeniera del tagname que podra ser mostrado por cada tag que est siendo dirigido. Las unidades para .MaxRange y .MinRange son de 0 a 100 y .MinRange debe ser siempre menor que .MaxRange. Si un valor menor

que 0 o mayor que 100 es asignado a estos campos sern aproximados a 0 o 100. Si .MinRange es mayor o igual que .MaxRange la tendencia no mostrar ninguna informacin.

Es un .field de tagname anlogo de lectura/escritura usado para determinar el mtodo a usar en mostrar los valores en la tendencia. Ejemplo: HistTrendChart.DisplayMode=2 Las entradas son: 1.- Muestra el min/max por cada perodo de muestreo (por defecto). 2.- Muestra el valor medio por cada perodo de muestreo usando un diagrama scatter(dispersin). 3.- Muestra el valor medio por cada perodo de muestreo usando un diagrama bar chart(grfico de barras).

A136

Es un .field de un tagname TagID de lectura/escritura usado en conjunto con los tagnames TagID Historical Trend .Pen1 - .Pen4 para monitorear y/o controlar el tagname que est siendo dirigido por un trazador (descrito a continuacin).

Es un .field de un tagname tipo TagID de lectura/escritura usado para controlar el tagname que est siendo histricamente dirigido por cada trazador. (Tambin se aplica a .Pen2, .Pen3 y .Pen4. Un tagname tipo TagID solo puede ser igualado por otro tagname TagID. Este no puede ser mezclado con otro tipo de tagname a menos que el campo de extensin .TagID sea agregado al otro tagname. Por ejemplo, de acuerdo a HistTrendTag.Pen1 para dirigir el tagname Temperature, este debe tener agregado el campo .TagID. Ejemplo:

HistTrendTag.Pen1= Temperature.TagID; Pen01 = HistTrendTag.Pen1;

Este script iguala el tagname TagID HistrendTag.Pen1 a Temperature.TagID y tambin Pen01 a HistTrendTag.Pen1. Donde Pen01 es un tagname tipo TagID. Entonces un campo de salida vinculado a Pen01.Name mostrar Temperature. Para controlar dinmicamente el despliegue de Unidades de Ingeniera mnimo y mximo, por el tagname que est siendo dirigido por cada trazador, el tagname TagID debe ser igualado a un tagname tipo Indirect Analog. Por Ejemplo: IndirectAnalogTag.Name = Pen01.Name

Donde el tagname TagID Pen01 se iguala al IndirectAnalogTag el cual puede ser usado en cuatro script de cambio de dato ( Data Change Scripts) que son vinculados a los campos Historical Trend.Pen1-.Pen4. Por ejemplo, un Data Change Script podra ser creado por HistTrendTag.Pen1 como sigue:

A137

Pen01 = HistTrendTag.Pen1; IndirectAnalogTag.Name = Pen01.Name;

Los vnculos Analog Output pueden ser entonces creados y vinculados a las siguientes instrucciones para mostrar los Eus ( Unidades de Ingeniera) mnimo o mximo de acuerdo con el tagname que est siendo dirigido:

IndirectAnalogTag.MinEU; IndirectAnalogTag.MaxEU;

Es un .field de un tagname discreto de lectura/escritura que puede estar en 1 para actualizar un grfico de tendencia histrica usando todos los valores actuales. Un cambio debe ser hecho para comenzar el grfico, longitud de grfico, etc. de acuerdo al grfico para actualizar y mostrar los valores actuales para los tagnames especificados. Usando este .field en un script de action pushbutton permitir al operador actualizar el grfico cuando sea necesario durante el runtime. Ejemplo:

HisTrendTag.Update Trend = 1;

Es un campo entero solo de lectura que es incrementado cuando una recuperacin es completa para una tendencia.

Es un campo discreto solo de lectura que muestra el estado de recuperacin de informacin histrica (0=no hay recuperacin, 1= recuperacin en curso).

Es un campo discreto de lectura/escritura. Cuando el valor de este campo es TRUE, el scooter derecho no se puede mover hacia la izquierda (0=FALSE, 1= TRUE).

A138

Es un campo discreto de lectura/escritura. Cuando el valor de este campo es TRUE, el scooter izquierdo no se puede mover hacia la derecha (0= FALSE, 1=TRUE).

Es un campo real de lectura/escritura que representa la posicin del scooter izquierdo (Rango 0.0-1.0).

Es un campo real de lectura/escritura que representa la posicin del scooter derecho (Rango 0.0-1.0). 3.27.- Controlando la frecuencia de Registro Histrico Cuando el registro es habilitado va el comando Special/Configure/Historical Logging previamente descritos, los valores de todos los tagname designado para ser registrado, automticamente sern escritos en el archivo de registros histrico una vez cada hora, a pesar de todo cambio. Tu puedes hacer que no se realice cada una hora por defecto al agregar el parmetro ForceLogging=# del archivo Intouch. INI (localizado en el directorio de la aplicacin) l # representa los minutos y pueden ser seseados entre 5 y 120. Ver el ejemplo siguiente:

En este ejemplo, se agrega el ForceLogging=15, el valor del tagname registrado ser escrito en el archivo de registro histrico cada 15 minutos, a pesar de que el valor del tagname haya cambiado.

A139

Nota: El parmetro ForceLogging ser seteado a un valor en minutos entre 5 y 120. 3.28.- Muestra de Scooters de Tendencia Histrica Los Scooters son indicadores de posicin a lo largo de una escala de tiempo, estos pueden ser cambiados en orden para recordar piezas especficas de datos para entregar instantes de tiempo. Para unir objeto deslizador a un campo scooters, te puedes deslizar por encima de una muestra de tendencia histrica y acceder a una seccin deseada de datos. Las funciones son proporcionadas para acceder al promedio, mnimo y valores mximos para una posicin especfica del socorrer. Un scooter izquierdo y derecho puede ser creado usando una funcin script adicional de Intouch, puede retornar valores basado en un anlisis personalizado en el dato en el scooter o en la localizacin del scooter. Los tipos de anlisis incluyen el promedio, mnimo, mximo, valor min/max, EU min/max. y desviacin estndar. Al aumentar, puede tambin ser personalizado entre los dos scooter. Una agradable caracterstica para agregar a una tendencia histrica es la habilidad para mostrar datos basados en una localizacin conocida en el grfico. Aumentando y disminuyendo una tendencia es tambin beneficial. Las siguientes pginas describen los vnculos y expresiones que pueden ser usados para incorporar esta funcionalidad en la ventana de tendencia histrica.

3.29.- Programa Utilitario Dato Histrico Merge La utilidad del programa Utilitario Dato Histrico Merge de InTouch (HDMerge.EXE) provee de un mecanismo para unir un archivo de datos .CSV con un archivo de registro histrico de la aplicacin Intouch existente. HDMerge determina el archivo histrico del dato que ser unido a los datos especficos para el valor de datos en el archivo de datos. (Archivos de registros histricos son salvados por el dato marcado. Por ejemplo, Noviembre 22, 1994 ser salvado como 94112200.LOG). HDMerge puede tambin ser usado para crear archivos de registros histricos. Si un archivo de registro histrico no existe en la aplicacin de tarjeta para el dato especifico en el archivo .CSV, HDMerge creara uno para el dato. Si el archivo de datos contiene mltiples das de datos, cada

A140

archivo de registro histrico ser actualizado con el dato para este da. La especificacin de tiempo para cada muestra de dato puede ser de 1 milisegundo de resolucin.

3.30.- Configurando la Aplicacin Intouch provee la habilidad para personalizar completamente la funcionalidad y la apariencia final de una aplicacin seteando varios parmetros. Estos parmetros son seteados a travs del cuadro de dilogo de configuracin dentro del men /Special/Configure.... Por ejemplo, los parmetros pueden ser seteados para prevenir al operador de la existencia de WindowViewer y/o Windows, la barra de ttulos de WindowViewer puede ser personalizado para mostrar el nombre de la compaa y el men WindowViewer puede ser desabilitado a travs de la tecla ALT y/o de los mens de control de la pantalla. Por primera vez WindowViewer y WindowMaker son ejecutados, Intouch automticamente crea el archivo Intouch.INI que contiene por defecto los seteos de configuracin que sern usados por la aplicacin. Una vez que el operador configura varios parmetros, ellos son actualizados y guardados en este archivo. Como nuevas aplicaciones son creadas, la personalizacin del archivo Intouch.INI puede ser copiado en el directorio de la nueva aplicacin, eliminando as la necesidad de setear la personalizacin de parmetros para cada nueva aplicacin creada.

3.30.1.- /Special/Configure Este comando es usado para acceder al cuadro de dilogo Intouch Configuration:

A141

En las siguientes pginas se describe las opciones WindowMaker, View Generic, View Window y View Home Window.

3.30.2.- /Configure/WindowMaker Este comando es usado para configurar varios items en el programa WindowMaker. Al llamar este comando aparecer el siguiente cuadro de dilogo:

Entre el ttulo que aparecer en la barra de ttulo cuando se ejecute WindowMaker. Por ejemplo: Intouch DemoApp

Seleccione esta opcin para hacer que el actual directorio de la aplicacin sea mostrado siguiendo el ttulo en la barra de ttulo. Por ejemplo:

Intouch DemoApp C:\DEMOAPP5.

A142

Estas dos opciones son usadas para configurar la grid. Entre el nmero de pixeles para ser espaciado entre la coordenada del grid. Para hacer visible la grid, habilitar Show Grid.

Seleccione esta opcin para hacer que el programa de registro de Wonderware, automticamente parta cuando WindowMaker es ejecutado. El programa registro graba todos los problemas o errores (ejemplo, error de afirmacin) de un archivo del disco para analizarlo despus.

Seleccione esta opcin para mostrar el nmero de tagnames (en la barra men de WindowMaker) que estn siendo definidos en la base de dato de la aplicacin.

Seleccione esta opcin

para hacer que el

programa WindowMaker automticamente se cierre cuando s esta transfiriendo a WindowViewer. Cuando esta opcin es seleccionada , la memoria es conservada. Si la memoria no esta siendo cuestionada y el operador se esta moviendo a menudo entre WindowMaker y WindowViewer, esta opcin no debe ser seleccionada.

Seleccione esta opcin para hacer que el men /Edit de WindowMaker muestre el comando para copiar y pegar para y desde el programa Scrapbook+. (WindowMaker deber ser seteado despus que esta seleccin es habilitada por el comando que aparece).

Nota: el programa de Windows Scrapbook+ debe ser instalado en el computador.

Habilitando esta opcin permitir la seleccin del objeto que esta detrs de un objeto Vaco. Por ejemplo, si cuatro lneas son dibujadas y

A143

unidas para hacer un cuerpo alrededor de otro objeto, con esta opcin habilitada, uno ser capaz de meter el objeto dentro del cuerpo sin hacer que el cuerpo quede atrs de este objeto.

Seleccione esta opcin para habilitar el Fast Switch (switch rpido) entre WindowMaker y WindowViewer. El switch aparecer en la esquina superior derecha en la barra de men. En WindowMaker, aparecer runtime y en WindowViewer , Development. Haciendo click en este switch (o usando ALT+!) rpidamente se transfiere desde un programa a otro. Usando este switch para transferir de WindowMaker a WindowViewer salva todos los cambios hechos para todas las pantallas abiertas en WindowViewer.

Entre el nmero de pixeles que el operador puede estar fuera de una lnea para WindowMaker para saber que esta lnea ha sido seleccionada. El seteo por defecto es 4, esto es recomendado para ser usado a menos que exista alguna dificultad con la seleccin.

Entre el nmero de niveles de deshacer/rehacer. Esto puede ser 0 25 niveles (donde 0 los desabilita). Un nivel representa una accin. El deshacer y rehacer fila esta vaco cuando una nueva ventana es creada o existe una ventana abierta.

3.30.3.- /Configure/View Generic... Este comando es usado para configurar varios items de sistema para el programa WindowViewer. Al llamar este comando aparecer el cuadro de dilogo View Generic Configuration:

A144

Seleccione sta opcin para hacer que el programa de registro de Wanderware automticamente parta cuando se corre

WindowViewer. El programa de registro graba todos los problemas o errores de un archivo del disco para analizarlo despus.

Seleccione sta opcin para hacer que WindowViewer comience cuando es seleccionado un icono de una ventana. En muchos casos, la seleccin de sta opcin es apropiada solamente cuando el operador esta usando WindowViewer para reunir datos para otras aplicaciones interconectadas DDE.

Seleccione esta opcin para hacer que el programa WindowViewer automticamente se cierre cuando se transfiere desde WindowViewer a WindowMaker.

Seleccione esta opcin cada vez que exista una situacin de recurso de memoria baja o Window bajo.

A145

Habilitando esta opcin provoca que una aplicacin de pantalla sea cargada desde el disco y no salvada en la memoria RAM cuando es cerrada.

Entre la cantidad de memoria (Kbytes) que WindowViewer intentara mantener libre para otra aplicacin de Windows.

Seleccione

esta

opcin

para

aumentar

significativamente la velocidad de actualizacin de los dibujos. Habilitando esta opcin aumenta significativamente el rango de actualizacin para campos de textos. (Si el sistema es bajo en memoria no habilite esta opcin).

Todos los temporizadores de Intouch son chequeados basados en la frecuencia del temporizador.

Entre

la

frecuencia

(en

milisegundos) a la que WindowViewer actualizara la base de tiempo del tagname del sistema $Msec, $Second, $Minute, etc. Si los milisegundos nunca son mostrados, dejar el seteo por defecto. Si los segundos, nunca son mostrados, setee el valor a 60000. Si estos tagnames nunca son usados, setee este valor a 0 para prevenir que los tagnames sean actualizados.

Seleccione esta opcin para hacer que todos los objetos de toque suenen cuando sean tocados en WindowViewer.

Seleccione esta opcin para hacer la actualizacin de tendencia de cierre.

Nota: Este es solamente recomendado cuando el operador esta absolutamente seguro de que los objetos no se traplasen en algunas tendencias de runtime. Si los

A146

objetos s traplasan la tendencia y esta opcin es seleccionada, la tendencia no se dibujara correctamente.

Seleccione esta opcin para crear un mensaje para ser escrito en el WWLogger cada vez que un script es ejecutado. Esta opcin puede ser habilitada y/o desabilitada durante runtime cuando el men /Debug de WindowViewer ha sido habilitado va el comando /Special/Configure.../View Window...:

Seleccione

esta

opcin

solamente

para

aplicacin

internacionales desarrolladas en Intouch 3.26 o anteriores.

Este campo es usado para especificar el nombre del Nodo del servidor de alarma en la red. Este Nodo es entonces usado por los nodos remotos para recuperar su informacin de alarma (si el Nodo local es el nodo servidor de alarma, este es valido para entrar el nombre de estos Nodos aqu).

Cuando un programa servidor se esta comunicando con Intouch, DDE Advise y Data Messages son agrupados en bloques para mejorar lo puesto. Este campo es usado para mejorar el tamao del bloque. Estas entradas no afectan la operacin del servidor DDE con aplicaciones normales de DDE Aware.

Entre el valor para controlar el intervalo (en segundos)

A147

que WindowViewer automticamente usar para estabilizar la conversacin DDE sin notificar al operador. Si se cierra un servidor DDE, WindowViewer intentara reinicializar la conversacin a el rango de seteo en este campo.

Entre el nmero de segundos que pueden transcurrir sin actividad en la aplicacin antes de que el tagname del sistema discreto $Inactivity Warning sea seteado a 1. Un mensaje de precaucin dir al operador de que el/ella esta ms o menos fuera de registro de la aplicacin pueden ser generado usando el tagname $Inactivity Warning.

Entre el nmero de segundos que pueden transcurrir sin actividad en la aplicacin antes de que el tagname de sistema discreto $Inactivity Timeout sea seteado a 1. Un mensaje dir al operador de que el/ella esta ms o menos fuera de registro de la aplicacin pueden ser generado usando el tagname $Inactivity Timeout.

Estos son tres campos usados para setear la velocidad (en milisegundos) de parpadeo de un objeto. La velocidad seteada aqu ser usada por la seleccin de velocidad de parpadeo en el cuadro de dilogo Vnculos de Animacin:

A148

3.30.4.- Configure/View Window Este comando es usado para configurar varios items relativos a la pantalla del programa WindowViewer. Al llamar este comando se accede al cuadro de dilogo WindowViewer Configuration:

Por defecto, la barra de men ser mostrada cuando WindowViewer esta cerrado. Desabilitando esta opcin desabilitar todas todos los mens WindowViewer. Una barra en blanco fija aparecer en la parte de arriba de la pantalla. Si la barra de men es habilitada, todos de los siguientes mens no sern habilitados para verse:

Por defecto, el men /File ser mostrado cuando se corre WindowViewer.

A149

Nota: Cuando el men /File es habilitado, el comando WindowMaker ser desabilitado para prevenir que el operador este cambiando el programa WindowMaker cuando una llave de desarrollo es instalada.

Por defecto, el men /Logic ser mostrado cuando se corre WindowViewer. Si este men es habilitado, el operador tendr la habilidad de partir y parar todos los script que son ejecutados durante runtime.

Habilitando este men permitir al operador acceder a varios comandos que pueden ser usados para la aplicacin. Esto es recomendado para que este men solamente sea mostrado cuando sea necesario acceder al comando Debug (paso a paso) del troubleshooting durante la aplicacin de desarrollo.

Nota ESPECIAL: esto es recomendado para que este men no sea habilitado sin primero consultar el soporte tcnico de Wanderware.

Por defecto, el men /Special ser mostrado cuando se corre WindowViewer. Si el men es habilitado, todos los comandos siguiente del men no sern habilitados para visualizarce:

Por defecto, el men /Special/Security ser accesible cuando se corre WindowViewer. Si el men es desabilitado, todos los comandos siguiente del men no sern habilitados para visualizarce:

A150

Seleccione esta opcin para provocar que el men de control sea mostrado cuando se corre WindowViewer.

Seleccione esta opcin para provocar que el cuadro minimizar pantalla sea mostrado cuando se corre WindowViewer.

Seleccione esta opcin para provocar que el cuadro maximizar pantalla sea mostrado cuando se corre WindowViewer.

Seleccione sta opcin para permitir al operador cambiar el tamao de la visualizacin de WindowViewer. (Este comando no es seleccionable cuando la barra de ttulo esta oculta).

Entre el ttulo que aparecer en la barra de ttulo cuando se corre WindowViewer. Ejemplo: Intouch WindowViewer.

Seleccione esta opcin para mostrar el actual directorio de la aplicacin en la barra de ttulo seguido del ttulo, ejemplo: Intouch WindowViewer c:\DEMOAPP1.

Seleccione esta opcin para que la barra de ttulo no sea mostrada en WindowViewer.

Seleccione esta opcin para hacer que el programa WindowViewer sea imposible de cerrar.

A151

Seleccione esta opcin para activar la tecla de secuencia Ctrl+Break para detener la ejecucin de un script cada vez que sea necesario durante runtime.

Nota Especial: Si esta opcin es habilitada, el operador ser capaz de parar todos los script que se estn ejecutando a pesar de toda si o no el men /Logic es mostrado en WindowViewer. Si el men Logic no es visualizado y los script son detenidos usando la secuencia de la tecla Ctrl+Break, WindowViewer ser reseteado para partir ejecutando el script otra vez.

Seleccione sta opcin para desabilitar la tecla ALT y prevenir al operador de usar el comando acelerador ALT, ejemplo: ALT+FX para salir de la aplicacin.

Seleccione sta opcin para ocultar el cursor durante runtime.

Seleccione sta opcin para desabilitar la tecla de secuencia Ctrl+ESC. Esto prev al operador para acceder a la lista de tareas de Windows para cerrar y/o cambiar de aplicacin.

Nota: Para estar absolutamente seguro de que el operador no tenga la habilidad de llamar la lista de tareas de Windows, Taskman.exe puede ser borrado del directorio de Windows.

Seleccione sta opcin para mantener minimizado el programa WindowViewer para todos los tiempos.

A152

3.30.5.- /Configure/View Home Windows... Este comando es usado para definir las pantallas que automticamente sern mostradas cuando parte WindowViewer desde cualquiera de los dos comandos del programa Manager de Windows /File/Run... o haciendo doble click en el icono WindowViewer. (Esto no es aplicable cuando se transfiere de WindowViewer a WindowMaker). Estas son algunas pantallas que se muestran cuando el comando ShowHome es usado en un script. Al llamar este comando se accede al cuadro de dilogo Home Windows For View:

Para seleccionar una pantalla, haga click en ella. Para seleccionar varias pantallas, haga click en cada nombre de pantalla con el mouse o use la tecla del cursor de flecha para moverse a cada nombre de pantalla, presionando la barra espaciadora para seleccionar la pantalla.

Vous aimerez peut-être aussi