# Comandos Reg. Específicos - SPED

Para a correção de alguns registros e blocos específicos no SPED é necessário realizar certos comandos dentro da base de dados para observar dados.

Abaixo estarão linhas de comandos para ajudar na visualização dessas informações para preenchimento adequado no arquivo de remessa.

- - - - - -

##### **E520 - Apuração de IPI**

A apuração dos valores de IPI precisa, assim como a maioria dos campos, dos dados fiscais das operações de entrada e saída.  
Utilize a SQL abaixo na base de dados para obter os valores respectivos e data.

**- IPI SAÍDA**

```sql
SELECT Faturamento_NotaFiscal_movimento.CFOP_ITEM, Faturamento_NotaFiscal_movimento.TIPO_IPI, Sum(Faturamento_NotaFiscal_movimento.Valor_Total) AS SomaDeValor_Total, Sum(Faturamento_NotaFiscal_movimento.VL_BC_IPI) AS SomaDeVL_BC_IPI, Sum(Faturamento_NotaFiscal_movimento.VL_IPI) AS SomaDeVL_IPI
FROM Faturamento_NotaFiscal INNER JOIN Faturamento_NotaFiscal_movimento ON Faturamento_NotaFiscal.Código = Faturamento_NotaFiscal_movimento.NotaFiscal
GROUP BY Faturamento_NotaFiscal_movimento.CFOP_ITEM, Faturamento_NotaFiscal_movimento.TIPO_IPI, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]), Faturamento_NotaFiscal.Cancelado, Faturamento_NotaFiscal.NFe_stAutorizado
HAVING (((Sum(Faturamento_NotaFiscal_movimento.VL_IPI))>0) AND ((Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]))="1/2024") AND ((Faturamento_NotaFiscal.Cancelado)=False) AND ((Faturamento_NotaFiscal.NFe_stAutorizado)=True));
```

**- IPI ENTRADA**

```SQL
SELECT Estoque_Movimento.CFOP, Estoque_Movimento.CSTIPI, Sum(Estoque_Movimento.Valor_Total) AS SomaDeValor_Total, Sum(Estoque_Movimento.vBCIPI) AS SomaDevBCIPI, Sum(Estoque_Movimento.vlIPI) AS SomaDevlIPI
FROM Estoque_Movimento
GROUP BY Estoque_Movimento.CFOP, Estoque_Movimento.CSTIPI, Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data])
HAVING (((Sum(Estoque_Movimento.vlIPI))>0) AND ((Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]))="1/2024"));
```

<p class="callout warning">Não se esqueça de ajustar a data para a referente ao mês de apuração do arquivo dentro da SQL ou no Modo Design da consulta.  
  
[![image-1711112209193.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-03/scaled-1680-/image-1711112209193.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-03/image-1711112209193.png)</p>

O preenchimento dos valores apresentados na SQL devem ser preenchidos no Registro **E510** e a somatória dos valores no **E520**.

- - - - - -

##### **E200 - Apuração ICMS ST**

ICMS ST Saída

```sql
SELECT IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL") AS OPERAÇÃO, Sum(Faturamento_NotaFiscal_movimento.VL_ICMS_SUB) AS SomaDeVL_ICMS_SUB, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]) AS MÊS
FROM (((Cad_Cidade INNER JOIN (Cd_Empresa INNER JOIN (Cad_Cliente INNER JOIN (Faturamento_NotaFiscal INNER JOIN Faturamento_NotaFiscal_movimento ON Faturamento_NotaFiscal.Código = Faturamento_NotaFiscal_movimento.NotaFiscal) ON Cad_Cliente.Código = Faturamento_NotaFiscal.Cliente) ON Cd_Empresa.Código = Faturamento_NotaFiscal.Empresa) ON Cad_Cidade.Código = Cd_Empresa.Cidade) INNER JOIN Cad_Cidade AS Cad_Cidade_1 ON Cad_Cliente.Cidade = Cad_Cidade_1.Código) INNER JOIN Cad_Estado ON Cad_Cidade.Região = Cad_Estado.Código) INNER JOIN Cad_Estado AS Cad_Estado_1 ON Cad_Cidade_1.Região = Cad_Estado_1.Código
GROUP BY IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL"), Faturamento_NotaFiscal.Cancelado, Faturamento_NotaFiscal.NFe_stAutorizado, Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao])
HAVING (((Faturamento_NotaFiscal.Cancelado)=False) AND ((Faturamento_NotaFiscal.NFe_stAutorizado)=True) AND ((Month([Faturamento_NotaFiscal]![DataEmissao]) & "/" & Year([Faturamento_NotaFiscal]![DataEmissao]))="6/2022"))
ORDER BY IIf([Cad_Estado]![Código]=[Cad_Estado_1]![Código],"ESTADUAL","INTERESTADUAL");
```

ICMS ST Entrada

```sql
SELECT Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]) AS MÊS, Sum(Estoque_Movimento.vlST) AS SomaDevlST
FROM Estoque_Movimento
GROUP BY Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data])
HAVING (((Month([Estoque_Movimento]![Data]) & "/" & Year([Estoque_Movimento]![Data]))="6/2022"));
```