Histórico da Página
Índice |
---|
Artefatos
Fontes
- FISA315.PRW
- RETNFCANC.TLPP
- SPEDFISCAL
- SPEDXFUN
- FISXAPUR
- SPEDXDEF
- MATA953
- MATA95xDEF
Localizados na GITEA: https://code.engpro.totvs.com.br/totvs-fiscal/livros_fiscais/src/branch/DSERFIS3-9197_Cria_consulta_notas_canceladas_periodo_atual_emissoes_periodo_anterior
Dicionário
Dicionário - 013686_JCA_Acumulado
FISA315 - Cadastro de Regra de Apuração
...
CJW_FILIAL - Filial do Sistema: Grava a filial onde ocorreu a inclusão do registro - Grupo de campo 033.
CJW_ID - ID do Cadastro: Gera um ID com MD5 utilizando a função FWUUIDV1().
CJW_ID_CAB - ID do Cabeçalho.
CJW_REGAPU - Regra de Apuração: Retorna a opção 01 - Nota Cancelada através da função XRegraApu, onde o cliente informa qual situação deve ser considerada para buscar o valor do tributo e amarrar com o código de lançamento informado.
CJW_CODTAB - Tabela de Lançamento: Este campo disponibiliza 2 tabelas de lançamento (5.1.1 - CDO, 5.2 - CDY).
CJW_CODLAN - Código de Lançamento: A tabela selecionada no campo CJW_CODLAN atualiza a consulta padrão, retornando os códigos de lançamento de cada tabela.
CJW_VIGINI - Data Início Vigência Apuração: O usuário informa a data de início da vigência do código de lançamento, que consta nos arquivos TXT baixados no site da http://sped.rfb.gov.br/.
CJW_VIGFIM - Data Final Vigência Apuração: O usuário informa a data de término da vigência do código de lançamento, que consta nos arquivos TXT baixados no site da http://sped.rfb.gov.br/.
CJW_ORIVLR - Origem do Tributo: O usuário informa qual foi a forma usada para escriturar: 01 - Configurador de Tributos; 02 - Sistema Legado.
CJW_TRIB - Tributo do Configurador: Selecione a regra que está amarrada com o tributo configurado para utilizar na escrituração.
CJW_VALOR - Considerar Valor: Selecione qual valor será buscado: Valor Tributado, Outros, Isento, Diferido, Base, Alíquota.
CJW_TRILEG - Tributo Legado: Este campo é habilitado quando o campo CJW_ORIVLR for igual a 02 - Legado, e com isso o usuário poderá selecionar qual tributo deverá ser considerado para buscar o valor.
Dicionário - 013583
...
...
Localizados na GITEA: https://code.engpro.totvs.com.br/totvs-fiscal/livros_fiscais/src/branch/DSERFISE-9196_Criar_cadastro_Controle_Regra_Apuracao
Criação Criação da Tela em MVC com estrutura de ABAS (FOLDERs), foi estruturado em 2 modelos - MASTER e GRID.
- MASTER - Tabela CJV
- VIEW_CAB
- GRID - Tabela CJW
- VIEW_LANC
- Campos: CJW_CODTAB|CJW_CODLAN|CJW_VIGINI|CJW_VIGFIM
- VIEW_VLR
- Campos: CJW_CODLAN|CJW_REGAPU|CJW_ORIVLR|CJW_TRIB|CJW_VALOR|CJW_TRILEG
- VIEW_LANC
- Consulta Padrão
- Campo CJW_TRIB - Utilizando a Consulta Padrão - F2B3
- Campo CJW_VALOR - Considera Valor ICMS - CIN3 ( Nova Consulta Criada)
- Funções de COMBOBOX
X315ChgF3 - Função para alterar a consulta padrão do campo CJW_CODTAB onde irá
trazer a tabela 5.1.1 ou 5.2- XTabLanc - Função para Retornar conteudo para combo do campo CJW_CODTAB
- XRegraApu - Função para Retornar conteudo para combo do campo CJW_REGAPU
- XOrigVlr - Função para Retornar conteudo para combo do campo CJW_ORIVLR
- XTribLeg - Função para Retornar conteudo para combo do campo CJW_TRILEG
- Funções de Validações:
- Função VigIniFIm que verifica se data inicial e data final já existem no cadastro de regras.
- ChangeLine , essa função atualiza o GRID entre abas , identificando a linha posiciona na ABA e replicando a mesma posição para as outras abas, dessa forma o usuário saberá em qual linha da aba Anterior esta alterando ou Visualizando.
- EdtTRIB- Função para ler o conteudo o campo CJW_ORIVLR e tratar o prenchimento do campo CJW_TRIB,
quando este for Trbuto Legado. - EdtTrileg - Função para ler o conteudo o campo CJW_ORIVLR e tratar o prenchimento do campo CJW_TRILEG,
quando este for Configurador de Tributos - VldCodigo - Validação do código da regra, para não aceitar caracteres especiais no codigo
- Fsa315MCpo - Função que valida os campos, quando alterar o conteudo do CJW_CODTAB, limpar os campos
CODLAN,e Data de Vigencia. - Fsa315M2Cpo - Função que valida os campos, quando alterar o conteudo do CJW_REGAPU, limpa o campo
CJW_TRIB, CJW_VALOR e CJW_TRILEG - Fsa315M3Cpo - Função que valida os campos, quando alterar o conteudo do CJW_ORIVLR, limpa o campo
CJW_TRIB, CJW_VALOR e CJW_TRILEG - ValidLanc - Função que valida que o Codigo de Lançamento informado consta nas tabelas
CDO e CDY.
...
Gerando um array com os lançamentos de ajuste e as notas fiscais de saída canceladas para lançar na apuração de ICMS e gravar na tabela CDA.
Campos da CDA, que serão gravados com dados da SFT e dados da CJW.
"CDA_FILIAL"
"CDA_TPMOVI"
"CDA_ESPECI"
"CDA_NUMERO"
"CDA_SERIE "
"CDA_CLIFOR"
"CDA_LOJA "
"CDA_CODLAN"
"CDA_VALOR "
"CDA_ORIGEM"
"CDA_NUMITE"
"CDA_CALPRO"
"CDA_FORMUL"
"CDA_BASE"
"CDA_ALIQ"
"CDA_TPLANC"
"CDA_SDOC"
"CDA_SEQ"
Criado o Array aLancAjuste que será utilizado para montar as informações que serão utilizados no aCDAIC para apuração do ICMS:-----------------------------------------------------------------------------------------------------------------------------
LancAjuste - Criado o Json jLancAjuste que será utilizado para montar as informações que serão utilizados no aCDAIC para apuração do ICMS:
jLancAjuste[cCodLan] := {"CDA_CODLAN": cCodLan,; //0 - Código do Ajuste
"CDA_DESCR": cDescLanc,; //1 - Descrição destino
"CDA_VALOR": cValIcm,; //6 - Valor Acumulado
"CDA_BASE": cBaseIcm} //11 - Base ICM
---------------------------------------------------------------------------------------------------------------------------
DelCDA - Esta função deleta registros de uma tabela CDA
Função Deleta a CDA das notas canceladas na SFT do periodo anterior com origem 6 e data de cancelamento.
Essa função e chamada no BUSCALANC antes da chamada da função RetNfCanc.
---------------------------------------------------------------------------------------------------------------------------
ConvModxEsp - Função para converter modelo de nota em espécie
Função criada pelo time de escrita para maxima e retornar a especie, utilizamos ela nas query onde preciso filtrar o modelo 63 (BPe)
Nas funções -RetNfCanc e RetCdaLanc.(aLancAjuste ,{;
cCodLan,; //0 - Código do Ajuste
cDescLanc,; //1 - Descrição destino
cValIcm,; //6 - Valor Acumulado
cBaseIcm}) //11 - Base ICM
---------------------------------------------------------------------------------------------------------------------------
MATA953 - Apuração de ICMS
Objetivo e escopo
Apuração de ICMS
Objetivo e escopo
As chamadas RetRegApu e BuscaLanc são funções que estão sendo utilizadas no código fornecido C:\Fontes_Azure_Gitea\livros_fiscais\Livros Fiscais\Retnfcanc.prw .
Adicionamos na função a953Apura a chamada das funções abaixo , porem foi preciso realizar proteções de dicionario
Criamos a validação
lBuscaLanc := FindFunction("BuscaLanc") .and. FindFunction("RetRegApu")
if lUsaSped .and. lBuscaLanc .and. aApurSX2[AI_CJV].and. aApurSX2[AI_CJW]
aRegApur:= RetRegApu(dDtIni)
if Len(aRegApur) > 0
BuscaLanc(dDtIni,@aRegApur,@aCDAIC, cNrLivro)
endif
EndifAs chamadas RetRegApu e BuscaLanc são funções que estão sendo utilizadas no código fornecido C:\Fontes_Azure_Gitea\livros_fiscais\Livros Fiscais\Retnfcanc.prw .
RetRegApu: Essa função recebe um parâmetro dDtIni e retorna um array de registros de apuração. O objetivo dessa função é obter os registros de apuração com base na data de início da apuração de ICMS (dDtIni).
...
Este array ira ser utilizado para lancar os valores das notas canceladas , codigo de lançamento e Descrição do Codigo de Lançamento, alem de gerar uma CDA que será utilizada pra gerar os Registros E113.toc
FISA315 - Cadastro de Regra de Apuração
...
CJW_FILIAL - Filial do Sistema: Grava a filial onde ocorreu a inclusão do registro - Grupo de campo 033.
CJW_ID - ID do Cadastro: Gera um ID com MD5 utilizando a função FWUUIDV1().
CJW_ID_CAB - ID do Cabeçalho.
CJW_REGAPU - Regra de Apuração: Retorna a opção 01 - Nota Cancelada através da função XRegraApu, onde o cliente informa qual situação deve ser considerada para buscar o valor do tributo e amarrar com o código de lançamento informado.
CJW_CODTAB - Tabela de Lançamento: Este campo disponibiliza 2 tabelas de lançamento (5.1.1 - CDO, 5.2 - CDY).
CJW_CODLAN - Código de Lançamento: A tabela selecionada no campo CJW_CODLAN atualiza a consulta padrão, retornando os códigos de lançamento de cada tabela.
CJW_VIGINI - Data Início Vigência Apuração: O usuário informa a data de início da vigência do código de lançamento, que consta nos arquivos TXT baixados no site da http://sped.rfb.gov.br/.
CJW_VIGFIM - Data Final Vigência Apuração: O usuário informa a data de término da vigência do código de lançamento, que consta nos arquivos TXT baixados no site da http://sped.rfb.gov.br/.
CJW_ORIVLR - Origem do Tributo: O usuário informa qual foi a forma usada para escriturar: 01 - Configurador de Tributos; 02 - Sistema Legado.
CJW_TRIB - Tributo do Configurador: Selecione a regra que está amarrada com o tributo configurado para utilizar na escrituração.
CJW_VALOR - Considerar Valor: Selecione qual valor será buscado: Valor Tributado, Outros, Isento, Diferido, Base, Alíquota.
CJW_TRILEG - Tributo Legado: Este campo é habilitado quando o campo CJW_ORIVLR for igual a 02 - Legado, e com isso o usuário poderá selecionar qual tributo deverá ser considerado para buscar o valor.
Dicionário - 013583
Fontes
FISA315.PRW
Localizados na GITEA: https://code.engpro.totvs.com.br/totvs-fiscal/livros_fiscais/src/branch/DSERFISE-9196_Criar_cadastro_Controle_Regra_Apuracao
...
---------------------------------------------------------------------------------------------------------------------------
SPEDFISCAL
...
DelCDA - Esta função deleta registros de uma tabela onde o campo 'D_E_L_E_T_' não está marcado para exclusão e o campo 'CDA_ORIGEM' corresponde a um valor especificado.
A função RetCdaSeq
DelCDA
é usada para recuperar o número de sequência máximo da tabela CDA com base nos parâmetros fornecidos. Os parâmetros incluem a data de início para a pesquisa, o tipo de movimento, a espécie, o número da NF, a série, o código do cliente ou fornecedor e o código da lojadeletar registros de uma tabela com base em uma condição específica. A função é estática, o que significa que ela pertence à classe em vez de uma instância da classe.
A função começa inicializando duas variáveis locais, incluindo: cQuery
, que será usada para armazenar a consulta SQL que será construída, cAliasCDA
para o alias da tabela CDA, e cData
e cDataFim
para as datas de início e fim da pesquisa.
A consulta seleciona o valor máximo da coluna CDA_SEQ
da tabela CDA. Ela junta a tabela CDA com as tabelas SFT e SB1 com base em várias condições. A consulta também inclui várias condições WHERE, incluindo que a filial CDA deve ser igual a um valor específico, o tipo de movimento e a espécie devem ser iguais aos parâmetros fornecidos, a origem deve ser '6', e a data de cancelamento deve estar entre as datas de início e fim fornecidas.
que será executada, e oDelCDA
, que será usada para preparar e executar a consulta SQL.
A consulta SQL é definida como "DELETE FROM ? WHERE D_E_L_E_T_ = ' ' AND CDA_ORIGEM = ?". Esta consulta deleta registros de uma tabela (que será especificada mais tarde) onde o campo 'D_E_L_E_T_' não está marcado para exclusão (ou seja, é igual a ' ') e o campo 'CDA_ORIGEM' corresponde a um valor específico (que também será especificado mais tarde).
A consulta SQL é preparada usando o método FWPreparedStatement():New()
, que retorna um novo objeto PreparedStatement. A consulta é então definida no objeto PreparedStatement usando o método SetQuery
.
Depois que a consulta é construída, ela é executada usando o método FwExecStatement():New(cQuery)
. Os parâmetros da consulta são definidos usando os métodos SetUnsafe
e SetString
do objeto oMontQry
.Finalmente, o alias PreparedStatement. O primeiro parâmetro é o nome da tabela "CDA é aberto usando o método OpenAlias
do objeto oMontQry
, e esse alias é retornado pela função. Antes do retorno, o objeto oMontQry
é destruído e definido como Nil
para liberar recursos.
DelCDA - Esta função deleta registros de uma tabela onde o campo 'D_E_L_E_T_' não está marcado para exclusão e o campo 'CDA_ORIGEM' corresponde a um valor especificado.
A função DelCDA
é usada para deletar registros de uma tabela com base em uma condição específica. A função é estática, o que significa que ela pertence à classe em vez de uma instância da classe.
...
", e o segundo parâmetro é a string "6".
Finalmente, a consulta é executada usando a função TCSqlExec
, que executa uma consulta SQL fixa. A consulta fixa é obtida do objeto PreparedStatement usando o método GetFixQuery
.
RetCdalan - Função que filtrar as notas emitidas em períodos anteriores e canceladas
no período atual, a fim de facilitar o processamento de estorno ou crédito.
A função RetCdaLanc
é usada para retornar um alias para um conjunto de registros de uma consulta SQL, ou para fechar um alias existente. A função recebe quatro parâmetros: cCodLan
, cAliasCDA
, dDtIni
e lOption
.
A variável cQuery
é usada para armazenar a consulta SQL que será executada
...
.
...
A consulta SQL é
...
uma junção de duas tabelas, CDA
e SFT.
A consulta também agrupa e ordena os resultados.
A variável oMontQry
é usada para armazenar o objeto de consulta SQL. Se lOption
for verdadeiro, a consulta SQL é preparada e executada, e um alias para o conjunto de registros resultante é aberto e retornado. Se lOption
for falso, o alias fornecido é fechado.
Os métodos SetUnsafe
, SetString
, SetIn
e SetDate
são usados para definir os parâmetros da consulta SQL. O método OpenAlias
é usado para abrir um alias para o conjunto de registros resultante da consulta SQL. O método Destroy
é usado para destruir o objeto de consulta SQL depois que o alias é aberto.
A função retorna o Alias cAliasCDA
RetApurE113 - Função que monta o registro E113 do SPED Fiscal para documento cancelados.
A função RetApurE113
é usada para retornar um array aE113Apur
que contém informações sobre ajustes de apuração do ICMS. A função recebe seis parâmetros: aRegE110
, aRegE113
, aRegE111
, cFilSA1
, aRegApur
e dDataDe
do SPEDFISCAL
Inicialmente, a função define várias variáveis locais e cria um objeto JSON jRegE111
. Em seguida, ela percorre o array aRegE111
e adiciona cada elemento ao objeto JSON jRegE111
com uma chave MD5.
A função então verifica se o array aRegApur
contém algum elemento. Se sim, ela percorre o array aRegApur
e para cada elemento, ela verifica se o objeto JSON jRegE111
contém uma propriedade com uma chave MD5 específica. Se sim, ela chama a função RetCdaLanc
para retornar um alias cAliasCDA
A função então percorre aliascAliasCDA retornado pela função RetCdaLanc
e para cada registro, ela adiciona um array de informações ao array aRegE113
e avança para o próximo registro. Quando todos os registros foram processados, ela chama a função RetCdaLanc
novamente para fechar o alias.
Finalmente, a função adiciona o array aRegE113
e outras informações ao array aE113Apur
, libera o objeto JSON jRegE111
e retorna o array aE113Apur
A consulta SQL é preparada usando o método FWPreparedStatement():New()
, que retorna um novo objeto PreparedStatement. A consulta é então definida no objeto PreparedStatement usando o método SetQuery
.
Os parâmetros da consulta são definidos usando os métodos SetUnsafe
e SetString
do objeto PreparedStatement. O primeiro parâmetro é o nome da tabela "CDA", e o segundo parâmetro é a string "6".
Finalmente, a consulta é executada usando a função TCSqlExec
, que executa uma consulta SQL fixa. A consulta fixa é obtida do objeto PreparedStatement usando o método GetFixQuery
.
RetCdalan - Função que filtrar as notas emitidas em períodos anteriores e canceladas
no período atual, a fim de facilitar o processamento de estorno ou crédito.
A função RetCdaLanc(dDtIni)
éusada para recuperar informações de lançamentos na CDA. Ela recebe uma data inicial como parâmetro.
A variável cQuery
é usada para construir uma consulta SQL que será executada posteriormente. Esta consulta SQL seleciona várias colunas de três tabelas CDA, SFT e SB1. A consulta também inclui várias condições e agrupamentos.
Depois de construir a consulta SQL, a função cria um objeto oMontQry
usando o método FwExecStatement():New(cQuery)
. Este objeto é usado para executar a consulta SQL.
Em seguida, a função define várias variáveis para a consulta SQL usando os métodos SetUnsafe
e SetString
. Estes métodos são usados para definir os valores de parâmetros na consulta SQL.
A função então executa a consulta SQL e itera sobre os resultados. Para cada linha de resultado, ela cria uma string cCdaLanc
que parece ser uma concatenação de várias colunas. Se cCdaLanc
não estiver vazia, a função adiciona várias colunas a um array aCdaLanc
e adiciona este array a um objeto JSON oJCdalanc
com a chave sendo cCdaLanc
, que será utilizado na função RetApurE113 pra compor o E113.
...
.