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 14-08-2004
rober rober is offline
Miembro
 
Registrado: may 2004
Posts: 20
Poder: 0
rober Va por buen camino
Question ayuda con stringgrid y memo

hola, necesito saber como le hago para mandar todos los datos o valores q de un stringrid a un memo. mas o menos yo tengo algo asi pero no me sale.

memo1.Lines.Add(stringgrid1.????????

gracias y saludos
Responder Con Cita
  #2  
Antiguo 14-08-2004
Avatar de Tino
Tino Tino is offline
Miembro
 
Registrado: may 2004
Posts: 40
Poder: 0
Tino Va por buen camino
La sig. rútina quizás te sirva:

Código Delphi [-]
uses StrUtils;
procedure StringGrid_2_Strings(StringGrid: TStringGrid; Strings: TStrings; Delimeter: String);
var
   i, j: Integer;
   linea: String;
begin
   for i:= 0 to Pred(StringGrid.RowCount) do begin
       linea := '';
       for j:= 0 to StringGrid.ColCount-2 do
           linea := linea + StringGrid.Cells[i,j] + Delimeter;
       linea := linea + StringGrid.Cells[i,StringGrid.ColCount-1];
       Strings.Add( linea )
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
   Memo1.Clear;
   StringGrid_2_Strings(StringGrid1, Memo1.Lines, '_');
end;


La sig. solución es más compacta:

Código Delphi [-]
procedure StringGrid_2_Strings(StringGrid: TStringGrid; Strings: TStrings; Delimeter: String);
var i, line: Integer;
begin
   for i:= 0 to Pred(StringGrid.RowCount) do begin
       line := Strings.Add(AnsiReplaceStr(StringGrid.Rows[i].Text, #13#10, Delimeter));
       Strings[line] := Copy(Strings[line], 0, Length(Strings[line])-Length(Delimeter)); // ult. delim.
   end;
end;



Saludos.

Última edición por Tino fecha: 14-08-2004 a las 06:02:17.
Responder Con Cita
  #3  
Antiguo 14-08-2004
rober rober is offline
Miembro
 
Registrado: may 2004
Posts: 20
Poder: 0
rober Va por buen camino
Question datos stringrid a un campo memo.

ok gracias tino, pero no me sale como yo necesito mira te voy a poner un ejemplo.
tengo una tabla que se llama menu que contien los siguientes datos.
(dbgrid)
Menu
Producto---Precio
papas 3.00
jugo 5.00
refresco 4.00

ahora el cliente va a elegir lo que desea llevar. y esto se va allamar cuenta que se va a almacenar en un stringgrid. ya logre pasar los datos del dbgrid a el stringrid.

en el stringrid (cuenta) supongamos que tengo:

Producto---Cantidad---Precio
papas 2 3.00
jugo 1 5.00
refresco 1 4.00

bueno ahora estos datos los quiero pasar a un memo o a un list box para despues insertarlos en una tabla.

a lo mejor diras que porque no mejor lo paso directo de un dbgrid a otro y es porque estoy manejando dos tablas las cuales son: menu y consumos.
en menu tengo los campos de arriba y en consumos tengo:
mesa, nombre, hora de entrada, duracion,.... consumo, etc.

en donde el consumo es un campo memo y se va a registrar el stringgrid (cuenta).
Responder Con Cita
  #4  
Antiguo 14-08-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Pero por qué quieres guardar el consumo en un campo memo?

Desde el punto de vista del modelo relacional tienes dos entidades, productos y consumos y una relación n-n entre ambas: un producto aparece en varios consumos y cada consumo consta de varios productos. Entonces lo que requieres es una tercera tabla, productos_consumos con dos campos, la llave de la tabla productos y la llave de la tabla consumos. Posiblemente también el precio ya que éste puede variar posteriormente. A partir de estas tablas puedes reconstruir el consumo de un cliente para, por ejemplo, imprimir una factura.

// Saludos
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


La franja horaria es GMT +2. Ahora son las 03:03:15.


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