PDA

Ver la Versión Completa : Ayuda con arreglos !!


Siegfried
27-09-2006, 16:56:20
Hola a todos, de antemano gracias por su ayuda, soy nuevo en estoy y quisiera algo de ayuda, estoy escribiendo un programa que ingrese automaticamente varios datos que extraigo de excel, mi problema radica en como declarar el array que recibira esos datos, si es que se necesita.

Los datos leidos son compañia, subcompañia y el material que compran y cuanto compran, son 20 compañias y 10 subcompañias por cada una, y el material que compran es el mismo para cada una.

Solo quisiera saber como almacenar los datos, para poder despues leerlos y saber diferenciar que material tiene cada compañia.

Bicho
27-09-2006, 18:08:30
Hola Siegfried, se bienvenido al ClubDelphi, te recomiendo que te leas la Guía de Estilo (http://www.clubdelphi.com/foros/guiaestilo.php), para que las próximas veces pongas un título más descriptivo al hilo que has iniciado.

Respecto a tu pregunta, ¿esos datos necesitas guardarlos en una base de datos? o sólo quieres visualizarlos en una rejilla de datos cada vez que quieras cargarlos de un fichero Excel?

Es que no me ha quedado clara tu pregunta. Intenta explicar que quieres hacer de una forma un poco más clara y con detalles como la versión del sistema operativo que usas, la versión del Excel, que version de Delphi, y si has de usar base de datos, cual usas.

Saludos

Siegfried
27-09-2006, 20:43:53
ok, prometo a la siguiente poner un titulo mas descriptivo, de lo que se trata es que tengo un archivo en excel(2003) y lo leo con delphi 4, estoy trabajando con archivos planos, como grabo las variables cia, Codigo, descripcion y Cantidad, etc, si las voy a ocupar para diferentes compañias y diferentes sub compañias.

Lo que quiero es poder leer esos datos y poder diferenciarlos

Ejemplo
Primera vez que se lee el archivo trae estos datos
Cia : Hotel Melia
SubCia : Turquesa
Materiales y precio :
1 10.00
2 20.00
3 30.00
4 40.00

Segunda vez
Cia : Hotel Melia
SubCia : Cancun
Materiales y precio :
1 10.00
2 30.00
3 50.00
4 80.00

Tercera vez
Cia : Hotel Radisson
SubCia : Cancun
Materiales y precio :
1 10.00
2 10.00
3 10.00
4 10.00

Cuarta vez
Cia : Hotel Melia
SubCia : Cancun
Materiales y precio :
1 10.00
2 10.00
3 10.00
4 10.00

Mi declaracion es esta y algo me dice que esta algo confusa.


Reg_Materiales = Record
NoMat : Char3;
Cia : Char3;
SubCia : Char3;
Material : Char20;
Descrip : Char64;
NoMat : Char3;
Existen : Array[1 .. 10, 1 .. 10] Of Char9;
Cant : Array[1 .. 10, 1 .. 10] Of Char9;
Precio : Array[1 .. 10, 1 .. 10] Of Char9;
Flags : Char6;
Lf : Char;
Cr : Char;
End;

procedure TForm1.Button1Click(Sender: TObject);
Var
Excel: Variant;
Archivo : String;
Cont: Integer;
Codigo,
Descripcion,
unidad : String;
begin
//***** Creamos el Objeto Ole *****//
try
Excel := CreateOleObject('Excel.Application');
except
Excel.Quit;
showmessage('No se pudo crear el Objecto Excel.');
raise;
end;
// Leemos el archivo
Archivo := 'c:\Siegfried.xls';
Excel.Workbooks.Open(Archivo);
Cont:= 2;
try
Repeat
// Importamos Datos de excel
Cia := Excel.Cells[Cont,1].Value
SubCia := Excel.Cells[Cont,2].Value
Material := Excel.Cells[Cont,3].Value;
Descripcion := Excel.Cells[Cont,4].Value;
Cantidad:= Excel.Cells[Cont,5].Value;
Existencia:= Excel.Cells[Cont,6].Value;
Precio:= Excel.Cells[Cont,7].Value;
inc(Cont);
until Excel.Cells[Cont,2].Value = '';
Excel.quit;
ShowMessage(' Archivo importado satisfactoriamente');
except
ShowMessage('El Archivo no pudo ser importado');
end;
end;


Y muchas gracias por responder Bicho