rem: budget -> budget_balance -= gsb_data_transaction_get_adjusted_amount (transaction_number);
add: budget -> budget_balance -= gsb_data_transaction_get_adjusted_amount_for_currency ( transaction_number, budgetary_line_tree_currency () -> no_devise );
context: void gsb_data_budget_remove_transaction_from_budget ( gint transaction_number ){    struct_budget *budget;    struct_sub_budget *sub_budget;    budget = gsb_data_budget_get_structure ( gsb_data_transaction_get_budgetary_number (transaction_number));    sub_budget = gsb_data_budget_get_sub_budget_structure ( gsb_data_transaction_get_budgetary_number (transaction_number),							    gsb_data_transaction_get_sub_budgetary_number (transaction_number));    if ( budget )    {	budget -> budget_nb_transactions --;	budget -> budget_balance -= gsb_data_transaction_get_adjusted_amount (transaction_number);	if ( !budget -> budget_nb_transactions ) /* Cope with float errors */	    budget -> budget_balance = 0.0;    }    if ( sub_budget )    {	sub_budget -> sub_budget_nb_transactions --;	sub_budget -> sub_budget_balance -= gsb_data_transaction_get_adjusted_amount (transaction_number);	if ( !sub_budget -> sub_budget_nb_transactions ) /* Cope with float errors */	    sub_budget -> sub_budget_balance = 0.0;    }    else    {	if ( budget )	{	    budget -> budget_nb_direct_transactions --;	    budget -> budget_direct_balance -= gsb_data_transaction_get_adjusted_amount (transaction_number);	}    }}