# Operações Cíclicas

<span style="font-size: 14px;">**Objetivos**</span>

<span style="font-size: 14px;">Validar uma cadeia tributária que dentro de determinadas operações ocorram apenas tributações definidas pelas parametrizações permitidas nesse recurso. Por exemplo, é possivel determinar que uma operação de saída da indústria para o atacado se for sujeita a substitução tributária (ST) com CST 10 ou 30 ou 70, e houver uma saída subsequente do atacadista para um varejista desse mesmo produto, a operação somente pode ser aceita o CST da operação for 60.</span>

<span style="font-size: 14px;">**Solução Funcional**</span>

<span style="font-size: 14px;">Em “Documentos” na tela de “Aprovação de regras tributárias” quando o usuário selecionar uma regra tributária para aprovação, o sistema exibirá a mensagem:</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/jjOfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/jjOfee1.jpg)</span>

<span style="font-size: 14px;">Caso positivo, o Cockpit irá validar se existe alguma regra selecionada que está bloqueada. Na imagem abaixo, o Cockpit identificou algumas regras que estão na validação, e exibiu o alerta com as opções:</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/kDBfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/kDBfee1.jpg)</span>

- <span style="font-size: 14px;">Opção “**Aprovar essas regras**”: Ao marcar essa opção, as regras tributárias selecionadas serão aprovadas mesmo na validação.</span>
- <span style="font-size: 14px;">Opção “**Gerar arquivo das regras bloqueadas**”: Caso essa opção seja marcada, o Cockpit irá gerar um arquivo em formato \*.csv com os detalhes da regra bloqueada. O usuário deverá clicar sobre a mensagem: “Clique aqui para baixar o arquivo com as regras bloqueadas.” para fazer o donwload do arquivo.</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/uG8fee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/uG8fee1.jpg)</span>

- <span style="font-size: 14px;">As duas opções podem ser marcadas individualmente ou simultaneamente. Caso sejam checadas ao mesmo tempo, as regras serão aprovadas e o arquivo será gerado. </span>

<span style="font-size: 14px;">**Condições de validação** </span>

<span style="font-size: 14px;">Através da tela “Consulta Cadeia Triburária” em “Documentos” o usuário poderá parametrizar os critérios para o Cockpit colocar uma regra em validação. Através dela, é possível incluir, consultar e excluir uma cadeia tributária.</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/hROfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/hROfee1.jpg)</span>

<span style="font-size: 14px;">**<u>Inclusão de uma cadeia tributária</u>**</span>

<span style="font-size: 14px;">Através do botão “Incluir” é possível adicionar uma nova cadeia tributária no Cockpit. O usuário deverá preencher o campo “Nome” e informar o status (ativado/desativado) através da flag “Ativo” e acionar o botão “Salvar”. </span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/I6Ffee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/I6Ffee1.jpg)</span>

<span style="font-size: 14px;">**<u>Inclusão de uma condição em uma cadeia tributária</u>**</span>

<span style="font-size: 14px;">Após a inclusão de uma cadeia tributária, é preciso incluir os critérios que serão levados em consideração para o Cockpit colocar uma regra tributária em validação, através do botão da coluna “Condições”. </span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/IFEfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/IFEfee1.jpg)</span>

<span style="font-size: 14px;">Em seguida, o usuário deverá parametrizar as restrições necessárias preenchendo os diversos campos na tela, e clicar em "Salvar".</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/c72fee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/c72fee1.jpg)</span>

<span style="font-size: 14px;">**<u>Alteração de uma cadeia tributária</u>**</span>

<span style="font-size: 14px;">Através do botão na coluna “Alterar” é possível modificar o nome ou status (ativado/desativado) de uma cadeia tributária. </span>

<span style="font-size: 14px;">**<u>Consulta de uma cadeia tributária</u>**</span>

<span style="font-size: 14px;">A tela disponibiliza uma consulta simples por nome de cadeia tributária, através do preenchimento do campo “Nome” e acionamento do botão “Consultar”.</span>

<span style="font-size: 14px;">**<u>Exclusão de uma cadeia tributária</u>**</span>

<span style="font-size: 14px;">Através do botão presente na coluna “Excluir” é possível remover uma cadeia tributária no Cockpit.</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/vmHfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/vmHfee1.jpg)</span>

<span style="font-size: 14px;">**Mecanismo de bloqueio de uma regra tributária**</span>

<span style="font-size: 14px;">Depois da criação das condições acima mostradas, o Cockpit está pronto para validar uma cadeia de tributação conforme o exemplo que será mostrado. A regra que está sendo aprovada é denominada **"verificada"**. No momento em que é executada a aprovação, o sistema procura dentro das diversas condições estabelecidas na tela **"Cadeia Tributária"**, se em algum grupo existe uma condição que atenda a regra que está sendo aprovada (regra verificada).</span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/LODfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/LODfee1.jpg)</span>

<span style="font-size: 14px;">No exemplo acima, o Cockpit encontrou uma condição equivalente que está destacada na segunda linha. Após, o Cockpit irá procurar na base de regras tributárias (aprovadas, pendentes ou rejeitadas), se para o item que está sendo aprovado, há alguma regra correspondente ás outras 6 condições restantes, chamadas de regras "**derivadas**".</span>

<span style="font-size: 14px;">Portanto, tem-se a regra que está sendo aprovada denominada de regra "verificada" e as demais regras do grupo de condições estabelecidas ou "derivadas".</span>

<span style="font-size: 14px;">No exemplo acima, caso o sistema encontre uma regra "derivada" que atenda toda as condições estabelecidas, o sistema faz a aprovação da regra tributária sem bloquear. Caso negativo, a regra tributária será bloqueada.</span>

<span style="font-size: 14px;">Para o sistema procurar uma regra "derivada", são utilizados como parametros: '**Nat. Oper', 'ORIG', 'DEST', 'UFO', 'UFD', 'E/S' e 'Finalidade',** das condições estabelecidas nos grupos da tela "Cadeia Tributária".</span>

<span style="font-size: 14px;">Quando a regra é encontrada, o Cockpit determina se deve ocorrer o bloqueio ou não, comparando se os demais campos das condições estão iguais em relação á regra. Se sim, a regra será aprovada e, caso contrário, será bloqueada.</span>

<span style="font-size: 14px;">Na imagem acima, supondo que foi encontrada uma regra derivada com os parametros: </span>

<span style="font-size: 14px;">Interna = SIM; EntSai = 3; Nat.Op = 121; Origem = 3; Destino = 3; e Finalidade = vazio.</span>

<span style="font-size: 14px;">Nesse caso, o sistema irá comparar se a regra encontrada possuí o CST 60. Se sim, o Cockpit aprovará a regra. Caso o CST seja diferente do estabelecido nessa condição, a regra que está sendo aprovada permanecerá bloqueada (de acordo com a opção escolhida no momento da aprovação).</span>

<span style="font-size: 14px;">Observar que o campo “Obrigação” fornece algumas condições cruciais de parametrização, conforme explicado abaixo:</span>

1. <span style="font-size: 14px;">“Ao menos uma”: nas demais condições do grupo, significa que para uma regra tributária “verificada” ser aprovada sem bloqueio, **ao menos uma** regra deve atender uma das demais condições restantes, e com isso, a regra “verificada” será aprovada diretamente.</span>
2. <span style="font-size: 14px;">“Opcional”: para uma regra ser aprovada sem bloqueio, caso o sistema não encontre regras tributárias que atendam aos demais critérios, não será motivo de bloqueio.</span>
3. <span style="font-size: 14px;">“Obrigatório”: para uma regra ser aprovada sem bloqueio, é obrigatório que o sistema encontre regras tributárias que atendam aos demais critérios.</span>

<span style="font-size: 14px;">A imagem abaixo ilustra um exemplo de um arquivo retornado (\*.csv) de uma regra que foi bloqueada destacando o campo “Tipo”, e diferenciando os dois tipos de regras existentes. </span>

<span style="font-size: 14px;">[![fee1.jpg](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/scaled-1680-/VOZfee1.jpg)](https://documentacao.systax.com.br/uploads/images/gallery/2025-07/VOZfee1.jpg)</span>

<span style="font-size: 14px;">Vale destacar na análise do arquivo retornado com as regras bloqueadas, que a coluna "Status" retorna se as regras "derivadas" estão aprovadas, pendentes ou rejeitadas. São informações relevantes, pois se uma regra com a condição na coluna "Obrigação" estiver definida como "ao menos uma" e o status da regra for "rejeitada" ou "pendente", o sistema fará a indicação de bloqueio para a regra "verificada". Se a condição for "opcional" e a regra estiver com status "pendente", não será motivo de bloqueio. Nesse caso, havendo outro motivo que bloqueou a regra, no arquivo serão apresentadas todas as regras do ciclo e, com isso, será possível observar uma regra "pendente" ainda que a condição na coluna "obrigação" seja "opcional".</span>