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-05-2010
Avatar de gmontes
gmontes gmontes is offline
Miembro
 
Registrado: jul 2004
Ubicación: Culiacán, Sinaloa, México
Posts: 668
Poder: 20
gmontes Va por buen camino
aplicacion para reportar resultados

a ver si me se explicar.

en mi empresa tienen un viejo programa en basic que lo que hace es tomar un archivo texto, que es como una plantilla para llenar resultados de estudios de laboratorio.

tienen mas de 200 archivos texto diferentes

cada archivo se compone de lo siguiente:


prueba x de y [......... ] valores entre xxxx y xxxx

esta pruebas etc etc

prueba z de f [ ......... ] valores entre xxxx y xxxx


y asi con los diferentes 200 archivos


este programa toma el archivo y lo pone en pantalla y solo se posiciona en los campos entre corchetes para su llenado y luego lo imprime. no guarda ningun resultado ni modifica el archivo texto ya que solo le sirve de plantilla para su llenado e impresion

la idea seria tomar los archivos de texto y hacer lo mismo en delphi para no tener que reproducir 200 archivos diferentes o eso creo

alguna idea de como debo atacar este asunto ????
__________________
Todos llevamos nuestros demonios a cuestas..

Última edición por gmontes fecha: 24-05-2010 a las 06:24:05.
Responder Con Cita
  #2  
Antiguo 24-05-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola gmontes.

No tengo muy en claro como se seleccionan los archivos y algún detalle más.

Pero, a ver se me ocurre, para respetar el viejo formato usar un TStringGrid
con tres columnas, poner FixedCols y FixedRows a False y cargar en la primera
columna el texto hasta encontrar el caracter '[' y en la tercera columna el resto de la cadena a
partir del caracter ']', quedando la segunda para el ingreso.

También habría que prohibir que se posicionen en la primera y tercera columna.
Hice una pequeña prueba, sin comprobaciones del tipo y cantidad de caracteres que pueden
ingresar por ejemplo.Y por supuesto sin impresión. (es sólo un bosquejo)

El ejemplo genera un archivo 'PRUEBA.TXT' donde quedan guardadas las líneas con lo tipeado por el usuario.
Código Delphi [-]
...
implementation
{ Impedir acceso a líneas 0 y 2 }
procedure TForm1.StrGrdSelectCell(Sender: TObject; ACol, ARow: Integer;
  var CanSelect: Boolean);
begin
  CanSelect:= ACol = 1;
end;
{ Abrir uno de los 200 y pasarlo al StringGrid }
procedure TForm1.btAbrirClick(Sender: TObject);
var
  txt: TextFile;
  lin: Integer;
  st: string;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(txt,OpenDialog1.FileName);
    Reset(txt);
    lin:= 0;
    while not Eof(txt) do
    begin
      ReadLn(txt,st);
      StrGrd.Cells[0,lin]:= Copy(st,1,Pos('[',st));
      StrGrd.Cells[2,lin]:= Copy(st,Pos(']',st),Length(st));
      Inc(lin);
    end;
    CloseFile(txt);
    StrGrd.Row:=0; StrGrd.Col:=1;
  end;
end;
{ Guardar en archivo, imprimir o lo que sea }
procedure TForm1.btGuardarClick(Sender: TObject);
var
  txt: TextFile;
  i: Integer;
begin
  AssignFile(txt,'C:\TEMP\PRUEBA.TXT');
  Rewrite(txt);
  for i:= 0 to StrGrd.RowCount-1 do
    with StrGrd do
      WriteLn(txt,Cells[0,i]+Cells[1,i]+Cells[2,i]);
  CloseFile(txt);
end;
end.

Espero te sirva y saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 24-05-2010
Avatar de gmontes
gmontes gmontes is offline
Miembro
 
Registrado: jul 2004
Ubicación: Culiacán, Sinaloa, México
Posts: 668
Poder: 20
gmontes Va por buen camino
gracias por la respuesta.

lo que se busca es reproducir lo que hace el antiguo programa

tanto la captura como el reportar los estudios
__________________
Todos llevamos nuestros demonios a cuestas..
Responder Con Cita
  #4  
Antiguo 24-05-2010
Avatar de juanelo
juanelo juanelo is offline
Miembro
 
Registrado: sep 2007
Posts: 1.083
Poder: 18
juanelo Va por buen camino
Pues para mi la idea de las plantillas es buena y no veo porque cambiarla, ahora bien, yo lo que haria con Delphi, es llenar una tabla que se crea al "vuelo", con los campos "corchetes" y asi solicitarselos al usuario.
Sigues usando las plantillas y la aplicacion puede usarse para futuras plantillas.
Saludos.
__________________
Ya tengo Firma!
Responder Con Cita
  #5  
Antiguo 24-05-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Cita:
este programa toma el archivo y lo pone en pantalla y solo se posiciona en los campos entre corchetes para su llenado y luego lo imprime. no guarda ningun resultado ni modifica el archivo texto ya que solo le sirve de plantilla para su llenado e impresion.
Si no entendí mal lo arriba expuesto, eso es exactamente lo que hace el ejemplo posteado: Toma el archivo de texto, lo pone en pantalla, se posiciona en los campos entre corchetes permite el llenado y luego lo imprime sin alterarlo...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
Como hago reportar ciertas partes de una Tabla de datos? Carlos76 Firebird e Interbase 2 07-08-2007 19:28:42
Reportar documentación en .rft en Enterprise Architect de archivos de Borland C++ kayejero C++ Builder 0 11-12-2006 14:38:49
Resultados para la expresión KeyMan Impresión 1 01-06-2006 10:29:23


La franja horaria es GMT +2. Ahora son las 19:39:54.


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