KB2359606-FIX: při pokusu o vygenerování sestavy v Microsoft SQL serveru 2008 R2 Reporting Services se zobrazí chybová zpráva "System. OverflowException: hodnota byla příliš velká nebo příliš malá pro chybu Int32"

Společnost Microsoft distribuuje Microsoft SQL Server 2008 R2 opravy jako jeden soubor ke stažení. Protože jsou opravy kumulativní, každá nová verze obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího SQL serveru 2008 R2 fix release.

Příznaky

Zvažte následující scénář:

  • Máte soubor RDL (Report Definition Language), který obsahuje ovládací prvek Tablix v Microsoft SQL serveru 2008 R2 Reporting Services.

  • Do ovládacího prvku Tablix přidáte skupinu řádků nebo skupinu sloupců a potom nastavíte skupinový výraz na data skupiny pomocí sloupce, který má číselný datový typ.

  • Tento sloupec obsahuje hodnotu, která není v rozsahu datového typu Int32 . Například hodnota sloupce je 9000001777400270.

V tomto scénáři se při vygenerování sestavy zobrazí následující chybová zpráva:

Při místním zpracování sestavy došlo k chybě. Při zpracování sestavy došlo k chybě. Pro datový typu Int32 byla hodnota buď příliš velká, nebo příliš malá.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2008 R2

Oprava pro tento problém byla poprvé vydána v kumulativní aktualizaci 4. Další informace o tom, jak získat tento kumulativní balíček aktualizací pro SQL Server 2008 R2, najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

2345451 Kumulativní aktualizace 4 pro SQL Server 2008 R2 Poznámka Vzhledem k tomu, že buildy jsou kumulativní, každá nová oprava obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího SQL serveru 2008 R2 fix release. Doporučujeme zvážit použití nejnovější opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:

981356 Buildy SQL Server 2008 R2 vydaná po vydání SQL serveru 2008 R2

Alternativní řešení

Tento problém vyřešíte tak, že datový typ převedete na datový typ Double nebo na datový typ Int64 . Postupujte takto:

  1. Poklikáním na skupinu v podokně skupiny řádků nebo skupiny sloupců otevřete vlastnosti skupiny .

  2. Na kartě Obecné změňte výraz skupiny na tento systém. dvojitý výraz datového typu:

    CDbl (pole!<název pole>. VícehodnotovýNebo změňte výraz skupiny na následující datový typ System. Int64 :

    Funkce CLng (pole!<>. Vícehodnotový

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.

Odkazy

Další informace o datových typech najdete na následujících webech:

Obecné informace o struktuře "Decimal"

Obecné informace o struktuře "Int32"

Obecné informace o struktuře "Int64"

Obecné informace o "dvojnásobné" struktuře

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×