Compartilhar via


Método DataRecordset.GetPrimaryKey (Visio)

Obtém a configuração de chave primária e o nome de uma ou mais colunas de chaves primárias para o conjunto de registros de dados.

Observação

This Visio object or member is available only to licensed users of Visio Professional 2013.

Sintaxe

expressão. GetPrimaryKey (PrimaryKeySettings, PrimaryKey())

expressão Uma expressão que devolve um objeto DataRecordset .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
PrimaryKeySettings Obrigatório VisPrimaryKeySettings Parâmetro de saída. A configuração de chave primária para o conjunto de registros de dados. Consulte Comentários para obter os valores possíveis.
PrimaryKey() Obrigatório String Parâmetro externo. Uma matriz de variáveis String.

Valor de retorno

Nada

Comentários

Utilize o método GetPrimaryKey para determinar a definição de chave primária existente para um conjunto de registos de dados e o nome da coluna ou colunas da chave primária se tiver sido especificada uma chave primária. O método retorna a configuração de chave primária para o conjunto de registros de dados no parâmetro de saída PrimaryKeySettings, como o valor da enumeração VisPrimaryKeySettings. O padrão (quando nenhuma chave primária é especificada) é visKeyRowOrder, que significa que o Microsoft Visio identifica as linhas do conjunto de registros de dados por ordem das linhas.

Um conjunto de registos de dados para o qual foi especificada uma chave primária pode ter colunas de chave primária única ou composta. Uma chave primária de coluna única baseia a identificação da linha nos valores de uma única coluna. Uma chave primária composta usa duas ou mais colunas para identificar exclusivamente uma linha. Os valores possíveis para PrimaryKeySettings são mostrados nesta tabela.

Constant Valor Descrição
visKeyRowOrder 1 Usar a ordem das linhas como a chave primária.
visKeySingle 2 Usar uma única coluna como coluna de chaves primárias.
visKeyComposite 3 Usar várias colunas como colunas de chaves primárias.

Para o parâmetro PrimaryKey(), transmita uma matriz sem dimensão de cadeias. Se a definição da chave primária devolvida for visKeySingle ou visKeyComposite, o método também devolve uma matriz de cadeias de nome de coluna de chave primária no parâmetro PrimaryKey(). Se a configuração de chave primária for visKeyRowOrder, o padrão, o método retornará uma matriz vazia.

Utilize o método DataRecordset.SetPrimaryKey para especificar a definição de chave primária para o conjunto de registos de dados, bem como o nome da coluna ou colunas que pretende definir como colunas ou colunas de chave primária. Ao definir as chaves primárias, verifique se a(s) coluna(s) selecionada(s) como coluna(s) de chaves primárias contém(êm) valores (ou conjuntos de valores) exclusivos para cada linha.

Exemplo

Essa macro do Microsoft Visual Basic for Applications (VBA) mostra como usar o método GetPrimaryKey para determinar a configuração de chave primária, bem como o nome da primeira coluna de chaves primárias. A macro localiza o conjunto de registos de dados criado mais recentemente associado ao documento e, se tiver sido especificada uma chave primária, imprime na janela Imediato o valor da definição da chave primária e o nome da primeira coluna de chave primária para o conjunto de registos de dados. Se não houver nenhuma chave primária, ela imprimirá a configuração de chave primária e a declaração "No primary key".

Antes de executar esta macro, crie pelo menos um conjunto de registos de dados no documento atual e, se quiser, especifique uma chave primária com o método 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

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.