Check debit on account_check_ar

Buen día gente.
Estamos utilizando con mucho gusto la localización Argentina de Tryton y de a poco, a medida que le damos un uso más frecuente y “profundo”, aparecen nuevos problemas. Les paso a detallar lo que ahora me ocurre:

Tengo emitidos en el sistema una serie de cheques pertenecientes a la única cuenta bancaria de la empresa. Hasta acá todo perfecto, me muestra toda la info perteneciente al cheque de manera correcta. El tema es que cuando lo listo y miro para ir llevando un registro de cuáles debo cubrir y cuáles ya fueron debitados me encuentro con que todos figuran con su estado como “Emitido”, por lo que intento cambiarlos a debitados y no puedo hacerlo.
En el pequeño Wizard que me sale para debitar el cheque elijo la cuenta bancaria y el día del débito y le doy click a “Debitar”, pero obtengo como respuesta un mensajito que dice “No se ha definido un período para la fecha”. Lo curioso es que sí lo he definido, sino no hubiera podido cargar ninguna FC correspondiente a ese período.
He buscado por distintos lugares y no encuentro nada. ¿Alguno sabrá decirme si se trata de un bug o si estoy haciendo algo mal?
Por otro lado, ¿no es un poco redundante que me pregunte la cuenta al debitar el cheque? Quizá estoy entendiendo algo mal y si así fuera mi pregunta perdería sentido pero se supone que si el cheque lo emití desde la cuenta X se debitará si o si de la cuenta X. En este caso sería oportuno que el wizard sólo pregunte la fecha del débito.

Bueno, hasta aquí mis consultas.
Gracias de antemano.
Saludos!
Jerónimo

Solucionado!
Luego de investigar el código con mi compañero programador encontramos la forma de resolverlo. Paso a detallar:

Aparentemente el problema surge al tener la compañía un ID distinto de 1.

Acá va el cambio de código que tuvimos que hacer:

archivo period.py del módulo account

@classmethod
def find(cls, company_id, date=None, exception=True, test_state=True):
‘’’
Return the period for the company_id
at the date or the current date.
If exception is set the function will raise an exception
if no period is found.
If test_state is true, it will search on non-closed periods
‘’’
pool = Pool()
Date = pool.get(‘ir.date’)
Lang = pool.get(‘ir.lang’)

    if not date:
        date = Date.today()
    clause = [
        ('start_date', '<=', date),
        ('end_date', '>=', date),

línea 192 = cambiar (‘fiscalyear.company’, ‘=’, company_id) por:

        ('fiscalyear.company.party.id', '=', company_id),
        ('type', '=', 'standard'),
        ]

Fin del problema, al menos por ahora.
Para los que usan la localización Argentina, ¿este problema está relacionado con el bug que no te permite crear una cuenta bancaria teniendo como titular a un tercero con ID distinto de 1? Si así fuera, ¿podríamos resolver dicho bug? Cuenten con nosotros para eso.

Muchas gracias
Saludos!
Jerónimo

CORRECCION:

Dado que el cambio realizado más arriba trajo consecuencias no deseadas en la carga de FC de proveedor revisamos el código de account_check_ar.py y realizamos los siguientes cambios:

def transition_debit(self):
pool = Pool()
IssuedCheck = pool.get(‘account.issued.check’)
Move = pool.get(‘account.move’)
MoveLine = pool.get(‘account.move.line’)
Period = pool.get(‘account.period’)

    cia = Transaction().context.get('company')

-----> defino variable “cia” con el id de la compañia

    period_id = Period.find(cia, date=self.start.date)

-------> reemplazo “period_id = Period.find(1, date=self.start.date)” por period_id = Period.find(cia, date=self.start.date)

    for check in IssuedCheck.browse(Transaction().context.get(
            'active_ids')):
        if check.state != 'issued':

Así estamos trabajando ahora y funciona OK.
Nuevamente ofrecemos nuestros esfuerzos para revisar lo que sea necesario de la localización argentina para eliminar este problema y el de la creación de las cuentas bancarias para compañías cuyo tercero no tiene ID = 1.

Saludos!
Jerónimo

Hola @jeromarquez!

Imagino que la versión que están utilizando no es la más actualizada, ya que hace un tiempo este error fue reportado y corregido:

saludos!

Hermosa solución!
Está a pleno Tryton-Ar.
Saludos!

Why is such module needed? Could it not be implemented using the account_payment and account_statement?

Sin mucha experiencia ni conocimiento profundo puedo decir que el “combo” account_voucher_ar + account_chek_ar es muy bueno a la hora de emitir pagos. Permite muchas combinaciones de pagos y sumatorias de facturas. Desconozco si puede ser reemplazado por los módulos propuestos pero lo que sí entiendo es que resuelve de maravillosa manera el problema planteado en la siguiente discusión:

Saludos!
Jerónimo

The grouping payment has been solved by Grouping receivable/payable lines

But it will be better to focus effort on a single solution than implementing different modules doing almost the same things.