See probleem kehtib Microsoft SQL Server 2012 aruandlusteenuste kohta.
Sümptomid
Arvestage järgmise stsenaariumiga.
-
Saate luua Windowsi vormide rakenduse või Windows Presentation Foundationi (WPF) rakenduse, mis põhineb Microsoft .NET Framework 4,0.
-
Windowsi vormide või WPF-i rakenduses saate kasutada Microsoft report Viewer 2010 juhtelementi, et kuvada Microsoft SQL Server 2012 aruandlusteenuste (SSRS 2012) aruande, mis töötab Kaug-režiimis.
-
See teade sisaldab kuupäeva datetime tüüpi parameetrit, millel on vaikeväärtus.
-
Käivitate rakenduse opsüsteemis, kus on määratud Itaalia piirkonna sätted. Lisaks on pika aja vorming seatud väärtusele "hh: mm: ss".
Selle stsenaariumi korral võib ilmneda mõni järgmistest probleemidest.
-
Parameetri " datetime Type" vaikeväärtust ei kuvata parameeter Prompt Area.
-
Kui määrate väärtuse kuupäevale datetime Type (kuupäev) ja soovite selle värskendada, siis on see väärtus pärast teate renderdamist kaotsi läinud ja seda ei kuvata.
Põhjus
See probleem ilmneb .NET Framework 4,0 muutmise tõttu, mis takistab rakenduse ja SSRS 2012-i kasutamist õige teabe põhjal, mis põhineb operatsioonisüsteemi regionaalsetel sätetel. .NET Frameworki 4,0 aluseks olevad rakendused kasutavad Windowsi tagastatud regionaalseid sätteid. Siiski on SSRS 2012 loodud .NET Framework 3,5 Services Pack 1 (SP1). Seetõttu kasutab SSRS 2012 .NET Framework 3,5 SP1 manustatud regionaalseid sätteid. Kui SSRS 2012 Server käivitab ettekande, kasutades sümbolit ".", siis kuvatakse parameeter datetime Type, mis saadetakse kliendile stringina tagasi. Aruannete vaaturi juhtelement kutsub DateTimeOffset. TryParse meetodit, et kinnitada stringi "": ", kasutades ajaeraldajana sümbolit" ":". Seetõttu on string valideeritud kui FALSE ja seda ei kuvata parameeter Prompt Area.Märkus.See probleem ilmneb ainult juhul, kui pika aja vorming on seatud "hh: mm: ss", Itaalia regionaalsete sätete vaikesäte. Itaalia regionaalsete sätete vaikesäte sõltub teie operatsioonisüsteemist. Lisaks saate oma opsüsteemi vaikesätet konfigureerida, muutes pika aja vormingut.
Lahendus
Kumulatiivse värskenduse teave
Kumulatiivne Update 2 SQL Server 2012 Service Pack 1 (SP1)
Selle probleemi parandus anti esmakordselt välja kumulatiivne Update 2. Lisateavet selle kumulatiivse värskenduspaketi hankimiseks SQL Server 2012 Service Pack 1 kohta klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2790947 SQL Server 2012 hoolduspaketi 1 koondvärskenduses pakett 2Märkus. Kuna järgud on kumulatiivsed, sisaldab iga uus parandus kõiki Kiirparandusi ja kõiki turvaparandusi, mis kuulusid eelmiste SQL Server 2012 Service Pack 1 paranduse väljalaskeks. Soovitame teil kaaluda kõige uuemate paranduste rakendamist, mis sisaldavad seda käigultparandust. Lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:
2772858 Pärast SQL Server 2012 hoolduspaketti 1 välja antud SQL Serveri 2012 järgud
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.
Lahendus
Probleemi lahendamiseks kasutage ühte järgmistest lahendustest.
-
Määrake rakenduse ja operatsioonisüsteemi regionaalsed sätted, et need vastaksid klientarvutis asuvatele piirkondlikele sätetele.
-
Saate luua kasutajale stringi sisestamise välja, et asustada teksti. Seejärel teisendage string kuupäevaks.
-
Kui käivitate ettekande, saate luua peidetud või No-viiba parameetri, mis on asustatud väljalt string Input.
-
Saate luua mitte-nähtavalt datetime -tüüpi parameetrit ja DateTimePicker juhtelemendi juhtelementi väljaspool. Klõpsake nuppu Kuva teatisja seejärel asetage stringi väärtus SubmittingParameterValues sündmuseohjuri parameetrile datetime Type ( kuupäev ).
Lisateave
Microsoft report Viewer 2010 SP1 taaslevitatav pakett on saadaval allalaadimiseks Microsoft Download Center veebisaidilt:
Microsoft report Viewer 2010 SP1 taaslevitatav pakettLisateavet DateTimeOffset. TryParseExact meetod ja DateTimeOffset. TryParse meetod, külastage järgmisi MSDN-i veebisaite:
DateTimeOffset. TryParseExact meetod (string, string, IFormatProvider, DateTimeStyles, DateTimeOffset%) DateTimeOffset. TryParse meetod (string, DateTimeOffset%)