Bart Aimar wrote:

Qualche settimana fa avevo seccato un po' tutti con il mio problema di
come installare automaticamente una libreria condivisa.
Paolo Mantovani sembrava decisamente propendere per un package... ma non
avendo ben capito come si prepara e come lo si possa trasportare insieme
al file di contabilità avevo escogitato un'altra soluzione.
Io di solito faccio così:

Di seguito c'e un risposta ad un mio post di Paolo Mantovani apparso (il post, non P.M.) sul NG di OOo, sono i passi per creare un Package per una Libreria. Nel caso incontri
difficolta' fatti sentire io non ho avuto problemi di sorta.

 Per creare un package:
 1) creare una libreria condivisa nel modo solito, attraverso l'IDE di
 StarBasic

 2) aggiungere i moduli di codice e i dialoghi

 3) localizzare la directory contenente la libreria nel percorso di
 installazione utente di ooo. Tipicamente (in Linux) :

 ~/.openoffice.org2/user/basic/MiaLibreria/

 Selezionare la cartella e comprimerla in un archivio zip
 es:
         ProgettoMiaLibreria.zip

L'archivio dovrà contenere l'intera directory e non i singoli files "sparsi"
 Illustrazione (visualizzare con font a larghezza fissa):

         ProgettoMiaLibreria.zip
                 |
                 +-MiaLibreria/
                         |
                         +-Module1.xba
                         |
                         +-script.xlb
                         |
                         +-ecc..


 Ora il package è pronto per essere installato mediante il package manager
 Se si vuole installare il package nello stesso sistema dove è stato creato
 occorre ricordarsi di rimuovere o rinominare la libreria originale, per
 evitare conflitti di nomi.

 Nota tecnica:
Il nuovo scripting framework, introdotto dalla versione 2.0 richiede che il
 package contenga il famigerato manifest.xml
 Inoltre i packages dovrebbero avere l'estensione *.uno.pkg anzichè il
 semplice *.zip

 Per ottenere questo risultato in modo semi-automatico io di solito faccio
 cosi:

 1) mediante il dialogo 'package manager' (menu strumenti -> gestione
 pacchetti) installare il package precedentemente creato:
 ProgettoMiaLibreria.zip
 (notare che l'estensione zip non è stata - per ora - modificata!!)

 una volta che l'installazione è andata a buon fine, riaprire il dialogo
 package manager e selezionare il proprio pacchetto nella lista dei
 pacchetti installati.
 Premere il pulsante "Esporta..." e rinominare il file con l'estensione
 *.uno.pkg

Il risultato sarà lo stesso archivio che avevate creato in precedenza ma con
 l'aggiunta della directory META-INF/
 contenente il file manifest.xml generato automaticamente da ooo



Questo creava qualche problema, perchè esitevano due variabili globali
con il medesimo nome, una dichiarata a livello di doccumento ed una
dichiarata nella libreria condivisa...
Ho risolto eliminando il modulo che conteneva quella var, e
facendegliela creare ex novo dalla macro alla fine dell'installazione
della libreria.
Le restanti macro sono macro identiche e non mi sembra che creino conflitti.

Per evitare conflitti con i nomi di Variabili e Routine usa la notazione estesa
es... MiaLibreria.miaVariabile, MiaLibreria.miaFunzione
in questo modo eviti eventuali conflitti.

Ora mi sto chiedendo se e quali vantaggi ci possano essere a distribuire
Ultimus con allegato uno zip che contiene la libreria condivisa.

Se dentro a qualche Procedura o Funzione apporti delle modifiche distribuisci
solo il package, e non tutto il programma.

Ciao JAck




--

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



Sponsor:

Prova GRATIS per 15 giorni! DVDNetRent e ricevi a casa 3 film. Puoi scegliere 
tra migliaia di titoli

Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=4632&d=2-3

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

Rispondere a