Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-12-2010
josemmerida josemmerida is offline
Miembro
 
Registrado: nov 2003
Ubicación: Málaga(España)
Posts: 60
Poder: 21
josemmerida Va por buen camino
Consumir WebService. Ayuda con XML,WSDL,XSD,SOAP

Buenas a todos.

Resulta que yo era muy feliz tratando con la Agencia Tributaria con una DLL con la que le enviaba textos planos(Mensajes EDI) y ahora me imponen trabajar con Web Services. Realmente no tengo ni la más mínima idea de como afrontar este tema y resulta imprescindible para mi empresa

Me explico. Los principios teóricos son literalmente:

"Estructura de los mensajes será descrita sobre la base de la creación de esquemas XML con recomendación W3C"

"Con relación a SOAP se utilizará SOAP V1.1... NOTA W3C "

" SOAP-1.1 estilo modo “document” no "rpc...(style=”document”) sin ningún tipo de codificación (use=”literal”)"

" descripción de los servicios utilizaremos WSDL 1.1 como NOTA W3C "


Les explico las piezas con las que tengo que montar el proyecto(este es uno de los servicios hay un monton más):

Servicio WEB

https://www1.agenciatributaria.gob.e...ns.IE315P2SOAP

Servicio Implementado en

https://www2.agenciatributaria.gob.e...s/IE315V3.wsdl

Los "Esquemas comunes a todos los esquemas" son:

Common schemas.

Documentation (doc.xsd): Documentation Elements.

https://www2.agenciatributaria.gob.e.../ensws/doc.xsd

Simple Types XSD: ICS Simple Types (simple_types_ics.xsd) and Interdomain Simple Types (simple_types.xsd) .

https://www2.agenciatributaria.gob.e..._types_ics.xsd

https://www2.agenciatributaria.gob.e...mple_types.xsd

Technical Codelists XSD: ICS Technical Code Lists (tcl_ics.xsd) and Interdomain Codelists (tcl.xsd).

https://www2.agenciatributaria.gob.e...ws/tcl_ics.xsd

https://www2.agenciatributaria.gob.e.../ensws/tcl.xsd
Common Complex Types XSD (Complex_types_ics.xsd): ICS Common Simple Data Groups.

https://www2.agenciatributaria.gob.e..._types_ics.xsd

ConsENSV2Dat.xsd. Applicable to Entry Summary Declaration Information Request service.

https://www2.agenciatributaria.gob.e...nsENSV2Dat.xsd


El diseño del esquema de entrada se puede consultar en la dirección:

https://www2.agenciatributaria.gob.e...IE315V3Ent.xsd

El diseño del esquema de salida IE328V3Sal.xsd se puede consultar en la dirección

https://www2.agenciatributaria.gob.e...IE328V3Sal.xsd

Vaya plomo estoy soltando

Esquematizando creo que debo hacer:

1- Crear un archivo XML segun la definicion del archivo IE315V3Ent.xsd
2- Firmar el archivo XML generado con un certificado de FNMT.
3- Enviar el archivo+firma al servicio WEB IE315P2SOAP implementado por IE315V3.wsdl
4- Recepcionar el archivo XML de vuelta segun la definicion del archivo IE328V3Sal.xsd

Hasta aquí el rollo teórico. Hasta hace 5 días todo esto me sonaba más o menos a chino (si me sacais de mi Firebird y mi delphi básico me pierdo...). Por favor si me estoy equivocando os rogaría que me lo indicarais.

Gracias a la ayuda de delphi y a la busqueda en los foros he hecho unos avances:

Voy a File->New->Others->WEb Services->WSDL Importer, allí me sale un Wizard donde introduzco la direccion de la implementación del WEB Service (IE315V3.wsdl) y casi magicamente se crea una unit de más de 4000 lineas que define clases TRemotable, con la que toricamente se atacará al servicio.
Esta unidad no compila por hace referencia a unos tipos de datos desconocidos por la unidad.Por ejemplo "Alphanumeric_Max14"

Voy a File->New->Others->XML->XML Data Binding y empiezo a importar los archivos XSD de esquemas comunes. Allí vuelve a salir un wizard para hacerlo, pero este no es tan mágico.

Pongo la direccion de uno de los archivos XSD(https://www2.agenciatributaria.gob.e...mple_types.xsd), y la cosa promete ya me ofrece para importar tipos del estilo "Alphanumeric_Maxnn" que intentará convertir en Widestring. Pero al darle a siguiente salta el error: "No bindable Datatypes found or selected".
El sistema no me ofrece alternativas, todos los Datatypes los intenta convertir a Widestring... No se que pasa.

¿Alguien me puede ayudar?

El camino va a ser largo pero parece que esta tecnología se va a imponer en las relaciones con agencia tributaria, ya que son consensuadas a nivel de la Unión Europea y no creo que delphi me vaya a dejar tirado. Solo haría falta que me tuviera que pasar a VB o como se llame...


Muchas gracias

Ahhh, uso delphi 2007 (lo he intentado con mi delphi 7 antiguo y da más errores)
Responder Con Cita
  #2  
Antiguo 23-12-2010
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.237
Poder: 20
ElKurgan Va camino a la fama
Pues hombre, no estoy muy puesto en estas cosas, pero puedes sacar alguna idea de estas páginas, a ver si te pueden ayudar:

Web Services Architecture
Crear y consumir un Web Service
Consumir Web service con acceso a base de datos

También, en esta página de embarcadero explicaban como usar los XML devueltos desde ADO .Net en DBgrid de Delphi, pero no se si este es tu caso.

Del mismo Deepak Shenoy están estos Web Services Avanzados, por si te sirven para algo

Habrá que seguir investigando...

Saludos
Responder Con Cita
  #3  
Antiguo 23-12-2010
josemmerida josemmerida is offline
Miembro
 
Registrado: nov 2003
Ubicación: Málaga(España)
Posts: 60
Poder: 21
josemmerida Va por buen camino
Gracias por contestar.

Bueno.. vaya navidades que me esperan... A estudiar.

Os comentaré mis avances.

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consumir webservice manda variables null ocram Internet 1 29-10-2010 20:41:32
Problema al consumir webservice PHP desde Delphi7 apicito OOP 0 16-03-2010 11:37:43
Ayuda con SOAP. Documentación ? rolandoj Internet 2 21-10-2008 05:29:06
WebService y SOAP linsua Varios 0 07-04-2004 20:27:16
Problema al consumir un Webservice netcigos Varios 0 08-03-2004 16:09:30


La franja horaria es GMT +2. Ahora son las 19:53:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi