ERPNext

出自 ArchWiki

ERPNext 是一款基于 GPL3 许可的开源 ERP 软件,可通过 Web 浏览器访问。功能被划分为逻辑部分,方便用户仅选择所需的功能。这使其能够适应许多不同的使用场景。

有大量的文档。此外,论坛作为用户之间讨论的聚集地。

与它的替代品 Odoo 相比,它是完全开源的,没有专有版本。

安装

安装软件包 erpnextAUR 之前,必须启动 MariaDB 数据库。

注意: 不得存在名为 erpnext 的数据库。

在内部,该软件的安装方式不常见,因为它使用自己的安装程序 frappe-benchAUR

您可能希望使用 HTTP 服务器,如 NginxApache,以在反向代理后运行 ERPNext。

注意: 您的 git 配置可能会被更改。将添加 [safe] 部分。您可以安全地删除它。

依赖

安装程序对 Python 使用虚拟环境。因此,不需要系统范围的 Python 依赖项。

Bug (拒绝访问数据库)

在设置过程中,需要创建一个数据库。这由自己的用户完成。对于数据库创建,需要用户 "root"。默认情况下,它设置了一个空密码,但通过用户 "root" 访问。由于这在安装中是不可能的,因此需要为用户 "root" 设置密码。

更新

更新需要手动操作,因为如果名为 "erpnext" 的软件数据库已存在,则安装将失败。

保存您的数据库并删除它。

# mariadb-dump -p -u root erpnext > /tmp/erpnext.sql
# mariadb -e "DROP DATABASE erpnext;" -p -u root

保存您的文件和加密密钥。

# cp -r /usr/share/webapps/erpnext/sites/erpnext/private/ /tmp/erpnext-private/
# cp -r /usr/share/webapps/erpnext/sites/erpnext/public/ /tmp/erpnext-public/
# grep -Eo "^[[:space:]]+\"encryption_key\": [[:graph:]]+$" /usr/share/webapps/erpnext/sites/erpnext/site_config.json > /tmp/erpnext-encryption_key.txt

卸载 erpnextAUR 并删除其残留文件。

# rm -r /usr/share/webapps/erpnext/

之后,安装 软件包 erpnextAUR

现在,恢复您的旧数据库和文件,并删除备份。

# mariadb -e "DROP DATABASE erpnext;" -p -u root
# mariadb -e "CREATE DATABASE erpnext;" -p -u root
# mariadb -p -u root erpnext < /tmp/erpnext.sql
# cp -r /tmp/erpnext-private/* /usr/share/webapps/erpnext/sites/erpnext/private/
# cp -r /tmp/erpnext-public/* /usr/share/webapps/erpnext/sites/erpnext/public/
# readonly encryption_key="$(cat /tmp/erpnext-encryption_key.txt)"
# perl -0e "s|\"db_type\": \"mariadb\"|\"db_type\": \"mariadb\",\n${encryption_key//\"/\\\"}|g" -i -p /usr/share/webapps/erpnext/sites/erpnext/site_config.json
# rm /tmp/erpnext.sql
# rm -r /tmp/erpnext-private/
# rm -r /tmp/erpnext-public/
# rm /tmp/erpnext-encryption_key.txt

升级数据库。

# tmux new-session -s erpnext "erpnext"
# cd /usr/share/webapps/erpnext/
[erpnext]$ bench migrate
# tmux send-keys -t erpnext C-c

最后,确保正确的所属关系。

 # chown -R erpnext:erpnext /usr/share/webapps/erpnext/

移除

由于该软件自行创建文件,pacman 无法跟踪所有文件。要完全移除,请运行

# rm -r /usr/share/webapps/erpnext/

备份

创建数据库的备份,请参阅 MariaDB#备份。此外,保存您的文件,它们位于 /usr/share/webapps/erpnext/sites/erpnext/private//usr/share/webapps/erpnext/sites/erpnext/public/ 中。

使用

启动可执行文件 erpnext。需要 root 密码才能访问用户 "erpnext"。服务器运行,可以通过 http://localhost:8000 访问。