当前版本的 GNUCash 在连接 MySQL 数据库时有个比较严重的字符编码问题:为了兼容 Unicode 字符,GNUCash 在 gnc_dbi_mysql_session_begin() 函数中主动执行 SET NAMES 'utf8' 语句设定 MySQL 连接字符编码为 UTF-8,但遗憾的是用来在连接故障时修复连接的 gnc_dbi_verify_conn() 函数并没有进行类似的操作。一旦数据库连接因网络问题意外断开,用户输入新交易时就会使用 gnc_dbi_verify_conn() 重新创建的新连接,而该连接的字符编码是默认的 latin1,直接后果就是输入中文等字符都变成了一堆乱码。
实际上 GNUCash 底层使用的 libdbi 库是考虑了连接字符编码问题的,其专门提供了一个 "encoding" 的设置选项用来对连接字符编码进行通用设置,底层的各个 driver 在创建连接时都会尊重该设置。所以只要简单地增加该选项,不管连接怎么断开重连,字符编码都能保持正常。
打上附件中的 fix_charset.patch 就可以修正此问题了。
另外,General Ledger 功能实际上非常好用,有了它就不需要在各个 Account 之间来回切换查帐了。但 GNUCash 目前默认在 General Ledger 中只显示最近一个月的交易,可苦了想对更老交易对账的用户。
我对其进行了小小的修改,打上附件中的 enh_general_ledger.patch 即可让 General Ledger 显示当前年度的所有交易,这样对账就非常方便了。
分享到:
相关推荐
在本文中,我们将深入探讨如何在 Laravel 框架中为 Gnucash 开发后端,特别是使用 Eloquent ORM(对象关系映射)来与 MySQL 数据库进行交互。Gnucash 是一款开源的会计软件,它允许用户管理个人或小型企业的财务记录...
- **Windows 和 MacOSX 用户**:可访问官方网站提供的下载链接进行安装:<http://www.gnucash.org/download.phtml> - **Linux 用户**:大多数 Linux 发行版已将 GNUCash 纳入其软件库,用户可以直接通过发行版的软件...
GNUcash3.7 for windows os GnuCash 是个人或小型企业财务软件,是免费授权于GNU GPL的软件,它支持多种操作系统,包括GNU/Linux、BSD、Solaris、Mac OS X 以及微软的 Windows。多国语言版,包括简体中文。被设计...
gnucash-django, GnuCash简单的Web前端,使用 Django GnuCash的移动友好Web前端,主要使用 Django 编写。特性查看GnuCash帐户中的交易,以及它们的opposing帐户""按相反的帐户。事务描述或者事务发布日期进行筛选...
GnuCash 是一个可以用于个人或小型企业的免费财务软件,免费授权于 GNU GPL 软件,它支持多种操作系统,包括 GNU/Linux、BSD、Solaris、Mac OS X 以及微软 Windows。支持多国语言,当然还少不了简体中文。GnuCash 被...
GnuCash Android is a companion expense-tracker application for GnuCash (desktop) designed for Android. It allows you to record transactions on-the-go and later import the data into GnuCash for the ...
爱要不要gnucash-guide.chmgnucash-guide.chmgnucash-guide.chmgnucash-guide.chmgnucash-guide.chmgnucash-guide.chm
GnuCash 是一个可以用于个人或小型企业的免费财务软件,免费授权于 GNU GPL 软件,它支持多种操作系统,包括 GNU/Linux、BSD、Solaris、Mac OS X 以及微软 Windows。支持多国语言,当然还少不了简体中文。GnuCash 被...
GnuCash多语言版是一款可以用于个人或小型企业的免费财务软件,免费授权于 GNU GPL 软件,它支持多种操作系统,包括 GNU/Linux、BSD、Solaris、Mac OS X 以及微软 Windows。支持多国语言,当然还少不了简体中文。...
### Gnucash 使用手册知识点详解 #### 一、Gnucash 概述与核心概念 **Gnucash** 是一款专为个人和小型企业设计的开源财务管理和会计软件,支持多种操作系统,包括 Linux、Windows 和 macOS。该软件采用了**复式簿...
这使得用户可以免费获得最新的财务管理工具,并且可以根据自身需求对其进行定制。 2. **用户友好的界面**:GnuCash的设计简洁直观,即使是初次使用的用户也能快速上手。同时,软件提供了详尽的帮助文档和在线支持...
总的来说,GnuCash Export Modifier是一个为GnuCash用户量身打造的数据处理工具,通过Perl的强大功能,简化了对GnuCash交易数据的分析工作。它不仅节省了用户在电子表格工具中操作的时间,还提供了更高的定制化可能...
容器中的GnuCash Dockerized GnuCash( )。 当前基于Ubuntu 15.04。 当前的GnuCash版本:2.6.4建造: docker build -t gnucash .跑步: 允许来自容器的Xlib调用: xhost +LOCAL: 在容器中启动GnuCash: docker run ...
Gnucash转Beancount转换器 将您的Gnucash Sqlite3文件转换为Beancount文本分类帐。 需要Python 3.3+ 安装 pip install gnucash-to-beancount 用法 gnucash-to-beancount my-ledger.gnucash > my-ledger.beancount ...
GnuCash ::发票 适用于人类的GnuCash发票打印机。 安装 $ gem install gnucash-invoice 用法 GnuCash发票打印机当前支持SQLite,使用非常简单。 列出所有可以打印的发票: $ gnucash-invoice --dbpath /path/to/db....
收入/支出帐户类型(类别) :这些不仅可以对现金流量进行分类,而且可以与重复输入功能配合使用时,可以提供准确的损益表。 预定的交易:GnuCash具有自动创建和输入交易的能力。 导出到GnuCash XML ,QIF或OFX。...
一组自定义的条形图和饼形图报告根据标签对帐户进行分组。 尽管已在我自己的系统上对此进行了测试,并且看起来工作正常,但不能保证报告的准确性,并且可能存在错误。 测试,建议和代码贡献深表感谢! 动机 GnuCash...
复式会计记账 股票、债券、基金账户 小型企业会计 报告、图表 QIF、OFX、HBCI 导入数据以及交易匹配 计划的交易
用于访问金融服务和GnuCash数据库的由GnuCash,Google chrome等使用的同一台进行管理。配置GnuCash数据库预算访问我们使用命令行约定来创建Web密钥。 一种Web密钥授权在秘密存储区(例如Gnome密钥环)中查找GnuCash...
4. **开放源代码**:作为开源软件,jGnucashLib的源代码可供任何人查看、学习和改进。这鼓励了社区的参与,促进了项目的持续发展和完善。 在项目源代码中,我们可以看到一系列相关的文件,如`.classpath`和`....