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 [email protected] <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>