Fonctionnalités des états Access prises en charge (SSRS)

Lorsque vous importez un rapport dans le Concepteur de rapports, l'importation convertit l'état Access Microsoft en un fichier RDL (Report Definition Language) Reporting Services. Reporting Services prend en charge plusieurs fonctionnalités d'Accès ; toutefois, à cause des différences entre Accès et Reporting Services, certains éléments sont modifiés légèrement ou ne sont pas pris en charge. Cette rubrique décrit comment les fonctionnalités des états Access sont converties en mode RDL.

Importation d'états Access

Certaines requêtes contiennent du code spécifique à Access. Ce code Access n'est pas importé avec l'état. De plus, si une requête contient des chaînes incorporées, l'état risque de ne pas s'importer correctement. Pour résoudre ce problème, remplacez les chaînes par un code de caractère. Par exemple, remplacez le caractère virgule (,) par CHAR(34).

Le processus d'importation ne transmet pas correctement le point-virgule (;) ou les caractères de balisage XML (<, >, etc.) dans les informations de la chaîne de connexion. Si une chaîne de connexion contient un point-virgule ou un caractère de balise XML, vous devez définir le mot de passe manuellement dans le nouveau rapport après l'importation de l'état.

Le processus d'importation n'importe pas les paramètres de connexion ou de délais d'expiration généraux dans la chaîne de connexion. Il vous faudra peut-être régler ces paramètres après l'importation.

Si vous importez un état dont la requête contient des paramètres, cette requête ne sera pas convertie lors de l'importation de l'état. Pour importer la requête avec l'état, remplacez temporairement les paramètres de la requête dans l'état Access par des valeurs statiques, puis remplacez-les par les paramètres de la requête après l'importation de l'état.

Sources de données

Reporting Services prend en charge les sources de données OLE DB, telles que SQL Server. Si vous importez des états d'un fichier de projet Access (.adp), la chaîne de connexion de la source de données est récupérée de la chaîne de connexion dans le fichier .adp. Si vous importez des états d'une base de données Access (.mdb ou .accdb), il est possible que la chaîne de connexion pointe sur la base de données Access et que vous deviez la corriger après l'importation des états. Si la source de données de l'état Access est une requête, les informations de la requête sont stockées sans modification dans le fichier RDL. Si la source de données de l'état Access est une table, le processus de conversion crée une requête basée sur le nom de la table et sur les champs de cette table.

Rapports avec modules personnalisés

Si du code Microsoft Visual Basic personnalisé est contenu dans des modules, il n'est pas converti. Si le Concepteur de rapports rencontre du code lors du processus d'importation, un avertissement est généré et est affiché dans la fenêtre Liste des tâches.

Contrôles des états

Reporting Services prend en charge les contrôles Access suivants et les inclut dans les définitions de rapports converties.

Image

Étiquette

Ligne

Rectangle

Sous-formulaire

Sous-état

Remarque   Si un contrôle Sous-état est converti dans l'état principal, le sous-état lui-même est converti séparément.

TextBox

Reporting Services ne prend pas en charge les contrôles suivants :

BoundObjectFrame

Case à cocher

Liste déroulante

Bouton de commande

Contrôle personnalisé

Zone de liste

Cadre d'objet

Bouton d'option

Contrôle onglet

Bouton bascule

Si le Générateur de rapports rencontre l'un de ces contrôles lors du processus d'importation, un avertissement est généré et est affiché dans la fenêtre Liste des tâches.

Les autres contrôles comme ActiveX et Office Web Components ne sont pas importés. Par exemple, si un état Access contient un contrôle de graphique Office Web Components, il n'est pas converti lors de l'importation de l'état.

Propriétés des états

Reporting Services prend en charge les propriétés ci-dessous, qui sont accessibles à partir de l'interface utilisateur d'Access. Les propriétés disponibles uniquement dans le code ne sont pas prises en charge et ne sont pas présentées dans cette liste.

CouleurFond

StyleFond

BorderColor

BorderStyle

BorderWidth

MargeBas

AutoExtensible (zone de texte)

AutoRéductible (zone de texte)

Légende

Gras

Italique

Police

FontSize

Souligné

FontWeight

SautPage

CouleurTexte

Hauteur

HideDuplicates

Hyperlink

EstLienHypertexte

EstVisible

SectionInsécable (groupe)

Gauche

MargeGauche

Inclinaison

Interligne

ChampsFils

ChampsPères

NvLigOuCol

PageFooter

PageHeader

Pages

Image

MosaïqueImages (rapport)

SensLecture

RépéterSection

RightMargin

RunningSum

SizeMode

TextAlign

Top

TopMargin

Width

Reporting Services ne prend pas en charge les propriétés ci-dessous, qui sont accessibles à partir de l'interface utilisateur d'Access.

CanGrow (section)

CanShrink (section)

DecimalPlaces

FastLaserPrinting

Filtre

FiltreActif

Format

FormatConditions

GroupeInsécable

SectionInsécable (section)

FormatNumérotation

Orientation

PaletteCouleurs

SourcePalette

AlignementImage

PagesImages

ModeAffichageImage

MosaïqueImages (image)

BarreDéfilement

Apparence

Vertical

Regroupement

Accès définit un niveau de groupe à l'aide d'une combinaison de trois propriétés : l'expression de groupe, la propriété GroupOn et la propriété GroupInterval. Un groupe qui n'a pas d'en-tête ou de pied de groupe est fusionné avec le groupe qu'il contient. Si le groupe ne contient pas un autre groupe, un tri est appliqué à la section Détails et le groupe est ignoré.

Expressions

Access utilise des expressions pour spécifier des valeurs qui apparaissent dans des zones de texte. Access utilise Visual Basic comme langage pour ses expressions en plus de certaines fonctions d'agrégation. Le Concepteur de rapports convertit ces expressions Access en expressions de rapport.

Fonctions

Les définitions de rapports Reporting Services utilisent Visual Basic .NET comme langage d'expression natif, tandis qu'Access 2002 utilise Visual Basic. Les listes suivantes décrivent les fonctions prises en charge par Reporting Services.

Fonctions de tableau

Reporting Services prend en charge les fonctions de tableau suivantes :

  • LBound

  • UBound

Fonctions de conversion

Reporting Services prend en charge les fonctions de conversion suivantes :

Asc

CBool

CByte

CMonnaie

CDate

CDbl

CDec

Chr

Caract$

CEnt

CLong

CSmpl

CChaîne

CVar

CVDate

Format

FormatCurrency

FormatDateTime

FormatNumber

FormatPercent

Hex

Hex$

Nz

Oct

Oct$

Str

Str$

StrConv

Val

Reporting Services ne prend pas en charge les fonctions de conversion suivantes :

  • GUIDFromString

  • StringFromGUID

Fonctions de base de données

Reporting Services prend en charge les fonctions de base de données suivantes :

CreateReport

GetObject

HyperlinkPart

Partition

Reporting Services ne prend pas en charge les fonctions de base de données suivantes :

CodeDb

CreateControl

CreateForm

CreateGroupLevel

CreateObject

CreateReportControl

CurrentDb

Utilisateur en cours

DeleteControl

DeleteReportControl

Eval

IMEStatus

SysCmd

Fonctions de date et d’heure

Reporting Services prend en charge les fonctions de date et d’heure suivantes :

Date

Date$

DateAdd

DiffDate

PartDate

DateSerial

DateValue

Jour

Heure

Minute

Mois

MonthName

Maintenant

Seconde

Temps

Temps$

Minuterie

TimeSerial

TimeValue

Weekday

WeekdayName

Year

Fonctions DDE/OLE

Reporting Services ne prend pas en charge les fonctions DDE/OLE suivantes :

DDE

DDEIntitate

DDERequest

DDESend

LoadPicture

Fonctions d'agrégation de domaines

Reporting Services ne prend pas en charge les fonctions d’agrégation de domaines suivantes :

MoyDom

CpteDom

PremDom

DernDom

RechDom

MaxDom

DMin

DStDev

DStDevP

DSum

DVar

DVarP

Fonctions de gestion d'erreur

Reporting Services prend en charge les fonctions de gestion d'erreur suivantes :

Err

Error

Error$

IsError

Reporting Services ne prend pas en charge la fonction de gestion d'erreur suivante :

  • CVErr

Fonctions financières

Reporting Services prend en charge les fonctions financières suivantes :

DDB

VC

IPmt

IRR

MIRR

NPer

NPV

Pmt

PPmt

PV

Rate

SLN

SYD

Fonctions d'interaction

Reporting Services prend en charge les fonctions d’interaction suivantes :

Command

Command$

RéperCour

RéperCour$

DeleteSetting

Réper

Réper$

Environ

Environ$

EOF

FileAttr

DateHeureFich

LongFich

FreeFile

LireTousParam

LireAttr

GetSetting

Loc

LOF

QBColor

RGB

SaveSetting

Seek

SetAttr

Shell

Spc

Tab

Reporting Services ne prend pas en charge les fonctions d’interaction suivantes :

DoEvents

In

Entrée

Input$

Fonctions d'inspection

Reporting Services prend en charge les fonctions d’inspection suivantes :

IsArray

IsDate

IsEmpty

IsError

IsNull

IsNumeric

IsObject

TypeName

VarType

Reporting Services ne prend pas en charge la fonction d’inspection suivante :

  • IsMissing

Fonctions mathématiques

Reporting Services prend en charge les fonctions mathématiques suivantes :

Abs

Atn

Cos

Exp

Fix

Int

Log

Rnd

Round

Sgn

Sin

Sqr

Tan

Fonctions de message

Reporting Services ne prend pas en charge les fonctions de message suivantes :

InputBox

InputBox$

MsgBox

Fonctions de déroulement de programme

Reporting Services prend en charge les fonctions de déroulement de programme suivantes :

Choose

IIf

Switch

Fonctions d'agrégation SQL

Reporting Services prend en charge les fonctions d'agrégation SQL suivantes :

Avg

Count

Max

Min

StDev

StDevP

Sum

Var

VarP

Fonctions de texte

Reporting Services prend en charge les fonctions de texte suivantes :

Format

Format$

InStr

InStrRev

Minuscule

Minuscule$

Gauche

Gauche$

NbCar

SupprGauche

SupprGauche$

ExtracChaîne

ExtracChaîne$

Replace

Droite

Droite$

SupprDroite

Espace

Espace$

CompChaîne

ConvChaîne

Chaîne

Chaîne$

StrReverse

SupprEspace

Trim$

UCase

UCase$

Constantes

Access ne prend pas en charge les constantes spéciales Visual Basic (par exemple vbTrue) dans les expressions. Aucune conversion n'est donc nécessaire. Il existe toutefois une exception : le mot clé Null est converti en System.DbNull.Value.

Paramètres

Au cours du processus d'importation, le Générateur de rapports analyse chaque expression contenue dans les états à la recherche des variables qui ne correspondent pas à des noms de champs ou de contrôles. Ces variables sont ajoutées aux paramètres du rapport.

Le type de données des paramètres des procédures stockées est toujours importé en tant que chaîne. Après l'importation de l'état, vous devez modifier manuellement le paramètre pour utiliser le type de données correct.

Noms d'objets

Contrairement à Reporting Services, Access accepte que les champs aient le même nom que les contrôles. Visual Basic 6.0 autorise les espaces dans les noms de variables, contrairement à Visual Basic .NET. Le processus d'importation remplace les noms de tels objets par des noms valides et attribue des noms uniques si plusieurs objets portent le même nom. Chaque expression est analysée et les noms des variables qui correspondent à des objets renommés sont remplacés par les nouveaux noms.

Rectangles et relation contenant-contenu

Dans une définition de rapport Reporting Services, les rectangles peuvent contenir d'autres éléments de rapport. Tout rectangle plus large qu'un élément de rapport, et qui recouvre plus de 90 % de sa surface, devient le conteneur de cet élément de rapport.

Images bitmap

Toutes les images bitmap qui sont incorporées dans un état sont converties au format .bmp lorsque l'état est importé, quel que soit leur format d'origine. Par exemple, si votre état inclut des fichiers .jpg et .gif, les ressources résultantes importées dans le rapport sont des fichiers .bmp. Les images bitmap sont stockées sous forme d'images incorporées dans le rapport. Pour plus d'informations sur les images incorporées, consultez Images [Générateur de rapports version 3.0 et SSRS].

Autres considérations

Outre les éléments précédemment cités, les informations qui suivent s'appliquent aux états importés à partir d'Access :

  • La mise en forme conditionnelle n'est pas convertie.

  • Le champ de description dans les propriétés d'état dans Access n'est pas converti.