rem: if ( operation -> tiers )
add: if ( operation -> tiers && !operation -> no_operation_ventilee_associee )
context: gfloat *calcule_total_montant_tiers ( void ){  gint i;  gfloat *tab_retour;  /* on cre le tableau de retour */  tab_retour = calloc ( nb_enregistrements_tiers,			sizeof ( gfloat ));  date_dernier_tiers = calloc ( nb_enregistrements_tiers,				sizeof ( gpointer ));  nb_ecritures_par_tiers = calloc ( nb_enregistrements_tiers,				    sizeof ( gint ));  for ( i=0 ; i<nb_comptes ; i++ )    {      GSList *liste_tmp;      p_tab_nom_de_compte_variable = p_tab_nom_de_compte + i;      liste_tmp = LISTE_OPERATIONS;      while ( liste_tmp )	{	  struct structure_operation *operation;	  gdouble montant;	  gint place_tiers;	  operation = liste_tmp -> data;	  if ( operation -> tiers )	    {	      /* recherche la place du tiers dans la liste */	      place_tiers = g_slist_position ( liste_struct_tiers,					       g_slist_find_custom ( liste_struct_tiers,								     GINT_TO_POINTER ( operation -> tiers ),								     (GCompareFunc) recherche_tiers_par_no ));	      montant = calcule_montant_devise_renvoi ( operation -> montant,							no_devise_totaux_tiers,							operation -> devise,							operation -> une_devise_compte_egale_x_devise_ope,							operation -> taux_change,							operation -> frais_change );	      tab_retour[place_tiers] = tab_retour[place_tiers] + montant;	      if ( !date_dernier_tiers[place_tiers]		   ||		   g_date_compare ( operation->date,				    date_dernier_tiers[place_tiers] ) > 0 )		date_dernier_tiers[place_tiers] = operation -> date;	      nb_ecritures_par_tiers[place_tiers]++;	    }	  liste_tmp = liste_tmp -> next;	}    }    return ( tab_retour );}