🚀 BEM-VINDO AO MEU DIÁRIO DE ENGENHARIA LOW-CODE e APRENDIZADO PRÁTICO
Bem-vindo ao Curso Aprenda na Prática: Construindo Sistemas Reais com Power Apps e SharePoint
Se você já tentou aprender desenvolvimento low-code assistindo a tutoriais rápidos na internet, provavelmente se deparou com aplicativos puramente teóricos: uma lista simples de tarefas, um cadastro de contatos que nunca vai para o ambiente de produção ou soluções frágeis que travam assim que o volume de dados aumenta no dia a dia. Eu criei este blog com uma proposta completamente diferente.
Meu nome é Osorio Soares e este espaço é o meu diário público de aprendizado e desenvolvimento. Aqui, eu não vou apenas ensinar você a clicar em botões no Power Apps Canvas. Nós vamos acompanhar, passo a passo, a construção de um Sistema de Controle de Bens completo, projetado por mim para rodar na rotina real e dinâmica de uma grande instituição.
💻
CURSO APRENDA NA PRÁTICA
Desenvolvimento de Sistemas Profissionais do Absoluto Básico ao Avançado
Power Apps + SharePoint
Se o seu objetivo é parar de criar "aplicativos de brinquedo" e passar a projetar softwares profissionais usando as ferramentas do Microsoft 365, você está no lugar certo. O meu curso é totalmente gratuito, focado na prática e vai conduzir você do nível básico ao avançado.
1. Minha Filosofia: Por que o Desenvolvimento Baseado em Estados Muda o Jogo?
A grande maioria dos problemas em aplicações desenvolvidas no Power Apps acontece porque os criadores espalham dezenas de telas pelo projeto e confiam em navegações tradicionais de página em página. Quando o fluxo de dados cresce, o aplicativo fica pesado, lento para carregar e impossível de receber manutenção técnica. Eu idealizei uma arquitetura completamente diferente para este sistema.
Em vez de criar um amontoado de páginas, eu adotei a filosofia de poucas telas físicas e múltiplos painéis dinâmicos, controlados por um motor lógico invisível que responde ao contexto atual do usuário. Toda a minha engenharia é governada por três pilares matemáticos inegociáveis:
A Metáfora Hídrica: Eu enxergo o patrimônio e os dados como um fluxo contínuo de água. Os registros nascem no Reservatório (itens novos), circulam pelas Torneiras (ações de alocação e transferências de sala), passam por Filtros (ajustes técnicos de classificação) e saem pelos Ralos (baixas e descartes).
As Três Verdades: Uma estrutura lógica que eu desenhei para manter o banco de dados honesto. Nela, a Verdade Financeira (tudo o que foi comprado no papel) deve ser exatamente igual à soma da Verdade Física (onde o item está agora) com o Backlog (as pendências de destino do sistema).
A Pirâmide de Controle: O verdadeiro cérebro reativo do aplicativo. Eu estruturei um ecossistema de quatro variáveis globais hierárquicas que determinam com precisão cirúrgica o que aparece ou oculta na tela, agindo como um escudo que blinda o backend contra erros operacionais humanos.
2. O Mapa da Jornada: O Cronograma Sequencial de Telas que Vamos Construir
Eu planejei este curso seguindo uma progressão pedagógica rigorosa. Nós passaremos pela consolidação dos conceitos iniciais no primeiro módulo e, a partir do Módulo 2, entraremos diretamente no Power Apps Studio. Para cada ambiente principal do sistema, eu dediquei um módulo inteiro de desenvolvimento. Ao final do percurso, nós teremos um software completo de nível corporativo baseado em 4 telas oficiais e imutáveis:
Tela_Inicial (Sufixo _Ini) — Desenvolvida no Módulo 6: Eu projetei este ambiente como o painel de controle principal (Dashboard). Ele exibe indicadores rápidos, gráficos automáticos e um banner crítico de auditoria no exato instante em que o sistema detecta qualquer divergência patrimonial.
Tela_Cadastros (Sufixo _Cad) — Desenvolvida no Módulo 3: Aqui eu organizei um fluxo avançado de múltiplos painéis alternantes que força o usuário a respeitar a hierarquia lógica de classificação do bem (Categoria, Subcategoria, Tipo e Modelo) antes de liberar a criação de novos lotes.
Tela_Catalogo (Sufixo _Cat) — Desenvolvida no Módulo 4: Eu criei este módulo para acabar com o problema do "estoque invisível". Ele funciona como um buscador inteligente com filtros cruzados, permitindo localizar instantaneamente a quantidade e o estado real de conservação de qualquer ativo.
Tela_Alocacao (Sufixo _Alo) — Desenvolvida no Módulo 5: O coração operacional do sistema. É o ambiente onde eu implementei a lógica hidráulica de movimentação, registrando as saídas e entradas de materiais sala por sala com validação em tempo real.
Além desses módulos de tela, eu escrevi o Módulo 1 focado no conhecimento da interface do sistema, e um Móduloespecial focado na geração automática de relatórios em PDF em conjunto com o Power Automate.
3. Minhas Diretrizes de Sintaxe PT-BR e Nomenclatura Obrigatória
Como eu configurei o meu ambiente de desenvolvimento em Português do Brasil, as fórmulas do Power Fx respondem obrigatoriamente aos padrões regionais de pontuação. Ignorar essas regras causará erros de compilação imediatos. Em todas as nossas aulas, nós seguiremos rigorosamente os meus quatro padrões técnicos invioláveis:
Separador de Argumentos (;): Eu utilizo sempre o ponto e vírgula para separar os parâmetros de qualquer comando. A vírgula padrão americana gerará erro no nosso estúdio.
Operador de Encadeamento (;;): Para executar ações consecutivas em uma fórmula de comportamento (como no OnSelect de um botão), eu utilizo obrigatoriamente o ponto e vírgula duplo.
Nomes de Colunas sem Aspas: Em funções estruturais como Filter ou AddColumns, eu declaro os nomes das colunas sem aspas. Aspas transformam o identificador em um texto fixo comum, quebrando a busca.
Nomenclatura Semântica Rígida: Todo componente visual que eu insiro na tela combina seu prefixo funcional (como bt para botão, lbl para rótulo ou gal para galeria) ao seu objetivo e ao sufixo da tela onde ele vive. Um botão de salvar na Tela de Cadastros, por exemplo, chama-se exatamente btSalvar_Cad.
Veja um exemplo prático do código limpo e encadeado que eu escrevi e testei para orquestrar as mudanças de estado da nossa interface: Set(varGlobal_Acao; Blank());; Set(varGlobal_Painel; "Cadastros");; ClearCollect(colDados; Filter(MinhaLista; Status = "Ativo"))
4. Os Erros Clássicos que Eu Vou Ensinar Você a Deixar para Trás
Eu planejei este conteúdo para corrigir de forma definitiva duas falhas graves cometidas por desenvolvedores iniciantes:
Tratar patrimônio como um inventário estático: Eu vou ensinar você a parar de criar softwares que geram apenas "fotografias paradas" de dados. Nós vamos modelar um sistema que acompanha a circulação real dos materiais no exato instante em que o evento acontece.
Ignorar a Higiene de Variáveis: Muitos criadores espalham variáveis locais sem controle, gerando vazamento de dados antigos para telas novas. Eu vou mostrar a você como utilizar um ecossistema de variáveis globais perfeitamente centralizado e atômico.
Nenhum comentário:
Postar um comentário