Frequently Asked Questions - 1.4

Yes. IBANs are very long, bank account numbers. LedgerSMB has no problems storing, retrieving and using these without any issue.

Yes. SEPA (Single Euro Payments Area) requires support for very long bank account numbers (IBANs or International Bank Account Numbers). LedgerSMB can store and use these numbers without problems.

Assuming you have created a backup file using setup.pl, you can restore your database using the command:

 $ pg_restore [options] your_backup.bak

It should be pointed out that it's not possible to restore a backup to a database with a different name than the one you made the backup from!

If the database to restore into doesn't exist: replace [options] with -C new_database.
If you want to restore replacing an existing database: replace [options] with --clean -C new_database.

Note: You need to restore the roles backup before restoring the data backup.

FAQ Category: 

In the 'setup.pl' administrative interface, there are 2 buttons:

  • Backup database
  • Backup roles

One creates a backup of the content of your database. The other creates a backup of the roles.

Roles are elements which are required to exist before creation of a database, and assign fine-grained access control.

When restoring, you need both files and you need to restore the roles before the database.

FAQ Category: 

The answer to this question depends on what using means to you.

As a user of the web application, yes, there should be absolutely no problem using a recent (as in: no more than 2 or 3 years old) web browser in order to take advantage of all the features available.

As a platform for running a LedgerSMB server, it's simply been too long since it has been last tested. You might be able to make it work at the expense of considerable effort. If you do, please comment on this FAQ or contact the mailing list to let us know about your process and results!

Those running a LedgerSMB server on the Windows platform - that we know of - do so with virtualization techniques such as VirtualBox.

Operating system: 

The short answer is that TeX doesn't know how to deal with UTF-8 (or rather non-ASCII) characters. XeTeX has been designed to work around these limitations. The easiest way to generate PDFs is to install Xe(La)TeX and use the 'xedemo' templates - these templates have been 'ported' from LaTeX to XeLaTeX.

Distribution specific install instructions listed below.

Debian / Ubuntu 

Install texlive-xetex that includes xelatex

apt-get install texlive-xetex

but you need to patch LaTeX::Driver
Install liblatex-{driver,encode,table}-perl for latex

apt-get install liblatex-{driver,encode,table}-perl

and libmoosex-followpbp-perl for Template::Plugin::Latex

apt-get install libmoosex-followpbp-perlafter that:

apt-get install libtemplate-plugin-latex-perl  (or cpan Template::Plugin::Latex)

 

LedgerSMB xelatex configuration

Install xelatex and change the LedgerSMB configuration from the menu:
System -> System Defaults -> Templates directory
Change to "xedemo"

Change a path

From the mailing list: (Chris Travers)
Right now, I am open to suggestions on a better approach, as the Template::Latex api's don't seem to work to do this, but I resorted to changing the paths in LaTeX::Driver::Paths directly (find the location with locate LaTeX/Driver/Paths.pm). This file gets written at installation time for the LaTeX::Driver module and so I consider it reasonably editable.

locate LaTeX/Driver/Paths.pm

If locate is not installed you can do:  find /usr . |grep "LaTeX/Driver/Paths.pm"
/usr/share/perl5/LaTeX/Driver/Paths.pm  ( Debian / Ubuntu )

Make a backup copy of  LaTeX/Driver/Paths.pm (you have to have root priviliges to do this or use sudo)

cp /usr/share/perl5/LaTeX/Driver/Paths.pm /usr/share/perl5/LaTeX/Driver/Paths.pm.backup(Change the path to your path for LaTeX/Driver/Paths.pm)

User your text editor to edit LaTeX/Driver/Paths.pm  (you have to have root priviliges to do this or use sudo)

In LaTeX/Driver/Paths.pm change

$program_path{pdflatex} = '/path/to/pdflatex;

to

$program_path{pdflatex} = '/path/to/xelatex';

 

This is the error you get, if you do not change:
/usr/share/perl5/LaTeX/Driver/Paths.pm  (Debian path)  :


Error!

latex error - pdflatex exited with errors:
!
l.26 \RequireXeTeX
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! Fatal fontspec error: "cannot-use-pdftex"
!
! The fontspec package requires either XeTeX or LuaTeX to function.
!
! You must change your typesetting engine to, e.g., "xelatex" or "lualatex"
! instead of plain "latex" or "pdflatex".
!
! See the fontspec documentation for further information.
!
! For immediate help type H <return>.
!...............................................
l.38 }




 

The utf8 character "hack fix"

Before making this change will UTF8 characters appear as squares in the PDF file. To print utf8 characters in pdf files, you must make the following change:

These are the steps:
su root
open /usr/share/perl5/LaTeX/Driver.pm
in your text editor
go to line 174 on Debian Squeeze (6.x) and line 176 on Debian Wheexy (7.x)
you see "write_file( ..." there
change

".tex", $source

to

".tex", {binmode=>':utf8'}, $source

 

Font fix

In order for Verdana to work, install the package ttf-mscorefonts-installer (Debian/Ubuntu)

apt-get install ttf-mscorefonts-installer

In versions 1.3.28 and up, the demo templates no longer depend on Verdana though, but use the non-proprietary Liberation font set, which can be installed using

apt-get install fonts-liberation

 

Code reference to LedgerSMB

The code for this is LedgerSMB/Template/Latex.pm

Component: 
Base

Active support

Versions 1.4 and higher are under active development and are supported by the community.

End of life

If you're looking for help on how to use EOL-ed versions, please try mailing the users mailing list. If you're looking someone to create bugfixes, please check with one of the parties providing commercial support.

Version 1.3 has been declared end-of-life on 2015-12-23. The last release in the series is 1.3.47. No further releases will be made by the community.

LedgerSMB versions 1.0, 1.1 and 1.2 won't be maintained any further due to the fact that there are some known security issues which can't be fixed.

FAQ Category: 

Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 [ http://en.wikipedia.org/wiki/Perl ]

Perl 5 is a highly capable, feature-rich programming language with over 24 years of development.
http://www.perl.org/


Learn Perl
http://www.perl.org/learn.html


The Bernard Chan Perl Tutorial
http://geek.scorpiorising.ca/lcms/index.php?page=perl

http://www.cbkihong.com/index.pl?op=perltut&lang=e



Perl on CPAN
Requires: Perl 5.004, Carp, Exporter, GD (optional)
http://search.cpan.org/~wrw/Barcode-Code128-2.21/lib/Barcode/Code128.pm#...

Example:
use Barcode::Code128 'FNC1';
$code = new Barcode::Code128;
$code->text(FNC1.'00000123455555555558');

This is CODE128 which may not be what you want if you are trying to print barcodes for retail purposes. In the US you would want to use UPC-E (for those reading from Europe, this is similar to EAN there). Different barcode scanners encode information differently so using the wrong type will result in problems.

Recommend readinging before you start:
http://www.scandit.com/2011/10/13/types-barcode-upc-ean-code128-vs-qr-da...

Also note: Most barcode decoders (on-scanner or otherwise) have to be programmed to know what sort of barcode they are expecting so you don't want to mix these in an environment.

Pdftricks and pstricks can be used to generate barcode images in LaTeX templates.
http://mirror.hmc.edu/ctan/graphics/pstricks/contrib/pst-barcode/pst-bar...
http://ctan.cermin.lipi.go.id/graphics/pstricks/contrib/pst-pdf/pst-pdf.pdf
http://www.ctan.org/pkg/pdftricks

Q: Brian Wolf
A: Chris Travers
Source: http://permalink.gmane.org/gmane.comp.finance.ledger.smb.user/6822

Release: 
Topic: 

The templates use the Template Toolkit scripting language to generate actual content.
Depending on the typesetting language, the files use
* HTML;
* (Xe)LaTeX; or
* plain text
as the typesetting system.

While LaTeX and XeLaTeX are extremely similar, some differences exist, mainly in the area of font selection and document preamble.


Latex cheat sheet - http://www.stdout.org/~winston/latex/

Latex in 157 minutes - http://tobi.oetiker.ch/lshort/lshort.pdf



The LATEX Font Catalogue - http://www.tug.dk/FontCatalogue/about.html

Guide in Norwegian: http://dag.at.ifi.uio.no/latex-links/uiofonts.pdf

Component: 
Base
Release: 

In general: neither. The advice is to have the full source tree in /opt/ledgersmb/<version>.

Installing the LedgerSMB modules in the standard Perl search path works, but interferes with running different versions side-by-side.

To undo installation in /usr/local:

  • remove /usr/local/share/perl/5.XX.X/LedgerSMB/
  • delete /usr/local/share/perl/5.XX.X/LedgerSMB.pm; and
  • find and remove the .pl files that come in LedgerSMB's project root directory and bin/ and LedgerSMB/Scripts/ directories.
Component: 
Base
FAQ Category: 

The default configuration limits access to the /ledgersmb/login.pl page to connections from localhost (127.0.0.1) only for maximum security.

If you want to allow connections from other locations, it's highly advisable to use encrypted (VPN) connections to access your ledger in order to maintain good security.

Release: 
FAQ Category: 

The simple one:
Sales order: Customer wants to buy something.
Sales invoice: Customer owes for goods and services delivered.

Business-flow-wise, typically you take an order before everything is done necessary for the transaction to hit the books, and convert it to an invoice when everything that has been done for the income to be realized has happened. This typically means:

1) Goods or services are delivered
2) Any approval/error checking the business requires has happened

One big thing in 1.4 is that approval for invoices is possible so instead of two steps you can actually have three (goods ordered, invoice pending approval, and approved/posted to the books).

An other expl:
A sales invoice hits the books, and represents a financial transaction.

A sales order does not show up in the books. It's upstream of any financial transaction, and so anything on it will not be reflected in any financial report or have any transactions on any of the account charts.

So orders are more for managing your workflow. Invoices are for accounting. Your accountants probably do not care about your orders -- all they care about are invoices.

An other example:
A sales order is what I write down when you want to buy something from me. You ask me to ship you 10,000 staples next week. When I actually do ship you the 10,000 stables, I generate an invoice to go with it. Before I ship, I have no receivable asset, but I have 10,000 stables. After I ship, I have a receivable asset posted, but I don't have the 10,000 staples.

If this happens between 10am and 2pm, not a huge difference. If it happens between noon on Dec. 31 and I ship on Jan 4, the next year, this might matter.

Unless I post the order, my factory floor might not actually produce the 10,000 staples, or they shipping department might ship the last 10,000 staples to someone else.

Q: Brian Wolf ( http://permalink.gmane.org/gmane.comp.finance.ledger.smb.user/6417 )
A: Chris Ttravers, John Locke and Michael Richardson

Release: 

How the LaTeX templates work and what is usually needed to get them up and working.

  [work in progess...]&#13;&#13;

The PDF and PS invoices are generated using a program called LaTeX which handles the layout and typesetting. The actual LaTeX files are creating using Template Toolkit with extensions for LaTeX. These extensions are in the Template::Latex package available from CPAN. The software then generates a LaTeX file which is then processed to create a PDF or PS.

Typically the first thing to do is to install a LaTeX distribution like TexLive (distributed with many Linux distributions and available for OSX and Windows). This provides LaTeX and many of the modules needed. In general I recommend that if your distro has a texlive-extras package that you install this too.

After this is installed, you must then install Template::Latex. This can be done by typing on the command line:

Note: Debian & Ubuntu look below.

cpan Template::Latex

This will also install a number of dependencies including LaTeX::Driver, which will need to know where your LaTeX binaries are. It is usually pretty good at finding them.

If things go wrong and you can't get it to work, the following commands may provide useful diagnostic information when requesting help:

>From the LedgerSMB application directory:
perl -MLedgerSMB::Template::Latex -e print

>From the doc/manual directory in the LedgerSMB application directory:
pdflatex LedgerSMB-manual


Debian & Ubuntu note:
Template::Latex is included in Template::Plugin::Latex which is now in Debian as
libtemplate-plugin-latex-perl. (It has migrated to Debian Testing ('wheezy')).
http://packages.debian.org/search?keywords=libtemplate-plugin-latex-perl
Install with apt-get install libtemplate-plugin-latex-perl


Ref: Latex in templates & Debian squeeze and xelatex
http://ledgersmb.org/faq/localization/im-using-non-ascii-unicode-charact...

Source:
How the LaTeX templates work
<a href="http://permalink.gmane.org/gmane.comp.finance.ledger.smb.user/6347

">http://permalink.gmane.org/gmane.comp.finance.ledger.smb.user/6347



With answers from Chris Travers, Robert James Clay

FAQ Category: 

My problem is that I want to translate LedgerSMB to Spanish Venezuela, I know that already it is, but there are still some words that are not. So I'm trying to add them.

 

There's a section dedicated to translation. That should help you to get started.
 
The basic idea is that everything you can learn from the web about translating with gettext applies to LedgerSMB's gettext translation as well, with the note that you should be able to find a recent POT file in the repository next to the source code for the latest development version (trunk) and the latest stable release (1.3).
Release: 

I have made a payment to a vendor, but entered an incorrect date, far in
the future. Consequently the payment does not show when I try to reconcile
the relevant bank statement.

How do I back-out the incorrectly entered payment?

Cash/Vouchers/Reverse Payment.

Then when you are done adding the payments you want to reverse,
approve the batch.

Tested on: LedgerSMB 1.3.15.
source: http://permalink.gmane.org/gmane.comp.finance.ledger.smb.user/6087

Release: 
FAQ Category: 

Is there a place where we could buy some consulting for LedgerSMB?
or a minimal setup according to our specs?

Take a look at Commercial Support

FAQ Category: 
Topic: 

Yes, its Open source. The tools we use (Perl, PostsgreSQL, Apache ++) is also Open source.
Open source means that the source code of the software is available for free to everyone and you can modify the code and distribute it yourself. https://en.wikipedia.org/wiki/Open_source

Look for a place to contribute. This means not only programming, but also documentation, theme design, art work, or architectural design. Join the mailing list.

GNU GENERAL PUBLIC LICENSE Version 2
http://ledger-smb.svn.sourceforge.net/viewvc/ledger-smb/trunk/LICENSE

Short answer: Yes

LedgerSMB can tie product sales to a tax class so that VAT can automatically be split off into the required VAT accounts on a sale, and when cancelling an invoice, automatically perform the reverse bookings.

Each product can be 'attached' to an account and the associated % will be applied automatically.

Release: 
FAQ Category: 

We ask that all IRC members follow the Ubuntu Code of Conduct.

We also ask that you always use a paste site when pasting more than 2-3 lines. Paste sites include:

FAQ Category: 

The LedgerSMB community follows the Ubuntu Code of Conduct.

FAQ Category: 

Make sure you have TexLive installed. Older TeTeX was recommended but according to Ubuntu repositories, TexLive is the new package to install.

You can install this with the following command:

apt-get install texlive-latex-extra

 

Release: 
FAQ Category: 
Operating system: 

Quite a few users find some of the terminology and accounting processes a little confusing at first. Some of the more popular small business accounting packages tend to hide these aspects of book-keeping from users for simplicity, so with the current user interface there is often some new ideas to grasp.

First step is the manual - the LedgerSMB manual is free and highly recommended reading.

If you would like some background on general accounting practices, there is an (unassociated) tutorial So, you want to learn Bookkeeping" which seems a good place to start.

Another excellent resource is second-hand book stores. Lots of MBA studends sell off their textbooks (presumably to finance their first business rather than pay of gambling debts) so second-hand bookstores will often have very good texts on accounting at bargain prices - these can make great reference books.

Finally it would be remiss not to recommend securing the services of an accountant to help you out with the finer points from time to time, should you feel the need or have a legal obligation to do so.

Wikipedia articles:
https://en.wikipedia.org/wiki/Accounting
https://en.wikipedia.org/wiki/Double-entry_bookkeeping_system
https://en.wikipedia.org/wiki/Accountant

FAQ Category: 

The table below lists the compatibility of LedgerSMB versions with PostgreSQL versions. Products for which support has ceased due to End-of-Life date being reached are not listed and should not be used.

PostgreSQL compatibility
PostgreSQL 1.3.x 1.4.x 1.5 planned
8.4 yes no no
9.0 yes yes no
9.1 yes yes yes
9.2 yes yes yes
9.3 yes yes yes
9.4  yes yes yes

Versions 1.0, 1.1 and 1.2 are not in this table due to the fact that they're past End of Life.

Release: 
FAQ Category: