Unterstützte Access-Berichtsfunktionen (SSRS)
Wenn Sie einen Bericht in den Berichts-Designer importieren, konvertiert der Importvorgang den Microsoft Access-Bericht in einer Reporting Services RLD-Datei (Report Definition Language). Reporting Services unterstützt zahlreiche Funktionen von Access; jedoch werden aufgrund der Unterschiede zwischen Access und Reporting Services einige Elemente leicht verändert oder nicht unterstützt. In diesem Thema wird beschrieben, auf welche Weise Access-Berichtsfunktionen in RDL konvertiert werden.
Importieren von Access-Berichten
Einige Abfragen enthalten für Access spezifischen Code. Access-Code wird nicht mit dem Bericht importiert. Auch wenn eine Abfrage eingebettete Zeichenfolgen enthält, wird der Bericht möglicherweise nicht ordnungsgemäß importiert. Um dies zu korrigieren, ersetzen Sie die Zeichenfolgen durch einen Zeichencode. Ersetzen Sie beispielsweise das Komma (,) durch CHAR(34).
Beim Importieren wird das Semikolon (;) oder XML-Markupzeichen (<, > usw.) nicht richtig in die Verbindungszeichenfolge übernommen. Enthält eine Verbindungszeichenfolge ein Semikolon oder XML-Markupzeichen, müssen Sie das Kennwort im neuen Bericht nach dem Import manuell festlegen.
Beim Importieren werden die Verbindungs- oder allgemeinen Timeouteinstellungen in der Verbindungszeichenfolge nicht importiert. Möglicherweise müssen Sie nach dem Importieren des Berichts diese Einstellungen anpassen.
Wenn die Abfrage des importierten Berichts Abfrageparameter enthält, wird die Abfrage beim Import nicht konvertiert. Um die Abfrage zusammen mit dem Bericht zu importieren, ersetzen Sie die Abfrageparameter im Access-Bericht vorübergehend durch hartcodierte Werte, und ersetzen Sie sie nach dem Import des Berichts durch Abfrageparameter.
Datenquellen
Reporting Services unterstützt OLE DB-Datenquellen wie SQL Server. Wenn Sie Berichte aus einer Access-Projektdatei (ADP) importieren, wird als Verbindungszeichenfolge für die Datenquelle die Verbindungszeichenfolge in der ADP-Datei übernommen. Wenn Sie Berichte aus einer Access-Datenbankdatei (MDB oder ACCDB) importieren, verweist die Verbindungszeichenfolge möglicherweise auf die Access-Datenbank, und Sie müssen sie nach dem Import der Berichte korrigieren. Handelt es sich bei der Datenquelle für den Access-Bericht um eine Abfrage, werden die Abfrageinformationen ohne Änderung in der RDL-Datei gespeichert. Handelt es sich bei der Datenquelle für den Access-Bericht um eine Tabelle, wird durch den Konvertierungsprozess eine Abfrage erstellt, die auf dem Tabellennamen und den Feldern der Tabelle basiert.
Berichte mit benutzerdefinierten Modulen
Falls benutzerdefinierter Microsoft Visual Basic-Code in Modulen enthalten ist, wird dieser nicht konvertiert. Wird im Berichts-Designer beim Importprozess Code gefunden, wird eine Warnung generiert und im Fenster Aufgabenliste angezeigt.
Berichtssteuerelemente
Reporting Services unterstützt die folgenden Access-Steuerelemente und schließt sie in konvertierte Berichtsdefinitionen ein:
Bild |
Bezeichnung |
Linie |
Rechteck |
Unterformular |
Unterbericht Hinweis Während ein Unterbericht-Steuerelement innerhalb des Hauptberichts konvertiert wird, erfolgt die Konvertierung des Unterberichts selbst separat. |
Textfeld |
Reporting Services unterstützt die folgenden Steuerelemente nicht:
Gebundenes Objektfeld |
Kontrollkästchen |
Kombinationsfeld |
Befehlsschaltfläche |
Benutzerdefiniertes Steuerelement |
Listenfeld |
Objektfeld |
Optionsfeld |
Registersteuerelement |
Umschaltfläche |
Wird im Berichts-Designer beim Importprozess eines dieses Steuerelemente gefunden, wird eine Warnung generiert und im Fenster Aufgabenliste angezeigt.
Andere Steuerelemente, wie ActiveX und Office Web Components, werden nicht importiert. Enthält ein Access-Bericht beispielsweise ein OWC-Diagramm-Steuerelement, wird dieses beim Import des Berichts nicht konvertiert.
Berichtseigenschaften
Reporting Services unterstützt die folgenden Eigenschaften, die über die Access-Benutzeroberfläche zur Verfügung stehen. Eigenschaften, die nur in Code verfügbar sind, werden nicht unterstützt und sind hier nicht aufgeführt.
Hintergrundfarbe |
Hintergrundart |
Rahmenfarbe |
Rahmenart |
Rahmenbreite |
UntererRand |
Vergrößerbar (Textfeld) |
Verkleinerbar (Textfeld) |
Beschriftung |
SchriftFett |
Kursiv |
Schriftart |
Schriftgrad |
Unterstrichen |
Schriftbreite |
NeueSeite |
Textfarbe |
Höhe |
Duplikateausblenden |
Hyperlink |
IstHyperlink |
Sichtbar |
Zusammenhalten (Gruppe) |
Left |
LinkerRand |
Neigung |
Zeilenabstand |
VerknüpfenVon |
VerknüpfenNach |
NeueZeileOderSpalte |
Seitenfuß |
Seitenkopf |
Pages |
Bild |
BildNebeneinander (Bericht) |
Leserichtung |
BereichWiederholen |
RechterRand |
LaufendeSumme |
Größenanpassung |
Textausrichtung |
Nach oben |
ObererRand |
Breite |
Reporting Services unterstützt die folgenden Eigenschaften, die über die Access-Benutzeroberfläche zur Verfügung stehen, nicht:
Vergrößerbar (Abschnitt) |
Verkleinerbar (Abschnitt) |
Dezimalstellenanzeige |
SchnellerLaserdruck |
Filter |
FilterAktiv |
Format |
FormatBedingungen |
GruppeZusammenhalten |
Zusammenhalten (Abschnitt) |
Zifferntyp |
Ausrichtung |
Farbpalette |
Palettenherkunft |
Bildausrichtung |
Bildseiten |
Bildgrößenmodus |
BildNebeneinander (Bild) |
ScrollBars |
Spezialeffekt |
Vertikal |
Grouping
In Access wird eine Gruppenebene durch eine Kombination aus drei Eigenschaften definiert: Gruppenausdruck, GroupOn-Eigenschaft und GroupInterval-Eigenschaft. Eine Gruppe ohne Gruppenkopf oder -fuß wird mit der darin enthaltenen Gruppe zusammengeführt. Enthält die Gruppe keine andere Gruppe, wird der Detailabschnitt sortiert und die Gruppe gelöscht.
Ausdrücke
In Access werden Ausdrücke zur Angabe von Werten verwendet, die in Textfeldern angezeigt werden. Als Sprache für Ausdrücke wird in Access neben einigen Aggregatfunktionen Visual Basic verwendet. Der Berichts-Designer konvertiert diese Access-Ausdrücke in Berichtsausdrücke.
Funktionen
Für Reporting Services-Berichtsdefinitionen wird Visual Basic .NET als systemeigene Sprache für Ausdrücke verwendet, während in Access 2002 Visual Basic verwendet wird. In den folgenden Listen sind die von Reporting Services unterstützten Funktionen beschrieben.
Arrayfunktionen
Reporting Services unterstützt die folgenden Arrayfunktionen:
LBound
UBound
Konvertierungsfunktionen (Berichts-Generator)
Reporting Services unterstützt die folgenden Konvertierungsfunktionen:
Asc |
ZBool |
ZByte |
ZCurrrency |
ZDate |
ZDouble |
ZDec |
Zchn |
Zchn$ |
ZInteger |
ZLong |
ZSingle |
ZString |
ZVariant |
ZVarDat |
Format |
FormatWährung |
FormatDatumZeit |
FormatZahl |
FormatProzent |
Hex |
Hex$ |
Nz |
Oct |
Oktal$ |
Str |
Str$ |
StrKonv |
Wert |
Reporting Services unterstützt die folgenden Konvertierungsfunktionen nicht:
GUIDFromString
StringFromGUID
Datenbankfunktionen
Reporting Services unterstützt die folgenden Datenbankfunktionen:
CreateReport |
GetObject |
HyperlinkPart |
Bereich |
Reporting Services unterstützt die folgenden Datenbankfunktionen nicht:
CodeDb |
CreateControl |
CreateForm |
CreateGroupLevel |
CreateObject |
CreateReportControl |
CurrentDb |
CurrentUser |
DeleteControl |
DeleteReportControl |
Eval |
IMEStatus |
SysCmd |
Datum/Uhrzeit-Funktionen
Reporting Services unterstützt die folgenden Datum/Uhrzeit-Funktionen:
Datum |
Date$ |
DateAdd |
DateDiff |
DatTeil |
DatSeriell |
DatWert |
Tag |
Hour |
Minute |
Monat |
MonthName |
Now |
Second |
Time |
Time$ |
Zeitgeber |
ZeitSeriell |
ZeitSeriellStr |
Arbeitstag |
WeekdayName |
Jahr |
DDE/OLE-Funktionen
Reporting Services unterstützt die folgenden DDE/OLE-Funktionen nicht:
DDE |
DDEIntitate |
DDERequest |
DDESend |
LoadPicture |
Domänenaggregatfunktionen
Reporting Services unterstützt die folgenden Domänenaggregatfunktionen nicht:
DomMittelwert |
DomAnzahl |
DomErsterWert |
DomLetzterWert |
DomWert |
DomMax |
DomMin |
DomStAbw |
DomStAbwn |
DomSumme |
DomVarianz |
DomVarianzen |
Fehlerbehandlungsfunktionen
Reporting Services unterstützt die folgenden Fehlerbehandlungsfunktionen:
Err |
Error |
Error$ |
IsError |
Reporting Services unterstützt die folgende Fehlerbehandlungsfunktion nicht:
- CVErr
Finanzmathematische Funktionen
Reporting Services unterstützt die folgenden finanzmathematischen Funktionen:
GDA |
ZW |
ZINSZ |
IKV |
QIKV |
ZZR |
NBW |
RMZ |
KAPZ |
BW |
ZINS |
LIA |
DIA |
Interaktionsfunktionen
Reporting Services unterstützt die folgenden Interaktionsfunktionen:
Command |
Command$ |
CurDir |
CurDir$ |
DeleteSetting |
Dir |
Dir$ |
Environ |
Environ$ |
EOF |
FileAttr |
FileDateTime |
FileLen |
FreeFile |
GetAllSettings |
GetAttr |
GetSetting |
Loc |
LOF |
Farbe |
RGB |
SaveSetting |
Seek |
SetAttr |
Shell |
Spc |
Tab |
Reporting Services unterstützt die folgenden Interaktionsfunktionen nicht:
DoEvents |
In |
Eingabe |
Input$ |
Inspektionsfunktionen
Reporting Services unterstützt die folgenden Inspektionsfunktionen:
IsArray |
IsDate |
IsEmpty |
IsError |
IsNull |
IsNumeric |
IsObject |
TypName |
VarType |
Reporting Services unterstützt die folgenden Inspektionsfunktionen nicht:
- IsMissing
Mathematische Funktionen
Reporting Services unterstützt die folgenden mathematischen Funktionen:
Abs |
ArcTan |
Cos |
Exponential |
Fix |
Int |
Protokoll (Log) |
ZZG |
Round |
Vorzchn |
Sin |
QWurzel |
Tan |
Nachrichtenfunktionen
Reporting Services unterstützt die folgenden Nachrichtenfunktionen nicht:
Eingabefeld |
Eingabefeld$ |
Meldung |
Programmflussfunktionen
Reporting Services unterstützt die folgenden Programmflussfunktionen:
Wählen Sie |
IIf |
MEHRFACHBEDINGUNG |
SQL-Aggregatfunktionen
Reporting Services unterstützt die folgenden SQL-Aggregatfunktionen:
Avg |
Anzahl |
Max |
Min |
StDev |
StDevP |
Sum |
Var |
VarP |
Textfunktionen
Reporting Services unterstützt die folgenden Textfunktionen:
Format |
Format$ |
InStr |
InStrRev |
Kleinbst |
Kleinbst$ |
Left |
Links$ |
Länge |
LTrim |
LGlätten$ |
Teil |
Teil$ |
ERSETZEN |
Right |
Rechts$ |
RTrim |
LeerZchn |
LeerZchn$ |
StrVgl |
StrKonv |
String |
String$ |
StrReverse |
Glätten |
Glätten$ |
Großbst |
Großbst$ |
Konstanten
Access unterstützt spezielle Visual Basic-Konstanten (z. B. vbTrue) in Ausdrücken nicht, daher ist keine Konvertierung erforderlich. Es gibt jedoch eine Ausnahme: das Schlüsselwort Null wird in System.DbNull.Value konvertiert.
Parameter
Beim Importprozess wird jeder Ausdruck in einem Bericht vom Berichts-Designer auf Variablen überprüft, die keinen Feldnamen oder Steuerelementen entsprechen. Diese Variablen werden zu Berichtsparametern hinzugefügt.
Der Datentyp für Parameter gespeicherter Prozeduren wird immer als Zeichenfolge importiert. Nach dem Import des Berichts müssen Sie den Parameter manuell ändern, sodass der richtige Datentyp verwendet wird.
Objektnamen
In Access können Felder denselben Namen wie Steuerelemente haben; in Reporting Services ist dies nicht zulässig. Visual Basic 6.0 lässt Leerzeichen in Variablennamen zu; Visual Basic .NET nicht. Beim Importprozess werden die Namen aller dieser Objekte durch gültige Namen ersetzt, und falls mehrere Objekte denselben Namen haben, werden diesen eindeutige Namen zugewiesen. Jeder Ausdruck wird überprüft, und die Namen von Variablen, die umbenannten Objekten entsprechen, werden durch die neuen Namen ersetzt.
Rechtecke und enthaltene Elemente
In einer Reporting Services-Berichtsdefinition können Rechtecke andere Berichtselemente enthalten. Jedes Rechteck, das größer ist als das Berichtselement und das mehr als 90 Prozent von dessen Fläche überdeckt, wird zu einem Container für das Berichtselement.
Bitmaps
Alle in einen Bericht eingebetteten Bitmaps werden beim Import des Berichts unabhängig von ihrem ursprünglichen Format in das BMP-Format konvertiert. Enthält ein Bericht z. B. JPG- und GIF-Dateien, handelt es sich bei den resultierenden Ressourcen, die mit dem Bericht importiert werden, um BMP-Dateien. Die Bitmaps werden als eingebettete Bilder im Bericht gespeichert. Informationen zu eingebetteten Bildern finden Sie unter Bilder (Report Builder 3.0 und SSRS).
Weitere Überlegungen
Neben den genannten Aspekten gilt für aus Access importierte Berichte Folgendes:
Bedingte Formatierung wird nicht konvertiert.
Das Beschreibungsfeld in den Berichtseigenschaften in Access wird nicht konvertiert.