PDA

View Full Version : [access] aiuto per compilazione txt da database


pupgna
03-12-2009, 13:46
salve

purtroppo ho una emergenza.

dopo 2 anni che una ditta di programmazione (che già lavorara per noi) mi faceva il favore di estrarmi i dati secondo le richiesta, quest'anno han pensato bene di non farmi il favore solo che me l'han comunicato solo 3 giorni prima della scadenza entro la quale devo comunicar i dati
quindi è un bel casino


Ho un database mdb di movimento e gestione rifiuti (batterie esauste)

devo creare 12 file txt (mensili) con i dati del database, estrapolando il tutto secondo le istruzioni, il tracciato dato da chi devo mandar i dati (istruzioni tramite pdf)

io sto provando la composizione guidata della query con access 2007 ma non sto cavando un ragno da un buco...

consigli?

MarcoGG
04-12-2009, 08:10
io sto provando la composizione guidata della query con access 2007 ma non sto cavando un ragno da un buco...


Io risolverei con un'applicazione VB.NET che legge il DB e crea i files txt. In ogni caso col VBA di Access non c'è confronto. Se non si è maestri di Sql, la soluzione non sarà certo elegante ( nel senso che bisognerà far fare a VB quello che non si riesce a scrivere in Sql ), ma ad un certo punto chissenefrega ! :D
Come diceva il grande Gunny Highway, "improvvisare, adattarsi e raggiungere lo scopo" ! :D
Certo che se hai solo 2/3 giorni e non conosci VB o altro, la vedo dura.

john_revelator
04-12-2009, 14:47
Per poterti aiutare dovresti fornire qualche informazione in più. Per l'estrapolazione dei dati, per le poche informazioni che hai dato, credo ti basti una query del tipo

select * from tabella where year(campo_data) = 2009 and month(campo_data) = 1

e così via fino al dodicesimo mese. Poi non so se le tue query richiedano l'impiego di join o simili.

pupgna
07-12-2009, 00:03
alla fine ho trovato un fondamentale aiuto da un amico programmatore

gli ho portato tutto il materiale che avevo e in definitiva ha trovato e modificato il necessario dal tracciato esistente.

anche perchè i dati estrapolati in txt dovevano esser incolonnati e sistemati in base alle assegnazioni di spazi e caratteri definiti

unico problema che non abbiamo risolto:
la data mi è richiesta in questo formato AAAAMMGG e di 8 spazi

invece con access2007 non abbiam trovato il modo di nn mettere nulla fra i valori.O uno spazio o una barra ce li mette sempre.

Così per ovviare abbiam impostato data inversa e non estesa e mi da in uscita sul txt AA MM GG che è sempre di 8 caratteri ma non come voglio io e poi tramite gli strumenti di word, ho sostiuito a mano tutte le combinazioni dicendo per esempio, "trovami 09 03 02 e sostituisci con 20090302" per un numero di volte pari ai giorni lavorativi del 2009...

john_revelator
07-12-2009, 00:11
Puoi usare la funzione format().

Esempio

select *,format(data,"yyyymmdd") as miadata from tabella

edit. Se vuoi puoi anche aggiungere gli 8 spazi così


select *,format(data,"yyyymmdd") & " " as conspazi from tabella