Tablix: Çalışmayan her sayfada başlık satırlarını tekrarlama - Rapor Oluşturucusu 3.0


164

Birden fazla sayfaya yayılan birçok satır içeren bir tablix var. Tablix özelliğini ayarladım Her sayfada tekrar başlık satırları var ama bu çalışmıyor. Bir yerde bu Rapor Oluşturucu 3.0 bilinen bir hata olduğunu okudum. Bu doğru mu? Değilse, yapılması gereken başka bir şey var mı?

Yanıtlar:


427

Kullandığınız tablix yapısına bağlıdır. Örneğin, bir tabloda sütun gruplarınız yoktur, bu nedenle Reporting Services hangi metin kutularının sütun üstbilgileri olduğunu algılamaz ve RepeatColumnHeaders özelliğini True olarak ayarlamak çalışmaz.

Bunun yerine şunları yapmanız gerekir:

  1. Gruplandırmalar bölmesinde Gelişmiş Modu açın. (Sütun Grupları'nın sağındaki oku tıklayın ve Gelişmiş Mod'u seçin.)
    • Ekran görüntüsü
  2. Satır Grupları alanında (Sütun Grupları değil), tablix'te karşılık gelen metin kutusunu vurgulayan bir Statik gruba tıklayın. En soldaki sütun başlığını vurgulayana kadar her Statik grubu tıklatın. Bu genellikle listelenen ilk Statik gruptur.
  3. Özellikler penceresinde RepeatOnNewPageözelliği True olarak ayarlayın.
    • Ekran görüntüsü
  4. KeepWithGroupÖzelliğin olarak ayarlandığından emin olun After.

KeepWithGroupMülkiyet belirtir hangi gruba hangi statik üye ihtiyaçları sopa. AfterO zaman ayarlanırsa , statik üye bir grup üstbilgisi olarak işlev gören gruptan sonraki veya sonraki gruba yapışır. Olarak ayarlanırsa Before, statik üye grup altbilgisi gibi davranarak önce veya üstünde grupla yapışır. Olarak ayarlanırsa None, Reporting Services statik üyeyi nereye koyacağınıza karar verir.

Şimdi raporu görüntülediğinizde, sütun başlıkları tablix'in her sayfasında tekrarlanır.

Bu video, tam olarak açıklanan cevap olarak nasıl ayarlanacağını gösterir.


1
Stacia, KeepWithGroup'u seçip kaydetmeye çalıştığımda, "tablix 'DetailTablix' in geçersiz bir TablixMember'i var. TablixColumnHierarchy'deki tüm TablixMember öğelerinin RepeatOnNewPage özelliğinin false olarak ayarlanmış olması gerekir." Herhangi bir fikir?
moodboom

24
Sorunumu çözdüm. Stacia cevabınız kesinlikle doğru, sadece doğru olmak zor bir şey. Stacia'nın RepeatOnNewPage özelliğini ayarlarken ROW Grupları alanını değiştirdiğini unutmayın. Bu çözümle ilgili diğer her şey sütunlarla ilgilenir, ancak Sütunlar'daki açılır menüyü tıklasanız bile Sütun gruplarını (sağdaki) değil Satır gruplarını (solda) seçmeniz gerekir. Teşekkürler Stacia, parlak.
moodboom

5
+1 - İnternette bu konuda bir düzine yol hakkında okumayı yeni bitirdim ve bu konuya en iyi doğrudan çözümdür - ayrıca seçeneklerin neden önemli olduğunu açıklayın. Teşekkürler!
JNK

3
Bu video tam olarak açıklanan cevap olarak nasıl ayarlanacağını gösterir: youtube.com/watch?v=WAO819-gkKw
karides pirinci

8
KeepWithGroup = Sonra benim için önemliydi. Çok fazla Microsoft gibi, bu da bir özelliğin çalışmasını sağlamak için gereken açık olmayan bir numaradır. Teşekkür ederim!
Leqid

17

Ben 2.0 var ve yardımcı olmak için yukarıda bulundu; bununla birlikte, bir statikin seçilmesi hücreyi bir nedenle vurgulamamıştır. Şu adımları izledim:

  1. Sütun grupları altında gelişmiş olanı seçin ve statikler görünecektir
  2. Satır gruplarında görünen statiki tıklayın
  3. KeepWithGroup öğesini After ve RepeatOnNewPage öğesini true olarak ayarlayın

Şimdi sütun başlıklarınız her sayfada tekrarlanmalıdır.


Bu mükemmel çalıştı .... benim için işe yaramadı yukarıdaki cevap çok daha basit.
R_Avery_17

maalesef bu, tekrar boş sayfa almaya başlamama neden oluyor.
Mike

10

Bu sorunu nasıl düzelttim, arkadaki kodu manuel olarak değiştirdim (menüden Görünüm / kod). Aşağıdaki bölüm <TablixMember> </TablixMember>, tablix'teki satır sayısı kadar sayıda çift ​​içermelidir . Benim durumumda <TablixMember> </TablixMember>tablix'teki satır sayısından daha fazla çiftim vardı. Ayrıca "Gelişmiş moda" ("Sütun Grupları" nın sağında) giderseniz "Satır grupları" nın arkasındaki statik satırların sayısı tablix'teki satır sayısına eşit olmalıdır. Eşit hale getirmenin yolu kodu değiştirmektir.

<TablixRowHierarchy>
      <TablixMembers>
        <TablixMember>
          <KeepWithGroup>After</KeepWithGroup>
          <RepeatOnNewPage>true</RepeatOnNewPage>
        </TablixMember>
        <TablixMember>
          <Group Name="Detail" />
        </TablixMember>
      </TablixMembers>
    </TablixRowHierarchy>

Şaşırtıcı bir şekilde, bunu yapmak sorunu çözdü. 6 satırlı bir tablix vardı (3 başlık satırı artı bir başlık, ayrıntı ve altbilgi satırı içeren bir grup). Kaynağa bakıldığında <TablixRowHierarchy> 'de 6 <TablixRow> s, ancak 7 <TablixMember> s gösterildi. Hangi ekstra (bir grup sarılmış) olduğu için en iyi tahmin aldı ve kaldırıldı. Bu sürüm oluşturulamadı, ancak hata iletisi bir satırın <Repeat ...> ve <KeepWith ...> ayarlarının öncekilerle eşleşmesi gerektiğini belirtti; Bunları 3. (Statik) satır ve voila'da "true" ve "After" olarak değiştirdim! Keşke gerçekten anlamış olsaydım;)!
GISmatters

Bunun için teşekkürler. Ben 10 yıldan fazla bir süredir SSRS kullanıyorum ve sadece bu sorunla karşılaştım - gerçekten de, grubun etrafında fazladan bir TablixMember sarıcısı vardı (grup ekleme ve kaldırma deneylerinden şüphe yok). Üye listesini temizlemek, gizemli tekrar etmeyen başlığı çözdü.
Carl Daniel

Teşekkürler Gruplandırılmış ve veri olmayan iki fazla TablixMember satırını silmek zorunda kaldı. Raporumda bunun işareti, biri yerine iki statik satır grubu olmasıydı. Ben aşırı XML yuvalama kaldırdıktan sonra tekrarlayan satırlar çalışmaya başladı.
Noppadet

1
Teşekkür ederim. Benzer sorunla karşılaştığım raporum için sadece bu çözüm işe yaradı.
Syed

görünüşe göre Visual Studio'da doğru ayar eksik. Bu nedenle ReportBuilder ile ilgili "gelişmiş ayarlar" uçları yardımcı olmadı. Dosyanın manuel olarak düzenlenmesi bir cazibe gibi çalıştı. Teşekkürler!
MovGP0

9

Advanced ModeGruplamalar bölmesinde açın . (Sütun Grupları'nın sağındaki oku tıklayın ve Gelişmiş Mod'u seçin.)

Satır Grupları alanında (Sütun Grupları değil), tablix'te karşılık gelen metin kutusunu vurgulayan bir Statik gruba tıklayın.

En soldaki sütun başlığını vurgulayana kadar her Statik grubu tıklatın. Bu genellikle listelenen ilk Statik gruptur.

Özellikler tablosunda:

  • set KeepWithGroupiçinAfter
  • ayarlamak RepeatOnNewPageiçin Truebaşlıkları yineleme
  • set FixedDataiçin Truegörünür başlıklarını tutmak için

5

Hâlâ bu sorunla karşılaşırsanız bunu gerçekleştirmenin başka bir yolu da aşağıdakileri yapmaktır:

  • Tüm Tablo üstbilgisi metnini boş bırakın.
  • Raporlar “Üstbilgi” bölümünde, dikdörtgenin içine metin kutuları ekleyin, her metin kutusu tablo için bir sütun üstbilgisini temsil eder.
  • Bu dikdörtgen Rapor Başlığı bölümünde olduğundan, tüm rapor sayfalarında görüntülenir.

Teşekkürler, Sufian.


2

Benim için işe yarayan, sıfırdan yeni bir rapor oluşturmaktı.

Bu yapılır ve yeni rapor çalışıyor, ben Visual Studio 2 .rdl dosyaları karşılaştıracağım. Bunlar XML biçimindedir ve hızlı bir WindDiff ya da bir şey sorunun ne olduğunu ortaya çıkaracağını umuyorum.

İlk bakışta, her iki dosya arasında 700 kod satırı veya biraz daha fazla fark olduğu görülür, 2 dosyadan büyük olanı hatalı dosyadır. TablixHeader etiketlerine cursory bakmak belirgin bir şey ortaya koymadı.

Ama benim durumumda bozuk bir .rdl dosyasıydı. Bu başlangıçta çalışan bir rapordan kopyalanmıştır, bu yüzden yeniden kullanılmayanları kaldırma sürecinde bu rapor bozulabilir. Ancak, aynı işlemin gerçekleştirildiği diğer raporlar, Özellikler'de doğru ayarlar yapıldığında üstbilgiler tekrarlanabilir.

Bu yardımcı olur umarım. Karmaşık bir raporunuz varsa, bu hızlı bir çözüm değildir, ancak işe yarar.

Belki de bilinen iyi XML dosyalarını sonunuzdaki hatalı dosyalarla karşılaştırmak iyi bir forum gönderisi yapar. Sonunda bunu deneyeceğim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.