SSRSのレポートをExcelに出力すると、非表示になる列や行がある場合の対処法。
現象
SSRSには、表示したレポートをエクセルに出力する機能がある。
しかし、Excelに出力すると、表示されていない行や列が存在する。
この画像では、I列とL列が非表示になっている。
原因
列や行が消える原因は、オブジェクトの位置(Location)、サイズ(Size)のプロパティの値の単位がcmになっているからである。
SSRS(SQL Server Reporting Services)は米マイクロソフト社製のソフトで、日本語化されているとはいえ海外製のソフトである。
このため、幅、長さの単位がインチが基準となる。
日本語化されたSSRSではサイズのプロパティにはデフォルトでcmとなっているが、Excelに出力する際、インチをピクセルに変換してExcelの列幅や行の高さを計算するが。
センチメートルをインチに変換してピクセルに変換する際、単位間の多少の誤差が発生して、意図しない列幅や行の高さになるものである。
対策
オブジェクトの位置(Location)、サイズ(Size)のプロパティの値をインチで入力する。
また、レポート(帳票)のデザインもインチで行えば、この現象は解消する。
単位は、数値の後ろに「in」を入力することで、インチであると認識される。
注意点
帳票のデザインを作成する際、ツールボックスからテキストボックスなどの部品をドラッグして配置するが、このときにLocation、Sizeを手入力で指定して位置を合わせる分には問題ない。
しかし、インチでサイズや位置を指定した後に、マウスでドラッグしてしまうと、位置やサイズのプロパティの値はcmに戻ってしまうので注意が必要である。
コメント
この記事へのトラックバックはありません。
この記事へのコメントはありません。