add some time-worked reporting
[freeside.git] / sql-ledger / doc / README
1                 SQL-Ledger Accounting
2                      Version 2.4
3
4
5 DESCRIPTION:
6 ------------
7 SQL-Ledger is a double-entry accounting system written
8 in perl. It has been tested with PostgreSQL, Apache,
9 Netscape, Mozilla, Galeon, Explorer, Links, Lynx,
10 Konqueror, Voyager, W3M and Opera clients on Linux,
11 FreeBSD, Solaris, Windows, Mac computers and PDA's.
12
13 Data is stored in a SQL server, either locally or remote,
14 the display is through a text or GUI web browser. The system
15 is linked by a chart of accounts.  All transactions for AR,
16 AP and GL are stored in a transaction table. Hyper-links
17 from the chart of accounts let you view transactions posted
18 through AR, AP and GL.
19
20 Configuration files let you specify to which SQL server
21 to connect to, personal preferences such as company name,
22 language, number and date format, etc.
23
24 With the admin script you can create, edit or delete users,
25 create and delete datasets and setup the Chart of Accounts
26 and templates needed for the system.
27
28 You can have a group of users using the same dataset and
29 templates for generating Invoices, Income Statements and
30 Balance Sheets or a different set altogether.
31
32 Templates are supplied in html and tex format to generate
33 most of the forms. Forms can be printed to screen, sent
34 to a printer or e-mailed.
35
36
37 COPYRIGHT:
38 ----------
39 Licensed under the terms of the GPL.
40
41
42 LATEST VERSION:
43 ---------------
44 available from http://www.sql-ledger.org
45
46
47 PLATFORMS:
48 ----------
49 Non specific, see requirements.
50
51
52 REQUIREMENTS:
53 -------------
54 1 - Perl, 5+
55 2 - http server (Apache, NCSA, httpi, thttpd, ...)
56 3 - SQL Server (PostgreSQL 7.1+)
57 4 - DBD (DBD-Pg)
58 5 - DBI
59 6 - LaTeX (optional)
60
61
62 FOREIGN LANGUAGE SUPPORT:
63 -------------------------
64 25 languages are supported. Language files are
65 ordinary text files, no special software is
66 required to change or add new translations.
67
68 Some of the translation files are not 100% complete.
69 If strings are missing, English is used instead.
70
71
72 INSTALLATION WITH setup.pl:
73 ---------------------------
74 Make a directory
75
76   mkdir /usr/local/sql-ledger
77
78 Copy setup.pl to /usr/local/sql-ledger
79
80 run setup.pl as root and follow the prompts.
81
82   perl setup.pl
83
84 Go to the next step, "PREPARE YOUR SQL SERVER".
85
86 NOTE: If you are behind a firewall and cannot download
87 the code with setup.pl, download the source code file
88 and specify the filename on the command line.
89
90   perl setup.pl sql-ledger-2.4.0.tar.gz
91
92
93 INSTALLATION WITHOUT setup.pl:
94 ------------------------------
95 unpack the tar.gz file in /usr/local
96
97   tar xzvf sql-ledger-x.x.x.tar.gz
98
99 you should now have everything in /usr/local/sql-ledger
100
101 copy sql-ledger.conf.default to sql-ledger.conf
102
103 edit sql-ledger.conf
104
105 create a file sql-ledger-httpd.conf in the same location
106 where your httpd.conf is and copy the next section into the file
107
108   Alias /sql-ledger/ /usr/local/sql-ledger/
109   <Directory /usr/local/sql-ledger>
110     AllowOverride All
111     AddHandler cgi-script .pl
112     Options ExecCGI Includes FollowSymlinks
113     Order Allow,Deny
114     Allow from All
115   </Directory>
116
117   <Directory /usr/local/sql-ledger/users>
118     Order Deny,Allow
119     Deny from All
120   </Directory>
121
122 edit httpd.conf and add
123
124   # SQL-Ledger
125   Include /config_directory/sql-ledger-httpd.conf
126
127 Note: use an absolute or relative path to include
128 the configuration in your httpd.conf file.
129
130 i.e. /etc/httpd/sql-ledger-httpd.conf
131      etc/apache2/sql-ledger-httpd.conf
132      
133 restart your web server.
134
135 Note: /usr/local/sql-ledger is only a suggested
136 path, you may install in any directory.
137
138
139 SET PERMISSION:
140 ---------------
141 change directory to /usr/local/sql-ledger
142
143 # chown -R nobody:nogroup users templates css spool
144
145 replace nobody:nogroup with the web server
146 user and group of your system. Some systems use
147 apache:apache, www, www-data, ...
148
149
150 PREPARE YOUR SQL SERVER:
151 ------------------------
152
153   PostgreSQL:
154   -----------
155   add one database user with create database and
156   create user privileges to manage the datasets
157   and tables for SQL-Ledger
158   
159   # su postgres
160   $ createuser -d sql-ledger
161   Shall the new user be allowed to create databases? (y/n) y
162   Shall the new user be allowed to create more new users? (y/n) y
163   
164   if you use passwords to access postgres use this command
165   $ createuser -d -P sql-ledger
166
167   Install PL/PGSQL in template1
168
169   # su postgres
170   $ createlang plpgsql template1
171   
172   
173   ORACLE:
174   -------
175   not supported yet
176
177   DB2:
178   ----
179   not supported yet
180
181
182 SETUP A DATABASE AND THE TABLES:
183 --------------------------------
184 Load your web browser and connect to
185 http://localhost/sql-ledger/admin.pl
186
187 Select the "Database Administration" link,
188 enter a host, port and the user you created
189 in the previous step.
190
191 The "Create Dataset" link queries the server
192 for existing datasets and displays them in a
193 table. Enter a name for the new dataset (use
194 lowercase letters only!) and select one of the
195 Chart of Accounts and click on Continue.
196 Your new dataset and the tables will be created
197 and the selected Chart of Accounts loaded. The
198 owner of the tables will be the user you entered
199 in the previous screen as the "User".
200
201 The "Delete Dataset" link queries the server
202 for datasets which are in use by SQL-Ledger
203 and are not used by any members. This may
204 take a while to figure out. "Be patient".
205 If there are any datasets not in use, you get
206 a screen with the datasets listed where you
207 select the one you want to delete.
208
209 You cannot manage any other datasets from this
210 interface, only the datasets used by SQL-Ledger.
211
212 POSTGRESQL: template1 is only used to query
213 the server, none of the information stored
214 in template1 is manipulated in any way.
215
216
217 SETUP A USER:
218 -------------
219 Load your web browser and connect to
220 http://localhost/sql-ledger/admin.pl
221
222 Click on "Add User". In the Database
223 section select the driver and enter
224 the user you used to create the dataset.
225
226
227 LOAD THE ACCOUNTING PROGRAM:
228 ----------------------------
229 Load your web browser and connect to
230 http://localhost/sql-ledger/login.pl
231
232
233 UPGRADING TO A NEWER VERSION:
234 -----------------------------
235 1. load admin.pl and lock the system
236 2. untar the new version over top
237 3. check the doc directory for specific notes
238 4. load admin.pl and unlock the system
239 5. log in
240
241 NOTE: datasets are upgraded when you log in for
242 the first time. If an error occurs the system
243 will remain locked. Track down the error, fix it,
244 load admin.pl, unlock the system and log in again.
245
246
247 UPGRADING WITH setup.pl:
248 ------------------------
249 run setup.pl from the command line and follow
250 the prompts.
251
252
253 INSTALLATION CHECKLIST:
254 -----------------------
255 1. untar SL somewhere
256 2. change permission for the users, templates, css and spool directory
257 3. edit httpd.conf
258 4. edit sql-ledger.conf
259 5. add the database user sql-ledger
260 6. load admin.pl
261 7. create datasets for the companies
262 8. add users
263
264    In the Database section enter
265    
266    a) PostgreSQL
267    
268       Host:     for local connections leave blank
269       Dataset:  the dataset created in step 7
270       Port:     for local connections leave blank
271       User:     sql-ledger
272       Password: password for sql-ledger
273
274
275 IF SOMETHING DOESN'T WORK:
276 --------------------------
277 There is a FAQ at http://www.sql-ledger.org/misc/faq.html
278 or read the one included in the doc directory.
279
280 There are also several mailing lists at
281 http://www.sql-ledger.org/misc/mailinglist.html
282 where you can seek free help.
283
284 To order commercial support see
285 http://www.sql-ledger.com/misc/support.html
286
287
288 =====================================================================
289 September 4, 2004
290