[pyar] modelizar libro contable

peinado genial peinadogenial en gmail.com
Lun Jun 7 16:10:07 ART 2010


2010/6/7 Pumarfa <pumarfa en gmail.com>:
>
>
> 2010/6/7 Ricardo Aráoz <ricaraoz en gmail.com>
>>
>> On 07/06/2010 11:47 a.m., peinado genial wrote:
>>>
>>> tengo dudas sobre como modelizar asientos de un libro diario contable,
>>> por ejemplo:
>>>
>>> class Asiento():
>>>   id =
>>>   fecha =
>>>   detalle =
>>>   debe =
>>>   haber =
>>>
>>> class Movimiento():
>>>   id =
>>>   monto =
>>>   fecha =
>>>
>>> class ReservaHabitacion(Movimiento):
>>>   habitacion =
>>>   fecha_ingreso=
>>>   fecha_egreso =
>>>
>>> class Gasto(Movimiento):
>>>   factura_numero =
>>>
>>>
>>> mi duda es si estan bien encarado los modelos y como vincular los
>>> Movimientos con los Asientos, para desde un asiento en particular
>>> acceder al detalle de cada movimiento, teniendo en cuenta que existen
>>> varios tipos de movimientos con distintos atributos.
>>>
>>
>> Si tu objetivo es un uno_a_muchos desde asientos a movimientos te hago
>> notar que tenés repetido fecha, ya que los movimientos de un asiento creo
>> que se contabilizan a la fecha del asiento. Así que tendrías que sacar fecha
>> de Movimiento. Por otro lado es el movimiento el que corresponde al
>> debe/haber y no el asiento (a menos que estés totalizando el debe y haber de
>> un asiento, pero eso no tiene que ver con estructura de datos y es
>> probablemente una optimización prematura ya que se pueden calcular con la
>> suma de movimientos del asiento), asi que yo sacaría debe y haber de asiento
>> y pondría debe (booleano) en Movimiento (si es False => va al Haber).
>> Para vincular los Movs con los Asientos tenés que tener un atributo en
>> Movimiento que sea el AsientoId.
>> En cuanto a ReservaHabitacion y Gasto, no me queda claro qué querés hacer
>> con ellos.
>> Ahora si esto no tiene que ver con estructura de datos sino con objetos,
>> ya depende mucho más de lo que quieras hacer con ellos. Por ejemplo podrías
>> no tener AsientoId en movimientos y en Asientos tener una lista de
>> movimientos.
>>
>
> Me perdí un poco en el planteo...
>
> pero, básicamente antes de realizar un asiento necesitas un plan de cuentas.
> Es ese plan de cuentas el que dice si una cuenta se imputa en el debe o en
> el haber. También el plan de cuentas te dice "como se calcula" una cuenta
> cuando la misma es de resultado.
>
> Luego, al realizar el asiento, se toma la cuenta en cuestión y se le asigan
> el valor; se le da una fecha al asiento (fecha que debe quedar dentro del
> ejercicio fiscal) y se completa el asiento con la imputación de las demás
> cuentas que intervengan (Las que pagan y las que cobran)
>
> En definitiva; un asiento tiene:
>
> Asiento:
> --> Asineto_id
> --> Fecha movimeinto
>
> detalle asiento:
> --> Cuenta_id
> --> importe
>
> El detalle del asiento se construye con el plan de cuentas:
>
> Plan de cuenta
> --> Cuanta_id
> --> nombre
> --> tipo (básicamente si es del Debe, Haber o Resultado)
>
> Esto es un modelo muy simplificado, un plan de ctas es algo más complejo,
> pero en movimientos diarios con esto debería bastar. Me llama la atención el
> que se trate de llenar un Libro Diario. Generalmente los operadores
> registran movimientos, que luego se transforman en registro contables; de lo
> contrario la persona que opera debe tener los conocimientos contables
> suficientes para saber que cuentas usar en cada caso y poder equilibrar cada
> asiento.

los operadores solo ingresarian el tipo de movimiento (entrada o
salida de dinero) y la cantidad, porque deberian tener conocimientos
contables?
asiento contable no es lo mismo que registro contable?



More information about the pyar mailing list