Page 1 of 1

Funcion para un archivo temporal o nombre

Posted: Thu May 09, 2019 8:32 pm
by noe aburto
Saludos

Estimados del foro, habia visto antes una funcion que me creaba un nombre de archivo temporal y asi usarlo para crear temporales dbf o cdx pero no recuerdo
y he buscado sin resultados.

Alguna sugerencia?

Re: Funcion para un archivo temporal o nombre

Posted: Thu May 09, 2019 11:13 pm
by cmsoft

Code: Select all

** Uso
AADD(aTabla,{"codigo","N",13,0})
AADD(aTabla,{"nombre","C",30,0})
AADD(aTabla,{"cantid","N",10,0})
AADD(aTabla,{"total" ,"N",10,0})
marchi := crear_temp(aTabla)
**************************
** Crear temporarios
FUNCTION crear_temp(atabla)
LOCAL i
mnom_arc = "TEMP"
i = 0
DO WHILE FILE("TEMP"+STRTRAN(STR(i,4)," ","0")+".DBF")
   i++
ENDDO
DBCREATE("TEMP"+STRTRAN(STR(i,4)," ","0")+".DBF",atabla)
RETURN "TEMP"+STRTRAN(STR(i,4)," ","0")+".DBF"
Hasta 9999 temporarios simultaneos. Tienes que borrarlo despues de usarlo. Le pasas la estructura como una arreglo

Re: Funcion para un archivo temporal o nombre

Posted: Fri May 10, 2019 10:04 am
by Antonio Linares
Noe,

function cTempFile( cPath, cExtension )

Re: Funcion para un archivo temporal o nombre

Posted: Fri May 10, 2019 3:59 pm
by karinha
Gracias, Cesar Gomez.

Code: Select all

#include "fivewin.ch"

FUNCTION Main()

   LOCAL Marchi, aTabla := {}

   // Uso
   AADD( aTabla, { "codigo", "N", 13, 0 } )
   AADD( aTabla, { "nombre", "C", 30, 0 } )
   AADD( aTabla, { "cantid", "N", 10, 0 } )
   AADD( aTabla, { "total" , "N", 10, 0 } )

   marchi := crear_temp( aTabla )

RETURN NIL
//* Crear temporarios
FUNCTION crear_temp( atabla )

   LOCAL i, MNOM_ARC

   mnom_arc := "TEMP"

   i = 0

   DO WHILE FILE( "TEMP" + STRTRAN( STR(i,4 )," ","0" ) + ".DBF" )

      SYSREFRESH()

      i++

   ENDDO

   DBCREATE( "TEMP" + STRTRAN( STR(i,4 )," ","0" ) + ".DBF", atabla )

RETURN "TEMP" + STRTRAN( STR( i,4 ), " ", "0" ) + ".DBF"
 
Saludos.