r19659 - gnucash/trunk/src - Partly revert r19550, "Bug #370331: Store the numeric values of SX..."

Christian Stimming cstim at code.gnucash.org
Fri Oct 15 16:25:22 EDT 2010


Author: cstim
Date: 2010-10-15 16:25:22 -0400 (Fri, 15 Oct 2010)
New Revision: 19659
Trac: http://svn.gnucash.org/trac/changeset/19659

Modified:
   gnucash/trunk/src/engine/SX-ttinfo.c
   gnucash/trunk/src/engine/SX-ttinfo.h
   gnucash/trunk/src/engine/SchedXaction.c
   gnucash/trunk/src/gnome/dialog-sx-from-trans.c
Log:
Partly revert r19550, "Bug #370331: Store the numeric values of SX..."

This caused the numbers in the "SX from txn" to appear as "220/100" ratios,
which we do not want.

Modified: gnucash/trunk/src/engine/SX-ttinfo.c
===================================================================
--- gnucash/trunk/src/engine/SX-ttinfo.c	2010-10-15 11:58:25 UTC (rev 19658)
+++ gnucash/trunk/src/engine/SX-ttinfo.c	2010-10-15 20:25:22 UTC (rev 19659)
@@ -44,7 +44,6 @@
     /* FIXME: What about the split's KvpFrame */
     char *memo; /* owned by us */
     char *credit_formula, *debit_formula; /* owned by us */
-    gnc_numeric credit_numeric, debit_numeric;
     Account *acc;
 };
 
@@ -242,13 +241,11 @@
         g_free(ttsi->credit_formula);
 
     ttsi->credit_formula = gnc_numeric_to_string(credit);
-    ttsi->credit_numeric = credit;
 
     if (ttsi->debit_formula)
     {
         g_free(ttsi->debit_formula);
         ttsi->debit_formula = NULL;
-        ttsi->debit_numeric = gnc_numeric_zero();
     }
 }
 
@@ -266,7 +263,6 @@
     {
         g_free(ttsi->debit_formula);
         ttsi->debit_formula = NULL;
-        ttsi->debit_numeric = gnc_numeric_zero();
     }
     return;
 }
@@ -286,18 +282,6 @@
     return ttsi->debit_formula;
 }
 
-gnc_numeric gnc_ttsplitinfo_get_credit_numeric(const TTSplitInfo *ttsi)
-{
-    g_return_val_if_fail(ttsi, gnc_numeric_zero());
-    return ttsi->credit_numeric;
-}
-
-gnc_numeric gnc_ttsplitinfo_get_debit_numeric(const TTSplitInfo *ttsi)
-{
-    g_return_val_if_fail(ttsi, gnc_numeric_zero());
-    return ttsi->debit_numeric;
-}
-
 void
 gnc_ttsplitinfo_set_debit_formula_numeric(TTSplitInfo *ttsi, gnc_numeric debit)
 {
@@ -308,13 +292,11 @@
         g_free(ttsi->debit_formula);
     }
     ttsi->debit_formula = gnc_numeric_to_string(debit);
-    ttsi->debit_numeric = debit;
 
     if (ttsi->credit_formula)
     {
         g_free(ttsi->credit_formula);
         ttsi->credit_formula = NULL;
-        ttsi->credit_numeric = gnc_numeric_zero();
     }
     return;
 }
@@ -333,7 +315,6 @@
     {
         g_free(ttsi->credit_formula);
         ttsi->credit_formula = NULL;
-        ttsi->credit_numeric = gnc_numeric_zero();
     }
     return;
 }

Modified: gnucash/trunk/src/engine/SX-ttinfo.h
===================================================================
--- gnucash/trunk/src/engine/SX-ttinfo.h	2010-10-15 11:58:25 UTC (rev 19658)
+++ gnucash/trunk/src/engine/SX-ttinfo.h	2010-10-15 20:25:22 UTC (rev 19659)
@@ -72,14 +72,12 @@
 void gnc_ttsplitinfo_set_credit_formula_numeric(TTSplitInfo *split_i,
         gnc_numeric credit_formula);
 const char *gnc_ttsplitinfo_get_credit_formula(TTSplitInfo *split_i);
-gnc_numeric gnc_ttsplitinfo_get_credit_numeric(const TTSplitInfo *split_i);
 
 void gnc_ttsplitinfo_set_debit_formula(TTSplitInfo *split_i,
                                        const char *debit_formula);
 void gnc_ttsplitinfo_set_debit_formula_numeric(TTSplitInfo *split_i,
         gnc_numeric debit_formula);
 const char *gnc_ttsplitinfo_get_debit_formula(TTSplitInfo *split_i);
-gnc_numeric gnc_ttsplitinfo_get_debit_numeric(const TTSplitInfo *split_i);
 
 void gnc_ttsplitinfo_set_account(TTSplitInfo *split_i, Account *acc);
 Account *gnc_ttsplitinfo_get_account(TTSplitInfo *split_i);

Modified: gnucash/trunk/src/engine/SchedXaction.c
===================================================================
--- gnucash/trunk/src/engine/SchedXaction.c	2010-10-15 11:58:25 UTC (rev 19658)
+++ gnucash/trunk/src/engine/SchedXaction.c	2010-10-15 20:25:22 UTC (rev 19659)
@@ -1062,15 +1062,6 @@
     kvp_value_delete(tmp_value);
 
     tmp_value
-    = kvp_value_new_numeric(gnc_ttsplitinfo_get_credit_numeric(s_info));
-    kvp_frame_set_slot_path(split_frame,
-                            tmp_value,
-                            GNC_SX_ID,
-                            GNC_SX_CREDIT_NUMERIC,
-                            NULL);
-    kvp_value_delete(tmp_value);
-
-    tmp_value
     = kvp_value_new_string(gnc_ttsplitinfo_get_debit_formula(s_info));
 
     kvp_frame_set_slot_path(split_frame,
@@ -1081,15 +1072,6 @@
 
     kvp_value_delete(tmp_value);
 
-    tmp_value
-    = kvp_value_new_numeric(gnc_ttsplitinfo_get_debit_numeric(s_info));
-    kvp_frame_set_slot_path(split_frame,
-                            tmp_value,
-                            GNC_SX_ID,
-                            GNC_SX_DEBIT_NUMERIC,
-                            NULL);
-    kvp_value_delete(tmp_value);
-
     acc_guid = qof_entity_get_guid(QOF_INSTANCE(gnc_ttsplitinfo_get_account(s_info)));
 
     tmp_value = kvp_value_new_guid(acc_guid);

Modified: gnucash/trunk/src/gnome/dialog-sx-from-trans.c
===================================================================
--- gnucash/trunk/src/gnome/dialog-sx-from-trans.c	2010-10-15 11:58:25 UTC (rev 19658)
+++ gnucash/trunk/src/gnome/dialog-sx-from-trans.c	2010-10-15 20:25:22 UTC (rev 19659)
@@ -231,6 +231,7 @@
     Split *sp;
     gnc_numeric runningBalance;
     gnc_numeric split_value;
+    const char *tmpStr;
 
     runningBalance = gnc_numeric_zero();
 
@@ -251,12 +252,16 @@
 
         if (gnc_numeric_positive_p(split_value))
         {
-            gnc_ttsplitinfo_set_debit_formula_numeric( ttsi, split_value );
+            tmpStr = xaccPrintAmount( split_value,
+                                      gnc_default_print_info(FALSE) );
+            gnc_ttsplitinfo_set_debit_formula( ttsi, tmpStr );
         }
         else
         {
             /* Negate the numeric so it prints w/o the sign at the front. */
-            gnc_ttsplitinfo_set_credit_formula_numeric ( ttsi, split_value );
+            tmpStr = xaccPrintAmount( gnc_numeric_neg( split_value ),
+                                      gnc_default_print_info(FALSE) );
+            gnc_ttsplitinfo_set_credit_formula( ttsi, tmpStr );
         }
 
         /* Copy over per-split account info */



More information about the gnucash-changes mailing list