Adeudos Directos SEPA en euros Esquema B2B

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Aranda » Tue Oct 29, 2013 5:04 pm

Gracias a Manuel por modificar la función usando XML. Esto nos ayudará a profundizar en esta clase.
Y también gracias a Joaquín por el enlace al programa. Sólo lo he mirado por encima pero creo que será suficiente para generar un recibo y mirarle las "tripas" para ver los cambios.
Un saludo,
Manuel

xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
User avatar
Manuel Aranda
 
Posts: 602
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby FiveWiDi » Tue Oct 29, 2013 6:07 pm

Manuel,

Respecto a las órdenes de domiciliación tanto CORE como B2B, si no estoy equivocado la normativa SEPA nos obliga a tener en el documento todos los redactados en el idioma oficial del pais y en inglés.
A ver si alguno de los presentes lo ha entendido como yo.

Supongo que por eso el modelo oficial tiene 2 idiomas.

Gracias,
Un Saludo
Carlos G.

FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
FiveWiDi
 
Posts: 1060
Joined: Mon Oct 10, 2005 2:38 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Aranda » Tue Oct 29, 2013 6:41 pm

Carlos, así es. Lo he comprobado en la documentación del Sabadell y lo dice claro:

"El texto debe aparecer, al menos en una de las lenguas oficiales del país del deudor, así como en inglés"

Así que habrá que descartar el modelo modificado y usar el oficial.
Un saludo,
Manuel

xH 1.2.3, FWH 23.07 32 bits, BC++ 7.4, xVerce CW 1.0, PellesC
User avatar
Manuel Aranda
 
Posts: 602
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby mastintin » Wed Oct 30, 2013 7:41 am

Para arreglar el tema de usar ISO en vez UTF-8 no he encontrado información por ningún lado . De momento queda resuelto con "un parche" no muy ortodoxo pero al ser en un archivo usado "temporalmente" no tiene una importancia "vital" y cumple su cometido .

Code: Select all  Expand view


local oDoc := mxmlNewElement( oXml, "xfdf" )
local oFields , xDato

mxmlElementSetAttr( oXml, "encoding", 'ISO-8859-1' )  // añadido mientras se encuentra mejor solución por compatibilidad .

.......

 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby elvira » Wed Oct 30, 2013 8:05 am

elvira
 
Posts: 515
Joined: Fri Jun 29, 2012 12:49 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby lucasdebeltran » Tue Nov 05, 2013 12:37 pm

Muchas gracias. Many thanks.

Un saludo, Best regards,

Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]

Implementando MSVC 2010, FWH64 y ADO.

Abandonando uso xHarbour y SQLRDD.
User avatar
lucasdebeltran
 
Posts: 1303
Joined: Tue Jul 21, 2009 8:12 am

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby FiveWiDi » Wed Nov 06, 2013 11:01 pm

Hola a todos,

Tengo una maldita duda sobre como debe ser la identificación del acreedor en los adeudos directos SEPA.

Por un lado en la página 3 del cuaderno AEB 19-14 de noviembre-2012, se dice que la identificación debe ser del tipo:
ES99888AAAAAAAAAAAAA.. (hasta 35 caracteres en total), en donde 888 vendrían a ser el sufijo que hasta ahora se está utilizando.

Por otro lado en ese mismo cuaderno Anexo VII página 67 se indica que las reglas de migración de adeudos españoles para ese mismo dato establecen que debe ser NIF-SUFIJO:
ES99AAAAAAA888.... (hasta 35 caracteres en total).

Donde meteran ustedes el sufijo en la identificación de acreedor?

Perdonen la cuestión por no ser propia de FiveWin pero, como el hilo ha dado tanto de si...
Un Saludo
Carlos G.

FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
FiveWiDi
 
Posts: 1060
Joined: Mon Oct 10, 2005 2:38 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Valdenebro » Tue Nov 12, 2013 11:18 pm

FiveWiDi wrote:
Tengo una maldita duda sobre como debe ser la identificación del acreedor en los adeudos directos SEPA.



La identificación del acreedor (AT-02) con un máximo de 35 caracteres, debe tener la siguiente estructura:

AA codigo del pais ("ES" para España)
DD dígito de control (a calcular segun mod-97-10)
SSS sufijo acreedor (normalmente 000)
NNNNNNNNN (nif del acreedor)

y hasta 35 caracteres si quieres añadirle algo mas.
Un saludo

Manuel
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Valdenebro » Wed Nov 13, 2013 9:16 am

mastintin wrote:
            if(CC_iban<10){
            CC_iban = "0" + CC_iban;
            }


Mastintin,

Sólo te falta incluir el IF que te marcó que sucede cuando al calcular el digito de control, tiene solo un dígito. Por lo demás, coincide con el código que uso y que está comprobado, salvo que yo incluyo la variable PAIS, para poder adeudar recibos a otros paises distinto que ESPAÑA.

Tambien son importantes convertir la cadena IBAN a numérico, porque sino, al dividir por 97, daría error e incluir los INT, porque en caso contrario, al sumar las cadenas, Harbour incluye el punto decimal y los decimales por defecto.

Code: Select all  Expand view

FUNCTION fIban( cPais, cBanco, cSucursal, cDC, cCuenta)
local nIban, cIban, nMod, nContador, cPais2:=''

// comprueba ccc es correcto
IF !CCC (cBanco, cSucursal, cDC, cCuenta)
   MsgInfo ("CCC incorrecto.")
   // devuelve cadena vacia por error CCC
   RETURN ' '
ENDIF          
   
  FOR ncontador = 1 TO 2
      IF ASC(SUBSTR(cPais, ncontador, 1)) >= 65
           cPais2 += STR( (ASC(UPPER(SUBSTR(cPais, ncontador, 1)))-55), 2, 0)
       ELSE
            cPais2 += SUBSTR(cPais, ncontador, 1)
      ENDIF
  NEXT 

  cIban := cBanco + cSucursal
  nMod := INT ( VAL(cIban) % 97)
  cIban := LTRIM(STR(nMod,3,0))+cDC+SUBS(cCuenta,1,2)
  nMod := INT ( VAL(cIban) % 97)
  cIban := LTRIM(STR(nMod,3,0))+SUBS(cCuenta,3) + cPais2 + "00"
  nMod := INT ( VAL(cIban) % 97 )
  nIban := INT ( 98 - ( VAL(cIban) % 97) )

  return cPais + STRZERO( nIban, 2)+cBanco+cSucursal+cDC+cCuenta
 
Un saludo

Manuel
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby elvira » Wed Nov 13, 2013 12:48 pm

Querido Manuel,

¿Has conseguido hacer funcionar SEPA norma 19?.

Muy agradecida ;)
elvira
 
Posts: 515
Joined: Fri Jun 29, 2012 12:49 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby FiveWiDi » Wed Nov 13, 2013 3:13 pm

Manuel Valdenebro wrote:
FiveWiDi wrote:
Tengo una maldita duda sobre como debe ser la identificación del acreedor en los adeudos directos SEPA.



La identificación del acreedor (AT-02) con un máximo de 35 caracteres, debe tener la siguiente estructura:

AA codigo del pais ("ES" para España)
DD dígito de control (a calcular segun mod-97-10)
SSS sufijo acreedor (normalmente 000)
NNNNNNNNN (nif del acreedor)

y hasta 35 caracteres si quieres añadirle algo mas.


Gracias,
Así lo tengo ahora.
Un Saludo
Carlos G.

FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
FiveWiDi
 
Posts: 1060
Joined: Mon Oct 10, 2005 2:38 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby mastintin » Fri Nov 15, 2013 9:53 am

Referente al tema de Fusionar el formulario de las Ordenes con los datos de nuestros clientes.
Mediante un xml y un programa ( exe) externo , tiene la ventaja de no necesitar el acrobat Profesional , pero para los que dispongan de el puede que sea mas facil usar automatizacion ole y prescindir tanto del archivo xml intermedio como del programa para fusionar los datos y hacerlo directamente .
Pongo un codigo resumido que funciona bien en mi ordenador .

Code: Select all  Expand view

FUNCTION  FusionaDatos()

   LOCAL ScanOK
   LOCAL oApp
   LOCAL oAVDoc, okAVD
   LOCAL oPDDoc
   LOCAL oForm,oFields,ofield,cfield
   LOCAL cPath := "c:\SEPA\ordenes\sepa2.pdf"
   LOCAL i, nLen

    oApp := CreateObject( "AcroExch.App" )
    oAVDoc := CreateObject("AcroExch.AVDoc")
    oKAVD = oAVDoc:Open(cPath, "sepa2.pdf")
    pausa( oKAVD )
    oForm:= CreateObject("AFormAut.App")

    oFields = oForm:fields()
    nLen := oFields:Count()
    pausa(nLen)

    For Each oField In oFields
        cField:=  oField:Name()
        If cField == "c2"
           oField:Value:= "NIF de la empresa"
        ELSEIF cField == "c32"
           oField:Value:= "Nombre de la empresa"
        ELSEIF cField == "c33"
           oField:Value:= "Direccion de la empresa"

        ......  // resto de los campos arrellenar

        endif
    Next Field
    oPDDoc := createobject("AcroExch.PDDoc")
    oPDDoc := oAvDoc:GetPDDoc()
    oPDDoc:Save(1, "c:\SEPA\ordenes\ordenfinal.pdf")
    oPDDoc:Close()
    oPDDoc := nil
    oAVDoc:BringToFront()
    oAVDoc:Maximize(1)

  //

RETURN nil


 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Valdenebro » Fri Nov 15, 2013 9:39 pm

elvira wrote:Querido Manuel,

¿Has conseguido hacer funcionar SEPA norma 19?.


Si, a falta de probarlo con remesas reales en el banco.

El diseño del archivo no es complicado. Viene muy detallado en la información del SEPA. Lo complicado es los cambios que hay que realizar en la aplicación (en la mia) para adaptar los datos del acreedor y deudores, para que funcionen automaticamente con el nuevo formato y sobre todo, el tema de los mandatos (RCUR, FRST, FNAL) y los cambios en las futuras domiciliaciones.

¿Tu como lo llevas?
Un saludo

Manuel
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby FiveWiDi » Fri Nov 15, 2013 11:52 pm

Hola a todos,

Os comento mi experiencia (poca de momento).
El Banco de Sabadell (desconozco si es por definición del cuaderno 19-14, Básico en Txt), no acepta en un mismo fichero para el mismo deudor dos cargos con la misma referencia, ni tan siquiera en diferentes remesas del mismo acreedor con diferente fecha cargo; no me lo puedo creer. Por tanto a modificar programa. Como los cangrejos, vamos 'pa tras'.
He tenido que incorporar validación de los caracteres ya sea del nombre del acreedor, deudor, u otros posibles textos, ya que por ejemplo el arterisco no está permitido según la definición del cuaderno; seguimos yendo 'pa tras'.
Cuando la aplicación de internet del Banc Sabadell funciona (dudo que funcione siempre, al menos para SEPA), te permite validar el fichero antes de enviarlo definitivamente; al final volveremos a remesar en papel... 'vaya tela'.
Si veo algo más que sea curioso lo comento.

AÑADO.
En BS la fecha de cargo de los adeudos no puede ser anterior a la fecha de creación del fichero. Bien, no se porque lo han definido así, para mi creo que es complicarle la vida al que gestiona recibos de asociaciones o clubes o por el estilo, en donde la fecha de 'vencimiento' tiene un valor relativo. Ala, a modificar la rutina para otra 'parida'.
Un Saludo
Carlos G.

FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
FiveWiDi
 
Posts: 1060
Joined: Mon Oct 10, 2005 2:38 pm

Re: Adeudos Directos SEPA en euros Esquema B2B

Postby Manuel Valdenebro » Sat Nov 16, 2013 4:48 am

FiveWiDi wrote:1)He tenido que incorporar validación de los caracteres ya sea del nombre del acreedor, deudor, u otros posibles textos, ya que por ejemplo el arterisco no está permitido según la definición del cuaderno; seguimos yendo 'pa tras'.
2)En BS la fecha de cargo de los adeudos no puede ser anterior a la fecha de creación del fichero. Bien, no se porque lo han definido así, para mi creo que es complicarle la vida al que gestiona recibos de asociaciones o clubes o por el estilo, en donde la fecha de 'vencimiento' tiene un valor relativo.



1) No sólo el asterisco. Para los españoles la Ñ y la Ç y en las zonas turísticas, todos los extranjeros con caracteres especiales. Pero aunque habrá que verlo, yo creo que el sistema se va a tragar todos los caracteres. Lo que puede ocurrir es que la persona que se llama CAÑO aparezca en el recibo como CANO o CA%O.
2) Según las normas del SEPA-CORE, tiene que haber, al menos, cuatro dias desde la fecha de creación del recibo (y envio al banco) hasta la fecha de cargo/cobro (fecha en la que el banco presentará a las otras entidades los recibos al cobro). Según las normas de emigración españolas, algunas entidades españolas bajaran de cuatro a tres dias este plazo.
Esto ya existía en la norma del CSB-19 anterior. No le veo la complicación ya que la fecha de confección del fichero y la fecha de cargo son constantes en el archivo. Es tan fácil como hacer fConfeccion=DTOS(DATE()) y fCargo = DTOS ( DATE()+4)), independientemente que el recibo sea del año catapún. Otra cosa es si hay vencimientos futuros que obliga a hacer bloques por cada fecha
Un saludo

Manuel
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

PreviousNext

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 76 guests