Glorf.it

Glorf IT

Bedenkliches aus dem IT-Alltag

6. März 2010 um 16:30

aktive Blogs von Mitgliedern der PASS Deutschland

Die Anzahl der Postings soll nur ein grober Anhaltspunkt dafür sein, dass der Blog tatsächlich aktiv ist. Die Menge sagt natürlich nichts über die Qualität aus. (Meine Postings zum SQL Server enthalten bspw. oft genug nur Hinweise auf lesenswerte Artikel anderer Leute, was keine große Leistung ist und daher kein Qualitätskriterium sein kann.)
Links gibt es bei den Links nun auch eine neue Kategorie "PASS Deutschland" in der diese Blogs nun dauerhaft stehen:

Bernd Jungbluth mit dem Blog von SQLFAQ.de
229 Postings von 12/2007 bis 10/2009

Sascha Lorenz
157 Postings von 03/2005 bis 01/2010

Torsten Schuessler
123 Postings von 11/2005 bis 01/2010

Olaf Pietsch
50 Postings von 10/2007 bis 01/2010

Klaus Oberdalhoff
frisch gestartet – Viel Erfolg!

und natürlich auch Thomas Glörfeld mit Glorf IT ;-)
419 Postings zum Thema SQL bzw. SQL-Server von 07/2006 bis 01/2010

Wer weitere bloggende PASSler kennt, den bitte ich um eine kurze Info. Dann kann die Liste langsam wachsen.

Und wer findet, dass ich auch die Blogs der Jungs aus Übersee aufnehmen sollte, der kann ja schon mal überlegen, welche der 260 Blogs ich weglassen soll…

PS: Blogs, die in 2009 oder 2010 keinen Beitrag veröffentlichten, habe ich nicht aufgeführt. Auch bei sehr großzügiger Auslegung kann man die nicht als aktiv bezeichnen. Falls sich einige wundern, warum einer fehlt: Auf meine Anfrage an Klaus A. erhielt ich keine Antwort, daher ist er hier erst mal nicht dabei.

3. März 2010 um 21:19

SQL-PASS Franken: Meta-Daten der BI-Lösung auswerten

SQL-PASSAuch den kommenden Dienstag, den 9.3.2010 um 18:30 Uhr, bietet sich in Nürnberg die gute Gelegenheit andere SQL-Server- bzw. BI-Power-User bei dem nächsten Vortrag der SQL-PASS Franken kennen zu lernen. Der Titel ist diesmal noch etwas sperriger als üblich: "Aktivitäten und Aufwände einer BI – MSSQL Server Applikation messen, auswerten und Kennzahlen darstellen".

Zum Glück wird auch gleich erklärt worum es geht:

Wie erreicht es die IT-Abteilung, nicht als purer Kostentreiber und Kostenverursacher angesehen zu werden, sondern sich als "Business Enabler" zu präsentieren, d.h. als innovativer Bestandteil eines Unternehmens angesehen zu werden, das neue Geschäftsprozesse erst ermöglicht ?

Muss ein Data Warehouse, ein Data-Mart oder die BI-Plattform immer nur ein fixer, quasi monolithischer Kostenblock sein? Welche Kennzahlen liefert der MSSQL Server eigentlich über sich selbst? Wie und mit welchen Kennzahlen kann man den service-orientierten Ansatz einer solchen Lösung herausarbeiten und transparent machen?

Der Vortrag lüftet das Geheimnis dieser Fragen, er zeigt am Beispiel des MS SQL Servers wie die Auswertung der Metadaten über die BI-Plattform eine Gegenüberstellung von Aktivitäten und Aufwänden ermöglicht und stellt einen praktischen Lösungsansatz mit dem SQL Server vor. Alles in allem gibt der Sprecher seine Antwort auf die Frage: "Wie kann man Aktivitäten und Aufwände einer BI – MSSQL Server Applikation messen, auswerten und Kennzahlen darstellen"

Alle Achtung, da kommen ja gleich jede Menge wohlklingender Wörter vor: Business-Enabler, monolithischer Kostenblock, Geschäftsprozess, service-orientiert etc. Das macht ja neugierig auf den Referenten:

Dr. Ulrich Plogas
Principal Consultant, der high IQ Unternehmensberatung
Jahrgang 1950
1974 Dipl-Ing. (Elektroingenieurwesen)
1978 Dr.-Ing. 30 Jahre Berufserfahrung in der IT-Branche.
20 Jahre tätig mit Schwerpunkt Decision Support, Data Warehouse, Business Intelligence. 15 Jahre Berufserfahrung als Berater.
Tätigkeiten für in- und ausländische Unternehmen in verschiedenen verantwortlichen Positionen darunter 13 Jahre lang Consultant bei Microsoft in verschiedenen Positionen.

Wen das noch nicht angesprochen hat, dem ist nicht zu helfen. Oder doch: Danach gehen wir wieder alle zusammen zum Italiener und plaudern über andere wichtige Dinge im Leben und tauschen auch Erfahrungen zu anderen Themen aus.

Gastgeber ist diesmal wieder die New Elements GmbH (Äußere-Bayreuther-Straße. 55, 90409 Nürnberg).

Und wie jedes Mal so ist auch diesmal der Eintritt frei, auch Nicht-Mitglieder sind herzlich eingeladen. Bitte dennoch bei Michael Deinhard unter M.Deinhard(ät)newelements.de oder Klaus Oberdalhoff unter kob(ät)sqlpass.de anmelden, damit die Anzahl der benötigten Stühle abgeschätzt werden kann. Im Januar mussten wir beispielsweise wegen des Ansturms ins benachbarte Hotel umziehen.

Mehr Infos hier.

20. Februar 2010 um 16:35

Die Tabelle ist mehrdeutig

Als mir mein Kollege Thomas ein Problem präsentierte, musste ich erst mal lange überlegen. Grund genug das hier festzuhalten, falls es auch anderen so geht. Im UPDATE-Befehl kann man einen JOIN auf eine andere Tabelle machen. Der UPDATE wird aber dennoch nur auf die Basistabelle durchgeführt. Bei einem Self-Join kann dabei ein Fehler kommen:

UPDATE test
        SET fill= t2.fill
FROM test AS t1
JOIN test AS t2
        ON t1.refid=t2.id

Meldung 8154, Ebene 16, Status 1, Zeile 1
Die 'test'-Tabelle ist mehrdeutig.

Oder auf englisch: "The table '%.*s' is ambiguous." Die Lösung besteht darin, dass man im UPDATE über den Alias deutlich macht, auf welche Tabelle der UPDATE durchgeführt werden soll. Beispielsweise so:

UPDATE t1 /* <– Hier den Alias verwenden */
        SET fill= t2.fill
FROM test AS t1
JOIN test AS t2
        ON t1.refid=t2.id

Das gilt freilich auch für ein DELETE-FROM.

Hier noch der Code für ein schnelles Repro:

USE tempdb
GO
IF object_id ('test') IS NULL
        CREATE TABLE test (
                id      INTEGER NOT NULL PRIMARY KEY,
                name    NVARCHAR(100) NOT NULL,
                refid   INTEGER NULL REFERENCES test(id),
                fill    INTEGER NULL);
ELSE
        DELETE FROM test;      
       
INSERT INTO test (id, name, refid, fill)
        SELECT  1, N'Bill', NULL, 10                    UNION ALL
        SELECT  2, N'Bob',  NULL, 20                    UNION ALL
        SELECT  3, N'Hank', NULL, 30                    UNION ALL
        SELECT  4, N'Tom',  1,    NULL                  UNION ALL
        SELECT  5, N'Babs', 1,    NULL                  UNION ALL
        SELECT  6, N'Grit', 1,    NULL                  UNION ALL
        SELECT  7, N'Alex', 2,    NULL                  UNION ALL
        SELECT  8, N'Eric', 2,    NULL                  UNION ALL
        SELECT  9, N'Stan', 2,    NULL                  UNION ALL
        SELECT 10, N'Ole',  2,    NULL                  UNION ALL
        SELECT 11, N'Skye', 3,    NULL                  UNION ALL
        SELECT 12, N'Mary', 3,    NULL                  UNION ALL
        SELECT 13, N'Joe',  3,    NULL                  UNION ALL
        SELECT 14, N'Kurt', 3,    NULL                  UNION ALL
        SELECT 15, N'Karl', 3,    NULL;
GO
UPDATE test
        SET fill= t2.fill
FROM test AS t1
JOIN test AS t2
        ON t1.refid=t2.id
/*
Meldung 8154, Ebene 16, Status 1, Zeile 1
Die 'test'-Tabelle ist mehrdeutig.
*/
     
GO
UPDATE t1
        SET fill= t2.fill
FROM test AS t1
JOIN test AS t2
        ON t1.refid=t2.id
16. Februar 2010 um 20:48

NoSQL? Wie wäre es mit CouchDB?

Bei Heise Developer erschien aktuell ein interessanter Artikel über eine NoSQL-Datenbank: CouchDB – angesagter Vertreter der "NoSQL"-Datenbanken.

Ist es eine zufällige Häufung oder hat das derzeit überall aufkeimende Interesse der Community an NoSQL-Datenbanken etwas mit dem Aufkauf von MySQL durch Oracle zu tun? Auch ich bin unsicher, ob ich mein Interesse an MySQL jetzt nicht lieber auf andere Datenbanksysteme umleiten sollte…

15. Februar 2010 um 20:45

Datenbankfehler auf Datenbankhilfeseite

Zur Konfigurationsdatenbank kann keine Verbindung hergestellt werden.Verbindungsprobleme gehören bei uns schon zum alltäglichen Supportgeschäft. Meist liegt es schlicht daran, dass der SQL Server gestoppt ist und der Kunde das einfach nicht bemerkt. Dennoch fand ich es heute bemerkenswert, dass die "SQL Server FAQ" wegen eines Datenbankfehlers nicht erreichbar ist:

Zur Konfigurationsdatenbank kann keine Verbindung hergestellt werden.

Das kann freilich immer passieren, aber dennoch finde ich es irgendwie witzig. Etwa so wie wenn ein Zahnarzt Zahnschmerzen hat…

11. Februar 2010 um 22:22

müde Datenbank-Witze

Aus meinem Fundus hier ein paar (recht alte) Datenbank-Witze:

Q: Why couldn't the index become a tightrope-walker?
A: It was unbalanced

Q: Was the cube straight or gay?
A; Neither, it was BI.

Q: What on earth was the query trying to do when it set fire to its wallet?
A: It must have been trying to warm its cache.

Q: How did the police catch the serial-killer query?
A: They used a Profiler

Q: What's a dentist's favourite MDX function?
A: Extract

Q: How did the BI developer send his backed-up database to a colleague on the other side of London?
A: In a .cab file

Die Quelle notierte ich damals leider nicht.

10. Februar 2010 um 22:05

Northwind heute

In meinem SQL-Einsteiger-Kurs nutze ich immer noch die gute, alte Northwind-Datenbank. Die gibt es nämlich noch und ist nach meiner Erfahrung gerade für Einsteiger ideal geeignet, weil alles so simple ist.

Mit der beiliegenden "instnwnd.sql" könnte man die Testdaten nach etlichen Anpassungen sogar auf einem anderen Datenbanksystem einspielen.

Aber einfacher ist es freilich, wenn man sich den SQL Server 2008 Express with Advanced Services installiert und darauf übt.

Da ich für meinen Fortgeschrittenen-Kurs die AdventureWorks verwenden, hier noch der Link auf die moderneren Testdatenbanken von Microsoft.

2. Februar 2010 um 20:19

SQL-PASS Franken: Sichern, Wiederherstellen, Integrity Check und Index Optimization

SQL-PASSUnglaublich aber wahr, seit dem letzten PASS-Vortrag ist schon wieder fast ein Monat vergangen. Daher findet am nächsten Dienstag, den 9.02.2010 um 18:30 Uhr, in Nürnberg wieder der nächste Vortrag der SQL-PASS Franken statt.
Das Thema ist diesmal aus der Administration und sogar mein Lieblingsthema: Datensicherung! OK, der genaue Titel ist etwas überfrachtet, aber spannt den Bogen etwas genauer: "Sichern, Wiederherstellen, Integrity Check und Index Optimization von Datenbanken im SQL Server". Hier die offizielle Beschreibung:

Die im SQL Server gespeicherten Daten können zum wertvollsten Unternehmensbesitz gehören. Daher gilt es, diese Daten gegen mögliche Ausfälle zuverlässig zu schützen. Regelmäßige Sicherungen und das Testen der Rücksicherungsstrategien gehören daher zu den vordringlichsten Aufgaben der SQL Administration. Der Microsoft SQL Server 2008 stellt leistungsfähige Sicherungs- und Wiederherstellungsfunktionen bereit.
Das Konzipieren und Implementieren einer sorgfältig geplanten und zuverlässigen Sicherungs- und Wiederherstellungsstrategie schützt Datenbanken vor Datenverlust aufgrund von Schäden, die durch die verschiedensten Fehler verursacht werden können.

Torsten Schüßler
referiert über die Themen:

  • Was ist ein zuverlässiges Backup?
  • vollständige Datenbanksicherung und Wiederherstellung über das Netzwerk hinsichtlich eines Worst-Case Szenario
  • Backup, Integrity Check & Index Optimization ein Script von Ola Hallengren
    (Ola Hallergren bietet eine hervorragende und leicht einzurichtende (und kostenlose) Script-Lösung für SQL Server 2005/2008 für Backup, Integrity Check und Index Optimierung)

Vorstellung des Referenten

Torsten Schüßler ist seit über 12 Jahren als Datenbank- und Systemadministrator tätig. Als Datenbankadministrator für die Unternehmensgruppe Europoles, einem ehemaligen Bereich des Pfleiderer Konzerns, ist er für den erfolgreichen Betrieb der Datenbankserver verantwortlich. Europoles ist Marktführer in Europa und produziert Masten, Stützen und Türme sowie Trägersysteme für vielfältigste Anwendungsmöglichkeiten. Im Jahr 2009 erzielte Europoles mit rund 800 Mitarbeitern einen Jahresumsatz von 120 Mio. Euro.
Als einer der maßgeblichen Autoren des deutschsprachigen SQL Server Portals www.InsideSQL.org, berichtet er zusammen mit Frank Kalis und Christoph Muthmann laufend über Interessantes zum SQL Server.

Gastgeber ist diesmal wieder die New Elements GmbH (Äußere-Bayreuther-Straße. 55, 90409 Nürnberg).

Und wie jedes Mal so ist auch diesmal der Eintritt frei, auch Nicht-Mitglieder sind herzlich eingeladen. Bitte dennoch bei Michael Deinhard unter M.Deinhard(ät)newelements.de oder Klaus Oberdalhoff unter kob(ät)sqlpass.de anmelden, damit die Anzahl der benötigten Stühle abgeschätzt werden kann. Im Januar mussten wir beispielsweise wegen des Ansturms ins benachbarte Hotel umziehen.

Mehr Infos hier.

13. Januar 2010 um 19:58

NoSQL-Datenbanken

Über den sehr interessanten Artikel "Aufstand der NoSQL-DBs" in der Zeitschrift "database pro 1/2010" wurde ich auf die sogenannten "no-SQL-Datenbanken" aufmerksam. Den Begriff kannte ich bisher noch nicht. Das ist ein Oberbegriff für alle möglichen "neuen" Datenbanksysteme, die Bedürfnisse erfüllen, die man mit den bisherigen relationalen Systemen nicht oder nicht gut abdecken kann. Die relationalen Systeme sind sehr klar definiert und man kann relativ schnell das Grundkonzept erfassen und erläutern.

Die NoSQL-Systeme definieren sich hingegen dadurch, dass die anders funktionieren als relationale Systeme. Dementsprechend groß ist die Vielfalt der dahinter steckenden Technologien. Einen ganz guten Überblick bietet die Seite www.nosql-databases.org. Hier werden die Datenbanksysteme so kategorisiert:

  • Wide Column Stores
  • Document Stores
  • Key Value / Tuple Stores
  • Eventually Consistent Key Value Stores
  • Graph Databases
  • Object Databases
  • und sonstigen ;-)

So unterschiedlich wie die eingesetzten Technologien, so unterschiedlich sind die Anforderungen, die die Systeme erfüllen wollen. Daher wird "NoSQL" mittlerweile auch mit "not only SQL" übersetzt. Im oben genannten Artikel wird NoSQL so definiert:

Neue Datenbanken und Datenbanktechnologien, die in der Mehrzahl viele der folgenden Punkte adressieren: nicht relational, verteilt, Open Source und horizontal skalierbar. Des Weiteren gelten häufig noch folgende Eigenschaften: relativ schemafrei, Replikationsunterstützung, Partitionierung- beziehungsweise Sharding-Unterstützung, einfaches API, "evantually consistent" […] und einiges mehr.

Das klingt nun nicht wirklich nach einer Definition, was aber daran liegt, dass die verschiedenen Systeme sich sehr stark voneinander unterscheiden. Ich bin mal gespannt, ob einzelne dieser Systeme sich im Markt etablieren können.

10. Januar 2010 um 14:19

SQL-PASS Franken: Unternehmensplanung mit dem SQL Server

SQL-PASSNächste Woche am Dienstag, den 19.01.2010 um 18:30 Uhr, findet in Nürnberg wieder der nächste Vortrag der SQL-PASS Franken statt. Das Thema stammt aus der Praxis und stellt ein konkretes Einsatzszenario dar, anstelle der bisher üblichen Ausschnitte einzelner Themen: "Unternehmensplanung mit dem SQL Server am Beispiel des Bekleidungshauses Rudolf Wöhrl AG". Hier die offizielle Beschreibung:

Unternehmensplanung mit dem SQL Server am Beispiel des Bekleidungshauses Rudolf Wöhrl AG

Für die erfolgreiche Steuerung von Unternehmen sind Unternehmensplanungen notwendig. Neben der standardisierten Finanzplanung (GuV, Bilanz) gibt es in jedem Unternehmen eine große Anzahl individueller, dynamischer Planungsaufgaben: Finanzplanung, Absatzplanung, Produktionsplanung, Personalplanung, Investitionsplanung, Budgetierung und Forecasting.
Unternehmensplanungen sind komplexe, sich wiederholende Prozesse, die sich in jedem Unternehmen anders gestalten. Sie sind direkt abhängig von Unternehmensabläufen und -strukturen. Häufig von mehreren Personen erstellt, durch Genehmigungsverfahren angenommen, abgelehnt, überarbeitet und schließlich in einem großen Gesamtplan zusammengeführt.

Das Bekleidungshaus Rudolf Wöhrl AG hat auf Basis des SQL Server 2008 unter anderem eine Absatz- und Ergebnisplanung für ihre 40 Standorte erfolgreich realisiert.
Herr Marcus Kresin, BI-Leiter von Wöhrl, zeigt uns die Anforderungen an eine Planungslösung und die Lösungsansätze.

Anschließend stellt uns Herr Westphal, Leiter Consulting der Firma Bissantz, die Möglichkeiten vor, Planungssysteme mit dem SQL Server 2005/2008 zu realisieren.
Der Schwerpunkt liegt hierbei auf dem Vergleich relationaler und multidimensionaler Ansätze zur Lösung von typischen Aspekten von Planungslösungen.

Vorstellung der Referenten:
Marcus Kresin leitet seit Anfang 2009 bei der Rudolf Wöhrl AG den Bereich Business Intelligence (BI). Er arbeitete zuvor im internationalen Luftfahrtbereich und seine Aufgaben lagen dort in der Optimierung von Prozessen im Operativen- und Finanzsektor mit der Hilfe von Software- und Datenbanklösungen.

Michael Westphal, Leiter Consulting der Firma Bissantz, beschäftigt sich seit Jahren intensiv mit der Konzeption und Realisation von BI- und Planungslösungen mit dem SQL Server. In einer Vielzahl von Projekten hat er einen tiefen Einblick in die unterschiedlichen Kundenanforderungen, Vorgehensweisen und Lösungsmöglichkeiten bekommen.

Gastgeber ist diesmal wieder die New Elements GmbH (Äußere-Bayreuther-Straße. 55, 90409 Nürnberg).

Und wie jedes Mal so ist auch diesmal der Eintritt frei, auch Nicht-Mitglieder sind herzlich eingeladen. Bitte dennoch bei Michael Deinhard unter M.Deinhard(ät)newelements.de oder Klaus Oberdalhoff unter kob(ät)sqlpass.de anmelden, damit man die Anzahl der benötigten Stühle abgeschätzt werden kann.

Mehr Infos hier.

3. Januar 2010 um 11:13

Vorsicht bei Cursor auf TVF/View mit PIVOT

Kürzlich wurde der kummulative Update 7 (CU7) für den SQL Server 2005 SP3 veröffentlicht. Darin wird ein Problem beseitig, das man nur schwer entdecken kann, wenn man betroffen ist: Bei einem Cursor auf eine View oder eine Table-Valued-Fumction kann der Cursor falsche Ergebnisse liefern. Hier ein Repro, dass auch mit SQL Server 2008 funktioniert:

SET NOCOUNT ON;
go
USE tempdb
go
BEGIN TRY DROP TABLE dbo.tg_table1 END TRY BEGIN CATCH END CATCH;
BEGIN TRY DROP TABLE dbo.tg_table2 END TRY BEGIN CATCH END CATCH;
BEGIN TRY DROP FUNCTION dbo.f_PivotAndOuterJoin END TRY BEGIN CATCH END CATCH;
go
– create table 1
SELECT cy, value, type
        INTO dbo.tg_table1
        FROM (  SELECT 2002, 1, 3 UNION ALL
                        SELECT 2003, 1, 3 UNION ALL
                        SELECT 2004, 1, 3 UNION ALL
                        SELECT 2005, 1, 3 UNION ALL
                        SELECT 2006, 1, 3 UNION ALL
                        SELECT 2007, 1, 3 UNION ALL
                        SELECT 2008, 1, 3 UNION ALL
                        SELECT 2009, 1, 3 UNION ALL
                        SELECT 2008, 1, 3 UNION ALL
                        SELECT 2009, 1, 3) AS x(cy, value, type);
go
– create table 2
SELECT cy
        INTO dbo.tg_table2
        FROM (  SELECT 2003 UNION ALL
                        SELECT 2004 UNION ALL
                        SELECT 2005 UNION ALL
                        SELECT 2006 UNION ALL
                        SELECT 2007 UNION ALL
                        SELECT 2008) AS x(cy);

CREATE CLUSTERED INDEX c_1 ON dbo.tg_table2 (cy);
go
CREATE FUNCTION dbo.f_PivotAndOuterJoin ()
RETURNS TABLE AS
RETURN
        SELECT d.cy, [3] AS value
                FROM tg_table1 AS t1
                        PIVOT ( MAX(value) FOR t1.type IN ([3]) ) AS d
                LEFT OUTER JOIN dbo.tg_table2 AS t2
                        ON      d.cy=t2.cy

go

DECLARE @year int;

PRINT 'wrong results:';

DECLARE cCursor CURSOR FOR
        SELECT cy FROM dbo.f_PivotAndOuterJoin() ORDER BY cy;

OPEN cCursor;
FETCH NEXT FROM cCursor INTO @year;

WHILE @@FETCH_STATUS = 0 BEGIN
        PRINT convert(varchar, @year);
               
        FETCH NEXT FROM cCursor INTO @year;
END
CLOSE cCursor;
DEALLOCATE cCursor;

PRINT ' '; – only to get an empty line
go
DECLARE @year int;

PRINT 'correct result (with STATIC cursor):';

– STATIC, FAST_FORWARD, or READ_ONLY are OK,
– but FORWARD_ONLY, DYNAMIC, SCROLL, or KEYSET are not OK
DECLARE cCursor CURSOR STATIC FOR              
        SELECT cy FROM dbo.f_PivotAndOuterJoin () ORDER BY cy;

OPEN cCursor;
FETCH NEXT FROM cCursor INTO @year;

WHILE @@FETCH_STATUS = 0 BEGIN
        PRINT convert(varchar, @year);
               
        FETCH NEXT FROM cCursor INTO @year;
END
CLOSE cCursor;
DEALLOCATE cCursor;
 
/* output:

wrong results:
2009
2004
2005
2006
2007
2008
2009
 
correct result (with STATIC cursor):
2002
2003
2004
2005
2006
2007
2008
2009
*/

Die genauen Bedingungen sind im KB-Artikel 976565 beschrieben:

# In Microsoft SQL Server 2005, you have a query that opens a cursor of type FORWARD_ONLY, DYNAMIC, SCROLL or KEYSET.
# The cursor is in an inline table-valued function or a view.
# The inline table-valued function or the view uses either a PIVOT operator or an UNPIVOT operator.
# In addition to the source table of the PIVOT or UNPIVOT operator, there is at least one other table that is referenced in the inline table-valued function or the view.

Alle Bedingungen müssen zutreffen. Meine intuitive Reaktion ist berechenbar: schon wieder ein Argument gegen Cursor. Aber leider gibt es immer noch einige Situationen in denen man unbedingt Cursor benötigt. Das oben gesagt trifft natürlich auch für client-seitige Cursor zu.

7. Dezember 2009 um 20:37

SQL-PASS Franken: lokale Reports versus Server-Reports

SQL-PASSAm morgigen Dienstag, den 8.12.2009 um 18:30 Uhr, findet in Nürnberg wieder der nächste Vortrag der SQL-PASS Franken statt. Das Thema finde ich persönlich sehr interessant, besonders falls man immer schon mal vor hatte sich mit den Reporting-Services zu beschäftigen.

Möglichkeiten für die Reporterstellung – Localreport versus Serverreport

Berichte sind in Anwendungen und BI-Lösungen ein zentrales Element zur Visualisierung von Unternehmensdaten. Konzeptionell stehen mit den Reporting Services und den ReportViewer Control in .NET zwei verschiedene Microsoft-Technologien zur Realisierung der Anforderungen zu Verfügung.

Herr Bechtloff wird in seinem Vortrag die beiden Alternative demonstrieren und Kriterien für die Entscheidungsfindung vorstellen. Vertiefend wird er die technologischen Möglichkeiten des ReportViewer Controls und dessen Einbindung in eine Applikation vorstellen.

  • Einblick in die RDL Report Definition Language
  • Übersicht der SSRS Architektur
  • Pro und Contra der Reportformen Localreport/Serverreport
  • Programmatisches Handling der Reporttypen
  • Integration von Reports in Applikationen mit dem ReportViewer Control
  • Architektur einer Report Factory
  • Tipps und Tricks

Stefan Bechtloff ist Senior Consultant bei der New Elements GmbH und unterstützt seit über vierzehn Jahren Unternehmen beim Aufbau von Business Intelligence- und Individualsoftware-Lösungen von der Architekturvorgabe bis hin zur Implementierung.

Gastgeber ist diesmal wieder die New Elements GmbH (Äußere-Bayreuther-Straße. 55, 90409 Nürnberg).

Und wie jedes Mal so ist auch diesmal der Eintritt frei, auch Nicht-Mitglieder sind herzlich eingeladen. Bitte dennoch bei Klaus Oberdalhoff unter kob(ät)sqlpass.de anmelden, damit er weiß, wie viele Stühle ungefähr benötigt werden.

PS: Falls es sich dabei um den Stefan von Bechtloff.net handelt, dann bin ich ihm schon zwei mal begegnet… ;-)