septembre
2012
Comme moi, vous êtes peut être confronté à un problème d’impression sous Reporting Services. En effet, le format d’impression se met par défaut sur Letter (format US) au lieu de A4. Ce problème semble survenir uniquement sur les rapports liés et pas sur les rapports « sources ».
La première idée qui vient à l’esprit est de vérifier les paramètres du rapport pour s’assurer que la culture est bien FR et que le format est en 21×29.7. Il suffit pour cela d’ouvrir le rapport sous Visual Studio et de consulter les propriétés. Dans mon cas, les informations étaient déjà bonnes. En fait, le problème vient précisément des rapports liés. Pour s’en assurer, il suffit de faire un tour en base de données et de consulter la table Catalog :
From dbo.Catalog
Comparer ensuite l’enregistrement du rapport « source » et celui du rapport lié qui pose problème :
from dbo.Catalog
Where ItemID = 'BB0F6C10-B122-4912-9D51-716002B394C2'
Or ItemID = 'BD173A2A-88B1-4016-A75E-686BDC69B480'
Vous constaterez que le champ Property diffère. Sur le rapport « source », le champ Property indique tous les paramètres que vous avez renseigné, et notamment le format 21×29.7. Par contre, il n’y a rien de tel sur le champ Property du rapport lié.
Je ne sais pas bien si le bug vient du fait que la Property n’a pas été recopiée correctement sur le rapport lié lors de sa création ou si cela vient du fait que Reporting Services ne va pas rechercher correctement les propriétés de son rapport « source ».
Toutefois, il est possible de pallier à ce problème. Il suffit pour cela de faire un update de l’enregistrement du rapport lié en reprenant la Property de son rapport « source ». Une fois la modificaiton effectuée, vous constaterez avec bonheur que l’impression se fait par défaut au format A4, comme souhaité.
set Property = (select Property from dbo.Catalog where ItemID = 'BB0F6C10-B122-4912-9D51-716002B394C2')
where ItemID = 'BD173A2A-88B1-4016-A75E-686BDC69B480'