Archivos temporales sin que los sume al diccionario

Post Reply
hugotheler
Posts: 15
Joined: Wed Sep 05, 2007 7:32 pm

Archivos temporales sin que los sume al diccionario

Post by hugotheler »

Hola

Como tendría que hacer para trabajar con archivos temporales pero que estos no se sumen al diccionario de datos. (ADS ), es decir trabajarlo a estos archivos como tablas libres.

xharbour 0.99.71
ADS 8.1


Hugo
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by Patricio Avalos Aguirre »

Hola

yo lo hago de esta manera..

Code: Select all

   cFileTemp := cNewFileName( ViewUsu():cPathTmp + "\TEMPO", "DBF" )
   cFileCdx  := cNewFileName( ViewUsu():cPathTmp + "\TEMPO", "CDX" )

   dbCreate( cFileTemp, ;
                            { { "cod_prod", "c", 15,0},;
                              { "des_prod", "C", 40,0},;
                              { "Stock",    "n", 10,0},;
                              { "cant1",    "n", 10,0},;
                              { "cant2",    "n", 10,0},;
                              { "cant3",    "n", 10,0},;
                              { "cant4",    "n", 10,0}}, "DBFCDX", .t., "TEMP" )

    INDEX ON FIELD->COD_PROD TAG CODIGO TO (cFileCdx)
    SET INDEX TO (cFileCdx)
 
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
Marcelo Via Giglio
Posts: 1033
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Re: Archivos temporales sin que los sume al diccionario

Post by Marcelo Via Giglio »

Hola,


prueba abrir la tabla especificando el RDD de manera explicita

USE temp INDEX temp VIA "DBFCDX" NEW.......... u otro RDD

saludos

Marcelo
hugotheler
Posts: 15
Joined: Wed Sep 05, 2007 7:32 pm

Re: Archivos temporales sin que los sume al diccionario

Post by hugotheler »

Hola

Gracias Patricio por tu respuesta pero no logro que funcione.

Pregunta , que indica los parametros 4 y 5 del dbcreate..?

Gracias
User avatar
JavierVital
Posts: 105
Joined: Thu Feb 26, 2009 4:08 pm
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by JavierVital »

Hola que tal, yo tengo el mismo problema, usando tablas ADT
y lo hago asi .

Code: Select all

cCrea := cTemp //+ ".ADT"
    AADD(aTempora,{"ARTICULO","C",15,0})
    AADD(aTempora,{"NOMBRE"  ,"C",60,0})
    AADD(aTempora,{"CAJAS","N",15,3}) //  999,999.99
    AADD(aTempora,{"PIEZAS","N",15,3}) //  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
    DbCreate(cPathDAT+cCrea,aTempora,DbSetDriver())
 
y despues del Dbcreate ya lo tengo en el diccionario de datos
y cuando habro la conexion con el Architect ahi me muestra todos los temporales y aunque los borre de la carpeta en el diccionario siguen apareciendo
si alguien tendria alguna otra solucion?

Saludos.
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by Patricio Avalos Aguirre »

te adjunto la sintaxis

Code: Select all

DbCreate()
Creates an empty database from a structure definition array. 
Syntax
DbCreate( <cDatabase> , ;
          <aStructure>, ;
         [<cDriver>]  , ;
         [<lNewArea>] , ;
         [<cAlias>]     ) --> NIL

 
lo otro revisa que esten estas lineas

Code: Select all

procedure RddInit()
    REQUEST HB_LANG_ES
    REQUEST DBFCDX, DBFFPT
    REQUEST ADS
    REQUEST OrdKeyCount, OrdKeyNo, OrdKeyGoto, ADSKeyNo, AdsSetRelKeyPos, AdsGetRelKeyPos
return
 
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
JavierVital
Posts: 105
Joined: Thu Feb 26, 2009 4:08 pm
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by JavierVital »

Patricio, un apregunta, los temporales los usas en el mismo directorio donde se encuentran tus tablas ?
porque yo lo tengo en el mismo directorio tengo mis tablas y mis temporales
solo el diccionario esta una carpeta antes de los datos.
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by Patricio Avalos Aguirre »

Javier:

Los temporales se crean el el disco local, ya que el sistema estan en todos los PC

Code: Select all

#Define DRIVELOCAL DiskName() + ":\"+Curdir()
:cPathTmp := DRIVELOCAL + "\TEMPORAL"

y las tablas se encuentran en un servidor en una carpeta SOLO LECTURA, ya que estan con ADS SERVER
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
hugotheler
Posts: 15
Joined: Wed Sep 05, 2007 7:32 pm

Re: Archivos temporales sin que los sume al diccionario

Post by hugotheler »

Limpie el código y funciono !!

Gracias Patricio por tu tiempo.

Yo también tengo distribuido el sistema en cada equipo y los temporarios los genero en el una carpeta sobre el server.
Es conveniente, desde el punto de vista de la velocidad, generarlo en cada equipo.?


Hugo
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by Patricio Avalos Aguirre »

Hugo:

Pienso que por logica sobre modo local debiera ser mucha mas rapido que por server
ya que al crear una dbf temporal ya no seria cliente / servidor si no que un dbf normal..

lo otro como es temporal al final de la rutina hay que eliminarlos..
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
JavierVital
Posts: 105
Joined: Thu Feb 26, 2009 4:08 pm
Contact:

Re: Archivos temporales sin que los sume al diccionario

Post by JavierVital »

Patricio, ya lo intente como comentas con los temporales.
El detalle es que sigue poniendo el nombre del temporal en el diccionario, donde quiera que pongas el temporal.
Yo uso temporales ADT, voy a probar usando temporales DBF aver que pasa.

Saludos.
Post Reply