Análise
Projeto
| Análise | |
| Projeto 561 | |
| Data da Análise: 20/02/2013 |
ÿ necessário em alguns casos exportar o documento de arrecadação diferenciado no registro C112 do SPED Fiscal.
Para que nossos clientes possam digita-lo trataremos ele como um compromisso a pagar.
Na tela de compromissos serão criados alguns campos novos e uma guia para que se possa vincular uma ou mais notas de entrada (Compras, Faturas e Fretes).
Nota:
No SPED somente serão exportados documentos de arrecadação referenciados a compra.
Porque somente compras são exportadas no C100.
Fretes são exportados no D100.
Especificação Técnica
Backoffice
Compromissos (Títulos a Pagar)
Na tela de compromisso, o usuário deverá registrar um compromisso próprio para o documento de arrecadação.

Imagem da tela de compromisso com os campos a serem preenchidos em destaque.
A maneira do usuário informar que se trata de documento de arrecadação é preenchendo o tipo de DAR, no combo que será criado no canto superior a direita, com uma das opções:
- "0" - Documento estadual de arrecadação
- "1" ? GNRE
Obs.: o combo só deverá estar habilitado quando a opção título fatura estiver marcada.

Detalhe da identificação do DAR
Sistema NÿO VAI limitar o parcelamento da DAR, entretanto, para fins de SPED, sistema vai somar as parcelas pagas e vai pegar informações da parcela mais antiga.
Ao registrar esse compromisso, em uma nova guia chamada "5 - Documentos Ref.", usuário poderá incluir compras, faturas e frete.

Detalhe da guia dos relacionamentos
Deve ser permitido incluir e excluir livremente as informações, mesmo ao abrir o compromisso para edição.
Na guia de impostos o campo unidade federativa é de preenchimento obrigatório.
Deve-se tratar o campo CFOP de entrada para não ser obrigatório para o DAR, por não se tratar de uma operação ou prestação de serviço e consequentemente não haver um CFOP para tal fim.
Campos de Nº Documento e Código de Autenticação serão preenchidas na tela de pagamento, porque só estarão disponíveis após pagamento.
Na repetição do compromissos, os vínculos não devem ser trazidos, pois os novos compromissos não vão referenciar os mesmos documentos.
Validações:
- Ao registrar documento de arrecadação, não deve ser permitir deixar o checkbox "Frete" marcado.
- Fazer as restrições da tabela TT_COMXCOM ao clicar no botão OK.
- Não permitir vincular duas vezes o mesmo documento na DAR.
- Não permitir vincular compromissos, apenas documentos fiscais como Compra, Frete e Fatura.
A Pagar
Tratar na tela de pagamentos de contas, onde o usuário efetuará a baixa dos títulos, para permitir preencher também o código de autenticação [TT_PAG.AUTBAN].
No Nº Documento [TT_PAG.DOCPGT] o usuário poderá lançar o código da guia do documento de arrecadação.

Detalhe dos campos a serem preenchidos.
SPED Fiscal
ÿ necessário exportar registro C112 com os dados da arrecadação [TT_COM] quando a observação da nota estiver preenchida com as informações complementares.
Atualmente, no método TSped.GeraRegistroC110, os registro C113 e C114 já são gerados dessa forma.
Sugestão para implementação:
- Criar objetos do tipo TDocumentoArrecadacao dentro de uma lista TDocumentoArrecadacaoList pública criada em TEscritaFiscal.
- A classe TDocumentoArrecadacao deve conter os campos necessários para preencher o registro C112.
- A classe TDocumentoArrecadacao deve conter uma lista de chaves de TNFRecebida.
- Criar uma nova estrutura DAO (TDocumentoArrecadacaoDAO e TDocumentoArrecadacaoQueryDAO).
- A query deve ser baseada na TT_COM filtrando os compromissos que sejam DAR (CODDAR IN "0","1").
- Fazer relação com TT_PAG agrupado, somando o valor das parcelas pagas, e pegando os dados da parcela com MAX().
- Deve levar em consideração a TT_FIS para exportar somente os exportáveis.
- Deve fazer relação com TT_COMXCOM de modo a trazer um compromisso para cada documento relacionado.
- Deve ter ORDER BY para trazer compromissos e suas referências ordenadamente.
- Para cada linha da query:
- Verificar se já existe objeto DAR na lista pública.
- Se não existir, criar objeto DAR e incluí-lo na lista.
- Adicionar na lista a nova chave de TNFRecebida referente aos dados referenciados.
- No método GeraRegistroC110, tendo a chave da TNFRecebida, percorrer lista pública de DARs, e para cada DAR, percorrer a lista de chaves de NFRecebida, e comparar para caso seja igual gerar o registro C112 e ir para o próximo DAR (é importante não gerar registros repetidos na C112).
De-para entre tabelas e colunas do registro:
| SPED | Commerce | Observação |
| COD_DA | TT_COM.CODDAR | |
| UF | TT_COM.UFNOTA | |
| NUM_DA | TT_PAG.DOCPGT | |
| COD_AUT | TT_PAG.AUTBAN | |
| VL_DA | TT_COM.VLRLIQ | |
| DT_VCTO | TT_PAG.DATVEN | |
| DT_PGTO | TT_PAG.DATPGT |
Guia Prático do SPED
Nessa parte do artigo está o que o guia prático do SPED coloca a respeito do registro C112.
REGISTRO C112: DOCUMENTO DE ARRECADAÿÿO REFERENCIADO.
Este registro deve ser apresentado, obrigatoriamente, quando no campo ? ?Informações Complementares? da
nota fiscal - constar a identificação de um documento de arrecadação.

Observações: Nível hierárquico - 4 Ocorrência - 1:N
Campo 01 - Valor Válido: [C112]
Campo 02 - Valores válidos: [0, 1]
Campo 03 ? Validação: o valor deve ser a sigla da UF beneficiária do recolhimento.
Campo 05 - Validação: se não for informado valor no campo NUM_DA, obrigatoriamente, o campo COD_AUT deve ser informado.
Campo 06 - Preenchimento: informar o valor total do documento de arrecadação, ainda que este documento seja referenciado em mais de uma nota fiscal, situação em que haverá um registro C112, idêntico e vinculado a cada nota fiscal (C100).
Validação: o valor informado no campo deve ser maior que ?0? (zero).
Campo 07 - Preenchimento: informar a data de vencimento do documento de arrecadação no formato ?ddmmaaaa?.
Campo 08 - Preenchimento: informar a data de pagamento do documento de arrecadação no formato ?ddmmaaaa?.
Como a data de pagamento é uma informação obrigatória, deve ser preenchida mesmo que o documento de arrecadação ainda não tenha sido pago, situação em que a data de vencimento deve ser informada neste campo. Por exemplo, nos casos de ICMS antecipado.
Estrutura de Banco
Colunas no Compromisso [TT_COM]
Criar na TT_COM os seguintes campos:
| Coluna | Tipo | Descrição | Aceita Nulo? | Restrições |
| CODDAR | Char(1) | Código do modelo do documento de arrecadação: | Sim | CK ("0" ou "1" ou TIPPAR IS NULL) |
Colunas no Pagamento [TT_PAG]
Criar na TT_PAG os seguintes campos:
| Coluna | Tipo | Descrição | Aceita Nulo? | Restrições |
| AUTBAN | Varchar(200) | Código completo da autenticação bancária | Sim |
Aumentar tamanho da DOCPGT na TT_PAG e TI_PAG:
| Coluna | Tipo |
| DOCPGT | Varchar(25) |
Tabela de Itens de Documentos de Arrecadação [TT_COMXCOM]
Criar tabela TT_COMXCOM com os campos:
| Coluna | Tipo | Descrição | Aceita Nulo? | Restrições |
| CODFIL | Char(3) | Filial | Não | PK |
| SEQUEN | Char(10) | Sequenciador | Não | PK |
| FILDOC | Char(3) | Filial (Compromisso) | Não | FK (com PK da TT_COM) |
| SEQDOC | Char(10) | Seq. (Compromisso) | Não | |
| FILCOM | Char(3) | Filial Documento | Não | FK (com PK da TT_COM) |
| SEQCOM | Char(10) | Seq. Documento | Não |
Criar UNIQUE CONSTRAINT para garantia que não ocorra duplicidade de FILDOC, SEQDOC, FILCOM, SEQCOM.
Resumo de Mudanças por Módulo
Banco de dados
- Criar novos campos na TT_COM
- Criar novos campos na TT_PAG
- Criar nova tabela TT_COMXCOM
Backoffice
- Tratar na tela de compromissos para poder informar que se trata de um documento de arrecadação estadual ou GNRE.
- Tratar na tela de compromissos para poder vincular compromisso a documentos (Compra, Frete ou Fatura).
- Tratar na tela de pagamento para poder informar opcionalmente a autenticação bancária do pagamento.
SPED Fiscal
- Exportar registro C112.