Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Python (https://www.clubdelphi.com/foros/forumdisplay.php?f=46)
-   -   django maestro - detalle (https://www.clubdelphi.com/foros/showthread.php?t=93012)

jourdan 20-04-2018 01:09:09

django maestro - detalle
 
Hola, estoy trabajando en un proyecto de Django y quisiera ver si me pueden ayudar, tengo dos tablas, factura y facturadatos, en la tabla de factura van los campos tradicionales de cliente, fecha, etc y en facturadatos van cantidad, descripcion e importe

Como puedo hacer para guardar en la tabla de factura la suma de facturadatos.importe así como la suma de la multiplicación de facturadatos.importe por facturadatos.cantidad

De antemano muchas gracias y saludos

Neftali [Germán.Estévez] 20-04-2018 11:23:14

Puedes enfocarlo a (1) hacerlo desde tu programa Delphi, en cuyo caso al guardar los registros de facturadatos debes recalcular los campos de la tabla facturas. Dependiendo de cómo estés trabajando en tu programa delphi y qué componentes estés utilizando deberás programar esto a nivcel del Dataset (no a nivel visual).
La otra opción (2) es programarlo a nivel de Base de Datos (no comentas cual estás utilizando). Utilizar triggers en la tabla FacturaDatos para recalcular los datos que necesites de la tabla factura.

Personalmente salvo cosas raras, optaría por la opción (2).

NOTA: Perdón,no había visto el foro (pensé que era Delphi). De todas formas la solución aplicable más o menos. O lo haces mediante programa o lo haces mediante Base de Datos. Preferiblemente la segunda.

jourdan 20-04-2018 18:35:55

Muchas gracias por tu respuesta Neftali, en delphi ya lo tengo dominado, estoy aprendiendo django y no lo he logrado hacer.
Saludos

mamcx 20-04-2018 20:08:45

Si has leido la documentancion de django, que es excelente? Porque esto es super-simple de hacer:

https://docs.djangoproject.com/en/2.0/#the-model-layer

Spoiler: Django permite hacer el calculo como si fuera en el programa pero realmente ejecutado en la BD (que es mas eficiente!)

jourdan 20-04-2018 20:42:31

Cita:

Empezado por mamcx (Mensaje 525787)
Si has leido la documentancion de django, que es excelente? Porque esto es super-simple de hacer:

https://docs.djangoproject.com/en/2.0/#the-model-layer

Spoiler: Django permite hacer el calculo como si fuera en el programa pero realmente ejecutado en la BD (que es mas eficiente!)

Si he buscado por todos lados, pero por alguna razón no logor que funcione, ahorita estoy trabajando en algo así peor no jala:

sumadict = RegistroPagoDato.objects.filter(id = self.pk).aggregate(Sum('importe'))

Muchas gracias


La franja horaria es GMT +2. Ahora son las 15:30:26.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi