Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os dados são estruturados na Razão Confidencial do Azure de duas maneiras principais: ID de Transação e ID de Coleção (ou ID de Subrazão). Cada operação de gravação gera uma ID de transação exclusiva, que pode ser usada para recuperar entradas, obter recibos ou executar outras operações. As IDs de coleção são chaves especificadas pelo usuário (opcional) que ajudam a agrupar ou identificar exclusivamente entradas, permitindo uma recuperação e gerenciamento de dados mais eficientes. Esta página mostra exemplos que demonstram como criar entradas no livro-contábil, recuperar entradas por ID de transação e listar entradas em um intervalo ou coleção.
Além disso, os dados podem ser organizados e consultados por meio de marcas (em versão prévia) que permitem um melhor gerenciamento de dados em coleções atuando como chaves secundárias.
ID de Transação
Cada gravação no razão gera uma ID de transação, que é retornada na resposta do ponto de extremidade de gravação. Ele se parece com o seguinte exemplo:
sample_entry = {"contents": "Hello world!"}
append_result = ledger_client.create_ledger_entry(entry=sample_entry)
print(f"Transaction ID: {append_result['transactionId']}")
Resposta:
Transaction ID: 2.10
A ID da transação na resposta pode ser usada para recuperar a entrada ou fazer outras operações, como recuperar o recibo, etc. Também é possível obter uma lista de entradas fornecendo um intervalo de parâmetros de ID de transação semelhante ao exemplo a seguir.
# Get the latest transaction to the ledger default/global table
get_result = ledger_client.get_current_ledger_entry()
# Get one transaction
get_result = ledger_client.get_ledger_entry(transaction_id=2.10)
# Get a list of transactions within a range
list_result = ledger_client.list_ledger_entries(from_transaction_id=2.1, to_transaction_id=2.50)
ID da coleção
Collection ID (também conhecida como Subledger ID) no Azure Ledger refere-se a chave opcional especificada pelo usuário para entradas registradas no ledger. Ele fornece uma maneira de adicionar uma chave ou marcador aos dados que estão sendo gravados, que podem ser usados para recuperar os dados posteriormente.
A ID da coleção são cadeias de caracteres e não têm limite de tamanho no momento. Isso significa que o tamanho máximo depende do limite de tamanho da solicitação http.
Elas podem ser usados como chaves exclusivas para cada entrada gravada no razão ou para agrupar uma subseção de entradas.
Se nenhuma ID de coleção for especificada, os dados serão gravados na tabela padrão (conhecida como subledger-0).
Para especificar uma ID de coleção, o usuário precisa especificar o parâmetro collectionID durante a solicitação de gravação.
sample_entry = {"contents": "Secret recipe ingredients...!"}
append_result = ledger_client.create_ledger_entry(entry=sample_entry, collection_id="icecream-flavors")
Em seguida, a transação pode ser recuperada especificando o collection ID e o transaction ID durante uma operação de leitura ou especificando apenas a ID da coleção nas operações de list.
# Get the latest transaction in a collection
get_result = ledger_client.get_ledger_entry(collection_id="icecream-flavors")
# Get one specific in a collection
list_result = ledger_client.get_ledger_entry(transaction_id=2.68,collection_id="icecream-flavors")
# Get all entries in a collection
list_result = ledger_client.list_ledger_entries(collection_id="icecream-flavors")
for entry in list_result:
print(f"Transaction ID: {entry['transactionId']}")
print(f"Contents: {entry['contents']}")
Também é possível obter uma lista de entradas em uma coleção especificando a ID da coleção e um intervalo de parâmetros de ID de transação.
list_result = ledger_client.list_ledger_entries(from_transaction_id=2.1, to_transaction_id=2.50, collection_id="icecream-flavors")
Etiquetas (versão prévia)
Adicionar tags a uma coleção é um recurso de pré-visualização disponível com as novas versões de prévia do ledger. Atualize para versões do SDK com base na Referência 2024-12-09-preview da API REST ou mais recente para acesso.
Além disso, esse recurso é limitado a Razões Confidenciais que são do Tipo de Razão Público. Não há suporte para o Tipo de Razão Privado.
Eles permitem um gerenciamento aprimorado de dados em uma coleção atuando como chaves secundárias para uma coleção de dados. As tags são limitadas a 64 sequências de caracteres. Cada transação pode suportar até cinco etiquetas. Se um erro for visto relacionado ao número de etiquetas com suporte e um limite maior for necessário, contate o suporte.
Para usar tags dentro de uma coleção, o parâmetro de tags deve ser especificado.
# multiple tags can be specified using commas.
append_result = ledger_client.create_ledger_entry(entry=sample_entry, collection_id="icecream-flavors", tags="chocolate,vanilla")
A recuperação de registros pode ser feita como antes.
# Get all entries in a collection which has a specified tag. Only one tag is supported per query during a Read operation. Only list/ranged operations are supported with tags.
list_result = ledger_client.list_ledger_entries(collection_id="icecream-flavors", tag="chocolate")
for entry in list_result:
print(f"Transaction ID: {entry['transactionId']}")
print(f"Contents: {entry['contents']}")