Cria, revisa e refatora botões de ação Sankhya com @ActionButton (AcaoRotinaJava + @Form + ContextoAcao) — incluindo validação, fluxo de tela e mensagens. Use ao criar, alterar, revisar, auditar ou padronizar classes AcaoRotinaJava, quando o usuário marca registros na grade de uma tela nativa do Sankhya (Pedidos…
Overview e regras universais do projeto Sankhya Addon Studio 2.0 (Wildfly/EJB + JAPE SDK) — Java 8 strict, Lombok, ISO-8859-1, Guice DI, MapStruct, JapeRepository, convenção de nomenclatura e fluxo de feature CRUD end-to-end. Responde de entrada como um projeto de addon começa: o esqueleto (build.gradle, layout…
Cria, revisa e padroniza interceptadores de busca Sankhya com @BeforeLoadListener (interface FinderListener + método beforeExecute) — injeta filtros/critérios dinâmicos no Finder JAPE antes da query chegar ao banco. Use ao criar, alterar, revisar, auditar ou padronizar interceptação de buscas/carregamento de…
Cria, revisa e refatora regras de negócio Sankhya com @BusinessRule (interface Regra + ContextoRegra) para barramento de eventos do módulo comercial, liberação de limite e regras transacionais. Use ao criar, alterar, revisar, auditar ou padronizar regras de negócio do comercial (nota, pedido, fatura, limite de…
Cria, revisa e padroniza handlers globais de exceção Sankhya com @ControllerAdvice + @ExceptionHandler — rollback automático, DTO de erro, mapeamento de status HTTP, inclusive para violação de @Valid vinda do controller. Declarar a constraint no DTO é controller; aqui mora a resposta HTTP da violação e de qualquer…
Cria, revisa e refatora endpoints REST Sankhya com @Controller — serviceName, SP, @Transactional, DTOs, @Valid, mapeamento HTTP (GET/POST/PUT/DELETE), códigos de status. Use ao criar, alterar, revisar, auditar ou padronizar controllers REST, ao expor cadastro/feature via REST, ao integrar com app mobile/frontend, ao…
Tela de cadastro que o próprio Sankhya monta a partir da tabela, declarada no XML do dicionário (datadictionary/ .xml) — sem escrever JS nem HTML. Sinal prático: se a tela não tem pasta própria em webapp/html5/, ela é gerada daqui, e label, campo obrigatório, filtro e item de menu dela moram neste XML. Use ao criar…
Cria, audita e padroniza dbscripts Sankhya (dbscripts/V -.xml) com migrations dual MSSQL/Oracle. Cobre convenções de nomenclatura, mapeamento de tipos (NUMBER/NUMERIC/INT/FLOAT/DECIMAL/VARCHAR/VARCHAR2/CHAR/DATE/DATETIME/TIMESTAMP), estrutura / / e atributos executar/tipoObjeto/nomeObjeto. Use ao adicionar, alterar…
Configura, revisa e debuga DI Guice em Sankhya Addon Studio — @Inject de com.google.inject, @Component, @CustomModule, Provider , Multibinder, @Singleton, escopos. Use ao montar wiring, criar/alterar módulos Guice, ao injetar repository/service em controller, job ou listener (costura entre camadas), ao revisar/auditar…
Converte e audita encoding de arquivos-fonte Sankhya (.java, .xml, .kt, .properties) para ISO-8859-1 via iconv ou Python. Use sempre que conteúdo gerado por LLM tiver sido salvo em UTF-8, ao auditar charset de arquivos do projeto, ao revisar arquivos com caracteres acentuados, quando acento aparece trocado/embaralhado…
Setup do projeto Sankhya Addon Studio para colaboração com o agente. Copia o template ADDON.md (instruções do plugin) para docs/ADDON.md no projeto e garante que o CLAUDE.md da raiz importe esse arquivo via @docs/ADDON.md. Use quando o dev pedir "setup do projeto", "configurar CLAUDE.md", "instalar instruções do…
Cria, revisa e refatora jobs agendados Sankhya com @Job (extends IJob + onSchedule + getScheduleConfig + CRON), incluindo migration via XML. Use ao criar, alterar, revisar, auditar ou padronizar jobs agendados, ao ajustar agendamento CRON, quando o pedido é "roda todo dia às", "de madrugada", "processo noturno", "sem…
Cria, revisa e padroniza listeners de persistência Sankhya com @Listener (classe estende PersistenceEventAdapter) — reage a eventos CRUD (before/after insert, update, delete) de qualquer entidade JAPE, inclusive instâncias nativas. Use ao criar, alterar, revisar, auditar ou padronizar reação a gravação/exclusão de…
Macros SQL do MacroTranslator Sankhya (dbDate, nullValue, ignorecase, normalizeText, truncMonth, yearMonth, addMonths) para portabilidade Oracle/MSSQL. Use ao escrever, revisar, auditar ou portar SQL em queries/, datadictionary/, dbscripts ou @NativeQuery, ao ver NVL, ISNULL, COALESCE, SYSDATE, GETDATE, TRUNC(, SUBSTR…
Cria, revisa e refatora mappers MapStruct para Sankhya (@Mapper com componentModel="jakarta", injectionStrategy=CONSTRUCTOR, padrões create/merge, @MappingTarget, @AfterMapping, @Named) para conversão DTO↔Entidade campo a campo, sem escrever get/set à mão. Use ao criar, alterar, revisar, auditar ou padronizar mappers…
Cria, revisa e refatora interfaces @Repository Sankhya estendendo JapeRepository com @Criteria, @NativeQuery, @Modifying, @Parameter(name = "..."), paginação, findByPK (retorno nullable, throws Exception). Use ao criar, alterar, revisar, auditar ou padronizar a camada de acesso a dados, ao implementar…
Configura, revisa e debuga integração HTTP de saída em Sankhya Addon Studio — o addon como cliente de uma API de terceiro — usando Retrofit + Moshi + OkHttp — declara dependências moduleLib no build.gradle, escreve interface client (@GET/@POST/@Body/@Path/@Query/@Headers), faz wiring Guice via @Provides @Singleton em…
Tela HTML5 que você desenha, com layout e lógica próprios em src/main/webapp/html5/ / (módulo -vc, AngularJS 1.x sobre o framework proprietário sankhya-js/módulo snk). Sinal prático: se a tela chama um endpoint/serviço do addon, tem .js/.html próprios ou i18n de template, é aqui; se ela só grava direto na tabela e foi…
Classes utilitárias do backend Java que a plataforma Sankhya já expõe no classpath do addon (com.sankhya.util) — StringUtils, BigDecimalUtil, TimeUtils, XMLUtils, JsonUtils, JdbcUtils, SQLUtils, CollectionUtils, MapUtils, ExceptionNavigator, ResourceLock, SessionFile, UIDGenerator, validadores de CPF/CNPJ/e-mail/PIS.…
Escreve, revisa e amplia testes JUnit 5 + Mockito 4.11 para Sankhya Addon Studio — mock de JapeRepository via @Mock, mock estático de JapeSession/SessionFile (mockito-inline), fixtures, controllers, services, repositories, mappers. Use ao criar, alterar, revisar ou ampliar cobertura de testes em src/test/java/, ao…
Cria, revisa e refatora adaptadores de tipo Sankhya com @GlobalTypeAdapter (TypeAdapter, JsonSerializer/JsonDeserializer, tipos nativos, conversão JSON↔Java) — define, num lugar só, como um tipo serializa e desserializa em todo o addon. Use ao criar, alterar, revisar, auditar ou padronizar adaptadores de serialização…
Configura, revisa e debuga injeção @Value Sankhya (ValueType, Provider lazy/eager, SANKHYAPARAM, group), declaração de parâmetro em META-INF/parameter.xml e feature flag toggável via MGECoreParameter. Use ao injetar, alterar, revisar ou auditar valores de configuração em componentes Guice, ao criar/editar parâmetro…