r17019 - gnucash/branches/gda-dev2/src/backend/gda - If there's an error committing to the db, return an error which will
Phil Longstaff
plongstaff at cvs.gnucash.org
Sun Mar 9 16:02:27 EDT 2008
Author: plongstaff
Date: 2008-03-09 16:02:26 -0400 (Sun, 09 Mar 2008)
New Revision: 17019
Trac: http://svn.gnucash.org/trac/changeset/17019
Modified:
gnucash/branches/gda-dev2/src/backend/gda/gnc-account-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.h
gnucash/branches/gda-dev2/src/backend/gda/gnc-book-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-budget-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-commodity-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-lots-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-price-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-recurrence-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-schedxaction-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-slots-gda.c
gnucash/branches/gda-dev2/src/backend/gda/gnc-transaction-gda.c
Log:
If there's an error committing to the db, return an error which will
trigger a dialog box.
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-account-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-account-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-account-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -51,12 +51,12 @@
static void set_parent( gpointer pObject, gpointer pValue );
static void set_parent_guid( gpointer pObject, gpointer pValue );
-#define ACCOUNT_MAX_NAME_LEN 2048
+#define ACCOUNT_MAX_NAME_LEN /*2048*/20
#define ACCOUNT_MAX_TYPE_LEN 2048
#define ACCOUNT_MAX_CODE_LEN 2048
#define ACCOUNT_MAX_DESCRIPTION_LEN 2048
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "name", CT_STRING, ACCOUNT_MAX_NAME_LEN, COL_NNUL, "name" },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -644,6 +644,9 @@
qof_object_foreach_backend( GNC_GDA_BACKEND, write_cb, be );
be->is_pristine_db = FALSE;
+ // Mark the book as clean
+// qof_book_mark_saved( book );
+
LEAVE( "book=%p", book );
}
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -1440,7 +1440,7 @@
/* ================================================================= */
GdaObject*
-gnc_gda_execute_query( const GncGdaBackend* be, GdaQuery* query )
+gnc_gda_execute_query( GncGdaBackend* be, GdaQuery* query )
{
GError* error = NULL;
GdaObject* ret;
@@ -1452,6 +1452,7 @@
if( error != NULL ) {
PERR( "SQL error: %s\n", error->message );
+ qof_backend_set_error( &be->be, ERR_BACKEND_SERVER_ERR );
}
return ret;
@@ -1511,7 +1512,7 @@
}
int
-gnc_gda_execute_query_get_count( const GncGdaBackend* be, GdaQuery* query )
+gnc_gda_execute_query_get_count( GncGdaBackend* be, GdaQuery* query )
{
int count = 0;
GdaObject* ret;
@@ -1591,7 +1592,7 @@
}
gboolean
-gnc_gda_object_is_it_in_db( const GncGdaBackend* be, const gchar* table_name,
+gnc_gda_object_is_it_in_db( GncGdaBackend* be, const gchar* table_name,
QofIdTypeConst obj_name, gpointer pObject,
const col_cvt_t* table )
{
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.h
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.h 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-backend-util-gda.h 2008-03-09 20:02:26 UTC (rev 17019)
@@ -162,15 +162,15 @@
QofIdTypeConst obj_name,
gpointer pObject,
const col_cvt_t* table );
-GdaObject* gnc_gda_execute_query( const GncGdaBackend* pBackend, GdaQuery* pQuery );
+GdaObject* gnc_gda_execute_query( GncGdaBackend* pBackend, GdaQuery* pQuery );
GdaDataModel* gnc_gda_execute_sql( const GncGdaBackend* pBackend, const gchar* sql );
GdaQuery* gnc_gda_create_query_from_sql( const GncGdaBackend* pBackend, const gchar* sql );
int gnc_gda_execute_select_get_count( const GncGdaBackend* pBackend, const gchar* sql );
-int gnc_gda_execute_query_get_count( const GncGdaBackend* pBackend, GdaQuery* query );
+int gnc_gda_execute_query_get_count( GncGdaBackend* pBackend, GdaQuery* query );
void gnc_gda_load_object( const GncGdaBackend* be, GdaDataModel* pModel, int row,
QofIdTypeConst obj_name, gpointer pObject,
const col_cvt_t* table );
-gboolean gnc_gda_object_is_it_in_db( const GncGdaBackend* be,
+gboolean gnc_gda_object_is_it_in_db( GncGdaBackend* be,
const gchar* table_name,
QofIdTypeConst obj_name, const gpointer pObject,
const col_cvt_t* table );
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-book-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-book-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-book-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -52,7 +52,7 @@
static gpointer get_root_template_guid( gpointer pObject, const QofParam* );
static void set_root_template_guid( gpointer pObject, gpointer pValue );
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "root_account_guid", CT_GUID, 0, COL_NNUL, NULL, NULL, get_root_account_guid, set_root_account_guid },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-budget-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-budget-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-budget-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -50,7 +50,7 @@
#define BUDGET_MAX_NAME_LEN 2048
#define BUDGET_MAX_DESCRIPTION_LEN 2048
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "name", CT_STRING, BUDGET_MAX_NAME_LEN, COL_NNUL, NULL, "name" },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-commodity-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-commodity-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-commodity-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -56,7 +56,7 @@
#define COMMODITY_MAX_QUOTESOURCE_LEN 2048
#define COMMODITY_MAX_QUOTE_TZ_LEN 2048
-static col_cvt_t col_table[] = {
+static const col_cvt_t col_table[] = {
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "namespace", CT_STRING, COMMODITY_MAX_NAMESPACE_LEN, COL_NNUL, NULL, NULL,
(QofAccessFunc)gnc_commodity_get_namespace,
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-lots-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-lots-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-lots-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -47,7 +47,7 @@
static void set_lot_account( gpointer pObject, gpointer pValue );
static void set_lot_is_closed( gpointer pObject, gpointer pValue );
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "account_guid", CT_GUID, 0, COL_NNUL, NULL, NULL, get_lot_account, set_lot_account },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-price-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-price-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-price-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -47,7 +47,7 @@
#define PRICE_MAX_SOURCE_LEN 2048
#define PRICE_MAX_TYPE_LEN 2048
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "commodity_guid", CT_COMMODITYREF, 0, COL_NNUL, NULL, PRICE_COMMODITY },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-recurrence-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-recurrence-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-recurrence-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -60,7 +60,7 @@
static gpointer get_recurrence_period_start( gpointer pObject, const QofParam* );
static void set_recurrence_period_start( gpointer pObject, gpointer pValue );
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "obj_guid", CT_GUID, 0, COL_NNUL, NULL, NULL,
get_obj_guid, set_obj_guid },
@@ -75,7 +75,7 @@
/* Special column table because we need to be able to access the table by
a column other than the primary key */
-static col_cvt_t guid_col_table[] =
+static const col_cvt_t guid_col_table[] =
{
{ "obj_guid", CT_GUID, 0, 0, NULL, NULL, get_obj_guid, set_obj_guid },
{ NULL }
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-schedxaction-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-schedxaction-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-schedxaction-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -57,7 +57,7 @@
static gpointer get_template_act_guid( gpointer pObject, const QofParam* param );
static void set_template_act_guid( gpointer pObject, gpointer pValue );
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "name", CT_STRING, SX_MAX_NAME_LEN, 0, NULL, GNC_SX_NAME },
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-slots-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-slots-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-slots-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -73,7 +73,7 @@
#define SLOT_MAX_PATHNAME_LEN 4096
#define SLOT_MAX_STRINGVAL_LEN 4096
-static col_cvt_t col_table[] =
+static const col_cvt_t col_table[] =
{
{ "obj_guid", CT_GUID, 0, COL_NNUL, NULL, NULL,
get_obj_guid, set_obj_guid },
@@ -98,7 +98,7 @@
/* Special column table because we need to be able to access the table by
a column other than the primary key */
-static col_cvt_t obj_guid_col_table[] =
+static const col_cvt_t obj_guid_col_table[] =
{
{ "obj_guid", CT_GUID, 0, 0, NULL, NULL, get_obj_guid, _retrieve_guid_ },
{ NULL }
Modified: gnucash/branches/gda-dev2/src/backend/gda/gnc-transaction-gda.c
===================================================================
--- gnucash/branches/gda-dev2/src/backend/gda/gnc-transaction-gda.c 2008-03-08 21:16:17 UTC (rev 17018)
+++ gnucash/branches/gda-dev2/src/backend/gda/gnc-transaction-gda.c 2008-03-09 20:02:26 UTC (rev 17019)
@@ -60,7 +60,7 @@
#define TX_MAX_NUM_LEN 2048
#define TX_MAX_DESCRIPTION_LEN 2048
-static col_cvt_t tx_col_table[] =
+static const col_cvt_t tx_col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "currency_guid", CT_COMMODITYREF, 0, COL_NNUL, NULL, NULL,
@@ -82,7 +82,7 @@
#define SPLIT_MAX_MEMO_LEN 2048
#define SPLIT_MAX_ACTION_LEN 2048
-static col_cvt_t split_col_table[] =
+static const col_cvt_t split_col_table[] =
{
{ "guid", CT_GUID, 0, COL_NNUL|COL_PKEY, "guid" },
{ "tx_guid", CT_TXREF, 0, COL_NNUL, NULL, SPLIT_TRANS },
@@ -98,7 +98,7 @@
{ NULL }
};
-static col_cvt_t guid_col_table[] =
+static const col_cvt_t guid_col_table[] =
{
{ "tx_guid", CT_GUID, 0, 0, "guid" },
{ NULL }
More information about the gnucash-changes
mailing list