| DESCARGA SERVICIO SANEAMIENTO BOVINO 2004 |
| Requisitos básicos de funcionamiento: |
|
| Se han de instalar: |
|
| Y hay que colocar el programa en sí con los datos en una carpeta C:\SANEAM: |
|
| DESCARGA SERVICIO ETIQUETADO |
| Requisitos básicos de funcionamiento: |
|
| Se han de instalar: |
|
| Programa de muestra en Access 2002: |
| DESCRIPCION DEL SERVICIO PARA GANADEROS |
El servicio está publicado en http://eriste.aragob.es/WebServiceGanaderos/ganaderos.asmx, Invocado desde el navegador devuelve una página de ayuda que detalla el servicio y sus métodos. Recuerde que desde ella podrá realizar pruebas sobre el funcionamiento de estos métodos y compararlos con los resultados de las invocaciones desde su aplicación local o web. |
| Ping: |
| Se trata de la transacción más simple, sirve para comprobar la conexión a nivel de aplicación entre el cliente y el servidor. |
|
| Autenticación: |
| Paso previo para la descarga de información desde cualquier otro método. |
|
| Get_Animales_movimiento: |
| Descarga todos los animales que componen el movimiento, como requisito el usuario que se autentico debe tener privilegios sobre la explotación origen y/o destino que componen el movimiento pecuario. |
|
| Get_Num_Animales_Exp: |
| Devuelve el NUMERO de Animales, con estado localizado, que residen en una explotación. |
|
| Get_Animales_Exp: |
| Descarga todos los animales además de sus datos básicos, que residen en la explotación. |
|
![]() |
| Pasos Previos. |
| Para poder realizar cualquier operación contra la BD oficial, previamente debe solicitarse una conexión que permitirá el acceso tanto al programa de gestión de zonas como al servicio web. A partir de dicha conexión podrá realizar tareas como la impresión de sus DIBS o libro de registro, ver datos on-line de movimientos procedentes de la CA o el MAPA. |
| Porque Servicios Web |
Porque por definición un servicio es una aplicación modular y autodescriptiva
que se puede ubicar y evocar desde cualquier punto gracias a protocolos como
http o https. |
| Como Acometer Nuestros servicios. |
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
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). |
![]() |
|
En nuestro caso invocaremos directamente la descripción del servicio (WSDL) seleccione la opción Dirección URL y escriba: http://eriste.aragob.es/WebServiceGanaderos/ganaderos.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 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() |
| 'Procedimiento para comprobar la conexión a la base de datos. |
|
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.
|
| End Sub |
|
Si deseamos realizar la descarga de datos a la aplicación local, 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 los animales y la utilización de los mismos. |
| Private Sub Descargar_Click() |
| 'Clic en un botón para descargar los animales en ANIMALES, con Usuario y Clave introducidos. |
|
On Error GoTo Fallo_Descargar: If Not IsNull(Usuario) And Not IsNull(Clave) Then
If claseWS.wsm_Autenticacion(Usuario, Clave) Then 'Se vacía la tabla ANIMALES (Access): (tabla que ya existe, ANIMALES, con dos campos: EXPLOTACIÓN y ANIMAL)
DoCmd.RunSQL ("DELETE FROM ANIMALES") Dim cmd1 As Command Dim strSQL As String Dim DtsMataderos As clsws_Service1 Dim oFullNodeList As MSXML2.IXMLDOMNodeList Dim oFilteredNodeList As MSXML2.IXMLDOMNodeList Dim oNode As MSXML2.IXMLDOMNode Dim oNode2 As MSXML2.IXMLDOMNode Dim iRow As Integer 'Se recogen los animales de ANIMALES (Oracle): Set oFullNodeList = claseWS.wsm_GetAnimales(Explotación) Set oFilteredNodeList = oFullNodeList.Item(1).selectNodes("NewDataSet") Set xdd = New MSXML2.DOMDocument40 With xdd
.preserveWhiteSpace = True .LoadXml oFullNodeList.Item(1).xml Set xdlRows = xdd.selectNodes("//animales") lcntRows = xdlRows.length - 1 For Each oNode In oFilteredNodeList
'Se graba el animal: Set cmd1 = New ADODB.Command cmd1.ActiveConnection = CurrentProject.Connection strSQL = "INSERT INTO ANIMALES (EXPLOTACIÓN, ANIMAL) VALUES ('" & Explotacion & "', '" & Animal & "')" cmd1.CommandText = strSQL cmd1.CommandType = adCmdText cmd1.Execute DoCmd.OpenQuery "Incorporación de animales" 'Llamada a una consulta que pasa los animales de ANIMALES al destino final. DoCmd.SetWarnings (True) MsgBox "Operación completada.", vbInformation
Exit Sub Fallo_Descargar:
|
| Exit Sub |
| Otras funciones implementadas en el ejemplo. |
| Private Sub Contar_Click() |
| 'Procedimiento par a recuperar la cantidad de animales de una Explotación, con Usuario y Clave introducidos. |
|
On Error GoTo Fallo_Contar: If Not IsNull(Usuario) And Not IsNull(Clave) Then
If claseWS.wsm_Autenticacion(Usuario, Clave) Then
Exit Sub Fallo_Contar:
|
| End Sub |
| Private Sub Form_Load() |
| 'Al abrirse el formulario se comprueba la conexión a la base de datos. |
|
On Error GoTo Fallo_Load: Set claseWS = New clsws_Service1 claseWS.wsm_Ping Comprobando = "La conexión es correcta." 'Inscripción que queda en pantalla. Exit Sub Fallo_Load:
MsgBox "No hay conexión.", vbExclamation |
| End Sub |
| Private Sub Verificar_Click() |
| 'Procedimiento para verificar el Usuario y la Clave. |
|
On Error GoTo Fallo_Verificar: If Not IsNull(Usuario) And Not IsNull(Clave) Then
If claseWS.wsm_Autenticacion(Usuario, Clave) Then
Exit Sub Fallo_Verificar:
|
| End Sub |