Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-10-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Validar ingreso de datos en TClientDataSet?

Hola Gente!!!

el problema que tengo es que no puedo validar el ingreso de datos en una tabla creada con un TClientDataSet, osea por que quiero hacer esto, en esta tabla voy ingresando datos en tiempo de ejecución, y tiene un campo Código que vendría ser la clave primaria y no se puede repetir, entonces quiero hacer una validación que no deje entrar 2 códigos iguales.

Mas detalles:
En la tabla que cree con el TClientDataSet tiene los Campos CODIGO, DESCRIPCION, UND_MEDIDAS, PRECIO_UNITARIO Y CANTIDAD, esta tabla la cargo con datos que saco de otro DBGrid, por ejemplo, el DBGrid tiene 9 campos, entre estos 9 campos estan los que yo necesito que son CODIGO, DESCRIPCION, UND_MEDIDAS, PRECIO_UNITARIO y para llenar el campo CANTIDAD lo saco de un EditText que lo carga el usuario a su gusto, entonces cuando cargo una fila en la tabla del TClientDataSet tiene que haber una validación antes que controle si ya existe ese codigo en la tabla, de ser verdadero tiene que avisar que ya existe ese codigo y me tiene que dar la posibilidad de sumar esa cantidad en la que ya tiene.

yo tengo este codigo para validar eso, pero no me anda, por que me tira False en el EOF de ClientDataSet, cuando en realidad me tiene que tirar True.

Código Delphi [-]
procedure TOrdenCompra.AgregarClick(Sender: TObject);
Var Cod: String;
begin

  Cod:= DBG.Columns[0].Field.AsString;


  ClientDS.Close;
  ClientDS.CommandText:= 'Select Codigo from ClientDS Where Codigo = ' + Cod;
  ClientDS.Open;
   If (ClientDS.Bof = False) or (ClientDS.Eof = False) Then Begin 
    If Application.MessageBox('El codigo ingresado ya existe, desea sumar la cantidad?','Error', MB_YESNO) = IDNO then begin
     Exit
    End Else Begin
         ClientDS.CommandText:= 'Select Codigo from ClientDS Where Codigo = ' + Cod;
         ClientDS.Edit;
         ClientDSCantidad.AsInteger:= ClientDSCantidad.AsInteger + StrToInt (Cant.Text);
    End;
    End Else Begin
        ClientDS.Append;
        ClientDSCodigo.AsInteger:= DBG.Columns[0].Field.AsInteger;
        ClientDSDescripcion.AsString:= DBG.Columns[1].Field.AsString;
        ClientDSUnd_Medidas.AsString:= DBG.Columns[5].Field.AsString;
        ClientDSPrecio_Unitario.AsInteger:= DBG.Columns[7].Field.AsInteger;
        ClientDSCantidad.AsInteger:= StrToInt (Cant.Text);
        ClientDS.Post;

   End;
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
restringir ingreso de datos!! ezequiel913 Varios 2 28-05-2011 02:34:05
como validar el ingreso de datos en una BD??? ezequiel913 OOP 4 16-05-2011 22:16:57
validar el ingreso a un Edit solo numeros jedinds OOP 25 24-09-2010 22:58:44
Validar Ingreso De Letras En Un Edit sdiaz1983 Varios 10 21-03-2008 01:16:33
Validar ingreso al Sistema.... BlueSteel Varios 8 28-01-2005 00:58:27


La franja horaria es GMT +2. Ahora son las 21:54:40.


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