rem: COMPTE_ECHEANCE,
add: GTK_LABEL (GTK_BIN ( widget_formulaire_echeancier[5]  )  -> child ) -> label,
context: gboolean gsb_scheduler_check_form ( void ){    /* check the date */    if ( !modifie_date ( widget_formulaire_echeancier[SCHEDULER_FORM_DATE] ))    {	dialogue_error_hint ( _("Grisbi can't parse date.  For a list of date formats that Grisbi can use, refer to Grisbi manual."),			      g_strdup_printf ( _("Invalid date '%s'"), 						gtk_entry_get_text ( GTK_ENTRY(widget_formulaire_echeancier[SCHEDULER_FORM_DATE]) ) ) );	gtk_widget_grab_focus ( widget_formulaire_echeancier[SCHEDULER_FORM_DATE] );	gtk_entry_select_region ( GTK_ENTRY (  widget_formulaire_echeancier[SCHEDULER_FORM_DATE]),				  0,				  -1);	return FALSE;    }    /* check the limit date */    if ( gtk_widget_get_style ( widget_formulaire_echeancier[SCHEDULER_FORM_FINAL_DATE] ) == style_entree_formulaire[ENCLAIR]	 &&	 !modifie_date ( widget_formulaire_echeancier[SCHEDULER_FORM_FINAL_DATE] ))    {	dialogue_error_hint ( _("Grisbi can't parse date.  For a list of date formats that Grisbi can use, refer to Grisbi manual."),			      g_strdup_printf ( _("Invalid final date '%s'"), 						gtk_entry_get_text ( GTK_ENTRY(widget_formulaire_echeancier[SCHEDULER_FORM_DATE]) ) ) );	gtk_widget_grab_focus ( widget_formulaire_echeancier[SCHEDULER_FORM_FINAL_DATE] );	gtk_entry_select_region ( GTK_ENTRY (  widget_formulaire_echeancier[SCHEDULER_FORM_FINAL_DATE]),				  0,				  -1);	return FALSE;    }    /* if it's a breakdown, check the children */    if ( !strcmp ( g_strstrip ( gtk_combofix_get_text ( GTK_COMBOFIX ( widget_formulaire_echeancier[SCHEDULER_FORM_CATEGORY] ))),		   _("Breakdown of transaction") )	 &&	 !gtk_object_get_data ( GTK_OBJECT ( formulaire_echeancier ),				"liste_adr_ventilation" ))    {	GSList *slist_ptr;	enregistre_ope_au_retour_echeances = 1;	/* We check if one of the subtransactions of the breakdown of	   transaction is a transfer on itself. */	slist_ptr = gtk_object_get_data ( GTK_OBJECT ( formulaire_echeancier ),					  "liste_adr_ventilation" );	while ( slist_ptr		&&		slist_ptr != GINT_TO_POINTER ( -1 ))	{	    struct struct_ope_ventil *scheduled_transaction;	    scheduled_transaction = slist_ptr -> data;	    if ( scheduled_transaction -> relation_no_compte != -1		 &&		 scheduled_transaction -> relation_no_compte		 == 		 recupere_no_compte ( widget_formulaire_echeancier[SCHEDULER_FORM_ACCOUNT] ))	    {		dialogue_error_hint ( _("This breakdown of transaction has a transfer on itself.  Either change the sub transaction to transfer on another account or change account of the transaction itself."),				      _("Invalid breakdown of transaction."));		return FALSE;	    }	    slist_ptr = slist_ptr -> next;	}	if ( gtk_widget_get_style ( widget_formulaire_echeancier[TRANSACTION_FORM_DEBIT] ) == style_entree_formulaire[ENCLAIR] )	    ventiler_operation_echeances ( -my_strtod ( g_strstrip ( (gchar *) gtk_entry_get_text ( GTK_ENTRY ( widget_formulaire_echeancier[SCHEDULER_FORM_DEBIT] ))),							NULL ));	else	    ventiler_operation_echeances ( my_strtod ( g_strstrip ( (gchar *) gtk_entry_get_text ( GTK_ENTRY ( widget_formulaire_echeancier[SCHEDULER_FORM_CREDIT] ))),						       NULL ));	return FALSE;    }    /* check if it's not a transfer on itself */    if ( !g_strcasecmp ( g_strstrip ( gtk_combofix_get_text ( GTK_COMBOFIX ( widget_formulaire_echeancier[SCHEDULER_FORM_CATEGORY] ))),			 g_strconcat ( COLON(_("Transfer")),				       COMPTE_ECHEANCE,				       NULL )))    {	dialogue_error_hint ( _("Transfers can't be associated with their own account.  Please associate another account with this transfer."),			      _("Invalid transfer."));	return FALSE;    }    /* if it's a transfer, check that the account exists */    if ( !g_strncasecmp ( gtk_combofix_get_text ( GTK_COMBOFIX ( widget_formulaire_echeancier[SCHEDULER_FORM_CATEGORY] )),			  _("Transfer"),			  8 ))    {	gchar **tab_char;	tab_char = g_strsplit ( gtk_combofix_get_text ( GTK_COMBOFIX ( widget_formulaire_echeancier[SCHEDULER_FORM_CATEGORY] )),				":",				2 );	/* check if there is an account */	if ( !tab_char[1]	     ||	     !strlen ( tab_char[1] ) )	{	    dialogue_error_hint ( _("Transfer is not associated with an account.  Please associate a valid account with this transfer."),				  _("Invalid transfer.") );	    return FALSE;	}	/* check if the account exists */	if ( tab_char[1]	     &&	     gsb_data_account_get_no_account_by_name ( g_strstrip (tab_char[1])) == -1 )	{	    dialogue_error_hint ( _("Associated account of this transfer does not exist.  Please associate a valid account with this transfer."),				  _("Invalid transfer.") );	    g_strfreev ( tab_char );	    return FALSE;	}	g_strfreev ( tab_char );    }    /* vérification si c'est une échéance auto que ce n'est pas un chèque */    if ( GPOINTER_TO_INT ( gtk_object_get_data ( GTK_OBJECT ( GTK_OPTION_MENU ( widget_formulaire_echeancier[SCHEDULER_FORM_MODE]  ) -> menu_item ),						 "auto_man" )) == 1	 &&	 GTK_WIDGET_VISIBLE ( widget_formulaire_echeancier[SCHEDULER_FORM_TYPE] )	 &&	 ((struct struct_type_ope  *)( gtk_object_get_data ( GTK_OBJECT ( GTK_OPTION_MENU ( widget_formulaire_echeancier[SCHEDULER_FORM_TYPE] ) -> menu_item ),							     "adr_type" )))->numerotation_auto )    {	dialogue_error_hint ( _("Impossible to create or entry an automatic scheduled transaction\n with a cheque or a method of payment with an automatic incremental number."),			      _("Invalid scheduled transaction.") );	return FALSE;    }    return TRUE;}