Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-09-2012
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 312
Poder: 8
novato_erick Va por buen camino
Limpiar Formulario para ingresar nuevo registro en sql

Hola a Todos tengo lo siguiente:

Código Delphi [-]

procedure TfrmEmpleados.btnAgregarClick(Sender: TObject);
var
  exito: boolean;
begin
  trn := dmConecta.FBLINUXCONECTION.BeginTransaction;
  try
    with dmConecta.qEmpleados do
    begin
      sql.Clear;
      sql.Add('insert into EMPLEADOS (NOMBRE, NOMBRE_2, APELLIDO, APELLIDO_2, CEDULA, NACIMIENTO, ....)');
      sql.Add('values (:pNOMBRE,:pNOMBRE_2,:pAPELLIDO,:pAPELLIDO_2,:pCEDULA,:pNACIMIENTO,:pID_GENERO... )');
      parambyname('pNOMBRE').AsString := edtNombre1.Text;
      parambyname('pNOMBRE_2').AsString := edtNombre2.Text;
      parambyname('pAPELLIDO').AsString := edtApellido1.Text;
      parambyname('pAPELLIDO_2').AsString := edtapellido2.Text;
      parambyname('PCEDULA').AsString := edtCedula.Text;
      parambyname('pNACIMIENTO').AsDateTime := dtpFNacimiento.DateTime;
      parambyname('pID_GENERO').AsInteger := IdGenero;
      parambyname('pDIRECCION').AsString := mDireccion.Text;
      parambyname('pTELEFONO').AsString := edtTelefono.Text;
      parambyname('pCELULAR').AsString := edtCelular.Text;
      execsql;
      begin
        dmConecta.FBLINUXCONECTION.CommitFreeAndNil(trn);
        exito := true;
      end;
    end;
  except
    on e: exception do
    begin
      dmConecta.FBLINUXCONECTION.RollbackFreeAndNil(trn);
      showmessage('Error Encontrado' + e.message);
    end;
  end;
  if Application.MessageBox('¿Desea Agregar Otro?', 'Confirmación',
    MB_ICONQUESTION OR MB_YESNO) = ID_NO then
  begin
    dmConecta.qEmpleados.Close;
    frmPrincipal.CerrarPestana;
  end
  else
  begin
   // Aqui no se como hacer para ingresar a otro empleado
end;

Que me recomiendan?

novato_erick

Última edición por ecfisa fecha: 09-09-2012 a las 02:28:29. Razón: Quitar iconos del código
Responder Con Cita
  #2  
Antiguo 09-09-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 9.881
Poder: 27
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 behold
Cita:
Empezado por novato_erick Ver Mensaje
Que me recomiendan?
No hacer nada (al menos si estoy entendiendo bién la lógica de tu ingreso).

Si decide continuar, saldrá del procedimiento btnAgregarClick, ingresará los nuevos datos, hará click en el botón agregar y así hasta que decida no agregar otro.
Código Delphi [-]
  ...
  if Application.MessageBox('¿Desea Agregar Otro?', 'Confirmación',
    MB_ICONQUESTION OR MB_YESNO) = ID_NO then
  begin
    dmConecta.qEmpleados.Close;
    frmPrincipal.CerrarPestana
  end;
  // no mas código aquí
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 09-09-2012
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 312
Poder: 8
novato_erick Va por buen camino
Cita:
eficsa:

Si decide continuar, saldrá del procedimiento btnAgregarClick, ingresará los nuevos datos, hará click en el botón agregar y así hasta que decida no agregar otro.
Habia propuesto Limpliar mis edit y variables. es lo que me imagino que puedo yo hacer hasta decidir decirle que no deseo Agregar mas.

Ejemplo:

Código Delphi [-]
 if Application.MessageBox('¿Desea Agregar Otro?', 'Confirmación',
    MB_ICONQUESTION OR MB_YESNO) = ID_NO then
  begin
    dmConecta.qEmpleados.Close;
    frmPrincipal.CerrarPestana;
  end;
  else
    begin
     edtNombre1.Text := '';
     edtNombre2.Text := '';
     edtApellido1.Text := '';
     edtapellido2.Text := '';
     edtCedula.Text := '';
     dtpFNacimiento.DateTime := Now;
     IdGenero := 0;;
     mDireccion.Text := '';
     edtTelefono.Text := '';
     edtCelular.Text := '';
     dtpFAlta.DateTime := Now;
     edtContacto.Text := '';
     edtEmail.Text := '';
     id := 0;
     edtDependientes.Text := '';
     Estado := '';
     end;
end;

Es lo que se me ocurre.. Alguna otra idea?

Saludos
Responder Con Cita
  #4  
Antiguo 09-09-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 9.881
Poder: 27
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 behold
Hola novato_erick.

Cita:
Habia propuesto Limpliar mis edit y variables.
Si por supuesto, no usando controles data aware se sobreentiende esa acción.

Cita:
Es lo que se me ocurre.. Alguna otra idea?
¿ Sobre como realizar esa limpieza ?

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 09-09-2012
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 312
Poder: 8
novato_erick Va por buen camino
Cita:
eficsa:
¿Sobre como realizar la Limpieza?
En realidad de esta manera la hago yo:

Código Delphi [-]
  if Application.MessageBox('¿Desea Agregar Otro?', 'Confirmación',
    MB_ICONQUESTION OR MB_YESNO) = ID_NO then // Aqui confirmamos si seguimos mas registros o cerramos el form
  begin
    dmConecta.qEmpleados.Close;
    frmPrincipal.CerrarPestana;
  end
  else              // si no cerramos limpiamos nuestros componentes y variables del form dejando algunos componente en su estado por defecto al abrir el form.
     begin
      edtNombre1.Text := '';
      edtNombre2.Text := '';
      edtApellido1.Text := '';
      edtapellido2.Text := '';
      edtCedula.Text := '';
      dtpFNacimiento.DateTime := Now;
      IdGenero := 0;;
      mDireccion.Text := '';
      edtTelefono.Text := '';
      edtCelular.Text := '';
      dtpFAlta.DateTime := Now;
      edtContacto.Text := '';
      edtEmail.Text := '';
      id := 0;
      edtDependientes.Text := '';
      Estado := '';
      cbxECivil.Text := 'Estado Civil';
      cbxGenero.Text := 'Género';
      cbxActivado.Checked := False;
     end;
end;

Creo que es la forma "talvez no la correcta". pero es la que se me ocurre.

Con esto puedo dejar como solucionado mi problema, agradeciendo enormemente tu ayuda eficsa y también a los chicos como Casimiro_Notevi, roman y caral....

Saludos

novato_erick
Responder Con Cita
Respuesta


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
ingresar registro en delphi php y Mysql kurono PHP 1 06-06-2011 03:38:32
limpiar formulario al regresar a la pagina jomanmoz HTML, Javascript y otros 1 17-02-2008 23:43:40
No fue posible ingresar un Registro en el Datamodule... RicardoG Conexión con bases de datos 1 29-05-2007 20:50:26
Como hacer que se limpie genere un nuevo registro en un formulario difesa Tablas planas 2 01-11-2006 16:07:49
limpiar todos los valores del formulario cisterpe OOP 26 17-09-2003 14:53:53


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


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