Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-07 Per discussione Paolo Mantovani
Il martedì 6 novembre 2007 11:48:16 Jack © ha scritto:
 Paolo Mantovani wrote:
  1. Fai la query per creare la tabella (esattamente come fai ora)
[]
 Al momento ho utilizzato un metodo che funziona (ho fatto prove) ma e'
 al limite del ridicolo, 
[] 

 Seppur funziona la considero una vaccata,

Mi dispiace di averti suggerito una soluzione così orribile, purtroppo quello 
è stato il massimo che sono riuscito a combinare.


 l' ideale sarebbe fare come 
 nel primo post ho cercato di fare, ma facendo in un sol botto.

Non capisco la questione, spiegati meglio


ciao
Paolo M


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-06 Per discussione Jack ©

Paolo Mantovani wrote:

1. Fai la query per creare la tabella (esattamente come fai ora)

Esportare con Select INTO TEXT



Al momento ho utilizzato un metodo che funziona (ho fatto prove) ma e' 
al limite del ridicolo, praticamente quando faccio una Select per 
visualizzare i risultati in un Datagrid prendo la parte della Select 
FROM..WHERE e la metto in una variabile Stringa Globale per poi 
inniettarla nella SELECT INTO TEXT.


Seppur funziona la considero una vaccata, l' ideale sarebbe fare come 
nel primo post ho cercato di fare, ma facendo in un sol botto.


Ciao Jack



P.S. Non sono a conoscenza se e' lecito in ML mandare file in attach se 
cosi' non e' mi scuso in anticipo con tutti i partecipanti.





--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Vendi l'auto? La moto? La barca? Il Camper? Affitti un appartamento? 
* Per concludere i tuoi affari pubblica gli annunci con AdBoom.it! Facile. Veloce. Gratuito
* 
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7222d=6-11
Global sSetRicette as String


Option Explicit

Sub Esporto
'__

Dim aUrl As New com.sun.star.util.URL   'aUrl array
Dim oUrlTransformer as Object, oBaseContext as Object, oDB as Object, oCon as 
Object, oStatement as Object
Dim oStatement1 as Object, oRS as Object
Dim sDoc as String, sQuery as String
'__

oBaseContext = CreateUnoService(com.sun.star.sdb.DatabaseContext)
oDB = oBaseContext.getByName(MonsterChef)
oCon = oDB.getConnection(,)
oStatement = oCon.CreateStatement() 
oStatement1 = oCon.CreateStatement() 

oUrlTransformer = CreateUnoService(com.sun.star.util.URLTransformer)
sDoc = 
ThisComponent.DrawPage.Forms.getbyname(formRicette).ActiveConnection.Parent.DatabaseDocument.URL
aUrl.Complete = sDoc
oUrlTransformer.parseStrict(aUrl)

'

If Len(sSetRicette) 0 Then

  oStatement1.execute(DROP TABLE ricette IF EXISTS)

If  FileExists(aUrl.Protocol  aUrl.Path  /  ricette.csv ) = True Then
  Kill aUrl.Protocol  aUrl.Path  /  ricette.csv 
End If

If FileExists(aUrl.Protocol  aUrl.Path  /  ricette.dat ) = True Then
  Kill aUrl.Protocol  aUrl.Path  /  ricette.dat
End If

Else

 Msgbox Non hai selezionato nessuna ricetta da esportare, 16, Messaggio 
Utente
 Exit Sub

End If 
'


sQuery = SELECT tbricette.Dose,  tbricette.TempoPreparazione,  
tbricette.Titolo,_
tbricette.Ingredienti,  tbricette.Preparazione,  
tbricette.Rating,_
 tbricette.Foto,  tbricette.idRegione,  
tbricette.idCategoria,_
  tbricette.Favoriti,  tbricette.idCuoco  INTO 
TEXT ricette sSetRicette   
 
oRS = oStatement.executeQuery(sQuery)

  
Name aUrl.Protocol  aUrl.Path  /  ricette.csv  as  aUrl.Protocol  
aUrl.Path  /  ricette.dat


oStatement1.execute(DROP TABLE prova IF EXISTS)
oCon.Close

End Sub

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-05 Per discussione Jack ©

Paolo Mantovani wrote:

2. A questo punto, il file csv è stato creato e popolato con i dati.
Siccome si tratta di una tabella linkata al database, dovrai copiare o
appendere il contenuto in un altro file che avrai creato appositamente.

2. Pensavo semplicemente di rinominare il file :-) eh!! che dici.


Nota: per rinominare un file c'e' l' istruzione Name di StarBasic, ed
ecco l' esempio tradotto male.

Esempio:
Sub EsempioRiName
..
.
Rinominate c:\temp\autoexec.sav come c:\temp\autoexec.bat
..
.
end sub

Al posto di Rinominate  :-)

Name c:\temp\autoexec.sav As c:\temp\autoexec.dat

Name accetta pure gli URL, ottima cosa !!

***
Piccola considerazione, perche' e' previsto l' import dei .csv in Calc e
non in anche Base.


Calc si può interfacciare direttamente al database, ovvero ...
Questo è un piccolo esempio:
Una versione più completa è qui:
http://codesnippets.services.openoffice.org/Calc/Calc.ImportDatabaseContent.snip

-8--
Sub ImportDBData()

Globalscope.BasicLibraries.loadLibrary(Tools)
oCalcDoc = createNewDocument( scalc )
oSheet = oCalcDoc.Sheets(0)

Dim mImportDesc(2) As New com.sun.star.beans.PropertyValue

mImportDesc(0).Name  = DatabaseName
mImportDesc(0).Value = nuovoDB
mImportDesc(1).Name  = SourceType
mImportDesc(1).Value = com.sun.star.sheet.DataImportMode.SQL
mImportDesc(2).Name  = SourceObject
mImportDesc(2).Value = SELECT * FROM tabella1

oSheet.getCellRangeByName(A1).doImport(mImportDesc())

End Sub


L'esempio non mi funziona, mi ritorna 'Errore durante l' importazione
dei dati', al posto di tabella1 ho messo la mia tabella da esportare.


Ciao Jack





--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Devi vendere qualcosa? Pubblica in un colpo le tue inserzioni sui principali 
siti web e sulle più importanti riviste di annunci!
* AdBoom.it: MASSIMA VISIBILITA', MINIMO SFORZO
* 
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7223d=5-11


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-05 Per discussione Paolo Mantovani
Il lunedì 5 novembre 2007 16:13:38 Jack © ha scritto:
[]

  Sub ImportDBData()
[...]
  End Sub

 L'esempio non mi funziona, mi ritorna 'Errore durante l' importazione
 dei dati', al posto di tabella1 ho messo la mia tabella da esportare.

non saprei, hai una tabella con più di 64 mila records? oppure più di 256 
campi?


ciao
paolo M



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-05 Per discussione Jack ©

Paolo Mantovani wrote:

Il lunedì 5 novembre 2007 16:13:38 Jack © ha scritto:

L'esempio non mi funziona...
non saprei, hai una tabella con più di 64 mila records? oppure più di 256 
campi?


Naturalmente no, in caso l'avrei spezzata su piu' tabelle.


Ciao Jack


--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
In REGALO 'All the Good Thing' di NELLY FURTADO
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=6617d=6-11

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-04 Per discussione Jack ©

Paolo Mantovani wrote:


Comunque.. non è  (a mio parere) la scelta ottimale.
Infatti, questa tecnica confida in alcune direttive SQL particolari e presenti 
solo nel motore HSQLDB.

Non è un buon design per la tua applicazione (sempre a mio parere)


Si, si, concordo, neppure a me piace molto come soluzione al di la che
sia legata a HSQLDB.

Se non fosse che hai scartato la possibilità Calc fin da subito, ti avrei 
suggerito proprio quella.

ma perchè Calc no?


Premesso che valuto anche questa possibilita' e che e' un peccato non
sfruttare l' integrazione dei moduli OOo, pero' vorrei fare tutto con
Base, l' utente fa click ed Esporta, click e Importa, fine, al massimo
deve vedere una ProgressBar che avanza, nulla piu'.

I fogli di calcolo li valuto solo per farci grafici, un peccato che in
Base non c'e' un Controllo per generare grafici. :-)

Vabbe' chiudo, le possibilita' me le hai esposte e piu' o meno ho capito
come fare, molte grazie per esserti interessato.

Ciao Jack












--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Utilizza l'email marketing di Email.it, oltre 2 milioni di utenti registrati 
tra cui trovare i tuoi futuri clienti
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7148d=4-11

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-04 Per discussione Paolo Mantovani
Il domenica 4 novembre 2007 09:52:04 Jack © ha scritto:
[...]
 Premesso che valuto anche questa possibilita' e che e' un peccato non
 sfruttare l' integrazione dei moduli OOo, pero' vorrei fare tutto con
 Base, l' utente fa click ed Esporta, click e Importa, fine, al massimo
 deve vedere una ProgressBar che avanza, nulla piu'.

Beh, per quello basta lavorare con dei documenti nascosti.

ciao
Paolo M

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-03 Per discussione Paolo Mantovani
Ciao Jack,

Il venerdì 2 novembre 2007 13:06:36 Jack © ha scritto:
[]

Ok ora il problema è chiaro.
Siccome sono una schiappa in sql mi sono andato a vedere un po' di reference 
sul sito di hsqldb:
http://hsqldb.org/doc/guide/ch09.html

Confesso che non è stato semplicissimo, ho dovuto fare un po' di prove, ma 
alla fine credo di aver capito come stanno le cose.

Riepilogando:
a)
HSQLDB è in grado di gestire vari tipi di tabelle:
MEMORY, CACHED, TEMPORARY, TEMP, TEXT

CACHED è il tipo di tabella di default usato in OOoBase. questo tipo di 
tabelle viene poi salvata al'inetrno del file ODB

TEXT è una tabella in formato testo (csv) che viene mantenuta all'esterno del 
file ODB, ma si tratta pur sempre di una vera e propria tabella del database, 
per cui se viene cancellata accidentalmente, all'avvio del database viene 
ricreata (vuota)

b)
quando nella tua macro dai il comando (ho semplificato per fare l'esempio):
sQuery = SELECT * INTO TEXT filecsv FROM tabella1
oRS = oStatement.executeQuery(sQuery)

in effetti, HSQLDB crea una nuova tabella di tipo TEXT e ci riversa i dati che 
risultano dalla query.

A differenza del comando SELECT  INTO OUTFILE ... di MySQL quindi, in 
questo caso non abbiamo un'esportazione di dati ma la creazione di una nuova 
tabella esterna in formato testo-csv che è linkata al database.

Infatti, se dopo aver dato il comando di cui sopra aprirai il file ODB potrai 
vedere le la nuova tabella elencata tra le altre (ma con un'icona diversa)

Se non è visibile, dovrebbe essere sufficiente fare:
   menu Visualizza-Aggiorna tabelle

c)
tutto questo premesso, credo di poter dire che il problema da te riscontrato 
non è dovuto ad un malfunzionamento ma ad un uso improprio di una funzionalità 
peculiare offerta da HSQLDB

d)
Ho elaborato una possibile soluzione.
L'idea è questa:

1. Fai la query per creare la tabella (esattamente come fai ora):

oRecordSet = oStatement.executeQuery( _
SELECT * INTO TEXT mytemptable FROM tabella1)

2. A questo punto, il file csv è stato creato e popolato con i dati.
Siccome si tratta di una tabella linkata al database, dovrai copiare o 
appendere il contenuto in un altro file che avrai creato appositamente.

Non ti metto nessun esempio di codice perchè immagino che tu sappia come fare, 
però in caso di dubbi: sine qua non - siamo qua noi (come dicevano al Bar 
Sport ;-)


3. Ora è il momento di fare pulizia:

oStatement.execute(DROP TABLEmytemptable IF EXISTS)

In questo modo il file non è più linkato al database, ma comunque non è stato 
eliminato dal file system, perciò dovrai farlo manualmente, diversamente, la 
prossima volta che creerai la tabella si genererà un errore.

(esempio stupido):
kill file:///home/paolo/mytemptable.csv

Ovviamente tu dovrai eliminare il file in un modo più intelligente, in 
particolare dovrai ricavare il path del file csv dal path del documento Base 
e magari fare anche un controllo di esistenza del file prima di eliminarlo.
Ricorda che il nome del file creato non è sempre identico al nome usato nella 
query (nome nuova tabella), in particolare, il file è sempre in minuscolo, 
anche se il nome della nova tabella contiene maiuscole, inoltre, tutti i 
caratteri non alfanumerici nel nome della tabella vengono tradotti come 
sottotratti (_)

Ad esempio, la query:
SELECT * INTO TEXT My Temp-Table ... eccetera

crea il file: my_temp_table.csv


Comunque, arrivato a questo punto il tuo DB è pulito e lindo come all'inizio e 
sei pronto per una nuova operazione.



spero di essere stato aiutevole
ciao
Paolo M










-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-03 Per discussione Jack ©

Paolo Mantovani wrote:

L'idea è questa:


A me pero' sorge un ragionevole dubbio, esporto una tabella ma poi devo 
importare i dati contenuti in un' altra tabella presente nel DB, non e' 
che poi importo l' intera tabella esterna e me la ritrovo interna.


Con mysql mi sono servite solo poche righe di codice per fare ste cose 
ma mi sa che con HSQL mi sto incartando, ho scaricato un manuale HSQL ma 
non ho visto la possibilita' di fare Select into outfile...



1. Fai la query per creare la tabella (esattamente come fai ora):

oRecordSet = oStatement.executeQuery( _
SELECT * INTO TEXT mytemptable FROM tabella1)



1. I record da inserire sono frutto di un risultato di un 'altra query, 
   quindi serve un modo per farlo in un colpo solo.



2. A questo punto, il file csv è stato creato e popolato con i dati.
Siccome si tratta di una tabella linkata al database, dovrai copiare o 
appendere il contenuto in un altro file che avrai creato appositamente.


2. Pensavo semplicemente di rinominare il file :-) eh!! che dici.


3. Ora è il momento di fare pulizia:

oStatement.execute(DROP TABLEmytemptable IF EXISTS)


Ottimo, semplice, efficace.

In questo modo il file non è più linkato al database, ma comunque non è stato 
eliminato dal file system, perciò dovrai farlo manualmente, diversamente, la 
prossima volta che creerai la tabella si genererà un errore.


(esempio stupido):
kill file:///home/paolo/mytemptable.csv


Se rinimino il file questo passaggio lo salto

Ovviamente tu dovrai eliminare il file in un modo più intelligente, in 
particolare dovrai ricavare il path del file csv dal path del documento Base 
e magari fare anche un controllo di esistenza del file prima di eliminarlo.


Beh!! il path del documento ormai ho impararto a ricavarlo, se ne
parlava qualche tempo fa' sul NG. Penso che mi servira' se rinomino il file.

Ricorda che il nome del file creato non è sempre identico al nome usato nella 
query (nome nuova tabella), in particolare, il file è sempre in minuscolo, 
anche se il nome della nova tabella contiene maiuscole, inoltre, tutti i 
caratteri non alfanumerici nel nome della tabella vengono tradotti come 
sottotratti (_)


Ad esempio, la query:
SELECT * INTO TEXT My Temp-Table ... eccetera

crea il file: my_temp_table.csv


Buono a sapersi.

Comunque, arrivato a questo punto il tuo DB è pulito e lindo come all'inizio e 
sei pronto per una nuova operazione.


Speremus, sta cosa mi sfava parecchio ( sfavare = piacere molto) dare la
possibilita' di scambiarsi le ricette mi sembra una cosa utile e carina.


spero di essere stato aiutevole


Che dire, essenziale e' dire poco visto che in questi anni gli inghippi
me li hai risolti tu.

Molte grazie Jack



--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Pubblicita' con l'email marketing a soli 250 Euro! Prova il servizio di 
Email.it gli specialisti del settore
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7179d=3-11

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-03 Per discussione Paolo Mantovani
Ciao,

Il sabato 3 novembre 2007 21:00:07 Jack © ha scritto:
 Paolo Mantovani wrote:
  L'idea è questa:

 A me pero' sorge un ragionevole dubbio, esporto una tabella ma poi devo
 importare i dati contenuti in un' altra tabella presente nel DB, non e'
 che poi importo l' intera tabella esterna e me la ritrovo interna.

?? non ho capito...


 Con mysql mi sono servite solo poche righe di codice per fare ste cose
 ma mi sa che con HSQL mi sto incartando, ho scaricato un manuale HSQL ma
 non ho visto la possibilita' di fare Select into outfile...

Infatti anche a me pare che non ci sia questa possibilità.




  1. Fai la query per creare la tabella (esattamente come fai ora):
 
  oRecordSet = oStatement.executeQuery( _
  SELECT * INTO TEXT mytemptable FROM tabella1)

 1. I record da inserire sono frutto di un risultato di un 'altra query,
 quindi serve un modo per farlo in un colpo solo.

Di nuovo non capisco: Io ho abbreviato la tua query solo per semplificare, ma 
nulla ti vieta di aggiungere una clausola WHERE o anche altro.




  2. A questo punto, il file csv è stato creato e popolato con i dati.
  Siccome si tratta di una tabella linkata al database, dovrai copiare o
  appendere il contenuto in un altro file che avrai creato appositamente.

 2. Pensavo semplicemente di rinominare il file :-) eh!! che dici.

  3. Ora è il momento di fare pulizia:
 
  oStatement.execute(DROP TABLEmytemptable IF EXISTS)

 Ottimo, semplice, efficace.

  In questo modo il file non è più linkato al database, ma comunque non è
  stato eliminato dal file system, perciò dovrai farlo manualmente,
  diversamente, la prossima volta che creerai la tabella si genererà un
  errore.
 
  (esempio stupido):
  kill file:///home/paolo/mytemptable.csv

 Se rinimino il file questo passaggio lo salto

Si, certamente.
Il mio era solo un esempio schematico, tanto per dare l'idea.

[...]
 Beh!! il path del documento ormai ho impararto a ricavarlo, se ne
 parlava qualche tempo fa' sul NG. Penso che mi servira' se rinomino il
 file.

si, ti serve in ogni caso.

[...]
  Comunque, arrivato a questo punto il tuo DB è pulito e lindo come
  all'inizio e sei pronto per una nuova operazione.

 Speremus, sta cosa mi sfava parecchio ( sfavare = piacere molto) dare la
 possibilita' di scambiarsi le ricette mi sembra una cosa utile e carina.

Beh, io ho fatto dei test con un database minimale e tutto ha funzionato, 

Comunque, anche se questa strada funziona ed è relativamente semplice, non è 
(a mio parere) la scelta ottimale.
Infatti, questa tecnica confida in alcune direttive SQL particolari e presenti 
solo nel motore HSQLDB.

Questo rende il tuo codice legato ad un tipo particolare di database con tutte 
le conseguenze del caso.
Non è un buon design per la tua applicazione (sempre a mio parere)

Se non fosse che hai scartato la possibilità Calc fin da subito, ti avrei 
suggerito proprio quella.
ma perchè Calc no?

Calc si può interfacciare direttamente al database, ovvero puoi assegnare il 
risultato di una query ad un range di celle, dopodiché hai un mondo di 
possibilità al prezzo di pochissime linee di codice:
Puoi esportare in csv ma anche formattare a tuo piacere ed esportare verso PDF 
o qualsiasi altro formato gestito da Calc.
Non mi pare poco.


Questo è un piccolo esempio:
Una versione più completa è qui:
http://codesnippets.services.openoffice.org/Calc/Calc.ImportDatabaseContent.snip

-8--
Sub ImportDBData()

Globalscope.BasicLibraries.loadLibrary(Tools)
oCalcDoc = createNewDocument( scalc )
oSheet = oCalcDoc.Sheets(0)

Dim mImportDesc(2) As New com.sun.star.beans.PropertyValue
mImportDesc(0).Name  = DatabaseName
mImportDesc(0).Value = nuovoDB
mImportDesc(1).Name  = SourceType
mImportDesc(1).Value = com.sun.star.sheet.DataImportMode.SQL
mImportDesc(2).Name  = SourceObject
mImportDesc(2).Value = SELECT * FROM tabella1

oSheet.getCellRangeByName(A1).doImport(mImportDesc())

End Sub
-8--

ciao
Paolo M

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-02 Per discussione Jack ©

Paolo Mantovani wrote:

Ciao Jack,

Ho fatto questo tentativo sperando di poter aggiungere al file .csv un
record per volta, ma la cosa non funziona, una volta creato il file non
e' piu' possibile aggiungere record.


Quindi la tua macro funziona ma solo per la prima chiamata?



Funziona la prima volta, poi alla seconda rimanda un errore di file gia
presente.

Aggiungo, noto una cosa strana nei file .odb, come prova ho lanciato
questo, SELECT * INTO TEXT MioExportRicette FROM tbricette
in questo modo exporto tutte le ricette e la cosa va a buon fine, pero'
non potro' piu' usare il nome file MioExportRicette anche se cancello
nel FileSystem il file, altrimenti ritorna il famoso errore di file gia
presente, cambio nome in Pippo.csv, poi in Pluto.csv, poi in Minni.csv

Bene questi nomi file, MioExportRicette, Pippo.csv, Pluto.csv, Minni.csv
rimangono memorizzati nel file .odb e non potranno essere _MAI_ piu' usati.

Ecco una immagine dell' errore quando tento di aggiungere al file .csv
un secondo record o quando utilizzo un nome file gia usato anche se
cancellato nel F.S., devo sempre per forza generare un nome file mai usato.

http://img406.imageshack.us/img406/912/imgerrorepn6.png

Una immagine del fileSystem, occhio ai file con estensioni .csv, quei
file sono prove fatte nei giorni scorsi, se li elimino vengono ricreati
automaticamente  al lancio della macro anche se arriva l' errore sopra
quei file vengono generati automaticamente, e i loro nomi sono presenti
nel .odb

http://img217.imageshack.us/img217/957/imgcsvoe6.png


Per soluzioni alternative. Passare da Calc non lo voglio fare, voglio
(vorrei) automatizzare la cosa senza alcun smanettamento da parte degli
utenti, dove posso preferisco essere io a gestire le operazioni.

Un' alternativa e' utilizzare i file Random a cui sono piu' affezionato,
se possibile pero' preferisco .csv .


Ciao Jack




--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Vuoi un prestito fino a 30.000 Euro? Clicca qui per un preventivo immediato! 
Prometeo ti propone prestiti personali senza attese e senza spese.
* 
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7161d=2-11


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [utenti] [Base - HSQLDB] Esportare record in un file csv

2007-11-01 Per discussione Paolo Mantovani
Ciao Jack,

Il mercoledì 31 ottobre 2007 21:31:46 Jack © ha scritto:
 Premessa, ho un db di ricette e visualizzo i risultati di una query di
 selezione in un Datagrid. Vorrei poter dare la possibilita' di esportare
 i record restituiti dalla query e visualizzati nel datagrid in un file .csv

ok è chiaro.


 Ho fatto questo tentativo sperando di poter aggiungere al file .csv un
 record per volta, ma la cosa non funziona, una volta creato il file non
 e' piu' possibile aggiungere record.

Quindi la tua macro funziona ma solo per la prima chiamata?


 Es.. non funzionante

E allora perchè adesso scrivi che non funziona?
Non funziona per niente o funziona solo per la prima chiamata?

[...]
 sQuery=  SELECT * INTO TEXT MioExportRicette FROM tbricette

perdona la mia ignoranza, ma pensavo che si usasse select * into 
outfile 'nomefile' per l'esportazione dei dati.
select into text è la stessa cosa?

[...]
 Bene, spero di essermi spiegato in modo dignitoso, vengo alla domanda,
 c'e' modo di usare  SELECT * INTO TEXT per generare in un sol botto
 il file .csv con una selezione di record ?

Come ho detto non mi è molto chiaro cosa va storto e in che modo.
Ho la vaga impressione che sotto sotto ci sia un problema di file lock
In questo caso dovresti realmente assicurarti di mettere i dati nel file in 
una sola istruzione e non con un ciclo

Ma prima di mettermi a suggerire soluzioni ad capocchiam mi piacerebbe 
capire meglio i termini del problema

ciao
Paolo










-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[utenti] [Base - HSQLDB] Esportare record in un file csv

2007-10-31 Per discussione Jack ©

Premessa, ho un db di ricette e visualizzo i risultati di una query di
selezione in un Datagrid. Vorrei poter dare la possibilita' di esportare
i record restituiti dalla query e visualizzati nel datagrid in un file .csv

Ho fatto questo tentativo sperando di poter aggiungere al file .csv un
record per volta, ma la cosa non funziona, una volta creato il file non
e' piu' possibile aggiungere record.

Es.. non funzionante


'___

Sub Esporta
'___

Dim oBaseContext as Object, oDB as Object, oCon as Object, oStatement as
Object, oRecordSet as Object

'___

oBaseContext = CreateUnoService(com.sun.star.sdb.DatabaseContext)
oDB = oBaseContext.getByName(MonsterChef)
oCon = oDB.getConnection(,)
oStatement = oCon.CreateStatement()


  for conta = 3 to 10 step 1
   sQuery=  SELECT * INTO TEXT MioExportRicette FROM tbricette

  Where tbricette.idRicetta = '  conta  ' 
   oRecordSet = oStatement.executeQuery(sQuery)
  Next

End Sub

'


Il ciclo For e' solo per fare una prova, nella realta il valore
idRicetta lo ricavo  dalla colonna del datagrid.

Bene, spero di essermi spiegato in modo dignitoso, vengo alla domanda,
c'e' modo di usare  SELECT * INTO TEXT per generare in un sol botto
il file .csv con una selezione di record ?



Ciao Jack



















--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Sviluppa il tuo business e trova nuovi clienti con il Direct Email Marketing di 
Email.it, la strategia vincente per rafforzare la tua impresa!
* 
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=7147d=31-10


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]