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 24-09-2010
Avatar de CHECHE81
CHECHE81 CHECHE81 is offline
Miembro
 
Registrado: may 2007
Ubicación: Huauchinango, Puebla
Posts: 64
Poder: 17
CHECHE81 Va por buen camino
Talking valores por defaul en CxGrid ....

Saludos camaradas, con la novedad que ando manejando el bondadoso y famoso cxgrid junto con un cxnavigator asociado claro con su clientdataset y datasource, el detalle que al agregar un registro nuevo quiero ponerle un valor que ya tengo guardado en una variable o en algún campo de otra tabla y lo intento en 2 eventos:

Primero:
Código:
pprocedure TfmEstadoCuenta.cxNavigator1ButtonsButtonClick(Sender: TObject;
  AButtonIndex: Integer; var ADone: Boolean);
begin
  if AButtonIndex = NBDI_INSERT then
  begin
    cxGridDBTableView2.ViewData.Records[0].Values[4] := edimportecita.Text;
    cxGridDBTableView2IMPORTE.Caption := edimportecita.Text;
    cxGridDBTableView2IMPORTE.EditValue := edimportecita.Text;
    cxGridDBTableView2IMPORTE.DataBinding.Field.Value := cdcg.FieldValues['importecitas'];
    cdsc.FieldValues['importe'] := cdcg.FieldValues['importecitas'];
  end;  
end;
Segundo
Código:
procedure TfmEstadoCuenta.cdSCBeforeInsert(DataSet: TDataSet);
begin
   if (cdsc.State = dsinsert) then
   begin
     cdsc.FieldValues['importe'] := cdcg.FieldValues['importecitas'];
     cxGridDBTableView2IMPORTE.DataBinding.Field.Value := cdcg.FieldValues['importecitas'];
     cdsc.FieldValues['fecha'] := date;
     cxGridDBTableView2FECHA.DataBinding.ValueType := datetostr(date);
     cxGridDBTableView2IMPORTE.Caption := edimportecita.Text;
     cxGridDBTableView2.ViewData.Records[0].Values[2]:= edimportecita.Text;  
   end; 
end;

de cada forma pero ninguna me ha dado resultado, ya busque algúnos ejemplos y con ellos hice lo anterior pero no le he dado al clavo les agradeceria cualquier ayuda, gracias por su tiempo.
__________________
Cuidemos el medio ambiente....jojo

Última edición por CHECHE81 fecha: 24-09-2010 a las 19:31:31.
Responder Con Cita
  #2  
Antiguo 24-09-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
No has probado con el soporte de DevExpress? Mándales tu código y te ponen la respuesta directamente, es lo bueno de esos componentes. Por otro lado el enfoque está incorrecto, el grid únicamente muestra los datos lo que quieres hacer es modificar los datos por lo que tienes que ir a la tabla o query que alimenta el grid y ahí hacer el cambio
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 24-09-2010
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¿Qué pasó Cheché?

Llevas poco más de un año que no trabajas conmigo y ya se te olvida lo básico.

Cuando quieras asignar valor predeterminado a un campo de un nuevo registro, puedes usar tanto el evento OnNewRecord como el evento AfterInsert.

Recuerda que a nivel de los conjuntos de datos AfterInsert no significa “después de agregar el registro”, sino “después de preparar un nuevo registro para ser capturado”, por tanto es un momento adecuado para complementar esa “preparación” asignándole valores “default”.

En cambio el evento BeforeInsert ocurre antes de dicha preparación, es decir, antes de que el buffer en blanco para un nuevo registro esté listo y activo. Lo que hagas en BeforeInsert afectará al registro que esté activo al momento de iniciar la ejecución del Insert / Append, no al nuevo registro que estos métodos agregan para su captura.

Un abrazo.

Al González.

Última edición por Al González fecha: 24-09-2010 a las 22:14:41.
Responder Con Cita
  #4  
Antiguo 24-09-2010
Avatar de CHECHE81
CHECHE81 CHECHE81 is offline
Miembro
 
Registrado: may 2007
Ubicación: Huauchinango, Puebla
Posts: 64
Poder: 17
CHECHE81 Va por buen camino
Thumbs up Jojo

Gracias por sus repuestas , AzidRain efectivamente estaba mal el evento utilizado, que tal Al , si ya probé y ya me muestra los datos con el evento AfterInsert:
Código:
procedure TfmEstadoCuenta.cdSCAfterInsert(DataSet: TDataSet);
begin
  cdsc.FieldValues['importe'] := edimportecita.Text;
  cdsc.FieldValues['fecha'] := date;
end;
Si, la verdad se me paso ese dato de la preparación del nuevo registro desde el clientdataset, porlo que estaba mal enfocado por el lado del cxgrid o el cxnavigator, gracias por recordarmelo, jejej te debo unas chelas bien elodias jojojo
__________________
Cuidemos el medio ambiente....jojo
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
cxGrid y CDS dfarias OOP 1 08-01-2010 10:12:40
CxGrid con CheckBox Vlady OOP 22 22-01-2009 17:51:29
Problemas con cxGrid Cheyenne Varios 1 03-12-2008 12:18:07
Recorrer un cxGrid elorza Varios 9 05-03-2008 12:02:44
Poner PASSW por defaul coneccion BDE Sóstrato Oracle 3 21-05-2003 16:12:58


La franja horaria es GMT +2. Ahora son las 12:29:14.


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