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 12-01-2017
webmasterplc webmasterplc is offline
Miembro
 
Registrado: mar 2008
Posts: 274
Poder: 17
webmasterplc Va por buen camino
Al Editar un Registro me lo duplica

Buenas, estoy tratando de editar un registro y lo que hace es que se me duplica
Base de datos MySQL
Componentes ttable MyDac

Código Delphi [-]
procedure editarcliente (clcod,clcnombre,clcrif,clcdireccion,clctelefono,clctelefono2,clccelular,clccontacto,clcciudad,clces  tado,clccorreo,clcobservaciones,clcagret:string; clcporc:Currency);
begin
with datos.tclientes do
    begin
      Close;
      Active:=False;
      Active:=True;
      Open;
      Edit;
      Append;
        FieldByname('cl_codigo').AsString := clcod;
        FieldByname('cl_descripcion').AsString := clcnombre;
        FieldByname('cl_identificacion').AsString := clcrif;
        FieldByname('cl_direccion').AsString := clcdireccion;
        FieldByname('cl_contacto').AsString := clccontacto;
        FieldByname('cl_telefono').AsString := clctelefono;
        FieldByname('cl_telefono2').AsString := clctelefono2;
        FieldByname('cl_celular').AsString := clccelular;
        FieldByname('cl_ciudad').AsString := clcciudad;
        FieldByname('cl_estado').AsString := clcestado;
        FieldByname('cl_correo').AsString := clccorreo;
        FieldByname('cl_agenteretiva').AsString := clcagret;
        FieldByname('cl_porcentajeret').AsCurrency := clcporc;
        FieldByname('cl_observaciones').AsString := clcobservaciones;

      Post;
      Close;
      Active:=False;
      MessageDlg('El Cliente Fue Modificado Exitosamente', mtCustom, [mbOK], 0);
    end;

end;
Responder Con Cita
  #2  
Antiguo 12-01-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Quita el append
Responder Con Cita
  #3  
Antiguo 12-01-2017
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.271
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Te sobran cosas en esa lista además de lo que comenta Casimiro:

Código Delphi [-]
Open;
Append;
=> Rellenar campos....
Post;
Close;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 12-01-2017
webmasterplc webmasterplc is offline
Miembro
 
Registrado: mar 2008
Posts: 274
Poder: 17
webmasterplc Va por buen camino
le quito el append y no modifica
aqui la tabla

Código SQL [-]
CREATE TABLE `csclientes` (
  `cl_id` int(6) NOT NULL AUTO_INCREMENT,
  `cl_codigo` varchar(24) COLLATE utf8_bin NOT NULL,
  `cl_descripcion` varchar(160) COLLATE utf8_bin NOT NULL,
  `cl_identificacion` varchar(24) COLLATE utf8_bin NOT NULL,
  `cl_direccion` varchar(160) COLLATE utf8_bin NOT NULL,
  `cl_contacto` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `cl_telefono` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `cl_telefono2` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `cl_celular` varchar(11) COLLATE utf8_bin DEFAULT NULL,
  `cl_ciudad` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `cl_estado` varchar(20) COLLATE utf8_bin DEFAULT NULL,
  `cl_correo` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `cl_agenteretiva` enum('true','false') COLLATE utf8_bin DEFAULT 'false',
  `cl_porcentajeret` double(5,2) DEFAULT '0.00',
  `cl_observaciones` text COLLATE utf8_bin,
  PRIMARY KEY (`cl_id`,`cl_codigo`)
) ENGINE=InnoDB AUTO_INCREMENT=2149 DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='TABLA PARA LLEVAR EL REGISTRO DE CLIENTES';
Responder Con Cita
  #5  
Antiguo 12-01-2017
webmasterplc webmasterplc is offline
Miembro
 
Registrado: mar 2008
Posts: 274
Poder: 17
webmasterplc Va por buen camino
Al editarlo me siguen apareciendo dos registros en el grid aunque en la base de datos me aparece solo 1 y solo desaparece al editar otro

Última edición por webmasterplc fecha: 12-01-2017 a las 11:48:56.
Responder Con Cita
  #6  
Antiguo 12-01-2017
webmasterplc webmasterplc is offline
Miembro
 
Registrado: mar 2008
Posts: 274
Poder: 17
webmasterplc Va por buen camino
aqui les adjunto la imagen
Imágenes Adjuntas
Tipo de Archivo: jpg ERROR2.jpg (18,9 KB, 10 visitas)
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
Duplica registro en ClientDataSet maestro-detalle Josepo Conexión con bases de datos 8 07-05-2013 10:59:09
editar campo autoincremento al editar registro anterior chartres Conexión con bases de datos 1 21-05-2011 01:37:25
Update duplica registro FerCastro SQL 22 28-10-2008 19:21:05
error al editar un registro look OOP 3 18-10-2007 00:43:51
editar un registro jdattoli Conexión con bases de datos 1 08-02-2006 21:01:04


La franja horaria es GMT +2. Ahora son las 04:32:36.


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