Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   TSMDGrid (https://www.clubdelphi.com/foros/showthread.php?t=13703)

Sara Paz 27-08-2004 17:33:11

TSMDGrid
 
Hola a todos. Mi primer mensaje en este foro y un poco largo. Lo siento.
Tengo un PageControl con dos páginas y en cada una de ellas un TSMDBGrid.
En la segunda hay un TpFIBDataSet con las cuentas del Plan Contable y en la primera otro TpFIBDataSet (detalle del anterior) con los movimientos de cada cuenta a la que apunta el primero. Necesito hacer unas sumas (no me vale TSMDGrid.CalculateTotals) cada vez que se presenten datos en el TSMDBGrid. Es decir, cada vez que se mueva el puntero de segundo. No encuentro el evento donde poner la función de suma. ¿Alguien me puede ayudar?.

:) Gracias de antemano.

roman 27-08-2004 18:27:23

No me quedó claro si deseas hacer las cuentas al moverte por el primer o por el segundo grid. Pero te puedo decir que no es en los grids en quien debes fijarte sino en los datasets que los alimentan:

Cada vez que cambia el registro activo de un dataset (por el medio que sea) se genera el evento OnAfterScroll. Pienso que éste es el que estás buscando.

Por cierto, no es muy buena idea presuponer que todos conocemos componentes de terceros como TSMDBGrid.

// Saludos

DiDi 27-08-2004 19:05:44

Hola.

TSMDBGrid debe ser la DBGrid de la libreria Free SMComponent library de Scalabium Software http://www.scalabium.com/, la conozco.
TpFIBDataSet no lo conozco, pero deberia ser un DataSet como ADODataSet o similares.

Si tu DataSet no tiene el evento que te decia roman, podrias usar el evento OnDataChage del componete TDataSource que este usando para conectarte con la TSMDBGrid, el TDataSource que este conectado al maestro.
Pero esto es relativo ya que no quedo muy claro como estan "engachados" el maestro-detalle.

Si con esto no alcanza, intenta de nuevo detallando mas tu problema y los componentes que usas, que no son standard de Delphi y no todos los conocemos, por eso es que en estos casos conviene explicar un poco mas, eh incluso añadir algo de codigo, si crees necesario.

Bye.;)

Sara Paz 29-08-2004 14:18:48

Gracias por contestar DiDi y Roman.
Ya solucíoné el problema. Efectivamente había que utilizar el evento OnAfterScroll, que yo ya había probado, pero no había manera de que al entrar pusiera los datos correctos. Lo que he hecho es crear un procedimiento almacenado que me devuleva los valores de la suma de los movimientos cada vez que se mueva el puntero de la tabla de cuentas contables.

Pido disculpas por no aclarar el problema suficientemente, pero sólo fue por no hacer muy largo el mensaje. Lo tendré en cuenta para sucesivas ocasiones, al tiempo que mencionaré también el monbre de los componentes que utilizo.

Lo dicho, gracias.
Saludos.


La franja horaria es GMT +2. Ahora son las 22:51:53.

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