januari 2006


Eftersom Reporting Services för SQL Server 2000 inte verkar ha stöd för svenskt språk fick jag använda en inbygd funktion för att formatera datum och tid enligt svenskt format (inklusive 24-timmars):

=CDate(Fields!dbFaelt.Value).ToString(”yyyy-MM-dd hh:mm:ss”)

Ingen optimal lösning, men det funkar.

När man bytte lösenord för SA i en SQL Server 2000 som även kör Reporting Services, slutade plötsligt allt att fungera. Jag insåg snabbt när jag hadde pratat med den DBA som hadde bytt lösen att Reporting Services använde SA för att komma åt sin databas. Men hur skulle man ändra det?

Kom fram till att ‘rsconfig’ var den rätta vägen. Dock fick jag det inte att fungera. Efter att ha läst felmeddelandet i eventloggen ett antal gånger kom jag på att någon hadde fipplat med filen RSReportServer.config manuellt, och lagt in användare och lösen på den användare som skall köra ‘Unattended Reports’ manuellt. Det tyckte inte Reporting Services om eftersom den inte kunde dekryptera det som stog i fälten. Efter att ha plockat bort de texter som stog i ‘UserName’, ‘Password’ och ‘Domain’ i sektionen ‘UnattendedExecutionAccount’ fungerade det. Jag kunde sätta om användare och lösenord.

Sen tänkte jag som så att jag måste väl även använda den användaren mot ‘ReportServerTempDB’……..

Det var då nästa fel dök upp:

The version of the report server database is either in a format that is not
valid, or it cannot be read. The found version is ‘T.0.6.xx’. The expected
version is ‘C.0.6.xx’. To continue, update the version of the report server
database and verify access rights. (rsInvalidReportServerDatabase)

Eller i alla fall insåg jag efter ett tag att det var det som orsakade det. Så efter att ha kört rsconfig på nytt, nu mot ‘ReportServer’, fungerade det igen.

Det fungerade med såväl SQL-användare som Windows-användare. Mycket smidigt tycker jag. Har dock inte testat att köra med ‘impersonate’, alltså att den använder den användare som kör processen. Men jag skulle gissa att om man bara ger den process som kör IIS behörighet mot databasen skulle det fungera.

 UPDATE:

Om man skapar eller lägger till en användare i databasen (ReportServer), kom ihåg att lägga till behörighet till rollen ‘RSExecRole’!

Jag har en tid funderat på hur man skulle kunna ta åt sig information på ett bättre sätt. RSS-feeds är ett steg i rätt riktning, men det bli fortfarande ‘information overflow’ efter en viss tid. Man vill kunna filtrera även den informationen på ett smart sätt.

Jag funderade då på om man kunde göra en applikation som hanterar filtreringen. Och gör det på ett smart sätt. Den skall alltså lära sig vad man är intresserad av, vilket kan ta ett bra tag. Man vill ju heller inte missa någon information som kan vara bra…

Men sen skulle jag vilja göra applikationen tillgänglig till flera så vem som helst kunde nyttja den. Och då som en webbapplikation. Men då kommer vi in på något som jag skulle gissa blir ett problem.

De flesta ‘informationskällor’ är rädda om sin information och tillåter inte att man kopierar eller flyttar informationen för annat än personligt bruk. Om man skall skapa en sådan applikation vill man för att minska belastningen på nätet ladda ner informationen och spara ner det man är intresserad av. Men om man har en traditionell webbapplikation kräver det att man har en server som håller informationen. Och vem äger informationen där? Troligen skulle man säga den som äger servern, vilket vorde innebära att den som äger servern har gjort sig skuldig till brott på källans ‘Terms of use’.

Med web 2.0 (ex. www.start.com) löser man det här genom att informationen laddas direkt från källorna till klienten. Det går alltså inte via någon central server. Vilket är exemplarisk bra. Men man får fortfarande ingen filtrering, och belastningen på servern kan bli större än nödvändigt om användarna är ‘informationshungriga’.

Så det ända sättet att lösa det verkar vara skapa en desktop-applikation som laddar informationen och filtrerar den lokalt hos varje användare. Eller kanske en webb-applikation som jobbar enligt web 2.0…..

FYI! (om andra skulle råka ut för samma sak)

Jag har skapat en webbapplikation i Visual Studio 2005. När jag skapade en koppling till en databas och skulle ‘attacha’ den dynamisk i min kod med hjälp av connectionstringen fick jag ett exception med felet Operating system error 32: ”32(error not found)” när jag skulle visa webbsidan. Felet verkade orsakas av att applikationen inte fick öppna databasen, och de foruminlägg jag hittade på nätet antydde också i den riktningen. För det mesta att man var tvungen att ge behörighet för diverse konton. Som vanligt alltså. Men efter lite fundering och provande visade det sig att det var så enkelt att jag behövde stäga alla kopplingar från Visual Studio till databasen. Exakt vilken koppling jag hadde öppen vet jag inte, men det löste sig i alla fall när jag stängde ner studion.

 

Vilket program! Äntligen hittade jag ett program som kunde analysera min disk och verkar kunna hitta åter mina partitioner. Jag hittade flera program där jag själv kunde återställa MBR, men det var jag visste ju inte hur sectorerna låg, så det var ju meningslöst.

Programmet verkade hitta partitionerna, och det var då jag upptäckte att man kan inte ha mer än 4 primära partitioner på en hårddisk. Det borde jag ju ha kommit ihåg! Men i alla fall. När jag då hadde hittat 3 partitioner till, insåg jag när jag skulle spara ner att jag hadde en DEMO-version av programmet! Och det gick inte att spara. Så nu blir det att forsöka med ett annat program. Jag vet i alla fall sectorerna nu…..

I går gjorde jag det! På min bärbara har jag en Windows XP-installation, och en Windows Vista Dec. CTP. I går bestämde jag mig för att jag skulle installera Windows XP på ytterligare en partition. Bara för att jag inte villa blanda ihop mina jobb-grejer och de spel jag helt plötsligt ville installera…..

Installationen gick bra, men när jag startade upp kunde operativet inte läsa annat än den partition som jag just hadde installerat XP på. Jag hadde räknat med att den skulle förstöra MBR’en på hårddisken, men att jag inte skulle komma åt dom andra partitionerna var jag inte förberedd på….

Alla min 4 andra partitioner är alltså som blåst bort?!?! Jag trodde i alla fall att jag skulle kunna återställa dom genom att göra en annan part. bootbar, men den hittar dom helt enkelt inte. Jag måste ha missat nåt elementärt här känns det som. Jag har ju inte gjort så här förut, men det känns konstigt. På nåt sätt verkar det som att min sista installation skrev över en tabell som håller en översikt över de partitioner som skall finnas på disken och deras startsector. För den partitionen som finns, den finns ju helt på slutet av hårddisken.

Mycket konstigt. Någon som har ett svar?

Jag måste prova köra min ‘Ultimate Boot CD’ igen och se om jag kan hitta igen partitionerna och återställa den som fattas. 🙂