示例#1
0
def getInvoices(book, is_paid, is_active):

    query = gnucash.Query()
    query.search_for('gncInvoice')
    query.set_book(book)

    if is_paid == 0:
        query.add_boolean_match([INVOICE_IS_PAID], False, QOF_QUERY_AND)
    elif is_paid == 1:
        query.add_boolean_match([INVOICE_IS_PAID], True, QOF_QUERY_AND)

    # active = JOB_IS_ACTIVE
    if is_active == 0:
        query.add_boolean_match(['active'], False, QOF_QUERY_AND)
    elif is_active == 1:
        query.add_boolean_match(['active'], True, QOF_QUERY_AND)

    # return only invoices (1 = invoices)
    pred_data = gnucash.gnucash_core.QueryInt32Predicate(QOF_COMPARE_EQUAL, 1)
    query.add_term([INVOICE_TYPE], pred_data, QOF_QUERY_AND)

    invoices = []

    for result in query.run():
        invoices.append(
            gnucash_simple.invoiceToDict(
                gnucash.gnucash_business.Invoice(instance=result)))

    query.destroy()

    return json.dumps(invoices)
示例#2
0
def getInvoices(book, is_paid, is_active):

	query = gnucash.Query()
	query.search_for('gncInvoice')
	query.set_book(book)

	if is_paid == 0:
		query.add_boolean_match([INVOICE_IS_PAID], False, QOF_QUERY_AND)
	elif is_paid == 1:
		query.add_boolean_match([INVOICE_IS_PAID], True, QOF_QUERY_AND)

	# active = JOB_IS_ACTIVE
	if is_active == 0:
		query.add_boolean_match(['active'], False, QOF_QUERY_AND)
	elif is_active == 1:
		query.add_boolean_match(['active'], True, QOF_QUERY_AND)

	# return only invoices (1 = invoices)
	pred_data = QueryInt32Predicate(QOF_COMPARE_EQUAL, 1)
	query.add_term([INVOICE_TYPE], pred_data, QOF_QUERY_AND)

	invoices = []

	for result in query.run():
		invoices.append(gnucash_simple.invoiceToDict(gnucash.gnucash_business.Invoice(instance=result)))

	query.destroy()

	return json.dumps(invoices)
示例#3
0
def getInvoice(book, id):

    invoice = book.InvoiceLookupByID(id)

    if invoice is None:
        return None
    else:
        #print invoiceToDict(invoice)
        return json.dumps(gnucash_simple.invoiceToDict(invoice))
示例#4
0
def getInvoice(book, id):

	invoice = book.InvoiceLookupByID(id)

	if invoice is None:
		return None
	else:
		#print invoiceToDict(invoice)
		return json.dumps(gnucash_simple.invoiceToDict(invoice))