Partager via


Méthode DataRecordset.GetPrimaryKey (Visio)

Obtient le paramètre de clé primaire et le nom de la ou des colonnes de clé primaire pour le jeu d'enregistrements de données.

Remarque

Cet objet ou ce membre Visio est disponible uniquement pour les titulaires d’une licence d’utilisation de Visio Professionnel 2013.

Syntaxe

expression. GetPrimaryKey (PrimaryKeySettings, PrimaryKey())

Expression Expression qui renvoie un objet DataRecordset .

Parameters

Nom Requis/Facultatif Type de données Description
PrimaryKeySettings Requis VisPrimaryKeySettings Paramètre de sortie. Paramètre de clé primaire pour le jeu d'enregistrements de données. Voir la section Remarques pour les valeurs possibles.
PrimaryKey() Requis String Paramètre sortant. Tableau de variables String.

Valeur renvoyée

Aucune

Remarques

Utilisez la méthode GetPrimaryKey pour déterminer le paramètre de clé primaire existant pour un jeu d’enregistrements de données et le nom de la ou des colonnes de clé primaire si une clé primaire a été spécifiée. La méthode renvoie le paramètre de clé primaire pour le jeu d’enregistrements de données dans le paramètre de sortie ParamètresCléPrimaire, en tant que valeur provenant de l’énumération VisPrimaryKeySettings. La valeur par défaut (lorsqu’aucune clé primaire n’a été spécifiée) est visKeyRowOrder, ce qui signifie que Microsoft Visio identifie les lignes du jeu d’enregistrements de données par ordre de ligne.

Un jeu d’enregistrements de données pour lequel une clé primaire a été spécifiée peut avoir des colonnes de clé primaire unique ou composite. Une clé primaire avec une seule colonne base l'identification de lignes sur les valeurs d'une seule colonne. Une clé primaire composite utilise deux ou plusieurs colonnes pour identifier une ligne de manière unique. Les valeurs possibles pour ParamètresCléPrimaire sont indiquées dans ce tableau.

Constante Valeur Description
visKeyRowOrder 1 Utiliser l'ordre de lignes comme clé primaire.
visKeySingle 2 Utiliser une seule colonne comme colonne de clé primaire.
visKeyComposite 3 Utiliser plusieurs colonnes comme colonnes de clé primaire.

Pour le paramètre de sortie PrimaryKey(), passez un tableau de chaînes sans dimension. Si le paramètre de clé primaire retourné est visKeySingle ou visKeyComposite, la méthode retourne également un tableau de chaînes de nom de colonne de clé primaire dans le paramètre de sortie PrimaryKey(). Si le paramètre de clé primaire est visKeyRowOrder, la valeur par défaut, la méthode renvoie un tableau vide.

Utilisez la méthode DataRecordset.SetPrimaryKey pour spécifier le paramètre de clé primaire pour le jeu d’enregistrements de données, ainsi que le nom de la ou des colonnes que vous souhaitez définir comme colonne de clé primaire ou de colonnes. Lorsque vous définissez des clés primaires, veillez à ce que la ou les colonnes que vous choisissez en tant que colonnes de clé primaire contiennent des valeurs uniques (ou ensembles de valeurs) pour chaque ligne.

Exemple

Cette macro Microsoft Visual Basic pour Applications (VBA) indique comment vous pouvez utiliser la méthode GetPrimaryKey pour déterminer le paramètre de clé primaire d'un jeu d'enregistrements de données, ainsi que le nom de la première colonne de clé primaire. La macro recherche le jeu d’enregistrements de données le plus récent associé au document et, si une clé primaire a été spécifiée, imprime dans la fenêtre Exécution la valeur du paramètre de clé primaire et le nom de la première colonne de clé primaire pour le jeu d’enregistrements de données. S'il n'existe pas de clé primaire, elle imprime le paramètre de clé primaire ainsi que le message « Pas de clé primaire ».

Avant d’exécuter cette macro, créez au moins un jeu d’enregistrements de données dans le document actif et, si vous le souhaitez, spécifiez une clé primaire à l’aide de la méthode SetPrimaryKey .

Public Sub GetPrimaryKey_Example() 
 
    Dim vsoDataRecordset As Visio.DataRecordset 
    Dim intCount As Integer 
    Dim astrPrimaryKeyColumns() As String 
    Dim vsoKeySettings As VisPrimaryKeySettings 
 
 
    intCount = ThisDocument.DataRecordsets.Count 
    Set vsoDataRecordset = ThisDocument.DataRecordsets(intCount) 
    vsoDataRecordset.GetPrimaryKey vsoKeySettings, astrPrimaryKeyColumns 
 
    If vsoKeySettings = visKeyRowOrder Then 
        Debug.Print vsoKeySettings, "No primary key" 
    Else 
        Debug.Print vsoKeySettings, astrPrimaryKeyColumns(0) 
    End If 
    
End Sub

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.