J'ai réglé le problème de cette façon
Begin
execute 'select count(*) from ' ||tablename||
' where cast(date_dimension_year || ''-'' || date_dimension_month || ''-''||date_dimension_day as date)
not between (current_date - interval ''13 months'') and current_date' into total ;
J'ai dû attribuer le total entier vers la fin et la fermeture correcte des guillemets (') a fonctionné pour moi. (Je viens de coller une partie de la fonction où j'avais un problème)
Merci pour toute votre aide.