27
Calidad Ambiental Gestión de Residuos No Peligrosos GRNP Descripción de Servicios Web

GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

Calidad Ambiental

Gestión de Residuos No Peligrosos GRNP

Descripción de Servicios Web

Page 2: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 2/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 2 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

INDICE

1 INTRODUCCIÓN ....................................................................................................3

2 ALCANCE............................................ ...................................................................4

3 AUTENTICACIÓN ...................................... ............................................................6

4 ANOTACIONES DE SINDICACIÓN AL SERVICIO GRNP – LIBRO DE REGISTRO................................................................................................................................9

4.1 MÉTODOS COMUNES ....................................................................................................9 4.2 WS_GNP_DATOS .....................................................................................................10 4.3 WS_GNP_LN ...........................................................................................................12

5 EJEMPLOS........................................... ................................................................19

5.1 ACCESS.....................................................................................................................19 5.2 AXIS - JAVA............................................... ...............................................................23 5.3 INFOPATH. .................................................................................................................24 5.4 .NET .........................................................................................................................26

Page 3: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 3/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 3 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

1 INTRODUCCIÓN

El presente documento introduce los servicios Web para el apartado del Libro de Registro de la aplicación GRNP – Gestión de Residuos No Peligrosos. La aplicación se encuentra divida en dos partes, con la misma funcionalidad, la aplicación Web, que se accede desde un navegador, y los servicios Web que permite a las aplicaciones actuales existentes en el entorno de usuario comunicar la información necesaria al módulo. Para ello es necesaria una pequeña modificación de las mismas para que puedan comunicarse con el servicio. Todos estos puntos se describen más detalladamente en los apartados siguientes

• En el apartado de Alcance se describe la estructura que tiene la aplicación así como un

desarrollo más detallado de los servicios. • En el apartado de Autenticación se describen las medidas de seguridad empleadas en los

servicios para trabajar con los distintos métodos, y que deben seguirse para un correcto funcionamiento.

• En el siguiente apartado se definen los distintos métodos presentados por los servicios Web

• Por último se muestran ejemplos en distintas tecnologías, por lo que trasladar a otras no debe suponer mayor esfuerzo.

Page 4: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 4/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 4 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

2 ALCANCE

El presente documento detalla brevemente la arquitectura del sitio Web http://calidadambiental.aragon.es, marcando las directrices para poder utilizar sus Servicios Web .

Como se podrá comprobar el efecto que se intenta alcanzar es que el portal calidadambiental.aragon.es sea flexible, permitiendo que las aplicaciones terceras de gestores de vehículos o residuos, puedan interactuar, intercambiar y aprovechar sus datos de forma transparente, llegando a una interrelación total entre empresas y administración pública.

Desde la interfaz Servicios Web se permite realizar la misma operatoria que desde las aplicaciones Web, menos aquellas opciones como la impresión asociadas directamente al aplicativo. Entiéndase que por definición un servicio es una aplicación modular y autodescriptiva que se puede evocar desde cualquier punto. De esta manera esta capa intermedia presenta una serie de módulos que pueden utilizarse independiente del sistema operativo y/o lenguaje de programación, posibilitando que la información esté disponible en cualquier momento y en cualquier lugar.

Esta tecnología utiliza para ello un lenguaje XML y un protocolo SOAP que describe el significado de los datos permitiendo que mantengan su integridad al ser transmitidos y manejados por múltiples sitios y usuarios

Por supuesto SOAP no recae en un software de desarrollo específico; los distintos fabricantes han lanzado sus paquetes que incluyen asistentes, código de ejemplo y manuales para los desarrolladores. Como modelo, hemos utilizado la herramienta gratuita SOAP ToolKit de Microsoft

Page 5: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 5/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 5 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

para los ejemplos Access, describiendo brevemente su utilización con otras herramientas como Infopath o Axis para java.

Para descarga los ejemplos http://calidadambiental.aragon.es/gnp/Servicios.htm.

Por último como paso previo para poder realizar cualquier operación contra la BD oficial, previamente debe solicitarse una conexión al departamento de medio ambiente. La aprobación de esta petición permitirá el acceso tanto a los programas "vehículos fuera de uso", "documentos de control y seguimiento" y "gestión de residuos no peligrosos" como a los servicios Web asociados a cada uno de ellos. A partir de dicha conexión podrá trabajar con sus datos de forma totalmente online.

Page 6: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 6/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 6 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

3 AUTENTICACIÓN

Antes de realizar cualquier operación contra el servicio, la aplicación que lo está empleando debe autenticarse correctamente con un usuario y una contraseña que habrá sido proporcionada por los servicios centrales a cada empresa. Una vez autenticado se podrá trabajar correctamente con el servicio. Para que este servicio sea capaz de reconocer que el usuario se encuentra autenticado, se debe mantener la sesión almacenada en la aplicación local. Si la aplicación empleada para la comunicación es un navegador Web, esta gestión se realiza automáticamente, si se trata de una aplicación Access, se mantiene mientras permanezca abierto el canal de comunicación con el servicio, mientras que si se tratan de aplicaciones Java o C#, ésta operación debe ser realizada por la propia aplicación. En apartados posteriores se explica un ejemplo.

En caso de no realizar la autenticación correctamente, los distintos métodos avisarán de la situación mediante un mensaje de error, o con la devolución de estructuras de datos vacías. Éste punto es crítico a la hora del correcto comportamiento de la comunicación.

En caso de duda, en todos los servicios se encuentra disponible un método que no requiere de autenticación que permite comprobar que el servicio está activo y la conexión es correcta. Este método se denomina ping y devuelve la dirección IP desde donde se realiza la petición además de la fecha y hora de respuesta.

Los servicios Web emplean el protocolo SOAP para realizar la comunicación, y la descripción del método Ping, junto con un ejemplo de repuesta es la siguiente:

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body>

<PingResponse xmlns="http://calidamabiental.aragon.es/gnp">

<PingResult>string </PingResult>

</PingResponse>

</soap:Body>

</soap:Envelope> Ejemplo respuesta SOAP .

Page 7: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 7/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 7 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

<?xml version="1.0" encoding="utf-8" ?>

<string xmlns="http://calidamabiental.aragon.es/gnp">

Ping response to 1.21.1.78: 08:53:48 21/06/2005</string>

Una vez comprobada la conexión y como paso previo a la utilización del resto de los métodos, debemos autenticarnos. Para ello, se ha publicado el método Autenticar que recibe dos parámetros usuario y password.

POST /Catwebservice/Vehiculos.asmx HTTP/1.1 Host: calidadambiental.aragon.es Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://calidamabiental.aragon.es/ gnp /Autenticar" <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <Autenticar xmlns="http://calidamabiental.aragon.es/gnp"> <usuario>string </usuario> <password>string </password> </Autenticar> </soap:Body> </soap:Envelope> Ejemplo petición SOAP

Recordar en este punto que en el módulo SAU, Servicio de Autenticación Universal del Gobierno de Aragón, la primera vez que se autentique vía WebService o aplicación Web, necesitará cambiar la password, para ello se ha habilitado el método ModificarPassword . Método que sólo podrá utilizarse si se ha autenticado previamente y que sigue las siguientes normas:

1. La contraseña nueva deberá ser distinta a todas las que haya utilizado anteriormente 2. Tener una longitud mayor o igual a 8 caracteres. 3. Tener una letra minúscula. 4. Tener una letra mayúscula. 5. Tener un dígito. 6. Tener un carácter que no sea ni dígito ni letra entre las posiciones 2 y 6 de la contraseña.

La nueva contraseña tiene una validez de 3 meses. Pasado ese tiempo ha de cambiarse por otra distinta a cualquiera que haya utilizado hasta el momento. Si se equivoca más de 5 veces consecutivas su cuenta será automáticamente bloqueada.

Nótese que puede realizar la petición con https para cifrar los datos de la solicitud SOAP. Si por el contrario es el web service el que requiere que la petición sea https, previamente tendrá que tener instalado en su almacén de certificados el certificado de servidor del site calidadambiental.aragon.es.

Page 8: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 8/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 8 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

Page 9: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 9/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 9 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

4 ANOTACIONES DE SINDICACIÓN AL SERVICIO GRNP – LIBRO DE REGISTRO

Los servicios Web existentes serán los siguientes:

• http://calidadambiental.aragon.es/gnpwebservice/WS_GNP_Datos.asmx

• http://calidadambiental.aragon.es/gnpwebservice/WS_GNP_LN.asmx

La descripción de cada servicio estará disponible en las URL:

• http://calidadambiental.aragon.es/gnpwebservice/WS_GNP_Datos.asmx?WSDL

• http://calidadambiental.aragon.es/gnpwebservice/WS_GNP_LN.asmx?WSDL

El primer servicio Web engloba los métodos relacionados con la consulta de datos necesarios para emplear la codificación actual. El segundo de ellos incluye los métodos relacionados con la lógica de negocio como son la inserción de documentos, la inserción de empresas, etc.

Si se observa se puede comprobar que el servicio WS_GNP_Datos incluye la información común e idéntica a todos los usuarios y que debe ser empleada correctamente en el servicio WS_GNP_LN. El último incluye las funcionalidades y datos propios a cada usuario.

Para el correcto funcionamiento de la aplicación, y obtener el mejor rendimiento de la misma se recomiendan los siguientes pasos

1. Descargar toda la información necesaria para la comunicación de la información contenida en el método WS_GNP_Datos. Como la información contenida puede sufrir actualizaciones, se recomienda que cada cierto tiempo se vuelva a realizar una petición de los datos.

2. Una vez realizado el primer paso se puede trabajar con el segundo servicio, WS_GNP_LN, y trabajar con los métodos incluidos en el mismo.

4.1 MÉTODOS COMUNES

Cuando se obtenga la descripción de los distintos servicios se comprobará que en todos existen tres métodos comunes:

1. Ping: Comprueba que la conexión y comunicación con el servicio es correcta. No requiere autenticación previa.

2. Autenticar: Comprueba que el usuario que intenta realizar operaciones contra el servicio dispone de los permisos pertinentes.

3. ModificarPassword: Se recuerda que las contraseñas caducan cada tres meses. Este hecho es notificado por el método Autenticar. En este punto es necesario realizar el cambio de la contraseña, según se describe en el apartado de Autenticación.

Page 10: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 10/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 10 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

4.2 WS_GNP_DATOS

Con anterioridad a la utilización de los métodos, se deberá comprobar que las tablas de codificación de nuestra aplicación local, coinciden con las codificaciones que utiliza el portal internamente. Para ello, se han publicado los métodos Listar que permiten conocer la codificación interna de la aplicación, desde tipos de residuos hasta códigos de centros y empresas. Todos estos métodos se incluyen en el servicio Web WS_GRNP_Datos.

• ListarComunidadesAutónomas: Devuelve las Comunidades Autónomas españolas en una estructura de tipo DataSet. Este DataSet contiene una tabla con 3 columnas:

1. ID. Identificador de la CCAA de tipo string.

2. DESCRIPCION. Nombre de la CCAA de tipo string.

3. CODIGO. Código de la CCAA de tipo string.

• ListarProvincias: Devuelve las provincias de una Comunidad Autónoma en una estructura de tipo DataSet. Para ello hay que indicar el código de la Comunidad Autónoma deseada como argumento.

La tabla que devuelve tiene las siguientes columnas:

1. PRV_PROVINCIA. Identificador de la provincia de tipo string.

2. PRV_DENOMI. Denominación de la provincia de tipo string.

• ListarMunicipios: Devuelve los municipios de una provincia en una estructura de tipo DataSet. Para ello es necesario indicar el código de la provincia deseada como argumento.

La tabla que devuelve tiene las siguientes columnas:

1. MUN_MUNICIPIO. Indentificador del municipio de tipo string.

2. MUN_DENOMI. Denominación del municipio de tipo string.

• ListarCER: Devuelve los distintos códigos de la lista europea de residuos en una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

1. ID. Identificador del residuo de tipo string.

2. DESCRIPCION. Descripción del residuo de tipo string.

3. PELIGROSO. Sus posibles valores son S, N y null. Indican si un residuo es peligroso o no.

• ListarCNAE: Devuelve los distintos códigos de la Clasificación Nacional de Actividades Económicas de las empresas en una estructura de tipo DataSet. . El DataSet tiene una tabla con las siguientes columnas:

1. CODIGO. Identificador del CNAE de tipo string.

2. TITULO. Descripción del CNAE de tipo string.

Page 11: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 11/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 11 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

• ListarTabla2: Devuelve los distintos códigos de la tabla 2 en una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

1. ID. Identificador del residuo de tipo string.

2. DESCRIPCION. Descripción del residuo de tipo string.

• ListarTiposLibro: Devuelve todos los tipos de libro en una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

1. ID. Identificador del tipo de libro de tipo string.

2. DESCRIPCION. Descripción del tipo de libro de tipo string.

• ListarRoles: Devuelve todos los roles que puede tener un centro en una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

1. ID. Identificador del rol de tipo string.

2. DESCRIPCION. Descripción del rol de tipo string.

Se recuerda que si no se siguen las normas, o se produce un error no esperado, la estructura que devolverán estará vacía

Page 12: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 12/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 12 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

4.3 WS_GNP_LN

El resto de métodos se encuentran en el último servicio:

1. DetalleEmpresa: Muestra la información de la empresa solicitada. Devuelve una estructura con la siguiente información:

• Cif. CIF de la empresa de tipo string.

• RazonSocial. Razón Social de la empresa de tipo string.

• Direccion. Dirección de la empresa de tipo string.

• IdCcaa. Identificador de la Comunidad Autónoma de tipo string.

• IdProvincia. Identificador de la Provincia de tipo string.

• IdMunicipio. Identificador del Municipio de tipo string.

• CodigoPostal. Código Postal de la empresa de tipo string.

• Telefono. Teléfono de la empresa de tipo string.

• Fax. Fax de la empresa de tipo string.

• Email. Dirección de correo de la empresa de tipo string.

• PersonaResponsable. Persona Responsable de la empresa de tipo string.

• Observaciones. De tipo string.

• Fecha de Baja. Fecha de baja de la empresa de tipo string.

Es necesario indicar el cif de la empresa deseada como argumento.

2. ListarCentros: Muestra los centros actuales de la empresa cuyo cif se le pasa como parámetro. Devuelve una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

• CE_CO_NUM_CENTRO_SEC. Número de centro dentro de la empresa de tipo int.

• CE_PRV. Identificador de la provincia de tipo string.

• CE_MUN. Identificador del municipio de tipo string.

• CE_DIRECCION. Dirección del centro de tipo string.

• CE_NOMBRE_RESPONSABLE. Nombre del responsable del centro de tipo string.

• CN_TEL. Teléfono del centro de tipo string.

• CN_FAX. Fax del centro de tipo string.

Page 13: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 13/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 13 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

• CN_CP. Código postal del centro de tipo string.

• CN_EMAIL. Dirección de correo del centro de tipo string.

• CE_CCAA. Identificador de la Comunidad Autónoma de tipo string.

• CE_NUM_AUTORIZACION. Nº de autorización del centro de tipo string.

• CE_DENOMINACION. Denominación del centro de tipo string.

• CE_DNI. DNI del responsable del centro de tipo string.

• CE_NIRI. NIRI del centro de tipo int.

• CE_CNAE. CNAE del centro de tipo string.

3. InsertarEmpresa: Inserta una nueva empresa con su primer centro asociado. Estos datos no podrán ser modificados posteriormente excepto si se utiliza la aplicación Web.

Nótese en este punto, que los campos que comparte codificación con la aplicación, y que deben obtenerse mediante el primer servicio son:

• Comunidad Autónoma

• Provincia

• Municipio

• CNAE

• Rol

En caso de error se devolverá un mensaje con el formato “errXXX Descripción”. Si todo funciona correctamente se devolverá el cif de la empresa introducida.

En resumen, los parámetros esperados por el método son los siguientes:

• cif: CIF/NIF de la empresa de tipo string.

• niri: NIRI del centro de la empresa de tipo string.

• razonSocial: razón social de la empresa de tipo string. Longitud máxima 100.

• direccion: dirección de la empresa de tipo string. Longitud máxima 100.

• codCcaa: código de la Comunidad Autónoma de la empresa de tipo string.

• codProvincia: código de la provincia de la empresa de tipo string.

• codMunicipio: código del municipio de la empresa de tipo string.

• codigoPostal: código postal de la empresa de tipo string y longitud 5. Esta información es opcional.

• telefono: teléfono de la empresa de tipo string y longitud 9.

Page 14: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 14/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 14 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

• fax: fax de la empresa de tipo string y longitud 9. Esta información es opcional.

• email: email de la empresa de tipo string con longitud máxima de 100. Esta información es opcional.

• personaResponsable: persona responsable de la empresa de tipo string. Longitud máxima 100.

• dni: DNI de la persona responsable de tipo string. Esta información es opcional.

• cnae: cnae del centro de la empresa de tipo string.

• observaciones: campo para introducir las observaciones de tipo string. Longitud máxima 255. Esta información es opcional.

• numeroAutorizacion: nº de autorización del centro.

• denominación: denominación del primer centro de la empresa que se insertará a la vez que la misma de tipo string. Longitud máxima 100.

• rol: rol del centro de la empresa que se está introduciendo de tipo string. Se pueden introducir centros de tipo productor, pequeño productor, pequeño productor sanitario y transportista.

4. InsertarCentro: Inserta los datos de un centro de una empresa. Los datos que hay que recoger proporcionados en la primera parte son:

• Comunidad Autónoma

• Provincia

• Municipio

• CNAE

• Rol

En caso de error se devolverá un mensaje con el formato “errXXX Descripción”. Si todo funciona correctamente se devolverá un string con el número asociado al centro.

Por último, se indican los campos que hay que rellenar:

• cifEmpresa: CIF/NIF de la empresa a la que se le asocia el centro de tipo string.

• codCcaa: código de la Comunidad Autónoma del centro de tipo string.

• codProvincia: código de la provincia del centro de tipo string.

• codMunicipio: código del municipio del centro de tipo string.

• direccion: dirección del centro de tipo string. Longitud máxima 100.

Page 15: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 15/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 15 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

• personaResponsable: nombre de la persona responsable del centro de tipo string. Longitud máxima 100.

• telefono: nº de teléfono del centro de tipo string y longitud 9.

• fax: nº de fax del centro de tipo string y longitud 9. Este dato no es obligatorio.

• cogidoPostal: código postal del centro de tipo string y longitud 5.

• email: dirección de correo electrónico del centro de tipo string. Longitud máxima 100. Este dato no es obligatorio.

• observaciones: observaciones del centro de tipo string. Longitud máxima 100. Este dato no es obligatorio.

• denominación: denominación del centro de tipo string. Longitud máxima 100.

• Niri: NIRI del centro de la empresa de tipo string.

• Cnae: CNAE del centro de la empresa de tipo string.

• numAutos: string que contiene los números de autorización del centro dependiendo de su rol. Estos roles irán separados por una coma.

• roles: string con los roles que tiene el centro asociado. Los códigos de los roles deben ir separados por una coma. Siguiendo el ejemplo anterior, la cadena quedaría de la forma: 01,06

• dni: DNI de la persona responsable del centro. Este dato no es obligatorio.

5. InsertarAsientos: Inserta los datos de una serie de entradas en el libro de registro:

En caso de error se devolverá un mensaje con el formato “errXXX Descripción”. Si todo funciona correctamente se devolverá un string con el número asociado al centro.

Por último, se indican los campos que hay que rellenar, siendo todos obligatorios menos observaciones y código de operación:

o idLibro: código de identificación del Libro de Registro

o cif: string que indica el cif de la empresa

o numSecCentro: string que representa el identificador del centro de la empresa

o Kgs: Kgs del residuo

o LER: código LER del residuo

o Fecha: Fecha de Entrada o de Salida del residuo en función del tipo de libro

o CodigoOperacion: código de operación del residuo en la tabla 2 de tipo string

o Observaciones: string donde se puede incluir cualquier comentario

Page 16: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 16/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 16 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

6. InsertarLibro: Inserta los datos de un libro de registro:

En caso de error se devolverá un mensaje con el formato “errXXX Descripción”. Si todo funciona correctamente se devolverá un string con el número asociado al libro.

El usuario únicamente podrá insertar Libros en aquellas empresas de las que sea usuario.

Por último, se indican los campos que hay que rellenar, siendo todos obligatorios:

o cif: string que indica el cif de la empresa

o numSecCentro: string que representa el identificador del centro de la empresa

o Ejercicio

o Rol

o Tipo (Entrada o Salida)

7. ListarNumerosAutorización: Muestra los números de autorización para el centro indicado (siempre de la empresa autenticada). Devuelve una estructura de tipo cadena. Se listarán separados por comas los números de autorización para ese centro.

8. ListarLibrosRegistro: Muestra los libros de registro asociados a una empresa, centro y ejercicio.

Los parámetros para la búsqueda son:

CifEmpresa: es obligatorio y debe ser una empresa de la que la persona autenticada sea usuario

Número de centro: no es obligatorio

Ejercicio: no es obligatorio

Devuelve una estructura de tipo DataSet. El DataSet tiene una tabla con las siguientes columnas:

• LR_ID: identificador del libro de registro

• LR_EJERCICIO: año del libro de registro que se quiere crear

• LR_COD_EMPRESA: código de la empresa propietaria del libro

• LR_COD_CENTRO: código del centro

• LR_ROL: número de autorización

• LR_TIPO: tipo del libro de registro

• LR_ESTADO: estado del libro de registro

Page 17: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 17/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 17 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

Los distintos códigos de error que pueden devolver los son los siguientes:

• 01 Error genérico • 02 No se encuentra autenticado • 03 NIRI inválido • 04 Razón social de la empresa inválida • 05 Dirección de la empresa inválida • 06 Código de la Comunidad Autónoma de la empresa inválido • 07 Código de la provincia de la empresa inválido • 08 Código del Municipio de la empresa inválido • 09 Código postal de la empresa inválido • 10 Teléfono de la empresa inválido • 11 Fax de la empresa inválido • 12 Email de la empresa inválido • 13 Persona responsable de la empresa inválida • 14 DNI de la persona responsable de la empresa inválido • 15 CNAE del centro de la empresa inválido • 16 Observaciones de la empresa inválida • 17 Rol del centro de la empresa inválido • 18 Código de la Comunidad Autónoma del centro inválido • 19 Código de la provincia del centro inválido • 20 Código del Municipio del centro inválido • 21 Dirección del centro inválida • 22 Número de teléfono del centro inválido • 23 Número Fax del centro inválido • 24 Código postal del centro inválido • 25 Observaciones del centro inválida • 26 Denominación del centro inválida • 27 NIRI del centro de la empresa inválido • 28 CNAE del centro de la empresa inválido • 29 DNI de la persona responsable del centro inválido • 30 Cif de la empresa del libro inválido • 31 Número del centro de la empresa del libro inválido • 32 Código de Tipo de Libro no existente o erróneo • 33 Cif de la empresa del asiento inválido • 34 Identificador del centro de la empresa del asiento inválido • 35 Código LER del residuo inválido • 36 Kgs del residuo inválidos • 37 Fecha de Entrada o de Salida del residuo inválida • 38 Código de operación del residuo en la tabla 2 inválido • 39 Observaciones del asiento inválida • 40 Empresa duplicada • 41 Identificador inválido • 42 Email del centro inválido • 43 Identificador de Libro no existente o erróneo • 44 Nº de centro introducido no válido • 45 Ejercicio inválido • 46 No tiene permiso para insertar un libro de esta empresa • 47 No tiene permisos para insertar asientos en este libro • 48 Error al insertar. Asegúrese de que no existe un libro para el centro, empresa

y ejercicio especificado. • 49 Error al insertar. Aseguresé de que el centro tiene ese rol. • 50 Error al insertar. Un productor no puede tener un libro de entrada.

Page 18: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 18/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 18 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

En caso de error y tratarse de una estructura de datos la información devuelta por el método, ésta aparecerá vacía

Page 19: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 19/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 19 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

5 EJEMPLOS

5.1 ACCESS.

Como se cita en los apartados anteriores, hemos utilizado la herramienta gratuita SOAP ToolKit de Microsoft http://msdn.microsoft.com/library/default.asp?url=/downloads/list/websrv.asp que contiene un asistente de generación de definiciones, documentación y ejemplos denominado Web Service References Tool, que permite realizar búsquedas de descripción, descubrimiento e integración (UDDI, Universal Description Discovery and Integration) de aquellos servicios registrados o abrir directamente su archivo de descripción. (WSDL, Web Services Description Language). Una vez instalada la herramienta SOAP ToolKit, para iniciar Web Service References Tool, haga clic en Web Service References del menú Herramientas en el Editor de Visual Basic de Access. Como hemos comentado anteriormente, la herramienta proporciona una interfaz que permite descubrir los servicios, seleccionar los deseados y crear clases que actúan como servidores proxy en sus proyectos VBA (Visual Basic para Aplicaciones).

Page 20: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 20/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 20 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

En nuestro caso invocaremos directamente la descripción del servicio (WSDL) seleccione la opción Dirección URL y escriba: http://calidadambiental.aragon.es/GRNPWebService/WS_GRNP_LN.asmx?wsdl A continuación presione el Botón Buscar(1), Deberá aparecer en la parte derecha de la pantalla el servicio y sus métodos(2). Si por ultimo optamos por la opción de Agregar( 3), se añadirá a nuestro proyecto la clase Proxy que hace referencia al servicio seleccionado.

Para utilizar los métodos de la clase de servidor proxy generada cree primero una instancia de dicha clase mediante la instrucción Set con la palabra clave New para asignar la clase a una variable. A continuación utilice la variable para ejecutar los métodos públicos de la clase, como vemos en el ejemplo de la función Ping_click:

Private Sub Ping_Click()

On Error GoTo Fallo_Ping: Set claseWS = New clsws_Service1 claseWS.wsm_Ping Comprobando = "La conexión es correcta." 'Inscripción que queda en pantalla. MsgBox "Conexión correcta.", vbInformation Exit Sub Fallo_Ping: Comprobando = "No hay conexión." 'Inscripción que queda en pantalla. MsgBox "No hay conexión.", vbExclamation

End Sub

Nótese en este punto, que en el caso de realizar cualquier llamada a los métodos de inserción de las distintas aplicaciones del departamento de medio ambiente, la codificación deberá coincidir con la existente en la aplicación, debiendo previamente "descargarse" todas las tablas de codificación.

Page 21: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 21/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 21 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

El siguiente ejemplo, nos muestra como realizar la descarga de estas tablas de codificación a la aplicación local. Para ello, deberemos trabajar con el DOM (Document Object Model) implementado por Microsoft XML Parser. Este parser o analizador para XML es "el programa" que lee el documento XML y hace que los datos que contiene estén accesibles de forma ágil. El parser de Microsoft (msxml.dll), se distribuye a partir de la versión 5.5 de IExplorer permitiendo que los datos estén disponibles a través de una serie de objetos como el utilizado por nosotros MSXML2 . En el ejemplo siguiente mostramos la descarga de la Tabla con el Catálogo Europeo de Residuos CER.

Private Sub Descargar_GRNP_Click()

On Error GoTo Fallo_Cer: 'nos autenticamos (user + pwd) If Not IsNull(Usuario) And Not IsNull(Clave) Then Set claseWS = New clsws_GRNP If (claseWS.wsm_Autenticar(Usuario, Pwd) = "Correcto") Then Dim cmd1 As Command Dim strSQL As String Dim oFullNodeList As MSXML2.IXMLDOMNodeList Dim oFilteredNodeList As MSXML2.IXMLDOMNodeList Dim oNode As MSXML2.IXMLDOMNode Dim oNode2 As MSXML2.IXMLDOMNode Dim iRow As Integer Dim lcntRows As Integer Dim id, descripcion, peligroso As String Set oFullNodeList = claseWS.wsm_ListarLER Set oFilteredNodeList = _ oFullNodeList.Item(1).selectNodes("CerDataSet") Set xdd = New MSXML2.DOMDocument40 With xdd .async = False .preserveWhiteSpace = True .LoadXml oFullNodeList.Item(1).XML Set xdlRows = xdd.selectNodes("//CER") End With lcntRows = xdlRows.length - 1 DoCmd.SetWarnings False

'borramos el contenido actual DoCmd.RunSQL "DELETE * FROM SICA_GRNP_CER" 'Se almacenan en la tabla de codigo CER For Each oNode In oFilteredNodeList For iRow = 0 To lcntRows id = oNode.childNodes.Item(iRow).selectSingleNode("ID").Text descripcion = oNode.childNodes.Item(iRow).selectSingleNode("DESCRIPCION").Text peligroso = oNode.childNodes.Item(iRow).selectSingleNode("PELIGROSO").Text DoCmd.RunSQL "INSERT INTO SICA_GRNP_CER values('" & id & "','" & descripcion & "','" & peligroso & "')" Next Next DoCmd.SetWarnings True MsgBox "Recuperadas" & Str(lcntRows + 1) & " filas de la tabla de CÓDIGOS CER.", vbInformation DoCmd.OpenTable "SICA_GRNP_CER" Else MsgBox "Error en el usuario o la clave.", vbExclamation End If End If

Fallo_Cer: MsgBox "Error." & Err.Description & " " & Err.Number, vbExclamation End Sub

Page 22: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 22/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 22 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

A continuación mostramos como invocar a un método que permite cambiar la password del usuario. El ejemplo es extensible a todas las funciones de inserción de datos.

Private Sub cambiar_pwd_Click()

On Error GoTo Err_chg

If Not IsNull(Usuario) And Not IsNull(Clave) Then Set claseWS = New clsws_Vehiculo If (claseWS.wsm_Autenticar(Usuario, Pwd) = "Correcto") Then MsgBox (claseWS.wsm_ModificarPassword(Usuario, Pwd, NewPWD)) Else MsgBox "Compruebe usuario y contraseña! " End If Else MsgBox "Indique usuario y clave.", vbExclamation End If

Exit Sub

Err_chg: MsgBox Err.Description Resume Exit_Comando14_Click

End Sub

Page 23: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 23/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 23 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

5.2 AXIS - JAVA

Para poder utilizar un servicio Web desde Java se puede emplear el asistente de Eclipse, AXIS u otras herramientas. En concreto en este apartado se describe la opción de AXIS.

AXIS permite generar las clases cliente a un servicio Web de forma similar al asistente de Visual Studio .NET. Posee otras funcionalidades. Para más información acudir a los siguientes enlaces.

http://ws.apache.org/axis/

http://www.w3.org/TR/soap/

http://www.w3.org/TR/wsdl/

Para este ejemplo únicamente nos interesan las librerías de AXIS. En el package org.apache.axis.wsdl existe la clase WSDL2Java a la que se le pasa como argumento un fichero wsdl que contiene la definición de un servicio Web.

java org.apache.axis.wsdl.WSDL2Java fichero.wsdl

Esta llamada genera las distintas clases asociadas al servicio Web así como los métodos que llaman al servicio WEB. Estas clases podrán ser empleadas en el proyecto correspondiente.

Page 24: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 24/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 24 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

5.3 INFOPATH.

InfoPath 2003 es una nueva aplicación de Microsoft Office System que agiliza el proceso de recopilación de información al permitir a los equipos y las organizaciones crear y trabajar con avanzados formularios dinámicos de forma sencilla. La información recopilada se puede integrar con una amplia gama de procesos empresariales, ya que InfoPath admite esquemas XML (Lenguaje de marcado extensible) definidos por el cliente y se integra con los servicios Web XML. En consecuencia, InfoPath ayuda a conectar a los trabajadores de la información directamente con la información de la organización y les ofrece la posibilidad de actuar sobre ella, lo cual repercute positivamente en el negocio.

Para emplear los Servicios Web desde InfoPath 2003 se debe diseñar un formulario desde una conexión de datos. Esto lanza un asistente que permite crear una conexión a una base de datos o a un servicio Web. En el siguiente paso se debe indicar si se trata de una consulta de datos, un envío de datos o ambos. En el ejemplo expuesto se trata de un formulario únicamente de envío. La recepción de ciertos datos se configurará posteriormente.

El siguiente paso es indicar la localización del servicio web a emplear. En caso de duda se puede acudir al apartado de Servicios desde la página principal o buscar uno por medio de un servidor UDDI. Cuando se encuentre localizado el servicio Web se mostrarán todos los métodos disponibles en el mismo. Se debe seleccionar aquél que se desee emplear y darle un nombre. Una vez hecho aparece la ventana principal con una barra de tareas a la derecha. Una de las opciones es el origen de los datos. Si se presiona en dicha opción se mostrará la conexión recién creada con los campos que requiere el método. Si se hubieran creado más conexiones se podría emplear el desplegable para seleccionar la deseada.

Page 25: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 25/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 25 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

Si se arrastra el nodo tns al formulario se generan automáticamente los campos y se asocian a los argumentos de la llamada. Una vez hecho se puede modificar la apariencia y añadir los controles que sean necesarios. Algunos campos requieren información de otros servicios. Para poder tener acceso a dichos métodos es necesario autenticarse previamente. Para ello hay que generar una nueva conexión al servicio Web que se ejecute al comienzo del formulario. También se pueden añadir los campos de autenticación al formulario y añadir un botón de refresco que realice la operación. Para ellos se debe acudir al menú de herramientas y seleccionar la opción de conexiones de datos. En la ventana que aparece a continuación se muestran las conexiones existentes. Se debe añadir una nueva siguiendo los pasos antes descritos. El Asistente ofrece la posibilidad de que dicha llamada se ejecute al cargar el formulario. De este modo se autentica al incio y se pueden realizar el resto de llamadas sin problemas. Este método necesita la definición de los valores para los argumentos. Se deben indicar el usuario y la contraseña que tiene asignada.

Por último se deben cargar el resto de datos con distintas llamadas. Para ello se debe actuar de manera similar. Una vez hecho se puede seleccionar uno de las controles existentes e indicarle que el origen de los datos es uno de los creados anteriormente. Para ello se debe acudir a las propiedades del control, modificar su tipo a las necesidades e indicar la conexión de la que recuperará la información. Ciertos campos permiten asignar un valor a uno de los parámetros y una descripción del valor mediante otro. Con todo esto se crearía un formulario de modo sencillo y rápido.

Otras opciones que permite InfoPath es realizar validaciones de los campos, ejecutar código según ciertos eventos, acceder a bases de datos, etc. con lo que la flexibilidad e integración de la información con otros sistemas es sencilla y rápida. Una vez terminado con el diseño se puede publicar en la Web, en un directorio, o en el sistema SharePoint de Microsoft.

Page 26: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 26/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 26 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

5.4 .NET

C# es el nuevo lenguaje de programación de la plataforma .NET de Microsoft. .NET permite desarrollar en otros muchos lenguajes, como Visual Basic .NET, J#, Delphi .NET y otros. Como ejemplo se van a explicar unos pequeños pasos para utilizar un Servicio Web desde Visual Studio .NET , entorno de desarrollo de .NET.

Como lenguaje de programación se emplea C#, aunque migrar a cualquier otro lenguaje es sencillo, ya que las clases que ofrece el .NET Framework son las mismas para los distintos lenguajes.

El primer paso es crear un nuevo proyecto dentro del entorno para C#. Una vez creado se debe añadir la referencia Web. Para ello se deben seguir los siguientes pasos.

Presionar sobre la opción Añadir Referencia Web dentro del menú Proyecto, o elegir la misma opción en el Explorador de la Solución, al presionar con el botón derecho del ratón sobre el proyecto.

Seguir los pasos del asistente de modo similar al SOAP Toolkit explicado en apartados anteriores.

Esto genera las clases cliente al Servicio Web dentro del proyecto. Con esto podemos invocar al servicio y a los distintos métodos que publica. Si en el asistente no se ha indicado ningún otro nombre, la clase se habrá creado con el nombre WS_GRNP_LN dentro del Namespace Proyecto.es.aragon.calidadambiental de la solución para el servicio de la aplicación GRNP.

En el método que se encargue de llamar al servicio debemos añadir el siguiente código para poder llamar al servicio. using Example.es.aragon.calidadambiental; namespace Proyecto { ... private void metodo () { resultado.Text = "Esperando Respuesta"; try { WS_GRNP_LN servicio = new WS_GRNP_LN(); servicio.CookieContainer = new System.Net.CookieContainer(); resultado.Text = servicio.Autenticar(login.Text, password.Text).ToString(); dataGrid.DataSource = servicio.ListarComunidadesAutonomas().Tables[0]; } catch (Exception exception) { resultado.Text = exception.Message;

Page 27: GRNP - Gesti n de Residuos No Peligrosos - Servicios Webcalidadambiental.aragon.es/GNP/Descargas/grnp_serviciosweb.pdf · GRNP Descripción de los Servicios Web Página 2/27 Ref.:

GRNP

Descripción de los Servicios Web

Página 27/27

Ref.: GRNP - Gestión de Residuos No Peligrosos - Servicios Web.doc

Fecha: 09.12.2009

Versión:

Pág. 27 de 27

Entidad Pública Aragonesa de Servicios TelemáticosPº María Agustín 25-27-29 • 50071 ZARAGOZA

Tel. 976 71 4495 • Fax. 976 71 4395

www.aragon.es

} } ... }

En el código anterior se recogen las comunidades autónomas dadas de alta en la aplicación y se muestran en un DataGrid. Para ello se siguen los siguientes pasos.

• resultado es un Label dentro del WinForm que muestra el estado actual de la

llamada. • dataGrid es una DataGrid dentro del WinForm que muestra los datos. • Antes de llamar al servicio al método de autenticación se crea un almacén de

cookies , ya que el servicio mantiene la sesión. En caso de no utilizar este almacén en la propiedad CookieContainer del servicio, el método ListarComunidadesAutonomas no funcionará correctamente y no devolverá la información. Esto es únicamente necesario en aplicaciones de tipo WinForm , ya que las aplicaciones ASP.NET mantienen las cookies por medio del navegador.

• Antes de poder llamar al método ListarComunidadesAutonomas es necesario autenticarse en el servicio. Para ello se le pasan como argumentos el login y la contraseña que se capturan por medio de dos variables de tipo TextBox dentro del WinForm .