forked from ehuelsmann/ledgersmb-book
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathledgersmb-book.tex
305 lines (248 loc) · 10.9 KB
/
ledgersmb-book.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
% !TeX encoding = UTF-8
% !TeX spellcheck = en_US
% !TeX root = ledgersmb-book.tex
% Formatting & Source Notes
% ---------------------------
% To do's are represented by the string @@@TODO
%
% Any packages added to this book must be supported in LaTeXML. See
% the following URL for the details:
% https://math.nist.gov/~BMiller/LaTeXML/manual/included.bindings/
%
% All indentation should use space characters.
%
% All lists should be indented.
%
% EOL - End of line is CRLF (for historical reasons).
%
% Names for buttons, fields, etc. should be shown in \texttt{} instead of single or double quotes
% These names are used a lot and having so many quoted names is tiring to the eye.
%
% Navigation should use the menupath command. For example,
% \menupath{System \ma Defaults} where \ma is the menu arrow defined below.
%
% Data that is to be entered into a screen should be quoted using \texttt{}
% and should use a table. For example,
% \begin{longtable}{ llp{6cm} }
% Field Name & Field Value & Description \\ \hline
% \endhead
% Company Name & \texttt{Example Inc.} & Some notes if applicable \\
% & & \\
% \caption{First Login - Change user defaults data}
% \label{fig:first-user-user-default-data}
% \end{longtable}
%
% Remakrs or notes should be formatted as follows:
% \begin{quote}
% \textbf{Remark} Note that the \gls{rfq} entry screen contains prices; this is misleading
% at least: the printed output to be sent to the vendor does not. The fact that this screen
% allows entry of prices could be considered a bug.
% \end{quote}
%
% Tables of definitions or options should be formatted as follows:
% \begin{description}
% \item [Major] An increment in the major release number \index{release number} can mean significant architectural,
% \gls{API}, functional, or usage
% changes. It is expected that an upgrade to a new Major version is going to be planned and tested
% by the user organization before upgrading.
% \end{description}
%
\documentclass[10pt,a4paper]{book}
% Use block style paragraphs, not initial indent
\setlength{\parindent}{0pt}
\setlength{\parskip}{6pt}
\usepackage{lmodern}
\usepackage{url, palatino, color}
% \usepackage[colorlinks, linkcolor=black, urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{longtable}
\graphicspath{{images/}} % This is the old path
\newcommand{\graphicswidth}{0.8\textwidth}
\newcommand{\autoscreenshotdir}{auto-screenshots}
% Required to allow LaTeXML to handle graphviz
\usepackage{ifpdf}
% For use of next line in description list
\usepackage{enumitem}
\setlist[description]{style=nextline}
\ifpdf
% LaTeXML does not work with graphviz
% So we have to workaround that by only generating dot files when producing
% pdf files. The dot files are in the repository and if they need to be regenerated
% then they need to be deleted and regnerated by producing a new book pdf.
\usepackage[pdf]{graphviz}
\fi
% For fixing the postition of figures using H
\usepackage{float}
% For newlines inside cells
\usepackage{makecell}
% For code listings in the installation section
\usepackage{listings}
\definecolor{ghostwhite}{rgb}{0.97, 0.97, 1.0}
% hyper referenced index at the end.
\usepackage{makeidx}
\makeindex
% For links in the pdf table of contents
% Not sure of the impact of this on the HTML docs
% No color, no visible indication of the link
\usepackage{hyperref}
\hypersetup{
colorlinks,
citecolor=black,
filecolor=black,
linkcolor=black,
% urlcolor=black
}
% glossaries must be loaded *after* hyperref
% Items to be added to the Glossary or Acronym list are designated with \gls{csv} for single and \glspl{add-on} for plural form.
% To determine Acronym or Glossary enter the key in the appropriate file; acronyms.tex or glossary.tex
\usepackage[toc, acronym]{glossaries}
\makeglossaries
\ifdefined\LaTeXML
\newcommand{\figref}[1]{Figure~\ref{#1}}
\newcommand{\tabref}[1]{Table~\ref{#1}}
\newcommand{\secref}[1]{Section~\ref{#1}}
\newcommand{\charef}[1]{Chapter~\ref{#1}}
\newcommand{\appref}[1]{Appendix~\ref{#1}}
\else
\newcommand{\figref}[1]{Figure~\ref{#1} on page~\pageref{#1}}
\newcommand{\tabref}[1]{Table~\ref{#1} on page~\pageref{#1}}
\newcommand{\secref}[1]{Section~\ref{#1} on page~\pageref{#1}}
\newcommand{\charef}[1]{Chapter~\ref{#1} starting at page~\pageref{#1}}
\newcommand{\appref}[1]{Appendix~\ref{#1} starting at page~\pageref{#1}}
\fi
\newcommand{\menupath}[1]{{\tt #1}}
\newcommand{\ma}{\ensuremath{\rightarrow} }
% This is the only place needed to change the current version of LedgerSMB
% that this document references. Keep the space after.
\newcommand{\ledgerSMBversion}{development }
% Setup some pdf metadata.
\hypersetup{
pdfauthor={Erik H\"ulsmann, Neil Tiffin, Chris Travers},
pdftitle={Running your business with LedgerSMB \ledgerSMBversion},
pdfsubject={LedgerSMB Accounting and ERP software package},
pdfkeywords={LedgerSMB, Accounting, Inventry, Invoicing, G/L, ERP, Software, Free, Open Source}
}
% metalogo not available to latexml
% so the meta forms must have \ifpdf for HTML
\ifpdf
\usepackage{metalogo}
\fi
\loadglsentries{acronyms.tex}
\loadglsentries{glossary.tex}
\begin{document}
\ifpdf
\author{Erik H\"ulsmann \and Neil Tiffin \and Chris Travers \\
~ \\
~ \\
~ \\
\url{https://book.ledgersmb.org}
}
\title{
\includegraphics[width=0.45\textwidth]{NewLedgerSMBLogo512x256.png}\\
~ \\
~ \\
~ \\
Running your business with\\
{\Huge LedgerSMB \ledgerSMBversion} \\
~ \\
\texttt{DRAFT / WORK IN PROGRESS} \\
\normalsize{\emph{See the \hyperref[preface]{Preface} for current status.}}\\
}
\maketitle
\else
\author{Erik H\"ulsmann \and Neil Tiffin \and Chris Travers}
\title{
Running your business with
LedgerSMB \ledgerSMBversion \\
~ \\
\texttt{DRAFT / WORK IN PROGRESS} \\
~ \\
\footnotesize{\emph{See the \hyperref[preface]{Preface} for current status.}}\\
}
\maketitle
\begin{center}
\today
\end{center}
\fi
\tableofcontents
\listoffigures
\listoftables
\cleardoublepage
\section*{Preface}
\label{preface}
\addcontentsline{toc}{section}{Preface}
The current development goal for the book is to get the content current and accurate,
not necessarily perfect structure and grammar.
You will find many incomplete sections which should be regarded as an outline for the finished book.
However, some sections are nearly complete.
Because LedgerSMB is undergoing active infrastructure and API changes in 2024, some portions of this book will not be written until those changes are nearing completion.
\section*{Intended audience}
\label{sec-intended-audience}
The book has been split up into several parts intended for starting entrepreneurs,
(potential) users, application integration developers and
administrators, it offers something for everybody who works with or considers working with
LedgerSMB.
\section*{Organization of the book}
\label{sec-book-organization}
\addcontentsline{toc}{section}{Organization of the book}
The first
part (\lq\hyperref[part-overview]{Overview}\rq) is intended for everybody who tries to get an impression of LedgerSMB, with
chapters on technology, features, licensing and a bit of project history.
The second part
(\lq\hyperref[part-getting-started]{Getting started}\rq) leads new users and especially new entrepreneurs step by step through the
application using a tutorial format. This part also contains additional explanations on good business and accounting
processes.
The third part (\lq\hyperref[part-configuration]{Configuration}\rq) describes system wide configuration settings such as
the LedgerSMB configuration file and those required for dependencies like PostgreSQL. Additionally
it describes the company specific settings within the application, such as audit control settings
and required special accounts. This part is required material for anybody who wants to set up
a LedgerSMB instance.
The fourth part (\lq\hyperref[part-administration]{Administration}\rq) discusses the different topics
regarding application administration such as user management, product definition, taxes and etc.
Anybody responsible for maintaining application instances in good health should read this part.
The fifth part (\lq\hyperref[part-business-processes]{Business processes}\rq) discusses LedgerSMB's best practices.
This part is highly advised
reading for everybody who is a LedgerSMB user and should be considered required reading for 'business
architects': those in the company who decide about process design and execution.
The sixth part (\lq\hyperref[part-customization]{Customization}\rq) discusses how to customize the application.
This part is intended for developers of
custom extensions (such as company specific integrations), add-ons and plug-ins.
The last part (\lq\hyperref[part-appendices]{Appendices}\lq) contain supplemental reference information on various subjects,
such as a listing and description
of the authorization roles in the application as well as information on migration to or upgrading of
LedgerSMB versions.
\section*{Comments and questions}
\label{sec-comments}
\addcontentsline{toc}{section}{Comments and questions}
The sources of this book are being developed in the ledgersmb-book Github project at
\url{https://github.com/ehuelsmann/ledgersmb-book}. \\
~ \\
Comments and enhancement ideas can be filed
in the ticket tracker of the project. Additionally, discussion about the content of the book
can be organized on the mail list or chat channels listed at \url{https://ledgersmb.org/topics/support}.\\
~ \\
Finally, up-to-date versions of this book in both PDF and HTML formats can be found on the book website at \url{https://book.ledgersmb.org}.
\section*{Acknowledgments}
\label{sec-acknowledgements}
\addcontentsline{toc}{section}{Acknowledgements}
H{\aa}vard S{\o}rli for his efforts to help develop the original book outline.\\
~ \\
Members of the \url{https://app.element.io/#/room/#ledgersmb:matrix.org} chat room.
\include{part-overview}
\include{part-getting-started}
\include{part-configuration}
\include{part-administration}
\include{part-processes}
\include{part-customization}
\include{part-workflows.tex}
\include{appendices}
\clearpage
\addcontentsline{toc}{chapter}{Acronyms}
\printglossary[type=acronym]
\clearpage
\addcontentsline{toc}{chapter}{Definitions of terms}
\printglossary[title={Definition of terms}]
\clearpage
\addcontentsline{toc}{chapter}{Index}
\printindex
\end{document}