Patricio, Saludos.
Y tambien los Temporales los pongo en un Directorio aparte de donde estan las tablas
Code: Select all
cFile := CreaTemporal()
FUNCTION CreaTemporal
LOCAL cTemp, aTempora := {}, cCrea
SELECT INDICES
DbGoTop()
LOCATE FOR AllTrim(INDICES->NOMBRE) == "TEMPORAL"
IF !FOUND()
MsgAlert("Verifique con el Administrador del Sistema"+CRLF+"No se encuentra el Indice de Temporales...","Alerta!")
RETURN("")
ENDIF
INDICES->(ARlock())
REPLACE INDICES->INDICE WITH (INDICES->INDICE + 1)
cTemp := "TM"+Replicate('0',8-Len(AllTrim(Str(INDICES->INDICE)))) + AllTrim(Str(INDICES->INDICE))
INDICES->(DbCommit())
INDICES->(DbUnLock())
cCrea := cTemp //+ ".ADT"
AADD(aTempora,{"ARTICULO" ,"C",15,0})
AADD(aTempora,{"NOMBRE" ,"C",60,0})
AADD(aTempora,{"CAJAS" ,"N",15,4}) // 999,999.99
AADD(aTempora,{"PIEZAS" ,"N",15,4}) // 999,999.99
AADD(aTempora,{"PRECIO" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"IMPORTE" ,"N",15,2}) // 999,999.99
AADD(aTempora,{"DESCTO" ,"N",06,2}) // 999.99
AADD(aTempora,{"IMPDES" ,"N",09,2}) // 99,999.99
AADD(aTempora,{"GTOTAL" ,"N",10,2}) // 999,999.99
AADD(aTempora,{"SERIES" ,"C",25,0})
AADD(aTempora,{"DESCTOA" ,"N",06,2}) // 999.99
AADD(aTempora,{"RENGLON" ,"N",05,0}) // 99
AADD(aTempora,{"PRECIOA" ,"N",09,2}) // 99,999.99
AADD(aTempora,{"CDESCTO" ,"C",05,0}) // 99,999.99
AADD(aTempora,{"CANTIDAD" ,"N",09,2}) // 99,999.99
AADD(aTempora,{"CODIGO" ,"C",15,0})
AADD(aTempora,{"COSTOC" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"COSTOP" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"PROMO" ,"L",1,0})
AADD(aTempora,{"ARTPROMO" ,"C",15,0})
AADD(aTempora,{"IMPORTEC" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"IMPORTEP" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"FECHA" ,"D",08,0})
AADD(aTempora,{"PRECIOT" ,"N",15,4}) // 99,999.99
AADD(aTempora,{"IMPORTET" ,"N",15,2}) // 999,999.99
DbCreate(cPathTEM+cCrea,aTempora,DbSetDriver())
RETURN cTemp
** cMiRuta := DiskName()+":"+CurDir()
** cPathTEM := cPathTEM := cMiRuta+"\temporal\"
Es exactamente lo mismo, el detalle que son tablas ADT y creo que por eso los mete al DD