KB2359606-FIX: "System. OverflowException: value bol príliš veľký alebo príliš malý na Int32" chybové hlásenie sa vyskytuje pri pokuse o generovanie zostavy v Microsoft SQL Server 2008 R2 Reporting Services

Microsoft distribuuje Microsoft SQL Server 2008 R2 opravy ako jeden súbor na stiahnutie. Pretože opravy sú kumulatívne, každé nové vydanie obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli zahrnuté do predchádzajúceho SQL servera 2008 R2 opraviť uvoľnenia.

Príznaky

Zoberme si nasledujúcu situáciu:

  • Máte súbor definície jazyka zostavy (RDL), ktorý obsahuje ovládací prvok Tablix v službách Microsoft SQL Server 2008 R2 Reporting Services.

  • Do ovládacieho prvku Tablix pridáte skupinu riadkov alebo skupinu stĺpcov a potom nastavte výraz skupiny na údaje skupiny pomocou stĺpca s číselným typom údajov.

  • Tento stĺpec obsahuje hodnotu, ktorá nie je v rozsahu údajového typu Int32 . Hodnota stĺpca je napríklad 9000001777400270.

V tomto scenári sa pri pokuse o generovanie zostavy zobrazí toto chybové hlásenie:

Počas spracovania lokálnej zostavy sa vyskytla chyba. Počas spracovania zostavy sa vyskytla chyba. Hodnota bola buď príliš veľká alebo príliš malá pre Int32.

Riešenie

Kumulatívna aktualizácia informácií

SQL Server 2008 R2

Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 4. Ďalšie informácie o možnostiach získania tohto balíka kumulatívnych aktualizácií pre SQL Server 2008 R2 nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:

2345451 Kumulatívna aktualizácia balíka 4 pre SQL Server 2008 R2 Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 R2 opraviť uvoľnenia. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na príslušné číslo článku:

981356 Zostavy SQL servera 2008 R2, ktoré boli vydané po vydaní SQL servera 2008 R2

Alternatívne riešenie

Ak chcete tento problém obísť, skonvertujte číselný typ údajov na dvojitý typ údajov alebo typ údajov Int64 . Postupujte podľa nasledujúcich krokov:

  1. Dvojitým kliknutím na skupinu na table skupiny riadkov alebo skupiny stĺpcov otvorte položku vlastnosti skupiny .

  2. Na karte Všeobecné zmeňte výraz skupinový výraz na nasledujúci systémový. dvojaký typ údajov:

    CDbl (polia!<názov poľa>. HodnotuPrípadne zmeňte výraz skupiny na tento typ údajov System. Int64 :

    CLng (polia!<názov poľa>. Hodnotu

Stav

Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.

Odkazy

Ďalšie informácie o typoch údajov nájdete na týchto webových lokalitách:

Všeobecné informácie o štruktúre desatinné číslo

Všeobecné informácie o štruktúre Int32

Všeobecné informácie o štruktúre "Int64"

Všeobecné informácie o štruktúre "Double"

Potrebujete ďalšiu pomoc?

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pripojiť k Microsoft insiderov chcú

Považujete poskytnuté informácie za užitočné?

Ďakujem za vaše pripomienky!

×