2013-08-29 26 views
0

我在SSRS 2008中創建了一個簡單的報告。我開始複製現有的報告定義並對其進行了修改以適合我的需要。我正在ASP.NET MVC項目的C#中使用Visual Studio Ultimate 2012。矩形中的SSRS圖像/ texboxes不顯示

我有兩個矩形,矩形1和矩形2。 Rectangle1來自原始報告並且顯示得很好,我只是重新排列了其中的ReportItems。但是,Rectangle2並未顯示在生成的報告上。我在設計師中創建了它,並將現有圖像剪切/粘貼到其中。除了外部圖像外,Rectangle2還包含一個帶有靜態值的文本框。

這是我已經試過:

  • 驗證了我的數據,獲得通過並是正確的。
  • 驗證了所有相關的表達式。
  • 驗證我要求的圖像存在。
  • 刪除了收縮/增長參數。
  • 驗證沒有設置條件顯示要求。
  • 創建了一個全新的帶有文本框和圖像的矩形(不顯示)。
  • 比較了Rectangle1和Rectangle2之間的XML。
  • 比較了Rectangle1和 Rectangle2之間的參數值(在設計器中)以及它們的所有子元素。
  • 調整後的Z指數參數。

我在網上找不到任何相關信息。無處不在。納達。壓縮。我沒有想法。

請指點我正確的方向。


下面是一些XML:

<Rectangle Name="Rectangle1"> 
    <ReportItems> 
     <Image Name="GHS_1"> 
     <Source>External</Source> 
     <Value>="file:///" + Parameters!AppPath.Value + Parameters!GHSPictograms.Value(0)</Value> 
     <MIMEType>image/png</MIMEType> 
     <Sizing>FitProportional</Sizing> 
     <Top>0.45312in</Top> 
     <Left>0.17958in</Left> 
     <Height>1.56in</Height> 
     <Width>1.56in</Width> 
     <Visibility> 
      <Hidden>=Parameters!GHSPictograms.Value(0) = ""</Hidden> 
     </Visibility> 
     <Style> 
      <Border> 
      <Style>None</Style> 
      </Border> 
     </Style> 
     </Image> 
     <Textbox Name="Textbox1"> 
     <CanGrow>true</CanGrow> 
     <KeepTogether>true</KeepTogether> 
     <Paragraphs> 
      <Paragraph> 
      <TextRuns> 
       <TextRun> 
       <Value xml:space="preserve"> </Value> 
       <Style /> 
       </TextRun> 
      </TextRuns> 
      <Style /> 
      </Paragraph> 
     </Paragraphs> 
     <rd:DefaultName>Textbox1</rd:DefaultName> 
     <Top>2.0521in</Top> 
     <Left>3.91688in</Left> 
     <Height>0.25in</Height> 
     <Width>0.05208in</Width> 
     <ZIndex>4</ZIndex> 
     <Style> 
      <Border> 
      <Style>None</Style> 
      </Border> 
      <PaddingLeft>2pt</PaddingLeft> 
      <PaddingRight>2pt</PaddingRight> 
      <PaddingTop>2pt</PaddingTop> 
      <PaddingBottom>2pt</PaddingBottom> 
     </Style> 
     </Textbox> 
    </ReportItems> 
    <KeepTogether>true</KeepTogether> 
    <Top>0.84944in</Top> 
    <Height>6.84897in</Height> 
    <Width>3.96896in</Width> 
    <ZIndex>2</ZIndex> 
    <Style> 
     <Border> 
     <Style>None</Style> 
     </Border> 
    </Style> 
    </Rectangle> 

...

<Rectangle Name="Rectangle2"> 
    <ReportItems> 
     <Image Name="PPE0"> 
     <Source>External</Source> 
     <Value>="File:///" + Parameters!AppPath.Value + Parameters!PPEImages.Value(0)</Value> 
     <MIMEType>image/png</MIMEType> 
     <Sizing>FitProportional</Sizing> 
     <Top>0.45312in</Top> 
     <Height>1in</Height> 
     <Width>1in</Width> 
     <Visibility> 
      <Hidden>=Parameters!PPEImages.Count &lt; 1</Hidden> 
     </Visibility> 
     <Style> 
      <Border> 
      <Style>None</Style> 
      </Border> 
     </Style> 
     </Image> 
     <Textbox Name="Textbox2"> 
     <KeepTogether>true</KeepTogether> 
     <Paragraphs> 
      <Paragraph> 
      <TextRuns> 
       <TextRun> 
       <Value>PPE</Value> 
       <Style> 
        <FontSize>12pt</FontSize> 
        <FontWeight>Bold</FontWeight> 
       </Style> 
       </TextRun> 
      </TextRuns> 
      <Style /> 
      </Paragraph> 
     </Paragraphs> 
     <rd:DefaultName>Textbox2</rd:DefaultName> 
     <Height>0.33333in</Height> 
     <Width>1in</Width> 
     <ZIndex>5</ZIndex> 
     <Style> 
      <Border> 
      <Style>None</Style> 
      </Border> 
      <PaddingLeft>2pt</PaddingLeft> 
      <PaddingRight>2pt</PaddingRight> 
      <PaddingTop>2pt</PaddingTop> 
      <PaddingBottom>2pt</PaddingBottom> 
     </Style> 
     </Textbox> 
    </ReportItems> 
    <KeepTogether>true</KeepTogether> 
    <Top>0.84944in</Top> 
    <Left>4.0384in</Left> 
    <Height>1.45312in</Height> 
    <Width>5.60125in</Width> 
    <ZIndex>5</ZIndex> 
    <Style> 
     <Border> 
     <Style>None</Style> 
     </Border> 
    </Style> 
    </Rectangle> 

UPDATE:我們設法讓Rectangle2顯示在Rectangle1的用z-index玩弄周圍的代價。所以這是有多個矩形的一個問題...

+0

注:我可以通過將所有內容嵌套在一個大的矩形中來繞過這個問題。 SSRS不喜歡多個矩形作爲Body的即時ReportItems。 – kozmi

回答

0

三個事情要考慮:

  1. 你必須使用一個矩形,如果它僅僅是一個單一的文本框?您可能會將它對齊,因爲它自己的元素

  2. 文本框是否溢出或具有可能溢出大小的字體?由於對齊,格式化等原因,矩形的第一個問題是顯示值。如果您不確定將一些非常小的東西放在框中,然後使矩形很大。對於額外的調試,首先執行步驟1並驗證該框將不存在矩形

  3. 如何調試過程?它是在商業智能開發工作室的設計師或其他地方?如果您不是另一個問題,我會在設計人員測試,如果您使用的不是IE以外的其他產品,顯示可能會有所不同。另外,如果您使用容器元素以ReportViewer,Form或其他前端代碼的形式顯示,則它可能會覆蓋一些值。

無論如何,這些都是我的想法,因爲我有圖像和文本之前也沒有出現在矩形中。

+0

感謝您的支持。 1. Textbox plus 5 images。整個小組將有條件地展示 - 最終。如果需要的話,我會把矩形拿出來,但我堅持一種固執的假設。 2.沒有溢出。我劃定了高度和寬度,並可以在設計師中清楚地分辨出來。 3.我在VS端的設計器和xml之間跳轉,呈現的報表生成爲pdf(下載)。 嗯...... ReportViewer可以重寫值。我會研究這個 - 你能指點我一些參考嗎? 再次感謝,非常感謝! – kozmi

+0

這真的取決於你的問題。我會檢查Visual Studio設計器,或者如果您沒有訪問SSRS站點並使用可在Web模式下使用的設計器。這些例子幾乎是所有的前端將指向一個CSS文件,可能會覆蓋觀衆的基本特徵。 – djangojazz