Patricio, Saludos.
Y tambien los Temporales los pongo en un Directorio aparte de donde estan las tablas
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