This document is targeted at SQL-Ledger contributors. If you are not a contributor and not interested in becoming one, this page is not for you.

Providing feedback

A valuable way to contribute to SQL-Ledger is by using the software, and then providing feedback .

Tell the developers about your use of the software product, your experiences, issues you encountered, stuff like that. Your story will likely be very welcome and you'll probably receive some enthusiastic response from the developers (if not, don't worry. They're probably just busy with other things).

Sending in a Bug Report

We take bugs very seriously. To help us to quickly fix the bug, be sure to include as much information with your report as possible such as your platform, version numbers, error logs, configuration, etc. When you are not sure whether a piece of information is relevant, include it.

If you have the knowledge to supply a patch that fixes the issue, please do so...

Creating Patches
When you want to contribute a change or addition to existing source code, you should:

Write your code within a signature block of some sort
# JS

your code

# JS

This makes it simpler for us to spot your changes. If you change a line please make a note of the change by adding a comment.

Then generate a patch file or submit the changed file to contrib. Be sure to tell us for which version the patch is for, very important!

Translations are easy to make and all you need to know is how to use a text editor. Just don't be intimidated by some of the funny looking stuff in the translation file, it's nothing to be afraid of. So, here it goes.
  1. add a new directory in the 'locale' directory. The name of the directory is not important but to conform to standards we use a two letter country code which is in accordance to ISO 3166-1 standards .
  2. create a symlink to ../de/
  3. copy one of the 'LANGUAGE' files to the new directory and enter the longform for the language i.e English GB
  4. copy one of the 'COPYRIGHT' files and enter your name and email address
  5. run 'perl' from the command line
  6. edit the file 'all'
  7. run 'perl' again
  8. submit the 'all', 'LANGUAGE' and 'COPYRIGHT' file so it can be included in the distribution. Be sure to tell us for which version the translation is for.
To setup a new set of templates copy one of the master set (Default-). The templates are all in the templates directory. Name the templates by their language and add industry specific or other keywords. i.e Spanish_A4-invoice.tex, means templates in Spanish, A4 paper. Test your templates and submit to contrib.
Chart of Accounts
Chart of accounts are made up of two parts, a working chart of accounts and an official chart of accounts (GIFI) issued by your Government. GIFI stands for General Index for Financial Information and is a crossreference to provide financial information to your Goverment. If your country does not require one it may be used for other purposes, like consolidating accounts.

Nameing convention for the COA follows a simple rule. If it is industry specific anything goes, i.e. Manufacturing-chart.sql. If the working COA is to be tied to a GIFI the Manufacturing setup becomes Country_Manufacturing-chart.sql and Country-gifi.sql. If the GIFI is not required but the working COA is an official one it is then named Country-chart.sql. Notice there is no link to an industry specific COA.

  1. setup a working COA and create all the links
  2. setup tax accounts and defaults
  3. export the tables chart and gifi (don't worry about financial data, there is nothing stored in the tables)
  4. submit the files to contrib
  5. either name the files accordingly or tell us what it is
Henrik Jeppsson COA for Sweden
Dirk Enrique Seiffert COA and Spanish translation for Colombia
Khaimin Vladimir Russian translation
Carlos López Linares Spanish translation for El Salvador
Céline Des Ligneris French-Canadian GIFI
Paul J. Teeter Installation instruction for Mac OS X 10.3 (Panther)
Luis Falcón UTF-8 Spanish translation and chart of accounts
Bruno Leveque Num2Text and French translation.
Emil Kristek Czech translation and templates
Alexander C.H. Lorenz German invoice.tex template
Omar BaheyEldin Egyptian Arabic translation and COA
Jim Rawlings DB2 schema
Daniele Giacomini Italian translation, COA and European Standard GIFI
Kaspars Melkis Latvian translation and COA
Michael De Nil GIFI for Belgium (French & Dutch)
Marius Kjeldahl Norwegian translation and templates, OCR Banking slip
Jens-Ingo Brodesser COA and GIFI for Belgium. French translation.
Margeir Reynisson Icelandic translation.
Derek Fung Javascript menus and popups.
Ivan Petrouchtchak Ukrainian translation.
Tomás Pereira Spanish translation.
Arlei Osvaldo Nalesso Brazilian Portuguese templates.
Steve Forster Oracle 9i2 debugging.
Morten Pedersen Norwegian translation.
Jonny Larsson Swedish translation.
Ted Petit outstanding invoice summary and check printing.
Jeff Kowalczyk converted the 1.8.7 Pg-tables.sql (schema 1.8.5) to a syntax that creates the tables in Microsoft SQL server 2000.
Rick Price tested code on Oracle 9i.
Lauri Jesmin Estonian translation.
Jaume Teixi Catalan translation. Mac OS X 10.1.5
Aguibou KONE French translation.
Richard Lyons html formatting, tabbing order for customer entry screen.
Yvonne Einberger German chart of accounts according to SKR-03.
Markus Dahinden COA for Switzerland.
Gunter Ohrner German translation, COA for Germany.
Federico Montesino Pouzols Spanish translation.
Petri Leppänen Finnish translation.
Matthew Excell Tex templates for check printing.
Paul Tammes Dutch decimal equivalent chart of accounts. GIFI code input.
Wolfgang Sourdeau French tex templates.
Bill Ott schema and triggers for DB2.
Gordon Haverland Debian installation instructions.
LINET Services Latex templates.
Sergio A. Kessler additions for stylesheet.
Christopher Browne code for modularizing menus.
Alberto Ladron Spanish translation for Mexico. credit remaining calculation on invoice screen.
Christian Ullman Oracle 8 code, bug reports and testing.
Mufit Eribol Turkish translation.
Brian Cawthon DBI & DBD-Pg installation instructions for FreeBSD.
Peter Dabrowski Polish translation, chart of accounts for Poland.
Antonio Gallardo Trial balance.
Steve VanDeBogart reported a division by zero error if a discount of 100% is used.
Reed White Invoice button on customer screen to create invoice from within Add or Edit customer screen. DBI/DBD installation instructions for SuSE 7.3
Autrijus Tang Simplified Chinese translation and chart of accounts.
Chien Hsin Chan Traditional Chinese translation and chart of accounts.
Luca Venturini Italian chart of accounts, templates and translation.
Paulo Rodrigues Portugese translation. Oracle code and testing.
Tomas Fencl Czech translation, chart of accounts and templates. Tomas added a taxbase to the invoices to show the amounts taxes are calculated on.
Oscar Buijten French chart of accounts, translation.
Dutch translation, templates.
John Christian Stoddart Spanish translation. Logo design.
AJ Hettema Dutch translation.
Jonas Smedegaard Danish translation.
Eugenio Segura Spanish translation.
Henrik Pettersson Swedish translation.
Steve Doerr set up the first demo site in Kansas City, Kansas.
Chan, Wai Kin Traditional Chinese translation.
Martin Lillepuu Estonian translation, Win2K. Martin wrote the installation instruction for SQL-Ledger to work on MS Windows.
Jacky Fang Traditional Chinese (tw) translation. Wrote the installation instructions for a Redhat system. See the FAQ for more info.
Adrian Urquhart Bug reports, suggestions for expanding error reporting.
Andre Felipe Machado Brazilian Portuguese translation.
Keld Jřrn Simonsen Danish and Norwegian translations, chart of accounts and templates.
Sébastien Brassard French translation.
Ferdinand Gassauer KDE tester. He also provided a chart of accounts for Austria.
Maria Gabriela Fong Spanish translation.
Thomas Bayen added code for foreign language support and the German translation. Thomas' contribution got the translations going. Now SQL-Ledger is available in 24 languages and the list keeps on growing.
Thomas Good wrote an installation script for version 0.1 The first generation of the SQL-Ledger logo is based on his design.