Newsgroup: it.comp.appl.access
Titolo: Ricollegare file CSV da codice

Devo dare la possibilità all'utente di collegare un file CSV che scarica da
internet quotidianamente.
Il file ha sempre la stessa struttura ma cambia il nome (qualcosa tipo
"ordini20050427_092858.csv").
Nel db ho collegato un file *.csv impostando i vari campi (ho creato una
specifica di importazione) con il nome "ordini".
Adesso vorrei fare in modo che l'utente si scarichi il file, lo salvi dove
vuole e poi dalla maschera che ho creato, utilizzando l'istruzione
GetOpenFileName(OpenFile)  vada a indicare il percorso e il file.
A questo punto, via codice, dovrei ricollegare "ordini" al nuovo file
indicato dall'utente. Ma non so come posso farlo.
Ho già guardato il SC ma non ho risolto il mio problema. Ho provato a
modificare il percorso e il file  dell'oggetto "ordini" nella tabella di
sistema MSysObjects ma ho scoperto che non posso fare un update.
Ciao e grazie
Luca

 "ordini20050427_092858.csv").
Non prenderlo come oro colato perche' sto andando a lume di naso, ma credo 
che non sia possibile cambiare il puntamento a un file di testo collegato. 
L'unica e' cancellare la tabella e ricollegarla con transferdatabase. 
Oppure rinominare il file in modo che il piu' recente abbia nome 
ordini.csv. 
Magari puoi automatizzare il tutto (quando l'utente seleziona il file, 
prende il file precedente, gli da' il nome "progressivo", poi prende il 
dfile nuovo e lo chiama ordini.txt).
cia'
Max

Max
thanks
Luca

 >dfile nuovo e lo chiama ordini.txt)
Funziona!
Adesso devo solo fare in modo che il vecchio file, rinominato, riprenda il
suo nome originario. Dobbiamo tenere i file vecchi....non si sa mai.......
ciao
Luca

Non puoi cambiare il nome del file, ma puoi cambiare la directory...
magari puoi fare tante dir tipo \dati_20050412, \dati_20052413 ecc. e
in ogni dir il file di testo che si chiama semplicemente ordini.txt
cia'
Max

 in ogni dir il file di testo che si chiama semplicemente ordini.txt
Troppo complicato x gli utenti.
Ho risolto così:
- l'utente scarica il file e lo salva in una dir qualsiasi, tipo
"c:\ordini\ordini20050502.csv"
- da codice ho fatto in modo che il file ordini20052413.csv venga copiato
con nome "ordini.csv" e il file ordini20052413.csv rimane quindi con il suo
nome originale (importante tenersi sempre una copia).
- La settimana dopo, quando scarica il nuovo file, da codice controllo se
ordini.csv esiste già lo elimino e poi rinomino il nuovo file
ordini20050509.csv in ordini.csv
- in pratica il file che scarica tutte le settimana rimane così com'è, lo
rinomino sempre in ordini.csv che quindi sarà sempre l'ultimo file
scaricato.
Semplice e funziona.
Adesso tento l'impossibile........una maschera con un pulsante x scaricare
direttamente il file degli ordini dal solito sito.
Problemi: il file cambia nome (sempre), l'url potrebbe cambiare (raramente).
Ciao
Luca

 Problemi: il file cambia nome (sempre), l'url potrebbe cambiare (raramente).
Il file cambia sempre, ma mi sembra di capire che e' sempre del tipo 
OrdiniAAAAMMGG.csv, no? 
per l'URL, ti direi di crearti una property del database e salvare dentro 
l'URL, in modo da poterla modificare al volo senza nessun problema, anche 
da parte dell'utente. 
Cia'
Max

da parte dell'utente.
Le cose si complicano......
fra pochi giorni per accedere al sito dove scarichiamo il file bisognerà
inserire userID e password, cercare la pagina ordini e scaricare il file
aggiornato.
Troppo complicato per essere automatizzato.
Cia'
Max