Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-01-2004
ElSanto24 ElSanto24 is offline
Miembro
 
Registrado: ago 2003
Ubicación: Elche
Posts: 14
Poder: 0
ElSanto24 Va por buen camino
error en asignacion de campos en un dbgrid con seleccion multiple

Hola amigos, antes de nada, feliz año nuevo:



Tengo una pequeña duda y me gustaría saber si pueden ayudarme…les cuento:



Tengo que pasar líneas de pedido a producción, para esto, uso un dbgrid donde están las líneas de pedido, y otro donde estarán las líneas que desee pasar a producción, el criterio para pasar a producción no es importante (pertenecerá al usuario de la aplicación), pero debo ofrecer la posibilidad de que elija múltiples líneas del dbgrid y que automáticamente se pasen al dbgrid de producción. Para esto, lo que hago es tener en una línea de pedido, campos booleanos que indican en qué fase está esa línea, por ejemplo, cuando la línea se crea, el campo “pendiente” se pone a verdadero y el resto de campos (esto es…producción, distribución, terminado y pagado) las pongo a falso. Cuando el usuario elige distintas líneas para pasarlas a producción, lo único que debo hacer es poner el flag de producción a verdadero y el de pendiente a falso. Esto es lo que debo obtener, ahora les escribo el siguiente fragmento de código que intenta representar lo que se realizará cuando después de elegir múltiples líneas en el dbgrid se pulse sobre el botón



Button.onclick(Sender:TObject)

var

i:Integer;

begin

if DBGrid1.SelectedRows.Count>0 then

with DBGrid1.DataSource.DataSet do

begin

for i:=0 to DBGrid1.SelectedRows.Count-1 do

begin

GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));

FieldValues['pendiente']:=false;

FieldValues['produccion']:=true;

end;

dsflistadoart.Post;

dsflistadoart.Close;

dsflistadoart.Open;

dsflistadoproduccion.close;

dsflistadoproduccion.Open;

end;

end;



En mi humilde opinión creo que el código es correcto (parte de él lo saqué de la ayuda de delphi), sin embargo me muestra un error tal como

“Not in edit Mode”….entiendo el mensaje, pero no entiendo sobre qué he de hacer edit pues tampoco lo indica, si fuera en el dataset mostraría mensaje tal como DataSet not in Edit or Insert Mode que en otras ocasiones me ha aparecido, ademas…está descartado pues he añadido un dbgrid1.datasource.dataset.edit tras la condicion de si su estado no estaba en inserción, pero sigue mostrando el mensaje….a la hora de asignar, he probado con fieldbynames(campo), fields[indice].value, y nada de nada…



Estoy un poco despistado pues no se a que se refiere tal error…



Me podrian ayudar?

Acepto criticas sobre el método que utilizo y sugerencias sobre cómo podría realizarlo

Interbase 7 y delphi 7

Desde ya gracias por vuestra ayuda

__________________
El camino para llegar al conocimiento de las cosas pasa por el aprendizaje humilde de lo que nos rodea
Responder Con Cita
  #2  
Antiguo 05-01-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Button.onclick(Sender:TObject)

var

i:Integer;

begin

if DBGrid1.SelectedRows.Count>0 then

with DBGrid1.DataSource.DataSet do

begin

for i:=0 to DBGrid1.SelectedRows.Count-1 do

begin

GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
MiTabla.Edit;
FieldValues['pendiente']:=false;

FieldValues['produccion']:=true;

end;

dsflistadoart.Post;

dsflistadoart.Close;

dsflistadoart.Open;

dsflistadoproduccion.close;

dsflistadoproduccion.Open;

end;

end;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
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


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


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