Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como hago un txt consecutivo (https://www.clubdelphi.com/foros/showthread.php?t=28475)

Luis Alberto 20-12-2005 22:59:02

Como hago un txt consecutivo
 
Que tal a todos

Necesito saber como realizar un txt consecutivo, a que me refiero yo ya tengo el nombre y ya lo saque solamente me hace falta saber como realizar el consecutivo ejemplo:

HPIM03ddmmyyyyhh:mm:ss[consecutivo]

ese nombre de archivo seria TOMANDO DATOS DE HOY 20/12/2005 por ejemplo asi:

HPIM0320122005141345[01]

Y cuando vuelva a generar otro archivo debe de crearse

asi

HPIM0320122005164550[02]


Espero me haya esplicado

Saludos

Neftali [Germán.Estévez] 21-12-2005 09:32:45

Si usas Base de Datos puedes utilizar un campo autoincremental para ir guardando el último número utilizado; Si no usas Base de Datos puedes utilizar un fichero d¡onde guardas el último número utilizado.

No comentas si tienes concurrencia, en ese caso debes tomar precauciones extra (en el segundo caso) para evitar duplicados.

Luis Alberto 21-12-2005 17:01:27

Mira el asunto es asi como menciono tengo que crear dicho archivo con ese consejutivo y de ahi tengo que subir automaticamente dicho archivo por medio del FTP eso ya lo tengo resuelto pero como identificar que primero suba el archivo 1 y despues el 2 y despues el 3 y asi sucesivamente....espero me puedan ayudar por que no tengo idea de como crear el archivo consecutivo y despues que se identifique cual subuir.

dec 21-12-2005 17:37:54

Hola,

Pues o no veo dónde está el problema, o es que no entiendo nada. A ver si me queda clara la secuencia: Tú quieres escribir/crear un determinado archivo, en cuyo nombre tiene que ir indicado un número de una determinada serie, de archivos... ¿Y no puedes, en el momento de crear el archivo o de leerlo o de nombrarlo utilizar, por ejemplo, el registro de Windows, o un archivo INI o XML o similar, para guardar el último número de la secuencia escrito?

De ese modo, cuando vuelvas a escribir, crear o nombrar un determinado archivo, leerás del registro de Windows, del archivo INI o del sitio en que guardaras el último número de la secuencia, y, ¿qué harás?..., incrementarlo en una unidad y escribir ese nuevo número en donde es menester, o sea, en el nombre del archivo en cuestión y en donde quiera que lo puedas guardar para recuperarlo en sucesivas ocasiones.

¿Verdad que me estoy haciendo un lío? ¿Verdad que no he entendido nada? ;)

Luis Alberto 21-12-2005 20:01:46

Creo que con el Ini me ayudara espero haberte entendido de pura casualidad tendras un ejemplo para saber si estamos hablando de los mismo?

Luis Alberto 21-12-2005 20:09:04

Por que creo que no es igual como me dices la primera vex genero este txt:

HPIM03DDMMYYHH:MM:SS01 ESE ES EL PRIMERO LA APLICACION TERMINA
INICIA EL ftp TOMA ESE ARCHIVO DE LA RUTA Y DESPUES TERMINA
CUANDO INICIE EL PROGRAMA DONDE EGNERA EL TXT DEBE DE GENERAR:

HPIM03DDMMYYYHH:MM:SS02
Y ASI SUSECIBAMENTE TORAMA ESTE PARA EL FTP

ESPERO ME HAYA ESPLICADO

Luis Alberto 29-12-2005 16:22:01

Gracias
 
Gracias a todos por su ayuda pude solicionar el probleba
Saludos

ecfisa 30-12-2005 07:11:52

A ver si es esto...
 
const PATH='C:\EJEMPLO\';Function TForm1.NuevoNombre: string;var s1,s2,max: string; sr: TSearchRec; sw: integer;begin // COMPONER PRIMERA PARTE DEL NOMBRE s1:='HPIM03'+copy(DateToStr(Date),1,2)+copy(DateToStr(Date),4,2)+ copy(DatetoStr(Date),7,4); s1:= s1 + copy(TimeToStr(Time),1,2)+copy(TimeToStr(Time),4,2)+ copy(TimeToStr(Time),7,2); sw := FindFirst(PATH+'HPIM03*.*',$3F,sr); max:= '01'; // ALMACENA EL Nº MAYOR while sw = 0 do begin // 22= POSICION DE Nº CONSECUTIVO Ej: 01,02,etc if copy(sr.Name,22,2)> max then max:= copy(sr.Name,23,2); FindNext(sr); end; sw := StrToInt(max); inc(sw); s2 := IntToStr(sw); s2:= '['+copy('00',1,2-length(s2))+s2+']'; s1 := s1 + s2; Result:= s1end;


La franja horaria es GMT +2. Ahora son las 05:27:43.

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