Page 1 of 1

Error Enviando SII con XP

PostPosted: Thu Sep 07, 2017 10:24 am
by colthop
Hola a todos:

Estoy haciendo envios al nuevo sistema del SII y en un ordenador que tiene XP instalado d el siguiente error:

Error description: Error TOleAuto/.1 CO_E_CLASSTRING: TOLEAUTO:NEW

La parte que hace el envio es:
Code: Select all  Expand view

oWS := CreateObject("MSXML2.ServerXMLHTTP.6.0")
oWS:SetOption(2, 13056)
oWS:SetOption(3, trim(zCertDigi))
if file("WSPrueba.txt")
  do case
    case libro = "1"
      if tipocomu = "PC"
        oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactCOBV1SOAP", .f.)
      else
        oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP", .f.)
      endif
    case libro = "2"
      if tipocomu = "PC"
        oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP", .f.)
      else
        oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP", .f.)
      endif
    case libro = "3"
      oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/oi/SiiFactOIV1SOAP", .f.)
    case libro = "4"
      oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/bi/SiiFactBIV1SOAP", .f.)
    case libro = "5"
      oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
    case libro = "6"
      oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
    case libro = "7"
      oWS :Open("POST", "https://www7.aeat.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
  endcase
else
  do case
    case libro = "1"
      if tipocomu = "PC"
        oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fe/SiiFactCOBV1SOAP", .f.)
      else
        oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP", .f.)
      endif
    case libro = "2"
      if tipocomu = "PC"
        oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP", .f.)
      else
        oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP", .f.)
      endif
    case libro = "3"
      oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/oi/SiiFactOIV1SOAP", .f.)
    case libro = "4"
      oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/bi/SiiFactBIV1SOAP", .f.)
    case libro = "5"
      oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
    case libro = "6"
      oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
    case libro = "7"
      oWS :Open("POST", "https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP", .f.)
  endcase
endif
oWS :setTimeouts(15000,15000, 600000, 600000)
do case
  case libro = "1"
    do case
      case substr(tipocomu,1,1) = "A"
        oWS:SetRequestHeader("SOAPAction", "SuministroLRFacturasEmitidas")
      case tipocomu = "BA"
        oWS:SetRequestHeader("SOAPAction", "BajaLRFacturasEmitidas")
      case tipocomu = "PC"
        oWS:SetRequestHeader("SOAPAction", "SuministroLRCobrosEmitidas")
    endcase
  case libro = "2"
    do case
      case substr(tipocomu,1,1) = "A"
        oWS:SetRequestHeader("SOAPAction", "SuministroLRFacturasRecibidas")
      case tipocomu = "BA"
        oWS:SetRequestHeader("SOAPAction", "BajaLRFacturasRecibidas")
      case tipocomu = "PC"
        oWS:SetRequestHeader("SOAPAction", "SuministroLRPagosRecibidas")
    endcase
  case libro = "3"
    if substr(tipocomu,1,1) = "A"
      oWS:SetRequestHeader("SOAPAction", "SuministroLRDetOperacionIntracomunitaria")
    else
      oWS:SetRequestHeader("SOAPAction", "BajaLRDetOperacionIntracomunitaria")
    endif
  case libro = "4"
    if substr(tipocomu,1,1) = "A"
      oWS:SetRequestHeader("SOAPAction", "SuministroLRBienesInversion")
    else
      oWS:SetRequestHeader("SOAPAction", "BajaLRBienesInversion")
    endif
  case libro = "5"
    if substr(tipocomu,1,1) = "A"
      oWS:SetRequestHeader("SOAPAction", "SuministroLRCobrosMetalico")
    else
      oWS:SetRequestHeader("SOAPAction", "BajaLRCobrosMetalico")
    endif
  case libro = "6"
    if substr(tipocomu,1,1) = "A"
      oWS:SetRequestHeader("SOAPAction", "SuministroLROperacionesSeguros")
    else
      oWS:SetRequestHeader("SOAPAction", "BajaLROperacionesSeguros")
    endif
  case libro = "7"
    if substr(tipocomu,1,1) = "A"
      oWS:SetRequestHeader("SOAPAction", "SuministroLRAgenciasViajes")
    else
      oWS:SetRequestHeader("SOAPAction", "BajaLRAgenciasViajes")
    endif
endcase
cXML := MemoRead(trim(archivo))
oWS:send(cXML)
nombfich = respuesta
m := fcreate (trim(respuesta),0)
fwrite (m,oWS:responsexml:xml)
fclose (m)
cXML := MemoRead(trim(respuesta))


Y el error da en la primera línea.

Un saludo

Carlos

Re: Error Enviando SII con XP

PostPosted: Thu Sep 07, 2017 2:50 pm
by Carlos Mora
Probablemente, no lo puedo asegurar, se necesiten protocolos que XP no tiene, ya que no se actualiza más. Los algoritmos que se requieren a nivel de SSL tienen nuevos mínimos que XP no cumple, por lo que no puedes usar las del propio SSOO.

XP ya no tiene soporte, asegúrate de que al menor tenga el SP3 para que te dé el máximo posible, pero empieza a pensar que vas a tener que actualizar.