PDA

Ver la Versión Completa : Trigger en master-detalle


jgutti
05-08-2004, 18:49:08
Hola al foro

uso delphi6, interbase 6.0
¿como crear un trigger o procedimiento para que entrege el numero de items o linea en del detalle?
Cree un trigger pero optuve el numero correlativo para cualquier detalle que ingreso no importando el master (1,2,3,...)
Yo quiero optener el items o linea de 1 a n para el detalle de cada master.
ejempo
master 1
detalle 1,2,3,4

master 2
detalle 1,2,3,4

gracias por la ayuda
atte

jgutti

rastafarey
05-08-2004, 19:56:08
No entiendo la pregunta si te explicas mejor te puedo ayudar

uper
06-08-2004, 06:53:40
Hola rastafarey, haber si te sirve esto, segun te entendi es una relacion 1-N como en algunos ejemplo factura y detalle.

Lo que yo consigo hacer es por medio de los Ibdataset's (en la propiedad selectsql):
Ibfact=select No, fecha
Ibdetalle =select No_det, No_fact fecha No_item from detalle where No_fact=:No;
donde No_fact es el campo de detalle y No de la factura con esto consigues esta relacion, y del Ibdetalle en la propiedad datasource engancho a mi Ibfact, y listo, a navegar entre los registros 1-N

Tambien se puede conseguir con los Ibquery, y como decia mi buen maestro "Al gusto del cliente."

Bye.

rastafarey
07-08-2004, 01:33:58
Por que quieres el correlativo para cada maestro eso no importa.
Si usa un generador te funciona y has la relacion en tabla de detalles
y listo.

Los generadores escapandel control transaccional.

pero si no te importa esto

En el trigger pon esto



declares variable "N" Integer;

Select Max("Id en detalle")+1 From "Detalles" Where "Id en detalle de maestro" = new."Id en detalle de maestro" into "N";

If ("N" <> 0) then
New."Id en detalle" = "N";
Else
New."Id en detalle" = 1;



Creo que eso fue lo que quisiste preguntar si no fue eso explicate mejor por favor