Pular para o conteúdo
Skillpedia
Sites e telas (frontend)48 mil · #4056

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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sankhya-dashboard-html-jsp-custom-best-pratices/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sankhya-dashboard-html-jsp-custom-best-pratices/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-pratices

Ou 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.md
Conteú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

  1. 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.
  2. Consistência Visual: Padronizar a identidade visual em componentes de BI usando tokens CSS predefinidos.
  3. Exploração de Banco de Dados: Estruturar consultas de exploração de dados para desempenho e mapeamento correto de entidades Sankhya.
  4. 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_rt para 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:set para 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 &quot;) 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, '&quot;', '')}" />
<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.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#4056
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas