LedgerSMB
中小企业会计和 ERP
概要
LedgerSMB 是一个免费的综合 web 应用会计系统,具有复式记账,预算,发票,报价,项目,时间卡,库存管理,运输和更多...
UI 允许全球访问。通过将其数据存储在企业级 PostgreSQL 开源数据库系统中,该系统对于每周处理数千笔交易的企业而言运行平稳。屏幕和客户可见的输出在模板中定义,可以轻松快速地进行自定义。支持的输出格式为PDF,CSV,HTML,ODF等。
通过内置的电子邮件功能将订单和发票直接发送给您的客户,或者将带有 RF 附件的询价(询价)发送给您的供应商。
系统要求
请注意,这些是当前开发版本 LedgerSMB 1.9 的系统要求。请检查 1.7 旧稳定版和 1.8 版本的系统要求。
Perl 5.24+
PostgreSQL 9.6+
- Web server (e.g.
nginx
,Apache
,lighttpd
,Varnish
)
Web 外部服务器仅在生产安装时才需要;为了进行评估,可以使用更简单的设置,如下所述。
客户端
客户端需要的是与Dojo
1.16 兼容的 Web 浏览器。它包括 3.6 和更高版本的所有当前版本的 Chrome 和 FireFox,以及 MS Internet Explorer 和各种移动浏览器。请注意,LedgerSMB 明确不进行任何支持 Internet Explorer 的尝试。
快速入门(Docker compose)
建立并运行 Docker 映像的最快方法是使用 GitHub 仓库中提供的 docker-compose 文件:
https://github.com/ledgersmb/ledgersmb-docker/blob/1.7/docker-compose.yml
它出于生产目的(即具有持久性(数据库)数据)设置 LedgerSMB 映像和支持的数据库映像,但有一件例外:设置具有 TLS 1.2 支持的 Nginx 或 Apache 反向代理 -- 如果您需要的话,这是一个要求 -- 通过任何类型的网络访问您的安装。
请参阅 Docker Hub 上的文档。
快速入门(从压缩包开始)
以下说明可帮助您快速入门。 该项目的站点提供了针对生产安装的深入安装说明。
系统(库)依赖性
除了在 CPAN 的“如何安装CPAN模块”页面上记录的内容之外,还需要具有以下非 Perl(系统)依赖性,才能使下面提到的 cpanm 命令起作用。
- cpanminus 可以手动安装,也可以作为系统软件包安装。 如果仅打算从 debian 软件包安装,则可能不需要安装 cpanminus。
- PostgreSQL 客户端库
- PostgreSQL 服务器
- DBD::Pg 3.4.2+(因此 cpanm 认识到不需要编译它)在 Debian 中,此软件包称为 libdbd-pg-perl;在 RedHat/Fedora 中,此软件包称为 perl-DBD-Pg。
- make 这由 cpan 依赖项在其构建过程中使用
然后,下面列出的某些功能也有系统要求:
- latex-pdf-ps 取决于以下二进制文件或库:
- latex(通常通过 texlive 软件包提供)
- pdflatex
- dvipdfm
- dvips
- pdf2ps
Perl 模块依赖性
本节取决于 有效的 local::lib 安装以及已安装的 cpanm 可执行文件。两者都可以从您发行版的软件包存储库中获得(Debian 分别称它们为 liblocal-lib-perl 和 cpanminus)。 cpanm 取决于 make 和 gcc 命令是否可用。
注意:安装所有 cpan 依赖项后,可以删除 gcc。但是,如果升级过程中需要其他模块,则可能需要重新安装它。
要安装 Perl 模块依赖项,请运行:
cpanm --quiet --notest --with-feature=starman [other features] --installdeps .
笔记
- 在 cpanm 命令的末尾不要错过 "." !
- 需要设置环境变量
PERL5LIB
,PERL_MB_OPT
和PERL_MM_OPT
并且PATH
需要包括 local::lib 位置。 [其他功能]
在 深入的安装说明中进行了描述。- The 深入的安装说明包含分发提供的软件包的列表,以减少从 CPAN 安装的依赖项的数量。
PostgreSQL 配置
虽然可以将 LedgerSMB 与标准的 postgres 用户一起使用,但是最好创建一个单独的“LedgerSMB 数据库管理员”。在此快速入门中,我们为 postgres 超级用户添加了一个密码:
$ sudo -u postgres psql -U postgres \ -c "alter role postgres password 'CHANGE-ME' valid until 'tomorrow'"
笔记
密码仅在分配给用户的当天有效,直到您忘记删除密码后才留下安全漏洞。
配置 LedgerSMB
LedgerSMB 应该无需配置即可运行。如果需要特定设置,请
cp doc/conf/ledgersmb.conf.default ledgersmb.conf
并编辑 ledgersmb.conf 以符合您的要求。
运行 Starman
完成上述步骤后,系统即可运行 Web 服务器:
$ starman --preload-app -I lib -I old/lib --listen localhost:5762 \ bin/ledgersmb-server.psgi 2020/05/12-02:14:57 Starman::Server (type Net::Server::PreFork) starting! pid(xxxx) Resolved [*]:5762 to [::]:5762, IPv6 Not including resolved host [0.0.0.0] IPv4 because it will be handled by [::] IPv6 Binding to TCP port 5762 on host :: with IPv6 Setting gid to "1000 1000 24 25 27 29 30 44 46 108 111 121 1000"
笔记
上面的命令不需要 root 特权
请不要使用 Starman 的 --user 选项设置用户。它与 LedgerSMB 运行的初始化交互很糟糕。
环境变量
我们在代码中支持以下环境变量
-
LSMB_WORKINGDIR
: 可选- 使
chdir
进入指定目录,这是在starman.psgi
中完成的第一件事。 - 如果未设置,则使用当前目录。
- 一个例子是
LSMB_WORKINGDIR=<span class="pl-s"><span class="pl-pds">'</span>/usr/local/ledgersmb/<span class="pl-pds">'</span></span> starman ...
- 使
我们为依赖项支持以下环境变量
PGHOST
: 可选- 指定
Postgres server
域名或IP地址
- 指定
PGPORT
: 可选- Specifies the
Postgres server
Port
- Specifies the
PGSSLMODE
: 可选- 为
Postgres
连接启用SSL
- 为
请注意有关 local::lib 环境的早期说明,该环境要求设置变量 PERL5LIB、PERL_MM_OPT、PERL_MB_OPT 和 PATH。
下一步
系统已安装,应该可以通过以下方式进行评估
http://localhost:5762/setup.pl
# 公司数据库的创建和特权管理http://localhost:5762/login.pl
# 应用程序的正常登录
该系统已为首次使用做好准备。 。
项目信息
在线聊天:
- IRC:
freenode #ledgersmb
- Matrix:
#ledgersmb:matrix.org
(bridged IRC channel)
邮件列表档案:http://archive.ledgersmb.org
邮件列表:
仓库:https://github.com/ledgersmb/LedgerSMB
项目贡献者
源代码贡献者可以在项目的 Git 提交历史记录以及存储库根目录的 CONTRIBUTORS 文件中找到。
可以在项目的 Git 提交历史记录以及 Transifex 项目时间轴中找到翻译贡献。
版权
Copyright (c) 2006 - 2020 The LedgerSMB Project contributors Copyright (c) 1999 - 2006 DWS Systems Inc (under the name SQL Ledger)
许可
(The first version translated by vz on 2020.07.18)