Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Problema Para Guardar

BUEN DIA. TENGO UNA PEQUEÑA DIFUCULTAD PARA GUARDAR UNA FECHA. PARA ESTO CUANDO QUIERO QUE SE GUARDE LA FECHA PONGO LA CONDICION DE QUE ESTE CASADO Y SE MARQUE LA OPCION DE QUE SE SABE LA FECHA( CHECKBOX ) EL CODIGO ES EL SIGUIENTE.

Código Delphi [-]
PROCEDURE TFORM3.INGRESAR (NOM1,APEL,SEX,ESTA,MAIL,LIDE,DIREC,DIST,BAUT,MIEM:     string;   FECHA1,FECHA2: TDate; ACTI:BOOLEAN);
VAR CODIGO:INTEGER;
begin
CODIGO:=OBTENER_ULTIMO_CODIGO+1;
 IF (ESTA = 'CASADO(A)') AND (ACTI=TRUE)
 THEN     BEGIN
SQLQUERY1.Close;
SQLQUERY1.SQL.Text:=  'Insert Into MIEMBROS(CODIGO_MIEMBRO,NOMBRE_COMPLETO,NOMBRE,APELLIDOS,FECHA_NACIMIENTO,SEXO,ESTADO_CIVIL,FECHA_BO  DA,CORREO,LIDER,DIRECCION,DISTRITO,BAUTIZADO,
 TIPO_MIEMBRO) Values(:COD,:FULLNAME,:NOM,:APELL,:FECHA_N,:SEX,:ESTADO_CIV,:FECHA_B,:EMAIL,:LIDER1,IREC,ISTR,:B  AUTI,:TIPO1)';
          SQLQUERY1.ParamByName('COD').AsInteger:=CODIGO;
          SQLQUERY1.ParamByName('FULLNAME').ASSTRING:=NOM1+', '+APEL;
          SQLQUERY1.ParamByName('NOM').ASSTRING:=NOM1;
          SQLQUERY1.ParamByName('APELL').ASSTRING:=APEL;
          SQLQUERY1.ParamByName('FECHA_N').AsDate:=FECHA1;
          SQLQUERY1.ParamByName('SEX').ASSTRING:=SEX;
          SQLQUERY1.ParamByName('ESTADO_CIV').ASSTRING:=ESTA;
          SQLQUERY1.ParamByName('FECHA_B').AsDate:=FECHA2;
          SQLQUERY1.ParamByName('EMAIL').ASSTRING:=MAIL;
          SQLQUERY1.ParamByName('LIDER1').ASSTRING:=LIDE;
          SQLQUERY1.ParamByName('DIREC').ASSTRING:=DIREC;
          SQLQUERY1.ParamByName('DISTR').ASSTRING:=DIST;
          SQLQUERY1.ParamByName('BAUTI').ASSTRING:=BAUT;
          SQLQUERY1.ParamByName('TIPO1').ASSTRING:=MIEM;
          SQLQUERY1.ExecSQL;
          END   ELSE
                BEGIN
                SQLQUERY1.Close;
                SQLQUERY1.SQL.Text:=  'Insert Into MIEMBROS(CODIGO_MIEMBRO,NOMBRE_COMPLETO,NOMBRE,APELLIDOS,FECHA_NACIMIENTO,SEXO,ESTADO_CIVIL,CORREO,L  IDER,DIRECCION,DISTRITO,BAUTIZADO,TIPO_MIEMBRO)
Values(:COD,:FULLNAME,:NOM,:APELL,:FECHA_N,:SEX,:ESTADO_CIV,:EMAIL,:LIDER1,IREC,ISTR,:BAUTI,:TIP  O1)';
                SQLQUERY1.ParamByName('COD').AsInteger:=CODIGO;
                SQLQUERY1.ParamByName('FULLNAME').ASSTRING:=NOM1+', '+APEL;
                SQLQUERY1.ParamByName('NOM').ASSTRING:=NOM1;
                SQLQUERY1.ParamByName('APELL').ASSTRING:=APEL;
                SQLQUERY1.ParamByName('FECHA_N').AsDate:=FECHA1;
                SQLQUERY1.ParamByName('SEX').ASSTRING:=SEX;
                SQLQUERY1.ParamByName('ESTADO_CIV').ASSTRING:=ESTA;
                SQLQUERY1.ParamByName('EMAIL').ASSTRING:=MAIL;
                SQLQUERY1.ParamByName('LIDER1').ASSTRING:=LIDE;
                SQLQUERY1.ParamByName('DIREC').ASSTRING:=DIREC;
                SQLQUERY1.ParamByName('DISTR').ASSTRING:=DIST;
                SQLQUERY1.ParamByName('BAUTI').ASSTRING:=BAUT;
                SQLQUERY1.ParamByName('TIPO1').ASSTRING:=MIEM;
                SQLQUERY1.ExecSQL;
                END;
end;

y de otro form llamo al procedimiento

Código Delphi [-]

procedure TForm4.BitBtn1Click(Sender: TObject);
VAR FECHA1, FECHA2:TDATE;  ACTI:BOOLEAN;
begin
try
FECHA1:=DATETIMEPICKER1.Date;
FECHA2:=DATETIMEPICKER2.Date;
ACTI:=CHECKBOX1.Checked;
FORM3.INGRESAR (EDIT2.Text,EDIT3.Text,COMBOBOX1.Text,COMBOBOX2.Text,EDIT4.Text,EDIT5.Text,EDIT6.Text,EDIT7.Text,COM  BOBOX3.Text,COMBOBOX4.Text,FECHA1,FECHA2,ACTI);
LIMPIAR_CAMPOS;
SHOWMESSAGE('INFORMACION INGRESADA');
except
  on E : Exception  DO
  SHOWMESSAGE ('ERROR AL INGRESAR LA INFORMACION');
end;
end;

para esto tengo 2 datetimepicker el primero que es el de la fecha_nacimiento y el segundo que es de la fehca_matrimonio.

Última edición por Casimiro Notevi fecha: 28-09-2012 a las 17:20:53.
Responder Con Cita
  #2  
Antiguo 27-09-2012
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

¿Y el error es?


Saludos...
__________________
Lee la Guía de Estilo antes que cualquier cosa. - Twitter
Responder Con Cita
  #3  
Antiguo 27-09-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.048
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y no está permitido GRITAR, no olvides nuestra guía de estilo.
Responder Con Cita
  #4  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Cita:
Empezado por maeyanes Ver Mensaje
Hola...

¿Y el error es?


Saludos...
El problema es que si la condicion de ACTI=false, deberia de saltarse a la segunda condicion del if y no guardar la fecha2, pero no salta la condicion y guarda lo que esta dentro de la primera condicion tomando la fecha por defecto del datetimepicker2.date.

la condicion del active viene a partir de que si esta o no chekeado el checkbox1.
No se en que parte esta mal, porque al parecer el ACTI lo esta tomando como verdadero....

Última edición por jooooseph fecha: 27-09-2012 a las 18:27:48.
Responder Con Cita
  #5  
Antiguo 27-09-2012
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

¿Ya probaste tu código paso a paso usando la tecla F7 y Break points? Esto para que verifiques que los valores de los parámetros son los esperados. Esto por que no veo gran problema con tu código, así que podría ser que no estás pasando bien los valores a los parámetros.

Otra cosa, en una sentencia IF usando variables de tipo Boolean, no es necesario hacer la comparación ACTI = True o ACTI = False... con que hagas algo como:

Código Delphi [-]
if Acti then // Checas si es True

if not Acti then // Checas si es False

es más que suficiente.


Saludos...
__________________
Lee la Guía de Estilo antes que cualquier cosa. - Twitter
Responder Con Cita
  #6  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Cita:
Empezado por maeyanes Ver Mensaje
Hola...

¿Ya probaste tu código paso a paso usando la tecla F7 y Break points? Esto para que verifiques que los valores de los parámetros son los esperados. Esto por que no veo gran problema con tu código, así que podría ser que no estás pasando bien los valores a los parámetros.

Otra cosa, en una sentencia IF usando variables de tipo Boolean, no es necesario hacer la comparación ACTI = True o ACTI = False... con que hagas algo como:

Código Delphi [-]if Acti then // Checas si es True if not Acti then // Checas si es False


es más que suficiente.


Saludos...

De antemano gracias por la ayuda... el problema no era que se estaba guardando sino que el un problema de habilitar o no el datetimepicker, la informacion se habia estado guardando correnctamente. Gracias por el tiempo.
Responder Con Cita
  #7  
Antiguo 28-09-2012
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 914
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Hilando un poco fino, te sugiero lo siguiente:

Código Delphi [-]
PROCEDURE TFORM3.INGRESAR (NOM1,APEL,SEX,ESTA,MAIL,LIDE,DIREC,DIST,BAUT,MIEM:     string;   FECHA1,FECHA2: TDate; ACTI:BOOLEAN);
VAR CODIGO:INTEGER;
begin
     CODIGO:=OBTENER_ULTIMO_CODIGO+1;

     SQLQUERY1.Close;
     IF (ESTA = 'CASADO(A)') AND (ACTI=TRUE) THEN
     BEGIN
          SQLQUERY1.SQL.Text:=  'Insert Into MIEMBROS(CODIGO_MIEMBRO,NOMBRE_COMPLETO,NOMBRE,APELLIDOS,FECHA_NACIMIENTO,SEXO,ESTADO_CIVIL,FECHA_BO  DA,CORREO,LIDER,DIRECCION,DISTRITO,BAUTIZADO,
TIPO_MIEMBRO) Values(:COD,:FULLNAME,:NOM,:APELL,:FECHA_N,:SEX,:ESTADO_CIV,:FECHA_B,:EMAIL,:LIDER1,IREC,ISTR,:B  AUTI,:TIPO1)';

          SQLQUERY1.ParamByName('FECHA_B').AsDate:=FECHA2;
      END
      ELSE
      BEGIN
          SQLQUERY1.SQL.Text:=  'Insert Into MIEMBROS(CODIGO_MIEMBRO,NOMBRE_COMPLETO,NOMBRE,APELLIDOS,FECHA_NACIMIENTO,SEXO,ESTADO_CIVIL,CORREO,L  IDER,DIRECCION,DISTRITO,BAUTIZADO,TIPO_MIEMBRO)
                                 Values(:COD,:FULLNAME,:NOM,:APELL,:FECHA_N,:SEX,:ESTADO_CIV,:EMAIL,:LIDER1,IREC,ISTR,:BAUTI,:TIPO1)'  ;
      END;
      SQLQUERY1.ParamByName('COD').AsInteger:=CODIGO;
      SQLQUERY1.ParamByName('FULLNAME').ASSTRING:=NOM1+', '+APEL;
      SQLQUERY1.ParamByName('NOM').ASSTRING:=NOM1;
      SQLQUERY1.ParamByName('APELL').ASSTRING:=APEL;
      SQLQUERY1.ParamByName('FECHA_N').AsDate:=FECHA1;
      SQLQUERY1.ParamByName('SEX').ASSTRING:=SEX;
      SQLQUERY1.ParamByName('ESTADO_CIV').ASSTRING:=ESTA;
      SQLQUERY1.ParamByName('EMAIL').ASSTRING:=MAIL;
      SQLQUERY1.ParamByName('LIDER1').ASSTRING:=LIDE;
      SQLQUERY1.ParamByName('DIREC').ASSTRING:=DIREC;
      SQLQUERY1.ParamByName('DISTR').ASSTRING:=DIST;
      SQLQUERY1.ParamByName('BAUTI').ASSTRING:=BAUT;
      SQLQUERY1.ParamByName('TIPO1').ASSTRING:=MIEM;
      SQLQUERY1.ExecSQL;
end;

Saludos cordiales

Última edición por Casimiro Notevi fecha: 28-09-2012 a las 17:19:48.
Responder Con Cita
  #8  
Antiguo 05-10-2012
tysonlee tysonlee is offline
Registrado
NULL
 
Registrado: oct 2012
Posts: 1
Poder: 0
tysonlee Va por buen camino
si usas Zeos y WAMP nada mas le indicas en la propiedad Hostname: LocalHost
Responder Con Cita
Respuesta



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
Problema para guardar datos desde campo Blob al disco duro phirum1984 Conexión con bases de datos 5 16-10-2013 18:39:35
Problema con un boton para guardar datos DOS Varios 3 20-11-2011 03:06:48
problema con guardar datos Fat SQL 5 22-02-2008 21:08:35
problema guardar con interbase. chele Conexión con bases de datos 2 17-12-2004 12:02:39
Problema en guardar campo ramiretor Conexión con bases de datos 2 16-10-2003 19:12:03


La franja horaria es GMT +2. Ahora son las 12:47:21.


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
Copyright 1996-2007 Club Delphi