PhreeBooks

From SME Server
Revision as of 03:07, 5 July 2017 by Morpheus (talk | contribs) (update source for project and note changes)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

PhreeBooks Accounting

Author: Charles2008
Source 1: http://forums.contribs.org/index.php/topic,50284.0/topicseen.html
Source 2: http://www.phreebooks.com/documentation/how-tos/sme-server-phreebooks-install-howto/


  Warning:
Before you use PhreeBooks Accounting in a business environment you must satisfy yourself that it is suitable and meets you organisation's needs and the needs of your business jurisdiction you must also ensure that your unique set-up and file permissions meet your requirements and are appropriate for your hosing environment.


You use anything included here at your own risk.


Description

  Note:
Many changes in the project, visit https://github.com/phreebooks/PhreeBooksERP for more information and sources


PhreeBooks Accounting (previously called PhreedomERP) is a web based (multi-user), OpenSource, double-entry ERP/accounting software.
Demo: http://www.phreebooks.com/pb-demo ... (demo, demouser)

Dave Premo is the project leader and has kept a very firm control of development.
In his own words - http://www.phreebooks.com/pb-forum/viewtopic.php?p=3178#p3178

PhreeBooks aims to be a viable OpenSource alternative to Quickbooks and Peachtree/Sage.

Set-up on SME8

  Note:
PhreeBooks doesn't like 'hardened-PHP' (Suhosin)



Create a Bookkeeping ibay

This will be the directory Phreebook will run from. You must create it from Server Manager
Information bay name - bookkeeping
Description – Phreebooks Accounting
Group – Admin ... (set user Group)
User access via file sharing or user ftp – Write = group, Read = group
Public access via web or anonymous ftp – Local network, no password required
Execution of dynamic content (CGI, PHP, SSI) – Enabled

Create a PhreeBooks database

You can do it via via command line or I use PHPMyAdmin.


  Note:
Please note that it is strongly advised to set MySQL to default to the InnoDB format using MySQL#Enable_InnoDB_engine

and not MyISAM, as apparently InnoDB is 'more robust'.
BTW: PhpMyAdmin seems to be set out-of-the-box to default to MyISAM.

This InnoDB / MyISAM issue won't affect getting PhreeBooks going now, however, may cause some data integrity uncertainty down the road. Best to get it right now.


In PHPMyAdmin:
Create database - phreebooks
Collation – utf8_general_ci
Create user: select 'phreebooks' database from list on LHS > Privileges > Add User
Choose a unique User Name and Password and (make sure that you have made a note of these!
host - localhost
Database for user - Grant all privileges on database phreebooks
Add User



Missing instruction about how to do it on CLI that´s for LATER!



Sort out OpenBaseDir restriction

This is needed to allow files to be uploaded by PhreeBooks
You can read about this at PHP#Open_basedir_restriction


Remotely get to console of SME8 server using ssh (secure shell)
Run 'sudo su -' on a Ubuntu PC use Putty on Windows PCs.

 ssh root@<server ip address> -L443:localhost:443	

Then run this:

 db accounts setprop bookkeeping PHPBaseDir /home/e-smith/files/ibays/bookkeeping/:/tmp/
 signal-event ibay-modify bookkeeping

Delete the index.html

rm /home/e-smith/files/ibays/bookkeeping/html/index.html

Get PhreeBooks

 cd /home/e-smith/files/ibays/bookkeeping/files/
 wget http://sourceforge.net/projects/phreebooks/files/latest/download?source=directory

that will download latest version from PhreeBook site, now unzip it using:

 unzip <filename> 

for today that would be:

 unzip PhreeBooksR36RC2.zip

there should be 2 entries similar to this:

 PhreeBooksR36RC2
 PhreeBooksR36RC2.zip

One it´s the originally downloaded file (version can be newer) and other the directory with unzipped content.

Put files on right directory and right permissions

 mv phreebooks/* ../html/
 chown -R www:www /home/e-smith/files/ibays/bookkeeping
 chmod -R 0750    /home/e-smith/files/ibays/bookkeeping

Install and configure PhreeBooks using browser

Open a browser and type:

 https://<server ip address>/bookkeeping


  Note:
Please be patient, this can take 30 seconds or so (depending on processor speed etc )


Now follow the on-screen instructions.

Post-install adjustments

After install, the web server needs RO access to all directories except /my_files which needs write access also for writing company specific files.
Once you have the normal PhreeBooks desktop view (with dropdown menus across the top of the screen) then rename or delete the Install directory and make Includes/configure.php read only.

  mv /home/e-smith/files/ibays/bookkeeping/html/install  /home/e-smith/files/ibays/bookkeeping/html/install.old
  

or

 rm -rf /home/e-smith/files/ibays/bookkeeping/html/install

And configure rigth file permissions:

chmod -R 0551 /home/e-smith/files/ibays/bookkeeping
chmod -R 0750 /home/e-smith/files/ibays/bookkeeping/html/my_files
chmod  0400   /home/e-smith/files/ibays/bookkeeping/html/includes/configure.php 


  Note:
I am investigating whether the 0551 file-permission above can be lowered to 0550 IF the user can pre-establish membership of a 'Group', i.e. by password protecting the ibay.


I hope it works now. :)