Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Varios
Register FAQ Members List Calendar Guía de estilo Today's Posts

Coloboración Paypal con ClubDelphi

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 24/01/2012
juliannemiro juliannemiro is offline
Miembro
NULL
 
Join Date: Nov 2011
Posts: 27
Poder: 0
juliannemiro Va por buen camino
Validar Dato DBGRID en tiempo de ejecución!!

Hola a todos!

- Tengo una DBGrid de la tabla ASISTENCIAS en la que cargo una lista de alumnos de una fecha determinada.
La grilla muertra alumno, ID de tipo de asistencia y descripción entre otras cosas.

Lo que yo necesito es que cuando la persona completa en tiempo de ejecucion me valide lo que ingresa, por ejemplo:

El usuario pone sobre un alumno X, id_asistencia: 'P' y la descripcion automaticamente tiene que decir PRESENTE. Si cambió la 'P', por una 'A', debe refrescar la descripción a AUSENTE. Esto para cada uno de los alumnos que aparece en la grilla.

Esta modificacion de datos la hago dentro de una transacción.

Trabajo con SQLserver2000, y tengo el DATASOURCE, ADOTABLE Y ADOQUERY de la tabla ASISTENCIAS

Espero se entienda, agradezco su tiempo!
Reply With Quote
  #2  
Old 26/01/2012
ecfisa's Avatar
ecfisa ecfisa is offline
Moderador
 
Join Date: Dec 2005
Location: Tres Arroyos, Argentina
Posts: 10,508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola juliannemiro.

Si no te entendí mal, estás ingresando los datos desde el mismo DBGrid. De ser así, podés aprovechar el evento OnKeyPress del TDBGrid:
Código Delphi [-]
procedure TForm1.DBGridKeyPress(Sender: TObject; var Key: Char);
begin
  with Sender as TDBGrid do
   if SelectedField.FieldName = 'id_asistencia' then
   begin
     DataSource.DataSet.Edit;
     if Upcase(Key) = 'P' then
       SelectedField.Value:= 'PRESENTE';
     if Upcase(Key) = 'A' then
       SelectedField.Value:= 'AUSENTE';
     Key:= #0;
   end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Reply With Quote
  #3  
Old 27/01/2012
juliannemiro juliannemiro is offline
Miembro
NULL
 
Join Date: Nov 2011
Posts: 27
Poder: 0
juliannemiro Va por buen camino
Perdon en la tardanza en contestar!

Si, eso me sirve y muchisimo. Pero tengo el siguiente problema:
El campo que tiene que cambiar la descripción no debe ser id_asistencias, sino x_descripcion que también lo muestra la grilla ya que esta dentro del mismo adoquery.
Reply With Quote
  #4  
Old 27/01/2012
ecfisa's Avatar
ecfisa ecfisa is offline
Moderador
 
Join Date: Dec 2005
Location: Tres Arroyos, Argentina
Posts: 10,508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Quote:
Originally Posted by juliannemiro View Post
Perdon en la tardanza en contestar!

Si, eso me sirve y muchisimo. Pero tengo el siguiente problema:
El campo que tiene que cambiar la descripción no debe ser id_asistencias, sino x_descripcion que también lo muestra la grilla ya que esta dentro del mismo adoquery.
Hola Julián.

Basta con que cambies el nombre de campo 'id_asistencias' por 'x_descripción' en el código que te puse anteriormente.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Reply With Quote
  #5  
Old 27/01/2012
juliannemiro juliannemiro is offline
Miembro
NULL
 
Join Date: Nov 2011
Posts: 27
Poder: 0
juliannemiro Va por buen camino
Hola!

Pido disculpas, porque me expresé mal

En mi dbgird tengo campo id_asistencia_tipo y x_asistencia entre otros. Cuando el usuario pone en id_asistencia_tipo la letra 'P', el campo x_asistencia debe ponerse 'Presente'. Pero se mantiene en id_asistencia_tipo la letra 'P'. Digamos que es el Codigo y Descrpicion

Osea el registro quedaria asi:
Alumno.....id_asistencia.....tipo x_asistencia
Juan...............P................Presente

En sintesis lo que me falta es la sintaxis para agregar la linea que seleccione otro campo del mismo registro al cual le voy a asignar un valor.

Gracias!
Reply With Quote
  #6  
Old 27/01/2012
ecfisa's Avatar
ecfisa ecfisa is offline
Moderador
 
Join Date: Dec 2005
Location: Tres Arroyos, Argentina
Posts: 10,508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Creo que ahora te entendí

Código Delphi [-]
procedure TForm1.DBGridKeyPress(Sender: TObject; var Key: Char);
begin
  with Sender as TDBGrid do
  if SelectedField.FieldName = 'id_asistencia' then
  begin
    DataSource.DataSet.Edit;
    if Upcase(Key) = 'P' then
      DataSource.DataSet.FieldByName('x_descripción').AsString:= 'PRESENTE';
    if Upcase(Key) = 'A' then
      DataSource.DataSet.FieldByName('x_descripción').AsString:= 'AUSENTE';
    Key:= #0; // (Quitá esta línea si deseas conservar los caracteres tecleados )
  end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Tiempo de ejecución. Columnas en DBGrid. manueljgc OOP 0 07/03/2009 22:30
DBGrid en tiempo de ejecución iga Gráficos 6 14/12/2007 01:52
Columnas de DBGrid en tiempo de ejecución dape Varios 1 17/03/2005 03:57
Crear Columna en un DBGRid en tiempo de ejecucion muli Conexión con bases de datos 1 03/03/2005 08:30
Cambiar tipo de un dato en Rave 5 en tiempo de ejecución Berto2003 Impresión 2 05/03/2004 15:41


All times are GMT +2. The time now is 00:07.


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