El martes, 7 de julio de 2015, 11:35:46 (UTC+1), Jordi Esteve (Zikzakmedia) escribió: > > On 07/07/15 12:10, Antonio Roncero wrote: > > > > El martes, 7 de julio de 2015, 9:26:04 (UTC+1), Sergi Almacellas Abellana > escribió: >> >> El 07/07/15 a les 10:23, Antonio Roncero ha escrit: >> > >> > >> > El lunes, 6 de julio de 2015, 18:42:39 (UTC+1), Jordi Esteve >> > (Zikzakmedia) escribió: >> > >> > El 06/07/15 a les 16:57, Antonio Roncero ha escrit: >> >> >> >> >> >> El viernes, 3 de julio de 2015, 12:25:57 (UTC+1), Jordi Esteve >> >> (Zikzakmedia) escribió: >> >> >> >> On 03/07/15 13:16, Antonio Roncero wrote: >> >> > >> >> > A ver si me estoy equivocando en el proceso... >> >> >> >> Si, te equivocas en el proceso. >> >> >> >> > >> >> > Creo la factura, la confirmo, y como el cliente tiene >> >> mandato sepa, >> >> > voy a efectos a pagar/cobrar-> a cobrar con mandato y >> >> ejecuto el >> >> > wizard que me genera el fichero sepa. En mensajes sepa, lo >> >> paso a >> >> > estado realizado. >> >> > >> >> > Las facturas me siguen apareciendo validadas a espera de >> >> pagar, por lo >> >> > que debo ejecutar el proceso de conciliación para asociar >> >> los apuntes >> >> > que haya generado el mandato sepa (que por cierto no se como >> >> mirarlos, >> >> > porque no veo por ningun lado el dario de cobro que he >> >> creado en SEPA) >> >> > con lo de las facturas. >> >> >> >> Aquí es donde fallas. Cuando se genera un fichero SEPA no >> >> implica que >> >> las facturas estén pagadas. Piensa que en un fichero SEPA se >> >> ordenan >> >> pagos o cobros a fechas en el futuro. Hasta que no llegue las >> >> fechas de >> >> pago/cobro de cada recibo estos no se cobraran realmente. Por >> >> tanto la >> >> generación de ficheros SEPA no crea ningún asiento de pago ni >> >> tampoco >> >> ninguna conciliación, es simplemente una orden que mandas al >> >> banco. >> >> >> >> Contabilizarás los pagos/cobros cuando introduzcas els >> >> extracto del >> >> banco y lo confirmes. Para ello puedes usar el módulo oficial >> >> account_statement o los módulos account_bank_statement* que >> >> encontraràs >> >> en bitbucket que son más flexibles. Te recomiendo estos >> >> últimos pues hay >> >> módulos interesantes: >> >> >> >> account_bank_statement_es_csb43 >> >> account_bank_statement_payment >> >> account_bank_statement_payment_sepa >> >> >> >> >> >> He instalado los modulos, y cuando intento importar un csb43 me da >> >> este error: >> >> >> >> | >> >> Error:'account.bank.statement'Modelhas noattribute 'lines':None >> >> | >> >> >> >> He mirado el modelo de account.bank.statement y el modelo si tiene >> >> el campo lines (one2may a account.bank.statement.line)... Ni idea >> :( >> > >> > Yo tampoco tengo idea, sin saber en que línea falla y que fichero >> > usaste para importar. Parece como si importara 0 líneas del >> extracto. >> > >> > Deberías debugar para ver que pasa cuando falla, y detectar si >> > realmente es problema del código del módulo o de tu instalación o >> > fichero a importar. >> > >> > >> > Perdonad la falta de informacion anterior, el problema salta en la >> > linea*if statement.lines:* al hacer la evaluación salta la excepcion, >> es >> > decir, no es ni True ni False, directamente salta la excepcion *Model >> > has no attribute line* >> > >> > En principio ni siquiera parece llegar a la parte de leer el archivo. >> > >> > | >> > deftransition_import_file(self): >> > pool =Pool() >> > BankStatement=pool.get('account.bank.statement') >> > BankStatementLine=pool.get('account.bank.statement.line') >> > Attachment=pool.get('ir.attachment') >> > >> > statement =BankStatement(Transaction().context['active_id']) >> > ifstatement.lines: >> > self.raise_user_error('statement_already_has_lines') >> > data =unicode(str(self.start.import_file),'latin1') >> > records =c43.read(data) >> > | >> >> Esto me suena. Puede que estes intentando importar el registro en un >> BankSttement que aún no ha sido guardado? Si es así, prueba guardandlo >> primero i deberia funcionar. >> >> > Efectivamente, guardando el registro ya no da el problema. > Ahora el problema es con la importación del archivo en si. > > Con este trozo de codigo se sobreescribe el extracto bancario que he > creado para la importación. > > BankStatement.write([statement], { > 'start_date': records[0].start_date, > 'end_date': records[0].end_date, > 'start_balance': records[0].initial_balance, > 'end_balance': records[-1].final_balance, > }) > > > > El tema es que mi banco el record[0] cuando es entre fechas no lo manda... > De hecho solo manda el principal de movimientos y complementarios de > conceptos. Y no se si es una mala interpretacion de la norma: > > El tipo de registros que contiene el fichero son los siguientes: > > - Cabecera de cuenta > - Principal de movimientos (obligatorio) > - Complementarios de conceptos, hasta un máximo de 5 registros > opcionales y uno complementario de información de equivalencia del > importe del apunte (opcional) > - Final de cuenta > - Final de fichero > > > Según la norma, obligario solo es el principal de movimiento, pero parece > que tiene sentido que mande el cabecera y final de cuenta... pero si creo > el extracto bancario ya con esa informacion no seria necesario... > > No sé, ¿como lo veis? > > > Obligatorios son los cabecera de fichero (te lo has dejado), cabecera de > cuenta, final de cuenta y final de fichero. Y luego el principal de > movimiento por cada movimiento. >
Hola Jordi, en la norma que estoy mirando no veo el campo cabecera de fichero [1][2] . Pero estoy de acuerdo, en que mi banco (ING) se pasa la norma por el forro. > > O sea cada fichero tiene 1 cabecera de fichero y 1 final de fichero. > Dentro pueden tener varias cabeceras y finales de cuenta si fuese un > extracto de varias cuentas, pero normalmente sólo hay una cuenta. Y luego > por cada cuenta hay varios principal de movimientos, que son las líneas de > extracto bancario. > > La norma indica que la cabecera de cuenta contiene fecha y saldo inicial y > final, si tu fichero no los tiene me parece que tu banco no sigue la norma. > Te la adjunto para que lo veas. > > -- > Jordi Esteve > Consultor Zikzakmedia sljes...@zikzakmedia.com <javascript:> > Mòbil 679 170 693 > > Zikzakmedia SL > St. Jaume, 9, baixos, 2a > 08720 Vilafranca del Penedès > Tel 93 890 2108 > > [1] La caixa <https://empresa.lacaixa.es/deployedfiles/empresas/Estaticos/pdf/Transferenciasyficheros/q43Junio2012.pdf> [2] Bankinter <https://docs.bankinter.com/stf/plataformas/empresas/gestion/ficheros/formatos_fichero/norma_43_castellano.pdf>