Attached is a patch which updates the python bindings example scripts to
use Transaction.BeginEdit() and Transaction.CommitEdit(). Doing so
allows these examples scripts to run without a bunch of warnings to
stderr from GnuCash as they did before.
apply with patch -p0
Mark Jenkins
Member
ParIT Worker Co-op
p.s.
You can also pull this from my subversion repository.
svn diff -r 579:581 \
http://svn.parit.ca/gnucash/branches/python-bindings/
and find in there my other python bindings patches from today as well,
the work I did with Transaction.GetImbalance(), and my work on feature
enhancement bug 625193
https://bugzilla.gnome.org/show_bug.cgi?id=625193
Index: src/optional/python-bindings/example_scripts/simple_test.py
===================================================================
--- src/optional/python-bindings/example_scripts/simple_test.py (revision 579)
+++ src/optional/python-bindings/example_scripts/simple_test.py (revision 581)
@@ -5,7 +5,7 @@
FILE_1 = "/tmp/example.gnucash"
-session = Session("xml:%s" % FILE_1, True)
+session = Session("xml://%s" % FILE_1, True)
book = session.book
root_acct = Account(book)
@@ -13,7 +13,10 @@
savings_acct = Account(book)
opening_acct = Account(book)
trans1 = Transaction(book)
+trans1.BeginEdit()
trans2 = Transaction(book)
+trans2.BeginEdit()
+
split1 = Split(book)
split3 = Split(book)
comm_table = book.get_table()
@@ -61,19 +64,20 @@
trans2.SetCurrency(cad)
trans2.SetDescription("Opening Savings Balance")
-split2 = split1.GetOtherSplit()
+split2 = Split(book)
split2.SetAccount(savings_acct)
+split2.SetParent(trans1)
+split2.SetValue(num1.neg())
-split4 = split3.GetOtherSplit()
+split4 = Split(book)
split4.SetAccount(opening_acct)
+split4.SetParent(trans2)
+split4.SetValue(num2.neg())
-book.print_dirty()
-book.mark_saved()
-book.mark_closed()
+trans1.CommitEdit()
+trans2.CommitEdit()
-book.print_dirty()
-
session.save()
session.end()
session.destroy()
Index: src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py
===================================================================
--- src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py (revision 579)
+++ src/optional/python-bindings/example_scripts/new_book_with_opening_balances.py (revision 581)
@@ -130,8 +130,9 @@
# balance acccount amount
if commodity_tuple not in opening_balance_per_currency:
trans = Transaction(new_book)
+ trans.BeginEdit()
opening_balance_per_currency[commodity_tuple] = (
- Transaction(new_book), GncNumeric(0, 1) )
+ trans, GncNumeric(0, 1) )
trans, total = opening_balance_per_currency[commodity_tuple]
new_total = total.sub(
@@ -256,6 +257,7 @@
opening_trans.SetDate( *OPENING_DATE )
opening_trans.SetCurrency(currency)
opening_trans.SetDescription("Opening Balance")
+ opening_trans.CommitEdit()
return simple_opening_name_used
_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel