denodo itpilot 4.0 manual nseqlhelp.denodo.com/platform-docs/4.0/denodoitpilot.manualnseql.pdfeste...

48
DENODO ITPILOT 4.0 MANUAL NSEQL

Upload: others

Post on 12-Mar-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

DENODO ITPILOT 4.0 MANUAL NSEQL

Page 2: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

NOTA Este documento es confidencial y propiedad de denodo technologies (en adelante denodo). Ninguna de las partes del documento puede ser copiada, fotografiada, fotocopiada, transmitida electrónicamente, almacenada en un sistema de gestión documental o reproducida mediante cualquier otro mecanismo sin la autorización previa o por escrito de denodo.

copyright © 2007 Queda prohibida la reproducción total o parcial de este documento sin la autorización por escrito de denodo technologies

Page 3: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

ÍNDICE

PREFACIO........................................................................................................................................................................... I ALCANCE ..................................................................................................................................................................... I QUIÉN DEBERÍA USAR ESTE MANUAL ................................................................................................................. I RESUMEN DE CONTENIDOS.................................................................................................................................... I

1 INTRODUCCIÓN ..................................................................................................................................... 2

2 CONCEPTOS BÁSICOS DE NSEQL ...................................................................................................... 3 2.1 SECUENCIAS DE NAVEGACIÓN: SINTAXIS BÁSICA ...................................................................... 3 2.2 COMANDOS NSEQL: VISIÓN GENERAL............................................................................................. 3 2.3 CONFIGURACIÓN DE TIEMPOS DE ESPERA DE PÁGINAS ............................................................ 5 2.4 EJEMPLO................................................................................................................................................. 5

3 REFERENCIA DE COMANDOS NSEQL ................................................................................................ 9 3.1 PARÁMETROS USUALES.................................................................................................................... 10 3.2 PARÁMETROS DE ERROR................................................................................................................... 10 3.3 COMANDOS DE NAVEGACIÓN ......................................................................................................... 10 3.4 COMANDOS PARA TRATAMIENTO DE ENLACES ......................................................................... 14 3.5 COMANDOS PARA SELECCIÓN DE FORMULARIOS...................................................................... 18 3.6 COMANDOS PARA REALIZAR ACCIONES SOBRE LOS ELEMENTOS DE UN FORMULARIO.. 20 3.7 COMANDOS DE SELECCIÓN DE FRAMES ....................................................................................... 24 3.8 COMANDOS PARA SELECCIONAR ELEMENTOS ........................................................................... 26 3.9 COMANDOS PARA REALIZAR ACCIONES SOBRE ELEMENTOS................................................. 30 3.10 COMANDOS PARA EL MANEJO DE VENTANAS ........................................................................... 31 3.11 COMANDOS PARA MANEJAR DIÁLOGOS EMERGENTES........................................................... 34 3.12 COMANDOS PARA CAMBIAR LAS PROPIEDADES DEL NAVEGADOR ...................................... 37 3.13 COMANDOS INFORMATIVOS............................................................................................................ 38 3.14 CONVERSORES..................................................................................................................................... 41 3.15 COMANDOS DE EJECUCIÓN DE CÓDIGO........................................................................................ 42

4 FUNCIONES DE UTILIDAD.................................................................................................................. 43 4.1 ENCODESEQ.......................................................................................................................................... 43 4.2 EXECUTEIFISNOTNULL ....................................................................................................................... 43

BIBLIOGRAFÍA ............................................................................................................................................................... 44

Page 4: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

ÍNDICE DE FIGURAS Figura 1 Fuente de webmail de ejemplo: Autenticación ........................................................................................ 6 Figura 2 Fuente de webmail de ejemplo: Lista de mensajes ................................................................................. 6 Figura 3 Programa NSEQL para acceder al sistema de webmail ........................................................................... 7 Figura 4 Programa NSEQL para acceder al sistema de webmail (modificado) ...................................................... 8

Page 5: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Prefacio i

PREFACIO

ALCANCE

Este manual describe de manera detallada el lenguaje de especificación de secuencias de navegación automatizadas NSEQL (Navigation SEQuence Language), utilizado en Denodo ITPilot.

QUIÉN DEBERÍA USAR ESTE MANUAL

Este manual está destinado a integradores, jefes de proyecto y en general a todo profesional que necesite consultar las posibilidades que ofrece Denodo ITPilot o utilizar el mismo para automatizar el acceso y extracción de información de fuentes web. Este manual asume conocimientos básicos de:

• HTML y HTTP.

RESUMEN DE CONTENIDOS

Capítulo 1: Introducción al problema de la automatización de secuencias de navegación sobre fuentes web. Capítulo 2: Presentación de los conceptos básicos de NSEQL y ejemplos de uso. Capítulo 3: Referencia detallada de todos los comandos soportados en NSEQL.

Page 6: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Introducción 2

1 INTRODUCCIÓN

En la actualidad, existen numerosos servicios de utilidad ofrecidos a través de las tecnologías que conforman el Worldwide Web (WWW). La inmensa mayoría de estos sitios web proporcionan acceso a dichos servicios exclusivamente mediante interfaces HTML diseñados para ser utilizados por humanos a través de un navegador de Internet. En ocasiones, es deseable poder automatizar la realización de secuencias de operaciones sobre sitios web de forma que puedan ser ejecutadas por un programa, en lugar de directamente por un usuario humano. Por ejemplo, esto puede ser útil para agilizar las consultas a múltiples fuentes de información o para automatizar procesos transaccionales que involucran cumplimentar formularios HTML de manera repetitiva. Si bien el protocolo http ofrece algún soporte básico para estas operaciones, es insuficiente en muchas fuentes debido a problemas tales como los lenguajes de scripting que se ejecutan en el navegador de Internet (Javascript, JScript, etc.), los sistemas de mantenimiento de sesión en el servidor, ciertos tipos de redirecciones, etc. NSEQL (Navigation SEQuence Language) es un lenguaje diseñado para programar secuencias de acciones sobre la interfaz de un navegador de Internet (la implementación actual soporta Microsoft Internet Explorer 5.5 y posteriores). A través de NSEQL, es posible reproducir desde un programa de ordenador cualquier secuencia de operaciones que un usuario humano pueda realizar a través de su navegador. Es importante resaltar que normalmente no es necesario crear los programas NSEQL de forma manual. El entorno gráfico de generación de ITPilot [GENER] permite crear gráficamente los programas NSEQL simplemente realizando un ejemplo de la secuencia deseada mediante un navegador de Internet. De todas formas, este manual proporciona una descripción exhaustiva del lenguaje para usuarios avanzados.

Page 7: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 3

r

2 CONCEPTOS BÁSICOS DE NSEQL

2.1 SECUENCIAS DE NAVEGACIÓN: SINTAXIS BÁSICA

El concepto fundamental de NSEQL es el de secuencia de navegación. Una secuencia de navegación se compone de una lista de comandos que se ejecutan secuencialmente sobre la interfaz de un navegador de Internet. La sintaxis básica para especificar una secuencia de navegación es la siguiente: comando1;comando2;…;comandon; Cada comando tiene un nombre y puede recibir una lista de parámetros. El formato de cada comando es como sigue: NOMBRE( param1, param2, ..., paramN) También se permite la sintaxis alternativa: NOMBRE, param1, param2, ..., paramN Si en los valores de los parámetros aparecen los caracteres “(“, “)”, ",", “;” o "\", es necesario escaparlos con el carácter “\”. Algunos comandos reciben parámetros opcionales. Si no se desea especificar valor para un parámetro opcional, debe utilizarse el valor nulo. Dicho valor se especifica a través de la cadena “_NULL_”.

2.2 COMANDOS NSEQL: VISIÓN GENERAL

NSEQL incluye comandos para reproducir las acciones principales que es posible realizar con un navegador de Internet. Más concretamente:

• El comando navigate permite navegar a una URL (de la misma forma que si un usuario teclease la URL en la barra de direcciones del navegador).

• goBack, goForward, ref esh y stop nos permiten ejecutar las acciones equivalentes a pulsar los botones ‘back’, ‘forward, ‘refresh’ (también llamado ‘reload’) y ‘stop’ del navegador.

• La familia de comandos clickOnAnchorByXXX y clickOnAreaByXXX permite localizar un enlace o un mapa HTML dentro de la página actual del navegador y ejecutar un click sobre él.

• La familia de comandos selectAnchorByXXX permite seleccionar un enlace dentro de la página actual del navegador. Una vez seleccionado, se pueden realizar acciones sobre él y/o su contenido.

• La familia de comandos findFormByXXX permite localizar y seleccionar un formulario para poder aplicar acciones sobre sus elementos mediante comandos posteriores.

Page 8: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 4

• Las familias de comandos setInputValue, setTextAreaValue, y selectIndexByXXX, permite asignar valores a los campos del formulario seleccionado.

• Los comandos submitForm, clickOnElement, clickOnInputElement, fireEvent, permiten ejecutar acciones sobre elementos del último formulario seleccionado.

• La familia de comandos findFrameByXXX permite seleccionar un frame de la página actual del navegador por su nombre, origen o posición, de manera que las acciones invocadas a partir de entonces se referirán a ese frame. Con resetFrame, el frame activo vuelve a ser la página principal.

• La familia de comandos findElementByXXX permite localizar y seleccionar un elemento dentro del frame actual. Es posible utilizar diferentes criterios para la localización: tipo del elemento, valor de un atributo, texto contenido, posición ...

• clickOnSelectedElement, fireEventOnSelectedElement y transposeSelectedTable permiten ejecutar acciones sobre el último elemento seleccionado.

• Una secuencia de navegación puede involucrar varias ventanas del navegador. Los comandos NSEQL para manipular dichas ventanas son allowOpenNewWindow, selectWindow y closeWindow. También es posible crear nuevas ventanas mediante openNewWindow y fijar o acceder al nombre de una ventana mediante setWindowName y getWindowName.

• El comando waitPages hace que el navegador espere a que se descargue un número de páginas determinado antes de continuar ejecutando el resto de comandos del programa NSEQL. El comando extendedWaitPages permite esta misma operación, pero dejando que sea el sistema quien averigüe el número de páginas que hacen falta para continuar la navegación. El comando wait permite esperar un tiempo especificado como parámetro.

• El comando postData permite emitir directamente peticiones http de tipo POST.

• El comando setAmbientProperties permite configurar qué elementos de las páginas deben ser descargados y ejecutados por el navegador (e.g. imágenes, applets JAVA, controles ActiveX, etc.). Otro comando para configurar el comportamiento del navegador es setProxyAuthInfo.

• Los comandos getSourceCode, queryDownloadedPages, getTitle, getLocation y otros permiten obtener ciertas informaciones sobre la página actual, el formulario actual o la última navegación. Estas informaciones pueden ser útiles a efectos de depuración de los programas NSEQL (véase [GENER] para una descripción de los entornos de generación de programas NSEQL disponibles dentro de ITPilot).

• Los comandos onDialog, onPrintDialog, onWebPageDialog y onDownloadDialog permiten gestionar ventanas emergentes del navegador, realizando tareas tales como insertar contenido en campos de texto del diálogo, pulsar botones concretos, desplazar cursores, etc.

• Los comandos convertWordToHtml y convertPDFToHtml se ocupan de transformar un recurso Microsoft Word / Adobe PDF en uno HTML, para permitir su posterior extracción de información mediante ITPilot.

Page 9: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 5

• El comando executeJS permite ejecutar código JavaScript sobre una página cargada en el navegador.

2.3 CONFIGURACIÓN DE TIEMPOS DE ESPERA DE PÁGINAS

Los comandos WaitPages, ExtendedWaitPages, así como algunos otros (mediante la configuración del argumento de entrada (int) pages), permiten definir el número de páginas a esperar que carguen antes de proseguir con la ejecución de la secuencia de navegación. Los parámetros de configuración de los diferentes tiempos involucrados se almacenan en el fichero <DENODO_HOME>/conf/iebrowser/IEBrowserConfiguration.properties:

• IEBrowser.MAX_DOWNLOAD_TIME. Este parámetro indica el tiempo máximo de espera hasta que carguen todas las páginas a esperar. Por defecto, se espera 60000 ms. (60 segundos).

• IEBrowser.INTERVAL_CHECKING. Este parámetro determina la frecuencia de comprobación de carga de nueva página. Por defecto, cada 300 ms. ITPilot comprueba si hay alguna nueva página en carga.

• IEBrowser.BEGIN_NAVIGATION_CHECKS. Utilizado en el comando ExtendedWaitPages, este comando determina el número máximo de veces que se comprueba si hay una nueva navegación. Por defecto, el parámetro tiene un valor igual a 5.

2.4 EJEMPLO

La Figura 1 muestra la página de autenticación de una una web de Denodo technologies (http://mail.demos.denodo.com) que utilizaremos para nuestros ejemplos de prueba. Dicha web simula el comportamiento de un sistema clásico de webmail. La Figura 2 muestra la página de dicho servicio que muestra los mensajes del usuariodemos.

Page 10: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 6

Figura 1 Fuente de webmail de ejemplo: Autenticación

Figura 2 Fuente de webmail de ejemplo: Lista de mensajes

La Figura 3 muestra un programa NSEQL que se conecta automáticamente al servicio, se autentica en el mismo mediante la introducción de un login de usuario y una password y, una vez ha accedido al contenido de la carpeta inbox, ordena los mensajes por fecha pulsando sobre el enlace “Date”. Para el perfecto entendimiento del ejemplo es conveniente consultar la referencia de comandos de la sección 3. De todas formas, las explicaciones que siguen serán suficientes para entender de forma intuitiva la forma de construir programas NSEQL.

Page 11: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 7

El comando Navigate hace que el browser navegue a la URL especificada. El comando WaitPages que va a continuación fuerza al sistema a esperar a que se descargue una página antes de continuar (con ciertos tipos de redirecciones podría ser necesario esperar a que se descargase más de una página). Se podría haber conseguido el mismo efecto suprimiendo el comando WaitPages y utilizando Navigate(http://mail.demos.denodo.com,1) como primer comando, ya que el segundo parámetro del comando Navigate también permite especificar un número de páginas que debe esperarse a que se descarguen antes de proseguir. Además, se puede utilizar el comando ExtendedWaitPages(-1) para que sea el propio sistema quien infiera cuántas páginas hay que esperar antes de continuar la navegación. Navigate(http://mail.demos.denodo.com,0); WaitPages(1); FindFormByName(implogin,0); SetInputValue(imapuser,0,test_user); SetInputValue(pass,0,test_pwd); ClickOnElement(button,input,0); WaitPages(1); ClickOnAnchorByText(Date,0,true,0); WaitPages(1);

Figura 3 Programa NSEQL para acceder al sistema de webmail

El comando FindFormByName selecciona el formulario cuyo nombre es implogin. El segundo parámetro identifica la posición del formulario que deseamos seleccionar entre todos los que se llamen implogin (aunque no suele ocurrir, podría haber varios formularios en la página con el mismo nombre). En este caso es el primero y único y, por tanto, el valor es el 0. El formulario identificado por el comando anterior se corresponde con el formulario de login mostrado en la figura 1. Los comandos SetInputValue que siguen rellenan los campos de login (llamado imapuser) y password (llamado pass) del formulario con, respectivamente, los valores “demos” y “DeMo.04”. Nuevamente el segundo parámetro se utiliza por si hubiese varios campos con el mismo nombre dentro del mismo formulario. El comando clickOnElement genera un evento de tipo click sobre el primer elemento de la clase button dentro del formulario activo. En la práctica, esto produce un submit del formulario. El siguiente comando WaitPages hace nuevamente que el browser espere a que se descargue una página antes de continuar. Finalmente, el comando ClickOnAnchorByText genera un evento click sobre el primer enlace de la página cuyo texto asociado es “Date”, causando que los mensajes sean ordenados por fecha (véase la figura 2). El tercer parámetro toma el valor true si queremos que el texto indicado tenga que coincidir exactamente con el de un enlace dado para que el sistema detecte una coincidencia con el mismo. Nuevamente, si se especifica el valor false, bastará con que la cadena indicada esté contenida en el texto del enlace. El último parámetro dice cuantas páginas debe esperarse a que se descarguen después del click antes de continuar. El último comando WaitPages se comporta como los anteriores del mismo tipo. A continuación, complicaremos ligeramente nuestro ejemplo. Supongamos que durante el proceso de login deseamos escoger el idioma “English (US)”. Supóngase además que la ordenación por fecha deseamos efectuarla haciendo clic sobre la imagen (una flecha apuntando hacia arriba) que hay al lado del enlace “Date”. El nuevo programa se muestra en la figura 4. Los nuevos comandos se han marcado en rojo. El comando SelectIndexByText selecciona el valor cuyo texto es exactamente ‘English (US)’ dentro del primer campo de tipo select cuyo nombre es new_lang.

Page 12: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Conceptos básicos de NSEQL 8

El comando FindElementByChild localiza el segundo enlace (nótese que el valor del quinto parámetro es 1 y no 0) que tenga como hijo en el árbol de la página a un elemento de tipo imagen cuyo atributo src tome el valor: http://mails.demo.denodo.com/imp/graphics/up.gif. Esto identifica al enlace asociado a la imagen deseada. Finalmente, el comando clickOnSelectedElement genera un evento click sobre dicho elemento. Navigate(http://mail.demos.denodo.com,0); WaitPages(1); FindFormByName(implogin,0); SetInputValue(imapuser,0,test_user); SetInputValue(pass,0,test_pwd); SelectIndexByText(new_lang,0,English (US),0,true); ClickOnElement(button,input,0); WaitPages,1; FindElementByChild(A,IMG,SRC,http://mail.demos.denodo.com/imp/graphics/up.gif,1,true,true); ClickOnSelectedElement(); WaitPages(1);

Figura 4 Programa NSEQL para acceder al sistema de webmail (modificado)

Page 13: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 9

3 REFERENCIA DE COMANDOS NSEQL

En esta sección se proporciona una referencia detallada de todos los comandos de NSEQL. Los comandos se agrupan de la siguiente forma:

• Comandos de navegación.

• Comandos para tratamiento de enlaces y mapas.

• Comandos para selección de formularios.

• Comandos para la realización de acciones sobre los elementos de un formulario.

• Comandos para la selección de frames.

• Comandos para la selección de elementos.

• Comandos para la realización de acciones sobre un elemento.

• Comandos para el manejo de ventanas.

• Comandos para el manejo de diálogos emergentes.

• Comandos para cambiar las propiedades de navegador.

• Comandos informativos.

• Comandos de conversión

• Comandos de ejecución de código

La subsección 3.1 describe con más detalle algunos parámetros comunes a un alto número de comandos. Las siguientes subsecciones se ocupan, respectivamente, de cada uno de los grupos de comandos mencionados. Dentro de cada grupo la ordenación es alfabética. Para cada comando, se reseña brevemente su función y se describen los parámetros que debe recibir y el valor que devuelve como resultado de su ejecución. Este valor de salida puede ser útil a efectos de depuración y es mostrado en su traza de ejecución por las herramientas del entorno de generación de ITPilot que permiten generar y ejecutar programas NSEQL [GENER].

Page 14: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 10

3.1 PARÁMETROS USUALES

Existen ciertos parámetros que son comunes a un alto número de comandos NSEQL. Los principales parámetros de este tipo son:

• Parámetros ‘ int position’. Un parámetro de este tipo representa un índice (cuya primera posición es 0) sobre los elementos de un conjunto ordenado. Típicamente, los miembros de este conjunto serán los elementos HTML de un determinado tipo (e.g. enlaces, formularios, frames,…) que están presentes en el documento actual y que verifican una determinada condición impuesta por el comando al que pertenece el parámetro. Por ejemplo, el parámetro position del comando FINDFORMBYNAME indexa el conjunto de formularios presentes en el documento actual cuyo nombre verifica las condiciones especificadas por el resto de parámetros de dicho comando. El orden de los diversos elementos dentro del conjunto viene determinado por su orden de aparición en el código HTML de la página.

• Parámetros ‘int pages’. Este tipo de parámetros es recibido por los comandos que generan una nueva

navegación. Especifica el número de páginas que debe esperarse a que se descarguen después de la ejecución del comando, antes de continuar con la ejecución de los siguientes. La función de este parámetro es asegurar que los siguientes comandos NSEQL no comienzan a ejecutarse hasta que la navegación provocada por el comando actual está ya terminada (si la navegación no estuviese aún terminada, los siguientes comandos NSEQL probablemente fallarían al no estar aún disponibles los elementos HTML sobre los que actuan). En el caso más común, este parámetro recibirá el valor ‘1’ ya que la navegación provocada involucrará cargar sólo una nueva página. Sin embargo, hay ciertos casos en los que esto no es así:

o Al cargar un documento multi-frame, para esperar a que el documento esté completo será necesario esperar a que se carguen todos los frames (cada frame carga su propia página).

o Si el servidor realiza ciertos tipos de redirecciones automáticas, el sistema puede pasar por una o varias páginas intermedias antes de llegar a la página deseada.

3.2 PARÁMETROS DE ERROR

Cuando algún comando NSEQL no ha podido ser ejecutado adecuadamente, devolverá un código de error, independientemente del tipo de comando que sea. En concreto, los valores posibles son los siguientes:

1. DOWNLOAD_TIMEOUT (-2): en el acceso a un recurso web, se ha cumplido el tiempo máximo de espera tal y como haya sido configurado en el Pool de Navegadores.

2. DOWNLOAD_ERROR (-3): ha existido algún tipo de error en la descarga de información de la web. 3. CONNECTION_ERROR (-4): la conexión con el recurso web no ha podido producirse. 4. HTTP_ERROR (-5): el servidor web ha devuelto un error http.

3.3 COMANDOS DE NAVEGACIÓN

EXTENDEDWAITPAGES Espera a que se descarguen un cierto número de páginas. La diferencia con respecto al comando WaitPages –ver más abajo- estriba en la posibilidad por parte de este comando de esperar las páginas que sean necesarias, sin necesidad de que el usuario haya de definir el número exacto.

Parámetros:

int pages: número de páginas que se desea esperar a que se descarguen. Si es -1, indica que se esperen las páginas que hagan falta.

Devuelve:

Page 15: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 11

(int): tiempo tardado en cargar las páginas. GOBACK Retrocede a la página anterior. Equivalente a pulsar el botón ‘back’ del navegador. Parámetros:

int pages: número de páginas que se desea esperar a que se descarguen. Devuelve:

(int): tiempo tardado en cargar las páginas. GOFORWARD Avanza a la página siguiente dentro del historial del navegador. Equivalente a pulsar el botón ‘forward’ del navegador.

Parámetros:

int pages: número de páginas que que se desea esperar a que se descarguen. Devuelve:

(int): tiempo tardado en cargar las páginas. NAVIGATE

Accede a una URL

Parámetros: String url: URL a la que se desea navegar. int pages: número de páginas que se desea esperar a que se descarguen.

Devuelve:

(int): tiempo tardado en cargar las páginas. IGNOREIENAVIGATIONERROREVENT

Permite al usuario decidir si desea ignorar el evento DISPID_NAVIGATEERROR devuelto por Internet Explorer. Este evento es enviado por el navegador cuando ocurre un error de navegación mientras se está cargando un “frame”. Sin embargo, en ocasiones, este error no afecta a la navegación en sí. En estos casos es cuando es útil ignorarlo.

Parámetros:

boolean ignore: “true” si se desea ignorar, “false” si no (comportamiento por defecto) Devuelve:

Nada.

Page 16: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 12

SETMAXDOWNLOADTIME

Configura el tiempo máximo de descarga de una página.

Parámetros: int maxDownloadTime: tiempo máximo de descarga de página

Devuelve:

Nada

NAVIGATEEXTENDED

Accede a una URL

Parámetros: String url: URL a la que se desea navegar. String frame: nombre del frame donde realizar la navegación. (OPCIONAL) String headers: cabeceras http adicionales a enviar (OPCIONAL). int pages: número de páginas que se desea esperar a que se descarguen.

Devuelve:

(int): tiempo tardado en cargar las páginas. NOTA: Cuando se utiliza HTTPClient como navegador, la invocación del comando GoBack después de acceder a una URL mediante NavigateExtended no funciona, si la página contiene Frames.

POSTDATA Realiza una petición http de tipo post. Parámetros:

String url: URL. String postdata: pares campo valor con el formato c1=v1&c2=v2& .... String headers: cabeceras adicionales. String target_frame: frame destino. int pages: número de páginas que se desea esperar a que se descarguen después de hacer el post.

Devuelve:

(int): tiempo tardado en cargar las páginas. NOTA: Cuando se utiliza HTTPClient como navegador, la invocación del comando GoBack después de acceder a una URL mediante Post no funciona, si la página contiene Frames.

REFRESH

Recarga la página actual. Equivalente a pulsar el botón ‘refresh’ o ‘reload’ del navegador.

Parámetros: int pages: número de páginas que se desea esperar a que se descarguen.

Devuelve:

(int): tiempo tardado en descargar las páginas.

Page 17: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 13

STOP

Detiene la navegación actual. Equivalente a pulsar el botón ‘stop’ del navegador.

Parámetros: Ninguno.

Devuelve:

Nada. NOTA: No implementado para el tipo de navegador HTTPClient.

WAIT Este comando queda en espera durante el tiempo deseado antes de proseguir con la secuencia de navegación. Parámetros: int ms: número de milisegundos que esperará el comando antes de proseguir con la secuencia de navegación. Devuelve: Nada.

WAITPAGES Espera a que se descarguen un cierto número de páginas.

Parámetros:

int pages: número de páginas que se desea esperar a que se descarguen. Devuelve:

(int): tiempo tardado en cargar las páginas (si se utiliza HTTPClient, devuelve siempre 0).

Page 18: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 14

3.4 COMANDOS PARA TRATAMIENTO DE ENLACES

CLICKONANCHORBYHREF Genera un evento click sobre un enlace identificado por su atributo href dentro del frame actual. Parámetros:

String href: href del enlace a buscar. int position: orden dentro de todos los que tienen el href indicado. boolean equals: indica si el parámetro href debe encajar exactamente o estar contenido en el href del enlace. int pages: número de páginas que hay que esperar a que se carguen después de hacer click en el enlace.

Devuelve:

(int): tiempo tardado en descargar las páginas. CLICKONANCHORBYHREFREC Genera un evento click sobre un enlace identificado por su atributo href. Busca recursivamente en todos los frames, partiendo del frame actual. Parámetros:

String href: href del enlace a buscar. int position: orden dentro de todos los que tienen el href indicado. boolean equals: indica si el parámetro href debe encajar exactamente o estar contenido en el href del enlace. int pages: número de páginas que se desea esperar a que se descarguen después de hacer click en el enlace.

Devuelve:

(int): tiempo tardado en descargar las páginas. NOTA: No implementado para el tipo de navegador HTTPClient. CLICKONANCHORBYPOSITION Genera un evento click sobre un enlace identificado por su posición dentro del frame actual. Parámetros:

int position: posición del enlace. int pages: número de páginas que se desea esperar a que se descarguen después de hacer click en el enlace.

Devuelve:

(int): tiempo tardado en descargar las páginas. CLICKONANCHORBYTEXT Genera un evento click sobre un enlace identificado por su texto asociado. Debe estar dentro del frame actual.

Page 19: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 15

Parámetros:

String text: texto del enlace a buscar. int position: orden dentro de todos los que concuerdan con el texto indicado. boolean equals: indica si el texto pasado como primer parámetro debe encajar exactamente con el texto del enlace (true) o basta con que esté contenido en él (false). int pages: número de páginas que se desea esperar a que se descarguen después de hacer click en el enlace.

Devuelve:

(int): tiempo tardado en cargar las páginas. CLICKONANCHORBYTEXTREC Genera un evento click sobre un enlace identificado por su texto asociado. Se busca recursivamente en todos los frames partiendo del frame actual. Parámetros:

String text: texto del enlace a buscar. int position: orden dentro de todos los que tienen el texto indicado. boolean equals Indica si el texto pasado como primer parámetro debe encajar exactamente con el texto del enlace (true) o basta con que esté contenido en él (false). int pages: número de páginas que hay que esperar a que se carguen después de pulsar en el enlace.

Devuelve:

(int): tiempo tardado en cargar las páginas. NOTA: No implementado para el tipo de navegador HTTPClient. CLICKONAREABYHREF Genera un evento click sobre un mapa identificado por su atributo href. Parámetros:

String name: nombre del mapa a buscar. String href: nombre del href del área deseada del mapa. boolean equals: indica si el parámetro href debe encajar exactamente o estar contenido en el href del mapa. boolean recursive: si recibe el valor true, busca recursivamente en todos los frames desde el frame actual.

Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. CLICKONAREABYPOSITION Genera un evento click sobre un mapa identificado por su posición dentro del frame actual. Parámetros:

String name: nombre del mapa. int position: posición del área dentro del mapa especificado.

Page 20: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 16

boolean recursive: si recibe el valor true, busca recursivamente en todos los frames desde el frame actual. Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. SELECTANCHORBYHREF Selecciona un enlace identificado por su atributo href dentro del frame actual, que apunta a un documento que se desea convertir mediante la utilización de los comandos ConvertPDFToHtml o ConvertWordToHTML. Parámetros:

String href: href del enlace a buscar. int position: orden dentro de todos los que tienen el href indicado. boolean equals: indica si el parámetro href debe encajar exactamente o estar contenido en el href del enlace.

Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. NOTA: No funciona con javascript para el tipo de navegador HTTPClient. SELECTANCHORBYHREFREC Selecciona un enlace identificado por su atributo href. Busca recursivamente en todos los frames, partiendo del frame actual, que apunta a un documento que se desea convertir mediante la utilización de los comandos ConvertPDFToHtml o ConvertWordToHTML. Parámetros:

String href: href del enlace a buscar. int position: orden dentro de todos los que tienen el href indicado. boolean equals: indica si el parámetro href debe encajar exactamente o estar contenido en el href del enlace.

Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. NOTA: No implementado para el tipo de navegador HTTPClient. SELECTANCHORBYPOSITION Selecciona un enlace identificado por su posición dentro del frame actual, que apunta a un documento que se desea convertir mediante la utilización de los comandos ConvertPDFToHtml o ConvertWordToHTML. Parámetros:

int position: posición del enlace. Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso.

Page 21: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 17

NOTA: No funciona con javascript para el tipo de navegador HTTPClient. SELECTANCHORBYTEXT Selecciona un enlace identificado por su texto asociado, que apunta a un documento que se desea convertir mediante la utilización de los comandos ConvertPDFToHtml o ConvertWordToHTML. . Debe estar dentro del frame actual. Parámetros:

String text: texto del enlace a buscar. int position: orden dentro de todos los que concuerdan con el texto indicado. boolean equals: indica si el texto pasado como primer parámetro debe encajar exactamente con el texto del enlace (true) o basta con que esté contenido en él (false).

Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. NOTA: No funciona con javascript para el tipo de navegador HTTPClient. SELECTANCHORBYTEXTREC Selecciona un enlace identificado por su texto asociado, que apunta a un documento que se desea convertir mediante la utilización de los comandos ConvertPDFToHtml o ConvertWordToHTML. Se busca recursivamente en todos los frames partiendo del frame actual. Parámetros:

String text: texto del enlace a buscar. int position: orden dentro de todos los que tienen el texto indicado. boolean equals Indica si el texto pasado como primer parámetro debe encajar exactamente con el texto del enlace (true) o basta con que esté contenido en él (false).

Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso. NOTA: No implementado para el tipo de navegador HTTPClient. SETCONVERTERURL Establece la URL del documento que se desea convertir a HTML. Es útil cuando el documento no está accesible a través de ningún enlace, o si es una URL directa y no es necesario realizar ninguna navegación previa. Parámetros:

String url: cadena que representa la URL que se desea convertir. Devuelve:

(boolean): true si la operación se ha realizado con éxito, false en otro caso.

Page 22: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 18

3.5 COMANDOS PARA SELECCIÓN DE FORMULARIOS

FINDFORMBYACTION Busca un formulario por su atributo action dentro del frame actual. Parámetros:

String action: action del formulario a buscar. int position: orden dentro de todos los que tienen el mismo action. boolean equals: indica si el texto indicado debe encajar exactamente o sólo estar contenido en el action del formulario.

Devuelve:

(boolean): true si se encontró el formulario. FINDFORMBYACTIONREC Busca un formulario por su atributo action recursivamente desde el frame actual. Parámetros:

String action: action del formulario a buscar. int position: orden dentro de todos los formularios cuyo atributo action encaje con la cadena especificada. boolean equals: indica si el texto indicado debe encajar exactamente o sólo estar contenido en el action del formulario.

Devuelve:

(boolean): true si se encontró el formulario. NOTA: No implementado para el tipo de navegador HTTPClient. FINDFORMBYNAME Busca un formulario por nombre en el frame actual. Parámetros:

String name: nombre del formulario a buscar. int position: orden dentro de todos los formularios cuyo atributo name encaje con la cadena especificada..

Devuelve: (boolean): true si se encontró el formulario. FINDFORMBYNAMEREC Busca un formulario por nombre recursivamente a partir del frame actual.

Page 23: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 19

Parámetros: String name: nombre del formulario a buscar. int position: orden dentro de todos los formularios cuyo atributo name encaje con la cadena especificada.

Devuelve:

(boolean): true si se encontró el formulario. NOTA: No implementado para el tipo de navegador HTTPClient. FINDFORMBYPOSITION Busca un formulario por posición dentro del frame actual. Parámetros:

int position: posición del formulario. Devuelve:

(boolean): true si se encontró el formulario. RESETFORM Resetea el form seleccionado Parámetros:

Ninguno. Devuelve:

Nada. NOTA: También es posible seleccionar un formulario haciendo uso de los comandos FINDELEMENTBYXXX (ver sección 3.8).

Page 24: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 20

3.6 COMANDOS PARA REALIZAR ACCIONES SOBRE LOS ELEMENTOS DE UN FORMULARIO

CLICKONELEMENT Genera un click sobre un elemento de un formulariode la página. Los elementos de tipo "INPUT type=image" no se tienen en cuenta como elementos de tipo INPUT (no se devuelven en la colección de INPUTs de un formulario). La única forma de acceder a ellos es por nombre. Esto también hay que tenerlo en cuenta cuando se accede a otro input por posición, puesto que no hay que contar los que sean de tipo IMAGE. Parámetros:

String name: nombre del elemento. (OPCIONAL) String type: tipo del elemento (OPCIONAL). int position: orden dentro de todos los elementos del formulario actual que se llamen igual (si se especifica el parámetro name) y sean del tipo indicado (si se especifica el parámetro type). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente

Devuelve:

(boolean): true si se hizo el click correctamente. . CLICKONINPUTELEMENT Simula un click sobre un elemento INPUT del último formulario seleccionado. Los elementos de tipo "INPUT type=image" no se tienen en cuenta como elementos de tipo INPUT (no se devuelven en la colección de INPUTs de un formulario). La única forma de acceder a ellos es por nombre. Esto también hay que tenerlo en cuenta cuando se accede a otro input por posición, puesto que no hay que contar los que sean de tipo IMAGE. Parámetros:

String name: nombre del elemento. (OPCIONAL) String value: valor del elemento. int position: orden dentro de todos los elementos del formulario actual que se llamen igual (si se especifica el parámetro name) y tengan el mismo valor. Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente

Devuelve:

(boolean): true si se hizo el click correctamente. FIREEVENT Dispara un evento sobre un elemento de un formulario.

Page 25: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 21

Parámetros:

String event: nombre del evento (p.e. onClick, onMouseOver, …). String type: tipo del elemento. String name: nombre del elemento. int position: orden dentro de todos los elementos del formulario actual que se llamen igual y sean del tipo indicado. Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente

Devuelve:

(boolean): true si el evento se ha disparado correctamente. NOTA: No implementado para el tipo de navegador HTTPClient. SELECTINDEXBYPOSITION Selecciona una de las opciones de un campo de tipo select de un formulario mediante su posición. Parámetros:

String name: nombre del select. (OPCIONAL) int position: orden dentro de todos los campos de tipo select que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo select del formulario actual (si no se especifica). int position_option: posición en el campo select del valor que se desea seleccionar. Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente

Devuelve:

(boolean): true si se seleccionó la opción correctamente. SELECTINDEXBYTEXT Selecciona una opción de de un campo de tipo select por texto. Parámetros:

String name: nombre del select. (OPCIONAL) int position: orden dentro de todos los campos de tipo select que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo select del formulario actual (si no se especifica). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente String text: texto asociado a la opción que se quiere seleccionar. int position_option: orden dentro de todas las opciones con el mismo texto asociado. boolean equals: indica si el texto especificado como parámetro debe encajar exactamente con el valor deseado del campo select (true) o basta con que esté contenido en él (false).

Devuelve:

(boolean): true si se seleccionó la opción.

Page 26: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 22

r

SELECTINDEXBYVALUE Selecciona una opción de de un campo de tipo select por el valor del “option”. Parámetros:

String name: nombre del select (OPCIONAL) int position: orden dentro de todos los campos de tipo select que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo select del formulario actual (si no se especifica). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente String value: texto asociado al valor de la opción que se quiere seleccionar. int position_option: orden dentro de todas las opciones con el mismo texto asociado. boolean equals: indica si el texto especificado como parámetro debe encajar exactamente con el valor deseado del campo select (true) o basta con que esté contenido en él (false).

Devuelve:

(boolean): true si se seleccionó la opción. SETINPUTVALUE Establece el valor de un campo de tipo input de un formulario. Parámetros:

String name: nombre del campo de tipo input. (OPCIONAL) int position: orden dentro de todos los campos de tipo input que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo input del formulario actual (si no se especifica). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente String value: valor que se quiere establecer.

Devuelve:

(boolean): true si el valor se ha establecido correctamente. SETTEXTAREAVALUE Establece el valor de un campo de tipo textarea Parámetros:

String name: nombre del campo textarea. (OPCIONAL) int position: orden dentro de todos los campos de tipo texta ea que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo textarea del formulario actual (si no se especifica). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente String value: valor que se quiere establecer.

Page 27: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 23

Devuelve:

(boolean): true si el valor se ha establecido correctamente. SUBMITFORM Genera un evento submit sobre el formulario seleccionado. Parámetros:

int pages: número de páginas que se desea esperar a que se descarguen después de hacer el submit. Devuelve:

(int): tiempo tardado en descargar las páginas. UNSELECTALL Deselecciona todas las opciones del campo de tipo select indicado. Parámetros:

String name: nombre del select. (OPCIONAL) int position: orden dentro de todos los campos de tipo select que se llamen igual (si se especifica el parámetro name) u orden dentro de todos los campos de tipo select del formulario actual (si no se especifica). Cuando se utiliza el navegador Microsoft Internet Explorer, el comando busca en el formulario seleccionado actualmente y si no hay formulario seleccionado busca el elemento en el frame actual. En Mozilla Firefox y HTTPClient sólo los busca en el formulario seleccionado actualmente

Devuelve:

(boolean): true si se ha realizado correctamente, false en otro caso.

Page 28: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 24

3.7 COMANDOS DE SELECCIÓN DE FRAMES

FINDFRAMEBYNAME Busca un frame por nombre dentro de los contenidos en el frame actual. Parámetros:

String name: nombre del frame a buscar. int position: orden dentro de todos los que se llamen igual. boolean equals: indica si el nombre recibido como parámetro debe encajar exactamente con el nombre de un frame para que el sistema establezca una coincidencia (true) o basta con que esté contenido en el mismo (false).

Devuelve: (boolean): true si se encontró el frame.

FINDFRAMEBYNAMEREC Busca un frame por nombre buscando recursivamente dentro de todos los frames (búsqueda en profundidad).

Parámetros:

String name: nombre del frame a buscar. int position: orden dentro de todos los que se llamen igual. boolean equals: indica si el nombre recibido como parámetro debe encajar exactamente con el nombre de un frame para que el sistema establezca una coincidencia (true) o basta con que esté contenido en el mismo (false).

Devuelve:

(boolean): true si se encontró el frame. NOTA: No implementado para el tipo de navegador HTTPClient. FINDFRAMEBYPOSITION Busca un frame por posición, dentro de los contenidos en el frame actual. Parámetros:

int position: posición del frame. Devuelve:

(boolean): true si se encontró el frame. FINDFRAMEBYSOURCE Busca un frame por el atributo source dentro de los contenidos en el frame actual. Parámetros:

String source: source del frame a buscar.

Page 29: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 25

int position: orden dentro de todos los que tienen el source indicado. boolean equals: indica si el texto indicado debe encajar exactamente con el atributo source del frame (true) o es suficiente con que esté contenido (false).

Devuelve:

(boolean): true si se encontró el frame. FINDFRAMEBYSOURCEREC Localiza un frame por el atributo source buscando recursivamente dentro de todos los frames (búsqueda en profundidad). Parámetros:

String source: source del frame a buscar. int position: orden dentro de todos los que tienen el source indicado. boolean equals: indica si el texto indicado debe encajar exactamente con el atributo source del frame (true) o es suficiente con que esté contenido (false).

Devuelve:

(boolean): true si se encontró el frame. NOTA: No implementado para el tipo de navegador HTTPClient. RESETFRAME Resetea el frame seleccionado, pasando a ser el frame activo el "_top". Parámetros:

Ninguno. Devuelve:

Nada.

Page 30: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 26

3.8 COMANDOS PARA SELECCIONAR ELEMENTOS

FINDELEMENTBYATTRIBUTE Busca un elemento HTML por tipo y atributo, dentro de los contenidos en el frame actual. Parámetros:

String tagname: nombre de la etiqueta HTML asociada al elemento a buscar (debe ir en mayúsculas). String attr_name: nombre del atributo que ha de contener el elemento buscado (no sensible a

mayúsculas/minúsculas). Si el atributo es del tipo onXXX (onClick, onMouseOver, ...) este comando solo funciona con versiones de MSIE 6.x.

String attr_value: valor del atributo indicado en el parámetro anterior. int position: orden dentro de todos los que sean del tipo indicado y con el atributo especificado. boolean equals: indica si el parámetro atr-value debe encajar exactamente con el valor del atributo (true) o

basta con que esté contenido (false). Devuelve:

(boolean): true si se encontró el elemento. NOTA: Cuando se utiliza HTTPClient, el tipo de atributo está limitado a A, INPUT. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX). FINDELEMENTBYATTRIBUTEREC Busca un elemento HTML por tipo y atributo, buscando recursivamente dentro de todos los frames a partir del actual (búsqueda en profundidad). Parámetros:

String tagname: nombre de la etiqueta HTML asociada al elemento a buscar (debe ir en mayúsculas). String attr_name: nombre del atributo que ha de contener el elemento buscado (no sensible a

mayúsculas/minúsculas). Si el atributo es del tipo onXXX (onClick, onMouseOver, ...) este comando solo funciona con versiones de MSIE 6.x.

String attr_value: valor del atributo indicado en el parámetro anterior. int position: Orden dentro de todos los que sean del tipo indicado y con el atributo espcificado. boolean equals: indica si el parámetro atr-value debe encajar exactamente con el valor del atributo (true) o

basta con que esté contenido (false). Devuelve:

(boolean): true si se encontró el elemento. NOTA: No implementado para el tipo de navegador HTTPClient. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX).

Page 31: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 27

,

FINDELEMENTBYCHILD Busca un elemento HTML por tipo y atributo de un elemento hijo, dentro de los contenidos en el frame actual. Parámetros:

String tagname: nombre del tag asociado al elemento HTML padre a buscar (debe ir en mayúsculas). String child_tagname: nombre del tag asociado al elemento HTML hijo a buscar. String attr_name: nombre del atributo que ha de estar presente en algún hijo del elemento buscado (no sensible

a mayúsculas/minúsculas). Si el atributo es del tipo onXXX (onClick onMouseOver, ...) este comando solo funciona con versiones de MSIE 6.x.

String attr_value: valor del atributo indicado en el parámetro anterior. int position: orden dentro de todos los que cumplan las condiciones especificadas. boolean recursive_children: indica si se busca sólo en los tags hijos de primer nivel del tag padre (false) o en cualquier descendiente (true) boolean equals: indica si el parámetro attr_value debe encajar exactamente con el valor del atributo (true) o basta con que esté contenido (false).

Devuelve: (boolean): true si se encontró el elemento.

NOTA: Cuando se utiliza HTTPClient, el tipo de atributo está limitado a A. FINDELEMENTBYCHILDREC Busca un elemento HTML por tipo y atributo de un elemento hijo, buscando recursivamente dentro de todos los frames a partir del actual (búsqueda en profundidad). Parámetros:

String tagname: nombre del tag asociado al elemento HTML padre a buscar (debe ir en mayúsculas). String child_tagname: nombre del tag asociado al elemento HTML hijo a buscar. String attr_name: nombre del atributo que ha de estar presente en algún hijo del elemento buscado (no sensible

a mayúsculas/minúsculas). Si el atributo es del tipo onXXX (onClick, onMouseOver, ...) este comando solo funciona con versiones de MSIE posteriores a la 6.0.

String attr_value: valor del atributo indicado en el parámetro anterior. int position: orden dentro de todos los que cumplan las condiciones especificadas. boolean recursive_childs: indica si se busca sólo en los tags hijos de primer nivel del tag oadre (false) o en cualquier descendiente (true) boolean equals: indica si el parámetro attr_value debe encajar exactamente con el valor del atributo (true) o basta con que esté contenido (false).

Devuelve:

(boolean): true si se encontró el elemento. NOTA: No implementado para el tipo de navegador HTTPClient. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX).

Page 32: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 28

FINDELEMENTBYPOSITION Busca un elemento HTML del tipo indicado por posición en el frame actual. Parámetros:

String tagname: nombre de la etiqueta HTML asociada al elemento a buscar (debe ir en mayúsculas). int position: posición del elemento.

Devuelve:

(boolean): true si se encontró el elemento. NOTA: Cuando se utiliza HTTPClient, el tipo de atributo está limitado a A, INPUT. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX). FINDELEMENTBYTEXT Busca un elemento HTML por tipo y texto, dentro de los contenidos en el frame actual. Parámetros:

String tagname: nombre de la etiqueta HTML asociada al elemento a buscar (debe ir en mayúsculas). String texto: texto que ha de contener el elemento buscado. int position: orden dentro de todos los que sean del tipo indicado y contengan el texto especificado. boolean equals: indica si el valor del texto indicado debe encajar exactamente con el del elemento (true) basta

con que esté contenido (false).

Devuelve: (boolean): true si se encontró el elemento.

NOTA: Cuando se utiliza HTTPClient, el tipo de atributo está limitado a A, INPUT. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX). FINDELEMENTBYTEXTREC Busca un elemento HTML por tipo y texto, buscando recursivamente dentro de todos los frames a partir del actual (búsqueda en profundidad). Parámetros:

String tagname: nombre de la etiqueta HTML asociada al elemento a buscar (debe ir en mayúsculas). String texto: texto que ha de contener el elemento buscado. int position: orden dentro de todos los que sean del tipo indicado y contengan el texto especificado. boolean equals: indica si el valor del texto indicado debe encajar exactamente con el del elemento (true) basta

con que esté contenido (false).

Page 33: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 29

Devuelve: (boolean): true si se encontró el elemento.

NOTA: No implementado para el tipo de navegador HTTPClient. NOTA: Si el elemento buscado por este comando es un formulario, éste pasará a ser el formulario seleccionado, por lo que todos los comandos posteriores relacionados con elementos de formulario se ejecutarán sobre ese formulario (como si se hubiese elegido con un comando FindFormByXXX).

Page 34: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 30

3.9 COMANDOS PARA REALIZAR ACCIONES SOBRE ELEMENTOS

CLICKONSELECTEDELEMENT Genera un click sobre el último elemento seleccionado. Parámetros:

Ninguno. Devuelve:

(boolean): true si se hizo el click correctamente FIREEVENTONSELECTEDELEMENT Lanza un evento sobre el último elemento seleccionado. Parámetros:

String event: nombre del evento Devuelve:

(boolean): true si se lanzó el evento correctamente NOTA: No implementado para el tipo de navegador HTTPClient. TRANSPOSESELECTEDTABLE Transponse el contenido de una tabla previamente seleccionada con otros comandos NSEQL. Parámetros: Ninguno. Devuelve: Nada. NOTA: No implementado para el tipo de navegador HTTPClient.

Page 35: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 31

3.10 COMANDOS PARA EL MANEJO DE VENTANAS

ALLOWOPENNEWWINDOWS Habilita o deshabilita la apertura de nuevas ventanas por parte del navegador.

Parámetros:

bool permit: true para permitir al navegador abrir nuevas ventanas y false para no permitirlo.. Devuelve:

(boolean): true si la operación se realizó correctamente y false en caso contrario. NOTA: No implementado para el tipo de navegador HTTPClient. CLOSEWINDOW Cierra una ventana de entre las ventanas activas en la secuencia de navegación actual. Parámetros:

int numeroVentana: posición de la ventana deseada dentro del vector de ventanas activas de la secuencia de navegación actual.

Devuelve:

(boolean): true si la operación se realizó correctamente y false en caso contrario. NOTA: No implementado para el tipo de navegador HTTPClient. GETWINDOWNAME Obtiene el nombre de la ventana actual. Parámetros:

Ninguno. Devuelve:

(string): el nombre de la ventana actual. NOTA: No implementado para el tipo de navegador HTTPClient. OPENNEWWINDOW Abre una nueva ventana en la secuencia de navegación actual, situándola como última del vector de ventanas activas. Parámetros:

String url: URL en la que abrir la nueva ventana. String name: nombre de la nueva ventana

Page 36: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 32

String features: características de la nueva ventana. Se especifica mediante una lista de pares parámetro =valor separados por punto y coma. Se soportan los siguientes parámetros:

toolbar=0|1. Especifica si mostrar o no la barra de tareas. location=0|1. Especifica si mostrar o no la barra de direcciones. status=0|1. Especifica si mostrar o no la barra de status. menubar=0|1. Especifica si mostrar o no la barra de menús. scrollbars=0|1. Especifica si mostrar o no barras de scroll. resizable=0|1. Especifica si la nueva ventana tiene tamaño variable. width=pixels. Especifica la anchura de la nueva ventana. height=pixels. Especifica la altura de la nueva ventana. top=pixels. Especifica la coordenada Y de la esquina inferior izquierda de la ventana. left=pixels Especifica la coordenada X de la esquina inferior izquierda de la ventana.

int replace. Indica si la nueva ventana se debe abrir sobre la misma ventana (valor 1) o no (valor 0).

Devuelve:

Nada. NOTA: No implementado para el tipo de navegador HTTPClient. SELECTWINDOW Selecciona una ventana de entre las ventanas activas en la secuencia de navegación actual. Parámetros:

int numeroVentana: posición de la ventana deseada dentro del vector de ventanas activas de la secuencia de navegación actual.

Devuelve:

(boolean): true si la operación se realizó correctamente y false en caso contrario.

NOTA: No implementado para el tipo de navegador HTTPClient. SETWINDOWNAME Fija el nombre de la ventana actualmente seleccionada. Parámetros:

String name: el nombre de la ventana Devuelve:

Nada. NOTA: No implementado para el tipo de navegador HTTPClient.

Page 37: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 33

CLOSEINACTIVEWINDOWS En secuencias en las que intervienen varias ventanas, cierra todas las ventanas excepto la que está activa. Parámetros

Ninguno

Devuelve: Nada.

NOTA: No implementado para el tipo de navegador HTTPClient.

Page 38: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 34

3.11 COMANDOS PARA MANEJAR DIÁLOGOS EMERGENTES

ONDIALOG Busca un diálogo cuya ventana es hija del IEBrowser activo y perteneciente a la clase "#32770" (“Dialog Box”). En caso de localizar el diálogo, rellena un campo de edición si se indica un contenido para dicho campo, y se pulsa el botón que ocupa una determinada posición dentro del diálogo. Parámetros:

int buttonNumber: indica la posición del botón del diálogo a pulsar (comenzando en 0). String content: contenido a establecer en el campo de edición. Si el diálogo no incluye un control de edición o no se desea rellenar su contenido, este parámetro debe tener asignado el valor reservado '_NULL_'.

Devuelve:

Nada. NOTA: En Firefox este comando no está implementado. El comportamiento del navegador Firefox ante la ejecución de diálogos es el de aceptarlos. NOTA: No implementado para el tipo de navegador HTTPClient. ONPRINTDIALOG Localiza un diálogo de tipo IE Print Dialog (de la clase “#32770”) hija del IEBrowser activo y simula una secuencia de comandos sobre la ventana localizada. Parámetros: int buttonPosition: posición del botón de diálogo que ha de ser pulsado, comenzando por 0. String printerName: atributo opcional, indica el nombre de la impresora a utilizar (puede ser _NULL). int printerPosition: indica la posición de la impresora a utilizar, comenzando por 0. Si el nombre de la impresora (parámetro printerName) es _NULL_, considera todas las impresoras. Si no, sólo considera las impresoras con el nombre indicado. Si este parámetro tiene el valor -1, se utiliza la impresora por defecto. Devuelve: Nada. NOTA: En Firefox este comando no está implementado. El comportamiento del navegador Firefox ante la ejecución de diálogos es el de aceptarlos.

NOTA: No implementado para el tipo de navegador HTTPClient.

ONWEBPAGEDIALOG Localiza un diálogo cuya ventana es hija del IEBrowser activo y perteneciente a la clase "Internet Explorer_TridentDlgFrame" y simula una secuencia de comandos sobre la ventana del diálogo localizada.

Page 39: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 35

Parámetros: String strCommands: cadena que contiene una lista de acciones a ejecutar sobre el diálogo. Las posibles acciones son:

1) Pulsar una letra de texto. 2) Realizar una determinada acción a través de un comando. Cada uno de los comandos deberá estar delimitado por llaves. Los comandos posibles son:

o ENTER: simula la pulsación de la tecla "INTRO". o TAB: simula la pulsación del tabulador. o UP: simula la pulsación de la tecla que desplaza el cursor hacia arriba. o DOWN: simula la pulsación de la tecla que desplaza el cursor hacia abajo. o WAIT: espera un segundo a la realización del siguiente comando. o CLOSE: cierra la ventana del diálogo.

Por ejemplo una posible secuencia de acciones es: "{TAB}texto{TAB}{DOWN}{TAB}{UP}{CLOSE}". Opcionalmente, si se desea repetir la ejecución de un comando un determinado número de veces, se debe

especificar dicho número entre <> (después del nombre del comando y dentro de las llaves que lo engloban). Por ejemplo, "{TAB<3>}" indica la pulsación de la tecla tabulador tres veces, es decir, es equivalente a "{TAB}{TAB}{TAB}".

Devuelve: Nada. NOTA: En Firefox este comando no está implementado. El comportamiento del navegador Firefox ante la ejecución de diálogos es el de aceptarlos.

NOTA: No implementado para el tipo de navegador HTTPClient. NOTA: los símbolos “{“ y “}” han de ser escapados con “\\”. ONDOWNLOADDIALOG Busca un diálogo perteneciente a la clase “#32770”, cuyo identificador de proceso coincide con el del IEBrowser activo y que tenga como ventana hija otro diálogo perteneciente a la clase "#32770". En caso de localizarla, pulsa el primer botón del segundo diálogo, lo que provocará la apertura de una tercera ventana de diálogo de la misma clase "#32770". A continuación, se busca el primer campo de edición de la tercera ventana de diálogo, y se escribe en él la ruta del fichero (calculada a partir del nombre del fichero y del directorio). Y por último, se pulsa el primer botón del último diálogo (lo que provocará el proceso de bajada del fichero en la ruta especificada). Parámetros:

String fileName: nombre del archivo. String directoryName: nombre del directorio en el que se desea guardar el archivo.

Devuelve: Nada. NOTA: En Firefox este comando no está implementado. El comportamiento del navegador Firefox ante la ejecución de diálogos es el de aceptarlos.

NOTA: No implementado para el tipo de navegador HTTPClient.

Page 40: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 36

SETDIALOGPROPERTIES Permite gestionar los parámetros de configuración del gestor de diálogos. Parámetros:

boolean synchronized: indica si los diálogos se tratan secuencialmente o si se tratan concurrentemente en caso de que aparezcan varios al mismo tiempo. Por defecto, false. int timeout: tiempo máximo en que se puede rellenar un diálogo Por defecto, 15 s.

Devuelve:

(boolean): true si el comando se ejecuta con éxito, false en caso contrario. NOTA: En Firefox este comando no está implementado. El comportamiento del navegador Firefox ante la ejecución de diálogos es el de aceptarlos. NOTA: No implementado para el tipo de navegador HTTPClient.

Page 41: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 37

3.12 COMANDOS PARA CAMBIAR LAS PROPIEDADES DEL NAVEGADOR

SETAMBIENTPROPERTIES Establece las propiedades que controlan los elementos que descarga y ejecuta el navegador activo.

Parámetros:

Todos los parámetros pueden tomar el valor 0 (indica un valor negativo) o 1 (indica un valor afirmativo).

int images: bajar imágenes. int videos: bajar videos. int bgsounds: bajar sonidos. int noscript: no ejecutar script. int nojava: no ejecutar applets. int noactivex: no bajar controles activeX. int novisualizacion: la página se descarga pero no se visualiza. int nocache: se ignoran los archivos de cache y se le piden al servidor. Si este indica que que los archivos

cacheados están actualizados se utilizan. int noproxycache: la petición se fuerza a través del servidor, obviando el proxy aunque tenga los datos utilizados.

Devuelve:

Nada. NOTA: Si se utiliza Firefox como navegador, sólo soporta los siguientes parámetros: images, noscript, nojava, nocache, noproxycache NOTA: No implementado para el tipo de navegador HTTPClient. SETPROXYAUTHINFO Permite configurar el navegador activo con las preferencias para atravesar proxies autenticados. El sistema buscará una ventana de autenticación de proxy y rellenará sus campos automáticamente cuando sea necesario. Parámetros:

String login: nombre de usuario en el proxy. Si el formato de este parámetro es del tipo login@host:port , este comando permite soportar diferentes proxies web (e.g. SetProxyAuthInfo(demo-user@denodo-proxy:80,mypass,mydomain). String password: Contraseña en el proxy String domain: Dominio en el proxy.

Devuelve:

(boolean): true si el comando se ejecuta con éxito, false en caso contrario.

Page 42: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 38

3.13 COMANDOS INFORMATIVOS

FINDCOOKIES Obtiene las cookies actuales. Parámetros: Ninguno. Devuelve:

(String): lista de cookies. Para cada una se muestra su nombre y valor separados por ‘;’. GETEXTENDEDSOURCECODE Obtiene el código fuente del frame actual, devolviendo información de visualización en las etiquetas HTML: añade cuatro atributos a cada etiqueta HTML con las posiciones X e Y (alto y ancho). Parámetros:

Ninguno. Devuelve:

(String): el código fuente de la página actual, o del último frame seleccionado, o del último frame cargado como resultado de hacer click en un enlace.

NOTA: Funciona igual que GetSourceCode para el tipo de navegador HTTPClient. GETLOCATION Obtiene la URL del frame actual. Parámetros:

Ninguno.

Devuelve: (String): la URL del frame actual.

GETSOURCECODE Obtiene el código fuente del frame actual. Parámetros:

Ninguno. Devuelve:

(String): el código fuente de la página actual, o del último frame seleccionado, o del último frame cargado como resultado de hacer click en un enlace.

Page 43: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 39

GETTITLE Obtiene el título del frame actual. Parámetros:

Ninguno. Devuelve:

(String): el título del frame actual. QUERYDOWNLOADEDPAGES Obtiene el número de páginas descargadas desde la última navegación. Parámetros:

Ninguno.

Devuelve: (int): el número de páginas descargadas desde la última navegación. Si se utiliza el navegador HTTPClient, devuelve siempre 1.

GETSELECTEDOPTIONS Obtiene el valor de la opción seleccionada en un elemento de tipo SELECT. Parámetros:

String name: nombre del elemento de tipo SELECT. int position: posición dentro del formulario con el mismo nombre.

Devuelve: (int): índice del valor seleccionado. Si se utiliza el navegador HTTPClient, devuelve siempre 0.

GETLASTURL Obtiene el valor de la última URL accedida por la secuencia de navegación. Parámetros:

Ninguno.

Devuelve: (string) URL obtenida.

NOTA: Se comporta igual que el comando GetLocation para el tipo de navegador HTTPClient.

Page 44: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 40

GETLASTURLPOSTPARAMETERS Devuelve una cadena con los parámetros del método http POST de la última URL accedida. Si la última petición se realizó con el método http GET, devolverá una cadena vacía. Parámetros:

Ninguno.

Devuelve: (string) Cadena con los parámetros POST.

GETMIMETYPE Devuelve el tipo MIME de la página actual. Parámetros:

Ninguno.

Devuelve: (string): tipo MIME de la página.

ISDOWNLOADING Informa sobre si la página actual se ha terminado de cargar o no. Parámetros:

Ninguno. Devuelve:

(boolean): true si la página sigue descargándose, false si ya ha terminado. NOTA: No implementado para el tipo de navegador HTTPClient.

Page 45: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 41

3.14 CONVERSORES

CONVERTWORDTOHTML

Convierte el contenido Word del enlace previamente seleccionado a HTML, cargándolo en el navegador para su posterior procesamiento. Parámetros:

Ninguno Devuelve:

(string): código html de la página generada. CONVERTPDFTOHTML

Convierte el contenido PDF del enlace previamente seleccionado a HTML, cargándolo en el navegador para su posterior procesamiento. Parámetros:

Ninguno Devuelve:

(string): código html de la página generada.

Page 46: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Referencia de Comandos NSEQL 42

3.15 COMANDOS DE EJECUCIÓN DE CÓDIGO

EXECUTEJS

Ejecuta un código JavaScript sobre la página actual en el navegador. Parámetros:

String js: código JavaScript a ser ejecutado. Devuelve:

Nada. NOTA: No implementado para el tipo de navegador HTTPClient.

Page 47: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Funciones de Utilidad 43

4 FUNCIONES DE UTILIDAD

ITPilot provee una serie de funciones de utilidad en la descripción de comandos de navegación. Estas funciones se pueden utilizar en los argumentos de entrada de los comandos NSEQL, prefijados por el símbolo “^”.

4.1 ENCODESEQ

Esta función admite como entrada una cadena de caracteres, y devuelve esa misma cadena pero con la codificación adecuada para su funcionamiento en NSEQL (escapado de caracteres). Por ejemplo, se utiliza cuando se desea introducir una variable @VARIABLE cuyo valor es una dirección electrónica “[email protected]”; debido a que el símbolo “@” es utilizado por NSEQL, la escritura directa de @VARIABLE puede provocar un error. Por ello, se utilizaría ^EncodeSeq(@VARIABLE).

4.2 EXECUTEIFISNOTNULL

Esta función admite como entrada tres parámetros de tipo cadena de caracteres. Si el parámetro central se evalua como la cadena vacía, entonces el valor de retorno de la función es la cadena vacía. En caso contrario, el valor de retorno es la concatenación ordenada de los tres parámetros. El uso más típico de esta función es hacer que comando de una secuencia se ejecute sólo en caso de que exista un valor para una determinada variable. Por ejemplo, considérese la siguiente expresión en una secuencia NSEQL: ^ExecuteIfIsNotNull(\"ClickOnElement(testDone,INPUT,\",@VAR,\");\") Si la expresión @VAR recibida como segundo parámetro no se evalua a la cadena vacía, la salida será el comando: ClickOnElement(testDone,INPUT,@VAR); Sin embargo, si la expresión 1se evalua a la cadena vacía, la salida será la cadena vacía y, por lo tanto, el comando no se ejecutará.

Page 48: DENODO ITPILOT 4.0 MANUAL NSEQLhelp.denodo.com/platform-docs/4.0/DenodoITPilot.ManualNSEQL.pdfEste documento es confidencial y propiedad de denodo technologies (en adelante denodo)

Denodo ITPilot 4.0 Manual NSEQL

Bibliografía 44

BIBLIOGRAFÍA

[GENER] Manual del Entorno de Generación de ITPilot. Denodo Technologies, 2007.