Ver Mensaje Individual
  #3416  
Antiguo 22-06-2023
Avatar de dimony
dimony dimony is offline
Miembro
 
Registrado: oct 2006
Posts: 28
Reputación: 0
dimony Va por buen camino
Suministro Cobros Emitidas

Hasta ahora no había tenido que desarrollar la parte de cobros / pagos de facturas suministradas previamente. Tengo un cliente el cual a su vez un proveedor que le emite facturas acogidas al criterio de caja y me ha reclamado esta opción. Parar ello me he dispuesto a hacer tal como hice con el resto de wsdl, importar a través "Component - Import WSDL".


En el asistente le dejo los parámetros por defecto y selecciono el WDSL(el último) que tengo almacenado en el ordenador.


Cual es mi sorpresa que no lo importa correctamente, no se que parámetros tengo que seleccionar o seguramente lo que realmente pasa es que no tengo ni puta idea.

Código:
unit SuministroCobrosEmitidas;
interface
uses Soap.InvokeRegistry, Soap.SOAPHTTPClient, System.Types, Soap.XSBuiltIns;
type

  // ************************************************************************ //
  // The following types, referred to in the WSDL document are not being represented
  // in this file. They are either aliases[@] of other types represented or were referred
  // to but never[!] declared in the document. The types from the latter category
  // typically map to predefined/known XML or Embarcadero types; however, they could also
  // indicate incorrect WSDL documents that failed to declare or import a schema type.
  // ************************************************************************ //
  // !:ConsultaCobros  - "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/ConsultaLR.xsd"[Lit][]
  // !:RespuestaConsultaCobros - "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/RespuestaConsultaLR.xsd"[Lit][]
  // !:SuministroLRCobrosEmitidas - "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd"[Lit][]
  // !:RespuestaLRCobrosEmitidas - "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/RespuestaSuministro.xsd"[Lit][]


  // ************************************************************************ //
  // Namespace : https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroCobrosEmitidas.wsdl
  // transport : http://schemas.xmlsoap.org/soap/http
  // style     : document
  // use       : literal
  // binding   : siiBinding
  // service   : siiService
  // port      : SuministroCobrosEmitidas
  // URL       : https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fe/SiiFactCOBV1SOAP
  // ************************************************************************ //
  siiSOAP = interface(IInvokable)
  ['{9EF60891-5E4C-9812-57C2-1284CE15ECC8}']

    // Cannot unwrap:
    //     - Input part does not refer to an element
    //     - Output part does not refer to an element
    function  SuministroLRCobrosEmitidas(const SuministroLRCobrosEmitidas: SuministroLRCobrosEmitidas): RespuestaLRCobrosEmitidas; stdcall;

    // Cannot unwrap:
    //     - Input part does not refer to an element
    //     - Output part does not refer to an element
    function  ConsultaLRCobrosEmitidas(const ConsultaCobrosEmitidas: ConsultaCobros): RespuestaConsultaCobros; stdcall;
  end;

function GetsiiSOAP(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): siiSOAP;


implementation
  uses System.SysUtils;

function GetsiiSOAP(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): siiSOAP;
const
  defWSDL = 'O:\contadoc\herramientas_externas\d4sii\Win32\Debug\SuministroCobrosEmitidas.wsdl';
  defURL  = 'https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fe/SiiFactCOBV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroCobrosEmitidas';
var
  RIO: THTTPRIO;
begin
  Result := nil;
  if (Addr = '') then
  begin
    if UseWSDL then
      Addr := defWSDL
    else
      Addr := defURL;
  end;
  if HTTPRIO = nil then
    RIO := THTTPRIO.Create(nil)
  else
    RIO := HTTPRIO;
  try
    Result := (RIO as siiSOAP);
    if UseWSDL then
    begin
      RIO.WSDLLocation := Addr;
      RIO.Service := defSvc;
      RIO.Port := defPrt;
    end else
      RIO.URL := Addr;
  finally
    if (Result = nil) and (HTTPRIO = nil) then
      RIO.Free;
  end;
end;
initialization
  { siiSOAP }
  InvRegistry.RegisterInterface(TypeInfo(siiSOAP), 'https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroCobrosEmitidas.wsdl', 'UTF-8');
  InvRegistry.RegisterDefaultSOAPAction(TypeInfo(siiSOAP), '');
  InvRegistry.RegisterInvokeOptions(TypeInfo(siiSOAP), ioDocument);
  InvRegistry.RegisterInvokeOptions(TypeInfo(siiSOAP), ioLiteral);

end.
Código:
[dcc32 Error] SuministroCobrosEmitidas.pas(48): E2003 Undeclared identifier: 'SuministroLRCobrosEmitidas'
[dcc32 Error] SuministroCobrosEmitidas.pas(48): E2003 Undeclared identifier: 'RespuestaLRCobrosEmitidas'
[dcc32 Error] SuministroCobrosEmitidas.pas(53): E2003 Undeclared identifier: 'ConsultaCobros'
[dcc32 Error] SuministroCobrosEmitidas.pas(53): E2003 Undeclared identifier: 'RespuestaConsultaCobros'
[dcc32 Fatal Error] D4SII.dpr(18): F2063 Could not compile used unit 'SuministroCobrosEmitidas.pas'
Failed
¿Alguien me podría aclarar el tema por favor o echarme un cable please?
Responder Con Cita