domenica 1 marzo 2009

Installare Adempiere ERP su Ubuntu

Un breve tutorial sull'installazione del software ERP open source Adempiere. Ho installato con successo Adempiere su Ubuntu 8.10 con JDK 5.

File necessari:

  • Adempiere (lo trovi qui)

  • PlSql per Postgres 8.3 (lo trovi qui)

  • JDK 5/6 (JRE non va bene)

  • PostgreSql 8.3

Per ora ci servirà scaricare solo il pacchetto Adempiere e PlSql. Per quanto riguarda gli altri file, utilizzeremo delle versioni precompilate per Ubuntu, disponibili nei repository ufficiali.

Installazione JDK

installare il pacchetto

sun-java6-jdk

se si verificano dei problemi nei passi successivi installare

sun-java5-jdk

ed impostare come jdk predefinita la versione 5 con i seguenti comandi:

java -version

selezionare la versione 5 dopo aver dato i comandi:

sudo update-alternatives --config javac

sudo update-alternatives --config java

digitare:

java -version

per verificare che sia attiva la jdk5.


Aggiungere le variabili d'ambiente

Modificare il file nascosto profile contenuto nella directory home:

gedit /home/roberto/.profile

aggiungendo i seguenti path alla fine del file:

export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun/

export ADEMPIERE_HOME=/home/roberto/Programmi/Adempiere/

disconnettersi da Ubuntu e riconnettersi per rendere effettive le modifiche.


Installazione Postgresql e PlJava

Da Sistema->Amministrazione->Gestione pacchetti synaptics installare:

  • postgresql (e pacchetti dipendenti)

  • pgadmin3 (e pacchetti dipendenti)


Scaricare PlJava

dal sito http://pgfoundry.org/frs/download.php/1598/pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz

scaricare la versione appropriata per la versione di Postgresql installata.

Ad esempio nel caso in cui si installa Postgresql 8.3, scaricare il file:

pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz

[For 64bit users, download from pljava64bit from Sim IT Sdn Bhd]


Terminata l'installazione di postgresql aprire il terminale e loggarsi come root:

sudo su -

impostare la password per l'utente (creato durante l'installazione del DB) postgres:

passwd postgres

esportare la variabile JAVA_HOME (se è stata installata un'altra versione di java, verificare il percorso):

export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun/


Creare un nuovo host (in Adempiere non è possibile usare localhost). Creeremo un host con indirizzo 127.0.0.2:

sudo gedit /etc/hosts

e aggiungere la riga:

127.0.0.2 roberto-laptop

dove roberto-laptop è il nome del computer (il nome del tuo computer lo puoi ricavare aprendo il terminale).

In questo modo possiamo configurare anche altri computer in modo che raggiungano i nostri servizi.


Modificare il file pg_pass.hba:

gedit /etc/postgresql/8.2/main/pg_hba.conf

cambiare il metodo di autenticazione da md5 a trust e aggiungere la riga evidenziata in rosso:

# Database administrative login by UNIX sockets
local all postgres trust
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 127.0.0.2/32 trust
# IPv6 local connections:
host all all ::1/128 trust


Estrarre l'archivio pljava, scaricato prima, in /opt/pljava:

sudo mkdir /opt/pljava

sudo cp pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz /opt/pljava

cd /opt/pljava

sudo tar xzvf pljava-i686-pc-linux-gnu-pg8.3-1.4.0.tar.gz


Editare il file postgres.conf:

gedit /etc/postgresql/8.2/main/postgresql.conf

sostituire la riga

#listen_addresses = 'localhost'

con:

listen_addresses = '*'

ricordarsi di decommentare la riga togliendo il #.

Inoltre, sempre in questo file (postgresql.conf) aggiungere le seguenti righe:

dynamic_library_path = '\$libdir:/opt/pljava'
custom_variable_classes = 'pljava'
pljava.classpath = '/opt/pljava/pljava.jar'


Editare il file:

gedit /etc/ld.so.conf

aggiungere le righe:

$JAVA_HOME/jre/lib/i386
$JAVA_HOME/jre/lib/i386/client
$JAVA_HOME/jre/lib/i386/native_threads
$JAVA_HOME/jre/lib/i386/server

digitare il comando seguente per ricaricare la configurazione:

ldconfig

riavviare il server di postgresql:

sudo su – postgres

/etc/init.d/postgresql-8.3 restart


Avviare pgAdminIII (Applicazioni->Strumenti di sistema->pgAdmin III)

Registrare un nuovo server come mostrato nella figura seguente:

come password usare la stessa dell'utente postgres creata prima con il comando passwd postgres.

Nome: postgres

Host: 127.0.0.2

Nome utente: postgres

Password:


Creare un nuovo ruolo e un nuovo database

Per il nuovo ruolo scegliere come nome adempiere e come password adempiere (vedi figura seguente):

creare un nuovo database chiamato adempiere, come in figura:

Alternativamente è possibile il database usando la shell:

sudo su – postgres

createdb -E UTF8 -O adempiere adempiere




Installazione Pljava

loggarsi al terminale come root:

sudo su -

estrarre l'archivio Adempiere_353a.tar.gz in /home/roberto/Adempiere

(al posto di roberto utilizzare il nome della vostra home directory)


copiare il file postgresql.jar in /opt/pljava

cp /home/roberto/Adempiere/lib/postgresql.jar /opt/pljava

cd /opt/pljava

eseguire il seguente comando:

java -cp postgresql.jar:pljava.jar:deploy.jar org.postgresql.pljava.deploy.Deployer -database adempiere -user adempiere -password adempiere -install


Importare il dump del database

In poche parole bisogna popolare il database adempiere creato prima con tutte le tabelle e tutto ciò che è necessario per il funzionamento di Adempiere (ricordiamo che Adempiere per funzionare ha bisogno di un database. In questo caso abbiamo scelto di usare PostgreSql ma è possibile usarne altri).

  • Avviare pgAdmin III dal menu

  • connettersi al server

  • selezionare il database Adempiere ed eliminare con cascade lo schema sqlj (se non ci riuscite saltate questo passo)

  • aprire il terminale e digitare:

sudo su - postgres

psql -d adempiere < /home/roberto/Adempiere/data/Adempiere_pg.dmp


Installare Adempiere

cd $ADEMPIERE_HOME

sh RUN_setup.sh

si avvierà una schermata in cui si dovranno inserire delle informazioni:

  • tipo di database: postgres

  • user database: adempiere

  • porta 80 oppure 8080

  • porta ssl 443 oppure 5223

  • porta db: 5432

  • database name: adempiere (o template1 non ricordo bene)

  • password database: adempiere


Cliccare su test, se tutto ok cliccare su save. Trascorreranno circa 5 minuti, controllare nel terminale che non si verifichino degli errori. Alla fine del processo dovrebbe apparire la scritta BUILD SUCCESSFULLY in 5 min...


Avviare il server di Adempiere:

sh $ADEMPIERE_HOME/utils/RUN_Server2.sh

l'avvio richiede circa 5 minuti.

Quando termina l'avvio del server uscirà la scritta started in 5min... se vengono visualizzati degli errori che riguardano l'invio di e-mail non riuscito, ignorarli. Non chiudere questa shell.

Aprire una nuova shell e avviare Adempiere con il seguente comando:

sh $ADEMPIERE_HOME/RUN_Adempiere.sh

Si aprirà una finestra con un campo evidenziato in rosa. Cliccare su tale campo ed effettuare il test dell'applicazione e del database (ricordo di usare roberto-laptop nel campo host). Confermare tutto e cliccare sulla spunta verde per avviare Adempiere.


Creare un ordine di acquisto per verificare che PlJava funzioni correttamente:

  • Login to Adempiere as GardenAdmin with password GardenAdmin. On the next screen accept the defaults and click the green tick. The Java Client will open!

  • Select Menu tab

  • Select Requisition-to-Invoice / Purchase Order

  • A new record will open with the Business Partner field in pink

  • Click the icon at the end of the Business Partner and a Business Partner Info window will open

  • Press Enter and all the Business Partners will show

  • Highlight Tree Farm or another partner, and click the green tick

  • On the left menu, select PO Line

  • Click icon on the end of the Product field and the Product Info window will open

  • Press Enter and all the Products should appear. If the Products do appear the PL/Java is operational. If the Products do not appear then your PL/Java is not working and you need to check that you have activated PL/Java in the method above!

To Exit:

  • Click the red cross to Exit

  • Close the Purchase Order window to Exit this PL/Java confirmation test.


Chiudere Adempiere

Per chiudere adempiere, basta chiudere l'applicazione e stoppare il server.

Aprire un nuovo terminale e digitare:

sh $ADEMPIERE_HOME/utils/RUN_Server2Stop.sh

FONTI:

http://ubuntuforums.org/showthread.php?t=725933

http://www.adempiere.com/wiki/index.php/Install_on_Ubuntu_8.10


1 commento:

  1. Ciao,

    ottimo articolo, specialmente per chi ha poca dimestichezza con Linux. Ho preparato una VM dove proverò ad installarlo. Avrei però una domanda da farti.
    Sono capitato in questa pagina mentre davo un'occhiata in giro per trovare un piccolo ERP OpenSource per un'attività che vorrei iniziare, e tra questi ho trovato Adempiere. Quello che mi piacerebbe sapere è se è localizzato per la fiscalità italiana e se hai avuto occasione di metterlo in opera in un ambiente di produzione.

    Grazie mille per l'aiuto
    Stefano

    RispondiElimina