sankhya-dashboard-html-jsp-custom-best-pratices
Ajuda a criar e corrigir dashboards no Sankhya usando HTML e Java. Segue as melhores práticas de desenvolvimento. Útil para quem trabalha com relatórios visuais no Sankhya.
O que ela faz
Este agente ajuda a criar e melhorar painéis (dashboards) no sistema Sankhya. Ele garante que o código usado para mostrar informações seja organizado, seguro e visualmente consistente, seguindo as melhores práticas.
Quando usar
- ✓Quando você precisa criar um novo painel no Sankhya.
- ✓Se o seu painel atual está com erros ou não funciona como esperado.
- ✓Para garantir que seu painel siga as regras de boa programação e segurança.
Exemplo do que pedir para a IA
“Me ajude a criar um painel Sankhya para mostrar as vendas do último mês, seguindo as boas práticas.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele analisa seu código (HTML, JSP, Java, SQL) e sugere ou aplica correções para seguir padrões de organização, segurança e visual. Isso inclui desde a forma como os dados são buscados até como são exibidos na tela.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill sankhya-dashboard-html-jsp-custom-best-praticesOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/sankhya-dashboard-html-jsp-custom-best-pratices/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
sankhya-dashboard-html-jsp-custom-best-pratices
Propósito
Fornecer um guia consolidado de padrões e melhores práticas para a criação e manutenção de dashboards, consultas SQL, parametrização de BI e UI/UX dentro do ecossistema Sankhya (JSP/HTML/Java).
Quando Usar Esta Habilidade
Esta habilidade deve ser usada quando:
- O usuário pergunta sobre "boas práticas do Sankhya" ou "Sankhya best practices".
- O usuário menciona "dashboard Sankhya" ou está trabalhando em um dashboard de BI Sankhya.
- O usuário pergunta sobre qualquer coisa relacionada à palavra "Sankhya".
- O usuário deseja criar ou modificar arquivos de código para dashboards Sankhya.
Capacidades Principais
- Geração e Revisão de Código: Aplicar padrões JSP/JSTL e organização do lado do servidor para reduzir erros de compilação e falhas de renderização.
- Consistência Visual: Padronizar a identidade visual em componentes de BI usando tokens CSS predefinidos.
- Exploração de Banco de Dados: Estruturar consultas de exploração de dados para desempenho e mapeamento correto de entidades Sankhya.
- Guia de Construção de BI: Utilizar o fluxo de componentes HTML5 em BI para garantir renderização, reatividade e navegação corretas.
Padrões
Melhores Práticas de Código
Aplicar padrões de JSP/JSTL e organização server-side para reduzir erros de compilação, falhas de renderização e regressões em dashboards/telas.
Diretrizes de implementação
- Declarar diretivas JSP e taglibs obrigatórias no topo do arquivo.
- Forçar
isELIgnored="false"para habilitar${...}em tempo de renderização. - Preferir
core_rtpara JSTL core no ecossistema Sankhya. - Evitar scriptlets Java em JSP; usar JSTL (
c:if,c:choose,c:forEach). - Modularizar lógica de negócio (camadas/serviços), evitando acoplamento em arquivo único.
- Evitar hardcode de credenciais, URLs sensíveis e tokens.
- Modelar estado global da UI (dados, filtros, ordenação, aba ativa) e resetar estado antes de novo carregamento.
- Persistir preferências de visualização no
localStorage(ordem de colunas e ordenação). - Implementar carregamento sob demanda para abas/modais pesados (lazy-load) para reduzir tempo inicial.
- Blindagem de Parâmetros: Sempre definir um valor padrão (fallback) para parâmetros de URL via
c:setpara evitar Erro 500 no servidor Java do Sankhya. - Separação de Camadas (JSP vs JS): Evitar injetar tags JSP diretamente dentro de blocos
<script>. Utilizar containers HTML ocultos para passar dados ao JavaScript, mantendo a saúde do editor de código (IDE Linting).
Os nomes de tabelas e campos abaixo são representativos e podem variar conforme a implementação da instância.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" %>
<%@ taglib prefix="snk" uri="/WEB-INF/tld/sankhyaUtil.tld" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<snk:load />
Carregamento de assets em dashboard/gadget
- Referenciar arquivos com
contextPath+BASE_FOLDER. - Em níveis secundários (
openLevel), manter caminho absoluto para evitar quebra de resolução.
<script src="${pageContext.request.contextPath}/${BASE_FOLDER}/js/app.js"></script>
<link rel="stylesheet" href="${pageContext.request.contextPath}/${BASE_FOLDER}/css/style.css" />
Consumo seguro de snk:query
- Iterar em
query.rows(não no objeto raiz). - Testar vazio com
empty query.rows.
<snk:query var="qDados">
SELECT CAB.NUNOTA, CAB.CODPARC
FROM TGFCAB CAB
</snk:query>
<c:choose>
<c:when test="${empty qDados.rows}">
<span>Sem resultados</span>
</c:when>
<c:otherwise>
<c:forEach var="linha" items="${qDados.rows}">
${linha.NUNOTA}
</c:forEach>
</c:otherwise>
</c:choose>
Sanitização de parâmetros antes da SQL
- Normalizar valor de entrada.
- Remover aspas (
"e") antes de injetar em query. - Definir fallback seguro para evitar SQL inválida.
<c:set var="raw_codusu" value="${empty param.P_CODUSU ? '0' : param.P_CODUSU}" />
<c:set var="codusu_limpo" value="${fn:replace(raw_codusu, '\"', '')}" />
<c:set var="codusu_limpo" value="${fn:replace(codusu_limpo, '"', '')}" />
<c:set var="codusu_seguro" value="${empty codusu_limpo ? '0' : codusu_limpo}" />
<snk:query var="qAcessos">
SELECT CODUSU, NOMEUSU
FROM TSIUSU
WHERE CODUSU = :codusu_seguro
</snk:query>
Estado de tela e lazy-load em dashboard único
…
Perguntas frequentes
O que são 'boas práticas' neste contexto?
São um conjunto de regras e recomendações para escrever código de forma eficiente, segura, fácil de entender e manter, evitando erros comuns e problemas de desempenho.
O que é JSP?
JSP (JavaServer Pages) é uma tecnologia que permite criar páginas web dinâmicas usando Java, HTML e outras linguagens. É como um bloco de construção para partes do sistema Sankhya.
O que são 'dashboards' ou 'painéis'?
São telas que mostram informações importantes de forma visual e resumida, como gráficos e tabelas, para ajudar na tomada de decisões.
Detalhes
Descrição original do autor
This skill should be used when the user asks for patterns, best practices, creation, or fixing of Sankhya dashboards using HTML, JSP, Java, and SQL.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4056
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
angular-developer
Ajuda seu agente a criar código Angular e a dar conselhos sobre a estrutura do projeto. É útil para iniciar novos projetos, criar partes do código ou melhorar a performance e acessibilidade.
affaan-m/ECC
frontend-a11y
Ajuda seu agente a tornar interfaces web acessíveis para todos. Ele garante que sites e apps funcionem bem com leitores de tela e navegação por teclado.
affaan-m/ECC
frontend-patterns
Faz seu agente aplicar padrões modernos no desenvolvimento frontend. Ele otimiza performance, gerencia estado e segue boas práticas em React e Next.js.
affaan-m/ECC