Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 24-03-2015
tmsanchez tmsanchez is offline
Miembro
 
Registrado: mar 2004
Ubicación: Mexico
Posts: 67
Poder: 23
tmsanchez Va por buen camino
Hola. No conozo la estructura de tu base de datos pero, va una idea:

Una opción es que agreges una función en tu DataModule que te regrese un valor booleano para saber si ya esta registrada la asistencia:

Código Delphi [-]
unit fmodulo;

...
...
..

type

  TFmodulo = class(TDataModule)
  public 
     function asistenciaRegistrada(idAlumno: Integer; fecha: TDateTime): boolean;
     
   end;
   
 ...
 procedure TFModulo.asistenciaRegistrada(idAlumno: Integer; fecha: TDateTime): boolean;
 var
    registrada: boolean;
 begin
    registrada := False;
    // (suponiendo que ya tienes un TQuery o similar conectado a la base de datos)
    with queryAuxiliar do
    begin
        Close;
        SQL.Text := 'SELECT FECHA,ID_ALUMNO FROM TASISTENCIA WHERE FECHA = :FECHA AND ID_ALUMNO = :IDALUMNO';
        ParamByName('FECHA').AsDate := fecha;
        ParamByName('IDALUMNO').AsDate := idAlumno;
        Open;
        registrada := recordCount > 0;
        Close;
    end;
    result := registrada;
end;

y desde tu botón en la forma lo evalues mas o menos así:
Código Delphi [-]

procedure Tflistado_alumnos.basistenciasClick(Sender: TObject);
var
fecha: string;
Ca,Tt:integer;
begin

    fmodulo.tasistencias.Active:=true;
    fmodulo.tasistencias.Refresh;
    fecha:= datetostr(now);


    if (fmodulo.asistenciaRegistrada(now,fmodulo.zqlistado_alumnos.FieldByName('id_alumnos').asinteger) then
        begin
            Application.MessageBox('YA SE REGISTRO PREVIAMENTE ','GIMNASIO RUJA',MB_OK+MB_ICONINFORMATION)
        end
     else
         begin
               fmodulo.ZQcantasistencia.Active:=true;
               fmodulo.ZQcantasistencia.ParamByName('id_alumnos').AsInteger:= fmodulo.zqlistado_alumnos['id_alumnos'];
               fmodulo.ZQcantasistencia.Refresh;
               ca:=fmodulo.ZQcantasistencia['tasistencias'];
               fmodulo.tasistencias.Insert;
               fmodulo.tasistencias['fecha']:= now;
               fmodulo.tasistencias['hora']:= now;
               fmodulo.tasistencias['estado']:= 'PRESENTE';
               fmodulo.tasistencias['id_alumnos']:= fmodulo.zqlistado_alumnos['id_alumnos'];
               fmodulo.tasistencias.Post;
               Application.MessageBox('REGISTRADO','GIMNASIO RUJA',MB_OK+MB_ICONINFORMATION);
               fmodulo.tasistencias.Refresh;

         end;

        fmodulo.tasistencias.Close;
end;

Saludos.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Registro de asistencias jose.ignacio.ve SQL 1 08-10-2014 05:37:28
Copiar registro de una Tabla a otra Tabla, sin repetirse MaMu Conexión con bases de datos 22 11-04-2013 15:29:11
Ayuda para control de asistencias en programa de preceptoria juliannemiro Varios 15 09-12-2011 00:28:34
Programa de Asistencias de Empleados (1) Caral Varios 20 23-03-2008 21:09:04
Registrar Dll comba OOP 4 17-04-2007 18:53:51


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


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