2019-04-04 14:50:05 +02:00
|
|
|
#!/usr/bin/env python3
|
2010-12-17 20:36:40 +00:00
|
|
|
|
|
|
|
|
## @file
|
|
|
|
|
# @brief Simple example for a book
|
2010-12-27 15:36:15 +00:00
|
|
|
# @ingroup python_bindings_examples
|
2010-12-17 20:36:40 +00:00
|
|
|
|
2010-09-03 10:00:26 +00:00
|
|
|
import sys
|
2020-06-12 12:24:05 +02:00
|
|
|
from gnucash import Session, SessionOpenMode
|
2008-07-07 19:18:26 +00:00
|
|
|
|
2011-01-28 20:57:54 +00:00
|
|
|
# We need to tell GnuCash the data format to create the new file as (xml://)
|
2010-09-03 10:00:26 +00:00
|
|
|
uri = "xml:///tmp/simple_book.gnucash"
|
|
|
|
|
|
2018-03-22 15:08:22 -07:00
|
|
|
print("uri:", uri)
|
2020-06-12 12:24:05 +02:00
|
|
|
with Session(uri, SessionOpenMode.SESSION_NEW_STORE) as ses:
|
2020-02-22 11:28:50 -06:00
|
|
|
book = ses.get_book()
|
2008-07-07 19:18:26 +00:00
|
|
|
|
2020-02-22 11:28:50 -06:00
|
|
|
#Call some methods that produce output to show that Book works
|
|
|
|
|
book.get_root_account().SetDescription("hello, book")
|
|
|
|
|
print("Book is saved:", not book.session_not_saved())
|
2010-09-03 10:00:26 +00:00
|
|
|
|
2020-02-22 11:28:50 -06:00
|
|
|
#As long as there's no exceptions, book is automatically saved
|
|
|
|
|
#when session ends.
|
|
|
|
|
print("saving...")
|
2008-07-07 19:18:26 +00:00
|
|
|
|
2018-03-22 15:08:22 -07:00
|
|
|
print("Book is saved:", not book.session_not_saved())
|