Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Cambiar el valor de una celda en DBGrid (https://www.clubdelphi.com/foros/showthread.php?t=10666)

Aura 25-05-2004 20:57:45

Cambiar el valor de una celda en DBGrid
 
Hola a todos y gracias de antemano por su atencion, estoy trabajando con delphi 6 y mis tablas estan en paradox, mi problema es el siguiente:
tengo hecha una consulta con un Tquery ligado con un DataSource a un DBGrid, el punto es que quisiera encontrar una opcion que me permita situarme en un determinado campo o celda de mi DBGrid y alterar el valor que tiene sin que se altere mi tabla...es decir la vista de mi DbGrid seria algo asi
Descripcion Cantidad
Camisetas 100
Jeans 50

,etc., pero si deseo que en pantalla en lugar de que se vean 100 camisetas el usuario solo vea 85 como puedo posicionarme en esa columna y fila, tomando en cuenta que cuando salga de la consulta mis datos originales seguiran siendo 100 camisetas y 50 Jeans, no se si me explique correctamente, espero alguien puede ayudarme un poco ya que he estado buscando en hilos anteriores pero ninguno me ha servido o he entendido tal vez....

roman 25-05-2004 21:04:45

Vamos a ver si no me confundo. Puedes poner las propiedades RequestLive y CachedUpdates del query en true. Con esto puedes modifcar cualquier valor en el grid y los datos no se actualizaran a menos que uses ApplyUpdates.

// Saludos

Aura 25-05-2004 21:44:33

gracias por tu informacion, pero mi mayor problema es que no se como situarme dentro del dbgrid es decir encontrar alguna funcion como:

DBGrid.cell[var,1].value := valor; (solo por escribir ejemplo :o )
o algo así, se que la funcion cell no existe para el dbgrid y es por eso que pregunto si sabran de alguna similar o que me permita realizar este tipo de seleccion. mil gracias y realmente aprecio tu informacion....:)

Aura 25-05-2004 21:48:05

ups!, ok, creo que tal vez fui precipitada en mi respuesta anterior o no preste atencion, intentare alterar los datos desde el query usando fieldValues, espero que a eso te hayas referido roman ... sino pues estare de nuevo molestando gracias...:D

roman 25-05-2004 21:49:52

Lo que sucede es que para acceder y modificar los valores del dbgrid debes hacerlo por medio del dataset asociado (el query en tu caso) usando, por ejemplo Query.FieldByName(...).

// Saludos

Aura 25-05-2004 22:31:43

:) hola nuevamente, a ver si esto es correcto:
Código:

QArticulos.FieldByName('Cantidad').AsFloat := suma;
el punto es que no me marca ningun error sino hasta que corro el programa me dice que mi query no esta en modo de edicion y pues es cierto, pero recordemos que yo no deseo almacenar en mi tabla la modificacion de los valores.:(
El RequestLive y el CacheUpdates estan en true

roman 25-05-2004 22:37:24

Cita:

Empezado por Aura
me dice que mi query no esta en modo de edicion

Pues ¡ponlo en modo de edición! Mientras no hagas el ApplyUpdates no se guardarán los datos en la base.

// Saludos

Aura 25-05-2004 23:22:13

listo.....
 
hola, Roman, mi intención no es alterarte ni mucho menos realmente me estas ayudando mucho pero si te pregunto tanto es porque nunca habia intentado esto y creeme que he estado buscando pero no encuentro nada e igual se que talvez algo se me haya pasado por alli pero en fin. Realmente no quisiera causarles tantas molestias pero esto sigue sin funcionarme se que la del error he de ser yo pero nomas no le doy, con lo que puse arriba acerca del modo de edicion es porque yo pongo:

Código:

MTablas2.QDetPromociones.Edit
pero aun asi entonces me manda...'QDetPromociones: Cannot modify a read-only dataset', asi que no se que sigue....aprecio tu ayuda y disculpa las molestias


hola.... ya no prestes atencion a este mensaje
ya di y como mencione lineas arriba yo soy la del error.... estaba confundiendo los querys:o pero creo que es un poco logico despues de 6 hrs pegada al monitor... en fin muchas gracias por tu ayuda.....y si me quedo con el edit...:o gracias.:p

roman 25-05-2004 23:38:13

Cita:

Empezado por Aura
en fin muchas gracias por tu ayuda

No hay de qué. Y no estaba alterado ;)


La franja horaria es GMT +2. Ahora son las 21:01:11.

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