*** empty log message ***
[fa-stable.git] / install.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
3 <head>
4
5   
6   <title>FrontAccounting</title>
7 </head>
8
9
10
11 <body>
12
13 <div><strong><span style="font-size: 20pt;"><span style="color: rgb(204, 102, 0); font-style: italic;">Front</span>Accounting 1.0 Installation</span></strong></div>
14
15 <h2>Pre-requisites</h2>
16
17
18 <ul style="margin-top: 0pt;" type="disc">
19
20
21   <li>A working HTTP web server eg. <em><strong>Apache, IIS</strong></em>. </li>
22
23
24   <li><strong><em>PHP</em></strong> installed on the web server. </li>
25
26
27   <li>A working <strong><em>MySQL</em></strong> server - with <strong><em>innodb</em></strong> tables enabled (see notes below) </li>
28
29
30   <li><strong><em>Adobe Acrobat Reader</em></strong> - for viewing the PDF reports before printing them out. </li>
31
32
33 </ul>
34
35
36 <h2>Important Notes</h2>
37
38
39 <ul>
40
41
42   <li>One critical aspect of the PHP installation is the setting of <strong><em>session.auto_start</em></strong> in the php.ini file. Some rpm distributions of PHP have the default setting of <strong><em>session.auto_start = 1</em></strong>.
43 This starts a new session at the beginning of each script. However,
44 this makes it impossible to instantiate any class objects that the
45 system relies on. Classes are used extensively by this system. When
46 sessions are required they are started by the system and this setting
47 of <strong><em>session.auto_start</em></strong> can and should be set to 0. </li>
48
49
50   <li><strong><em>Innodb</em></strong> tables must be enabled in the
51 MySQL server. These tables allow database transactions which are a
52 critical component of the software. This is enabled by default in the
53 newer versions of MySQL. If you need to enable it yourself, consult the
54 MySQL manual. </li>
55
56
57   <li>FrontAccounting is implemented and tested with MySQL. Generally
58 it should work with other databases, but this is not supported in any
59 way at the moment. </li>
60
61
62 </ul>
63
64
65 <h2>Copying all the project files to the correct directory</h2>
66
67
68 <ul>
69
70
71   <li>You must obviously have downloaded the project archive to be reading this file. </li>
72
73
74   <li>All the files inside this archive should be copied to a directory under the web server root directory. </li>
75
76
77   <li>For example, create a folder called <strong>/account</strong>, and extract the archive into this folder. </li>
78
79
80 </ul>
81
82
83 <h2>Installation Steps (automatic, recommended)</h2>
84
85
86 <ol>
87
88
89   <li>If you have the option to create multiple databases on your host, create one, fi. <strong>frontacc</strong>,
90 otherwise write down the database name for your account. At the same
91 time look up the username and password for the database. You will need
92 these informations during the wizard install. </li>
93
94
95   <li>Enter <strong><em>your_url/account/install</em></strong> (or
96 whatever directory you entered). This will run the install wizard,
97 setup a drill company and populating with initial data. You can later
98 on create your own real company. It is a good idea to get familiar with
99 the system before starting your own company.&nbsp;</li>
100   <li>After successfully install, remove or rename your install directory for safety reasons. You don't need it any more.</li>
101
102
103 </ol>
104
105
106 <h2>Installation Steps (manuel, for advanced users, not recommended)</h2>
107
108
109 <p><br />
110
111 </p>
112
113
114 <ol>
115
116
117   <li>
118     
119     <h3>Creating the Database</h3>
120
121
122     
123     <ol>
124
125
126       <li>NOTE : As FrontAccounting is still heavily under development,
127 the database structure will ALWAYS change between releases, so if you
128 have a database that you created for a previous release of
129 FrontAccounting, it WILL NOT WORK after installing a new release.
130 Please delete any old databases before proceeding. </li>
131
132
133       <li>We strongly suggest using a GUI to manage your database(s) and database users. If you don&rsquo;t have any, download <a href="http://www.phpmyadmin.net/"><strong>phpMyAdmin</strong></a>. </li>
134
135
136       <li>Create a database with a name of your choice. The default in config_db.php is &lsquo;<strong><em>frontacc</em></strong>&rsquo;, but of course you can select whatever name you desire. </li>
137
138
139       <li>Populate the database you have created. There are two scripts
140 are provided to populate the database (both inside the folder /sql) :
141
142         
143         <ol>
144
145
146           <li><strong><em>en_US-demo.sql</em></strong>. This has a minimal amount of demonstration data set up so that transactions can be tried to see how the system works. </li>
147
148
149           <li><strong><em>en_US-new.sql</em></strong>. This script has
150 only the basic data necessary to start a new company system off. If you
151 wish to set up your company on FrontAccounting then this is the script
152 to use. </li>
153
154
155         
156         </ol>
157
158
159       </li>
160
161
162       <li>Now that the database is created you will need to set up a
163 database user to access this database. DO NOT USE THE USER
164 &lsquo;ROOT&rsquo;. Set up a new user and give that user full
165 privileges over the database &lsquo;frontacc&rsquo;.</li>
166       <li>After successfully install, remove or rename your install directory <strong><em>your_url/account/install</em></strong> (or
167 whatever directory you entered) for safety reasons. You don't need it any more.</li>
168
169
170     
171     </ol>
172
173
174   </li>
175
176
177   <li>
178     
179     <h3>Editing config_db.php</h3>
180
181
182     
183     <ol>
184
185
186       <li><strong><em>config_db.php</em></strong> contains connection
187 information for the database. These must be set to your local settings
188 or you will not be able to access FrontAccounting. </li>
189
190
191       <li>FrontAccounting allows multiple connections, you can enter as
192 many connections as you have separate entities (most people will use
193 only one). </li>
194
195
196       <li><strong>$db_connections</strong> is an array of connections &ndash; for each connection : </li>
197
198
199       <li>&ldquo;<strong>name</strong>&rdquo; is the name of the connection, this is the name that will be displayed to the user </li>
200
201
202       <li>&ldquo;<strong>host</strong>&rdquo; is the computer IP
203 address or name where the database is. The default is localhost
204 assuming that the web server is also the sql server. </li>
205
206
207       <li>&ldquo;<strong>dbuse</strong>r&rdquo; is the user name under
208 which the database should be accessed. NB, again, do not use the user
209 ROOT. A user with appropriate privileges must be set up. </li>
210
211
212       <li>&ldquo;<strong>dbpassword</strong>&rdquo; is the password for &ldquo;dbuser&rdquo;. You would have entered this when you created &ldquo;dbuser&rdquo;. </li>
213
214
215       <li>&ldquo;<strong>dbname</strong>&rdquo; is the name of the database. The provided scripts use the name OpenAccounting. </li>
216
217
218       <li>&ldquo;<strong>tbpref</strong>&rdquo; is the table prefix for
219 the tables. If you only have access to one database, you must use table
220 prefix to separate the companies. Table prefix is set by a table prefix
221 counter inside config_db.php, fi. 0_ for the first company.</li>
222
223
224     
225     </ol>
226
227
228   </li>
229
230
231 </ol>
232
233
234 <h2>&nbsp;Logging In For the First Time</h2>
235
236
237 <ol>
238
239
240   <li>Open a browser and enter the URL for the web server directory where FrontAccounting is installed. </li>
241
242
243   <li>Enter the user name:&nbsp; '<strong>admin</strong>' </li>
244
245
246   <li>Enter the password: '<strong>password</strong>' </li>
247
248
249   <li>(NB : enter without quotation marks). </li>
250
251
252   <li>
253     
254     <div>You can set up additional user accounts from the System Setup
255 tab. Be careful not to delete the demonstration user until a new user
256 has been set up. If there are no users defined the next time you try to
257 login you won't be able to. The only way then to create a user to login
258 with is to manually edit the SQL table "users" to insert a user.</div>
259
260
261   </li>
262
263
264 </ol>
265
266
267 <h2>Setting Up Company Specific Data</h2>
268
269
270 <ol>
271
272
273   <li>All the standing configuration data is defined from the Setup tab
274 and each link should be reviewed to enter appropriate data for the
275 business. Setup wizards that guide you through this process has been
276 implemented and we strongly recommend you to use this approach, see <strong><em>Installation steps (automatic, recommended)</em></strong> . </li>
277
278
279 </ol>
280
281
282 <h2>Troubleshooting</h2>
283
284
285 <ol>
286
287
288   <li>If FrontAccounting is installed locally, you may have the <strong><em>session save path</em></strong> not set correctly. Normally this is set in your php.ini (for Windows). The entry is called <strong><em>session.save_path</em></strong>. Make sure this is set to a directory that actually exists. The default is set to /tmp, which may not be valid. </li>
289
290
291   <li>If you are installing FrontAccounting onto a shared server, you
292 may have to set the session save path within FrontAccounting. At the
293 top of config.php you will find this line : </li>
294
295
296   <li>Uncomment this line and set the path to a directory that exists
297 on your server. Make sure that you have read/write privileges on this
298 directory. </li>
299
300
301 </ol>
302
303
304 <p>&nbsp;</p>
305
306 </body>
307 </html>