Il giorno 30/ago/07, alle ore 15:17, Daniele Varrazzo ha scritto:
On Thu, 30 Aug 2007 13:32:09 +0200, Y3s <[EMAIL PROTECTED]> wrote:
Il giorno 30/ago/07, alle ore 13:03, Marco ha scritto:
Ciao sto anche io facendo un lavoro del genere per la mia azienda
ma non è affatto facile.
Per quanto access sia una schifezza, come dicono tanti, permette
personalizzazioni molto veloci a livello di query o report.
Python al contrario ti permetterà sicuramente una maggiore e una
migliore gestione a livello di linguaggio e di sicurezza dei dati,
indipendentemente se ti basi su mysql o altri.
Se però ti chiedono una qry al volo o un report non ci metterei
senz'altro i 10 min che ci mettevi prima a crearlo dal nulla.
Non sono per niente d'accordo, anzi in python (avendo strutturato
bene il tutto) è ancora più semplice. Apri il file (file di testo,
che puoi aprire in situazioni di emergenza con notepad), scrivi la
query, la associ al pulsante, menu o quello che è ed è fatto. Per i
report, al momento in effetti strumenti comodi non ce ne sono ma
idem, se hai creato un'infrastruttura ben fatta (ad esempio dei
template per reportlab), non ci vorranno 10 minuti, ma in 15 hai
fatto...ed è un lavoro molto più pulito e stabile direi!
Tu come li fai i template in reportlab?
Per "template" intendevo un "modello". In genere le tipologie di
report che si usano in un'applicazione sono poche. Una volta che hai
coperto in modo per te soddisfacente i casi che ti interessano, è
rapido e veloce modificare la classe, la funzione, o qualunque cosa
usi per generare l'output per adattarla al nuovo report.
Io ho avuto successo solo usando una versione patchottata di un
parser RML
"bootleg" che trovai abbandonato da qualche parte nel web (per avere
RML2PDF devi comprare il "ReportLab Enterprise Publishing and
Reporting
Server"... e il nome dice tutto su quanto te lo vogliono far
pagare), e
anche allora quello che ho avuto è stato un linguaggio per fare *i
report*, non *i template*: questi ultimi me li sono fatti con
Cheetah che
genera RML che genera PDF - un altro strato di roba da imparare.
Alla fine
va, ma è veramente un hack che non me la sentirei di consigliare a
cuor
leggero.
Hai una soluzione più pulita di questa? Sarei felice di conoscerla. Se
no... direi che promettere a qualcuno che farà report "non in 10
minuti ma
in 15 sì" mi sembra un po' grossa.
Al momento no, ma ci sto lavorando. Purtroppo il tempo è sempre poco.
C'è openreport (o comunuque si chiami, non ricordo, comunque quello
che usa tinyERP) che più o meno dovrebbe fare quello che fai tu, ma
in modo un po'più integrato.
Comunque, si parlava di "query al volo o report", quindi davo per
scontato che il grosso del lavoro sia già stato fatto. In tal caso,
non ci vuole molto ad adattare un report che già hai per creare
qualcosa di nuovo che, ripeto, nel 90% dei casi sarà molto simile
come struttura a uno che già hai. Inoltre, ho specificato che *avendo
strutturato bene l'applicazione* e *avendo creato un'infrastruttura
adeguata* la modifica al volo è un'operazione semplice e rapida,
certo partendo da zero il tempo necessario è maggiore...almeno
all'inizio, visto che molto del codice che vai a scrivere la prima
volta, lo riutilizzerai quasi sicuramente le volte successive...
Access è ottimale per una certa classe di applicazioni: se (e solo
se) si
è ossequiosi verso il suo paradigma, consente di fare applicativi -
male -
ma velocemente. In Python le cose si possono fare bene, si è liberi
sul
paradigma di accesso ai dati, si possono fare anche certe cose
velocemente... ma non le stesse che si fanno con Access altrettanto
velocemente.
Se l'obiettivo è avere un'applicazione che funziona in poco tempo, se
non si è interessati alla qualità del codice, se non ci si preoccupa
troppo della manutenzione e dell'espandibilità, se si vuole correre
il rischio che con la nuova versione dell'applicativo il tuo
programma non funzioni più, allora si, Access è un ottimo strumento.
Troppi se per i miei gusti, ma...
Io continuo a pensare che una volta che ti sei costruito un insieme
di moduli adatti alle tue esigenze, sviluppare in python non è molto
più lento che farlo con access o altro. Il grosso del tempo lo perdi
solo una volta. Ovviamente è una mia opinione, eh!
--
Antonio Valente
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python