Cobol Foro

Cobol Foro (https://www.cobolforo.es/index.php)
-   Software (https://www.cobolforo.es/forumdisplay.php?f=78)
-   -   [Aporte] OCX WSAFIPFE facturas electronicas (en Argentina) (https://www.cobolforo.es/showthread.php?t=977)

fastpho 20 de septiembre de 2023 22:07

Hola @Fito , voy analizar tu codigo y cualquier duda te consulto
Muchas Gracias
Saludos ....

fastpho 20 de septiembre de 2023 23:05

Hola @Fito le mando estas lineas al ocx de acuerdo a tu ejemplo :

Código COBOL:
  1.           *>CbtesAsoc
  2.           *> New 20-09-2023 agrego Notas de Creditos
  3.              IF  FACTURACION-TIPO = "S" *> Nota de Credito
  4.                   move 1 to fe-numero
  5.                   INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocItemCantidad" USING fe-numero
  6.                
  7.                      *>CbtesAsoc TIPO
  8.                      IF EMP-TIPO-RESP = 1 THEN      
  9.  
  10.                           if cli-cod-iva = 1 or cli-cod-iva  = 4 then
  11.                                  move 1 to w-CbtesAsocTipo *> para factura A
  12.                           end-if
  13.                           if cli-cod-iva = 2 or cli-cod-iva  = 3 or cli-cod-iva = 5 then
  14.                                  move 6 to w-CbtesAsocTipo *> para factura B
  15.                           end-if
  16.  
  17.                    END-IF      
  18.                      IF EMP-TIPO-RESP = 2 THEN      
  19.    
  20.                                  move 11 to w-CbtesAsocTipo *> para factura C
  21.                    END-IF      
  22.                     *>CbtesAsoc TIPO
  23.                                  INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocTipo" USING w-CbtesAsocTipo
  24.                     *>CbtesAsoc PtoVta
  25.                                          INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocPtoVta" USING w-CabeceraPtoVta
  26.                     *>CbtesAsoc NRO
  27.                                          move CL-NUMERO-NC to w-AsocNroS
  28.                                          INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocNroS" USING w-AsocNroS
  29.                     *>CbtesAsoc CUIT EMISOR  
  30.                                          INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocCUIT" USING EMPF-CUIT                                                        
  31.                     *>CbtesAsoc CBTEFECHA                                    
  32.                                          move FE-FECHA  to w-DetalleCbteFch *> fecha de hoy
  33.                                          INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocFecha" USING w-DetalleCbteFch
  34.              ELSE
  35.                   move 0 to fe-numero
  36.                   INVOKE FACTURA-APP "SET-F1DetalleCbtesAsocItemCantidad" USING fe-numero    
  37.              END-IF      
me arma el .xml el tag <CbteAsoc> en cero :

Código XML:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FECAERequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  3.   <FeCabReq xmlns="http://ar.gov.afip.dif.FEV1/">
  4.     <CantReg>1</CantReg>
  5.     <PtoVta>1</PtoVta>
  6.     <CbteTipo>8</CbteTipo>
  7.   </FeCabReq>
  8.   <FeDetReq xmlns="http://ar.gov.afip.dif.FEV1/">
  9.     <FECAEDetRequest>
  10.       <Concepto>1</Concepto>
  11.       <DocTipo>99</DocTipo>
  12.       <DocNro>0</DocNro>
  13.       <CbteDesde>2</CbteDesde>
  14.       <CbteHasta>2</CbteHasta>
  15.       <CbteFch>20230920</CbteFch>
  16.       <ImpTotal>30</ImpTotal>
  17.       <ImpTotConc>0</ImpTotConc>
  18.       <ImpNeto>26.36</ImpNeto>
  19.       <ImpOpEx>0</ImpOpEx>
  20.       <ImpTrib>0</ImpTrib>
  21.       <ImpIVA>3.64</ImpIVA>
  22.       <MonId>PES</MonId>
  23.       <MonCotiz>1</MonCotiz>
  24.       <CbtesAsoc>
  25.         <CbteAsoc>
  26.           <Tipo>0</Tipo>
  27.           <PtoVta>0</PtoVta>
  28.           <Nro>0</Nro>
  29.         </CbteAsoc>
  30.       </CbtesAsoc>
  31.       <Iva>
  32.         <AlicIva>
  33.           <Id>5</Id>
  34.           <BaseImp>8.26</BaseImp>
  35.           <Importe>1.74</Importe>
  36.         </AlicIva>
  37.         <AlicIva>
  38.           <Id>4</Id>
  39.           <BaseImp>18.1</BaseImp>
  40.           <Importe>1.9</Importe>
  41.         </AlicIva>
  42.       </Iva>
  43.     </FECAEDetRequest>
  44.   </FeDetReq>
  45. </FECAERequest>

y el archivo de respuesta me pone error
Código XML:
  1. <Resultado>R</Resultado>
  2.       <Observaciones>
  3.         <Obs>
  4.           <Code>10057</Code>
  5.           <Msg>De enviarse el tag CbtesAsoc debe enviarse Tipo mayor a 0</Msg>
  6.         </Obs>
  7.       </Observaciones>

cual puede ser el problema ?
Saludos ...

Fito 20 de septiembre de 2023 23:31

Hola:

Los comprobantes asociados van en un vector, te falta moverle valor a f1IndiceItem.

fastpho 21 de septiembre de 2023 14:50

Gracias @Fito , funciono con :
Código COBOL:
  1.   MOVE 0 TO fe-numero
  2.   INVOKE  FACTURA-APP "SET-f1IndiceItem" USING fe-numero

y ademas tenia mal puesto el nro de comprobante desde y hasta

Saludos ...:bien:

Gusaiello 21 de septiembre de 2023 19:12

@fastpho, Es por que desde hace algún tiempo es obligatorio indicar a que factura o nota de débito hace referencia la nota de crédito.

Tarde jaja. No vi la respuesta de Fito.

fastpho 21 de septiembre de 2023 19:39

@Gusaiello
Gracias Gustavo ....:bien:

Saludos...


La franja horaria es GMT +2. Ahora son las 14:00.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.