(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Registar QR em SharePoint com Power Apps / Power Platform

João Barros 20 de July de 2026 4 min de leitura

Registar QR em SharePoint com Power Apps / Power Platform é útil para inventários, check‑ins ou rastreio de activos. Este tutorial mostra como criar uma Canvas app que usa o control BarcodeScanner para capturar um código e gravar o valor, o utilizador e a hora numa lista SharePoint.

Pré‑requisitos

  • Conta com acesso ao Power Apps e ao SharePoint (permissões para criar listas).
  • SharePoint Online para criar uma lista onde gravar os scans.
  • Power Apps Mobile ou browser com câmara (o BarcodeScanner funciona melhor no telemóvel).

Passo 1: Criar a lista SharePoint

Cria uma lista nova chamada QRLog com colunas básicas. Exemplo de colunas:

Title (Single line) – pode usar para identificar o registo
Barcode (Single line)
ScannedBy (Single line)
ScannedAt (Date and Time)

Deixa a coluna Title obrigatória (ou utiliza outra lógica) — vamos preenchê‑la automaticamente na app.

Passo 2: Criar a Canvas app e ligar a lista

No Power Apps Studio cria uma Canvas app (recomenda‑se o layout para telemóvel). Em Data, adiciona a fonte de dados SharePoint e escolhe a lista QRLog.

Passo 3: Inserir o BarcodeScanner e um EditForm

No ecrã principal insere um BarcodeScanner (p.ex. BarcodeScanner1) e um EditForm (FormScan) ligado a QRLog. Define o FormMode para New:

FormScan.Mode = FormMode.New
FormScan.DataSource = QRLog
FormScan.Item = Defaults(QRLog)

Inclui os DataCards para Barcode, Title, ScannedBy e ScannedAt (o EditForm gera‑os automaticamente se escolheres os campos).

Passo 4: Preparar variáveis e ligar o scan ao formulário

Vamos usar uma variável para guardar temporariamente o valor do scanner e preencher os DataCards antes de submeter.

Seleciona o control BarcodeScanner1 e, na propriedade OnScan, coloca:

Set(varScannedValue, BarcodeScanner1.Value);
Set(varScannedTime, Now());
Set(varScannedBy, User().FullName);
SubmitForm(FormScan)

Agora ajusta os DataCards para usar essas variáveis como valores por omissão:

/* No DataCardValue do campo Barcode */
DataCardValue_Barcode.Default = varScannedValue

/* No DataCardValue do campo ScannedAt */
DataCardValue_ScannedAt.Default = varScannedTime

/* No DataCardValue do campo ScannedBy */
DataCardValue_ScannedBy.Default = varScannedBy

/* Opcional: Title automático */
DataCardValue_Title.Default = "Scan-" & Text(varScannedTime, "yyyy-mm-dd_hhmmss")

Notas: se os nomes dos DataCardValue forem diferentes, ajusta conforme. O SubmitForm enviará os valores actuais do formulário para o SharePoint.

Passo 5: Tratar sucesso e erro

Para confirmar que a submissão correu bem, usa os eventos OnSuccess e OnFailure do FormScan. Exemplos simples:

/* FormScan.OnSuccess */
Notify("Scan registado com sucesso", NotificationType.Success);
ResetForm(FormScan);
Set(varScannedValue, "");

/* FormScan.OnFailure */
Notify("Erro ao registar. Verifica ligação e permissões.", NotificationType.Error);

Estas acções limpam o formulário e informam o utilizador.

Erros comuns e como resolver

  • O BarcodeScanner não abre a câmara no browser: testa a app no Power Apps mobile (iOS/Android) — a funcionalidade pode ser limitada no browser.
  • Permissões da lista: confirma que a conta usada tem permissões para adicionar itens à lista do SharePoint.
  • Campos não aparecem no Form: abre o formulário, escolhe Edit Fields e adiciona os campos correctos (Barcode, ScannedBy, ScannedAt, Title).
  • Formato de data: se o ScannedAt estiver incorrecto, confirma o tipo de coluna no SharePoint (Date and Time) e o formato usado no Default.

Verificar o resultado

Abre a lista QRLog no SharePoint e verifica se aparecem novos itens com o valor do código, o nome do utilizador e o timestamp. No Power Apps, testa a app num telemóvel: abre, pressiona o BarcodeScanner, escaneia um QR e observa as notificações de sucesso.

Conclusão

Agora tens uma Canvas app simples que regista QR/Barcode em SharePoint com Power Apps / Power Platform, sem código complexo. Próximos passos: adicionar geolocalização com Location, suportar modo offline usando Collections e SaveData/LoadData, ou validar duplicados antes de gravar. Dica: testaste a leitura em várias condições de luz e ângulos para garantir a robustez do BarcodeScanner?