Produto: | Microsiga Protheus |
Versões: | 12 |
Release: | 12.1.XXX - Em homologação interna |
Módulos: | Todos |
Ambientes: | Todos |
Observações: | Melhoria de processo em atendimento as legislações da Nota Fiscal Eletrônica - AJUSTE SINIEF 07/05 e o Convênio ICMS 115/03 |
.
Sobre a Melhoria.
A Primary Key (PK), ou Chave Primária dos documentos fiscais (Tabelas SF1 e SF2), desde a criação do Protheus é composta pelos campos:
F1_FILIAL + F1_DOC + F1_SERIE + F1_FORNECE + F1_LOJA + F1_FORMUL para Documentos Fiscais de Entrada, e
F2_FILIAL + F2_DOC + F2_SERIE + F2_CLIENTE + F2_LOJA para Documentos Fiscais de Saída.
Estes campos representam as informações Filial + Número do Documento + Série + Código do Cliente/Fornecedor + Loja, e no caso dos Documentos Fiscais de Entrada + Fomulário Próprio. Esta identificação única dos documentos fiscais tinha como base a legislação nacional brasileira da época.
Porém, com as mudanças do Governo na legislação, passou a ser previsto a reinicialização da numeração do documento fiscal por período de apuração para os setores de Comunicações e Energia Elétrica embasado nas legislações do Convênio ICMS 115/03 e da Nota Fiscal Eletrônica, ambos tornando legal este procedimento à todos os contribuintes nacionais que operam nestes setores.
Esta alteração na legislação gerou dificuldade aos clientes Protheus que operam nos setores de Comunicações e Energia Elétrica para reiniciarem os numeradores de seus documentos de saídas, normalmente a cada mês, e aos demais clientes Protheus para entrarem com estes documentos no sistema, pois em ambos os casos há violação da chave primária das tabelas, hora, emitindo os documentos de saída, hora recebendo os documentos emitidos pelas prestadoras de serviços de telecomunicação ou energia elétrica caso o fornecedor emita documentos fiscais em períodos diferentes com a mesma numeração e série não sendo possível a inserção dos dados no sistema.
Exemplo:
Existindo a nota fiscal de número 000000001, série 1, fornecedor 000001, loja 01, data de 01/02/2012, já gravada no Protheus.
Ao tentar inserir uma nota fiscal com os mesmos dados, o que é previsto pela legislação, porém em outra data, (mês ou ano) o sistema impede a gravação dos dados e acusa duplicidade nas informações, pois já possui esses dados salvos
Tanto na emissão quanto no recebimento dos documentos, esta violação da chave primária era contornada através de uma solução sistêmica que possibilitava a inserção de caracteres como "." (PONTO) somado a série do documento com o proposito de distinguir a PK e possibilitar a emissão e ou entrada do documento no sistema.
Para uma solução efetiva deste problema seria necessário uma alteração acrescentando mais campos a chave primaria das tabelas SF1, SF2 e todas as demais tabelas relacionadas a estas, contudo, esta alteração causaria um impacto muito grande nos códigos fontes, exigindo um grau elevado de codificação tanto no código padrão como nos códigos customizados por clientes.
A TOTVS procurou uma forma de alterar a chave primaria das tabelas de forma a minimizar o máximo possível a codificação das customizações de nossos clientes, promovendo assim uma solução que encontra-se um equilíbrio ideal entre custo x beneficio, haja visto que a alteração da legislação afeta de forma direta os clientes que operam nos setores de Comunicação e Energia Elétrica, mas também de forma indireta todos os demais clientes podem receberem documentos fiscais deste setor com dados que violam a chave primaria atual.
Detalhes da solução:
A solução refere-se em alterar a chave primária dos documentos fiscais através da modificação do conteúdo gravado nos campos _SERIE e similares, das tabelas dos documentos fiscais e todas as demais tabelas relacionadas a partir destas.
Foram mantidos os mesmos campos na chave (Número do documento + Série + Cliente/Fornecedor + Loja), porém, uma identificação única passa a ser gravada nos campos _SERIE, com o conteúdo no formato: SSSMMAAAAEEEEE onde:
SSS = Serie Do Documento Fiscal
MM = Mês da emissão do documento
AAAA = Ano da emissão do documento Fiscal
EEEEE = Espécie do Documento Fiscal
Exemplo do novo conteúdo: “UNI122014NFCEE”
Para tornar tal alteração possível, tomamos algumas medidas com relação a estrutura do sistema:
Campos _SDOC
Foram criados novos campos, “_SDOC”, para armazenar a série real dos documentos fiscais.
A utilização deste campo, varia de acordo com a funcionalidade, um exemplo seria na impressão de relatórios e demais documentos impressos.
Poderá ser utilizado também na construção de filtros, para que a busca possa ser feita com o conteúdo REAL da série.
Estes campos _SDOC serão gravados no mesmo momento em que os campos _SERIE forem gravados.
Para cada campo _SERIE no sistema, foi criado um respectivo _SDOC, baseado na nomenclatura do original.
Exemplo:
Tabela SD2
Campo Original | Respectivo _SDOC |
D2_SERIE | D2_SDOC |
D2_SERIORI | D2_SDOCORI |
D2_SERIREM | D2_SDOCREM |
D2_SERMAN | D2_SDOCMAN |
! Os novos campos, têm as mesmas características dos campos _SERIE atuais, tamanho, título, descrição, etc.
Grupos de Campo
Foram criados 2 novos grupos de campos (SXG):
094 - Utilizado nos campos _SERIE atual para vincular à todas as tabelas do ERP que tenham relação com a Série do Documento Fiscal;
Obs. Estes campos terão seu tamanho alterado para o tamanho da Série Oficial do referido país somado a quantidade de posições necessárias para criar o identificador de controle da duplicidade, passando a ser utilizado somente como relacionamento interno no sistema;
095 - Este grupo de campos será atribuído aos novos campos denominados _SDOC, pois caso haja a necessidade de uma alteração futura, todos estes já estarão amarrados ao mesmo grupo.
Índices (SIX)
Foram criados novos índices utilizando os campos _SDOC. Estes índices são uma réplica dos indicies que continham os campos _SERIE, e serão utilizados para filtros e consultas. Os índices que possuem o campo _SERIE, não estarão mais disponíveis para realização de consultas ou filtros quando a melhoria for implantada pelo usuário, as consultas do sistema serão feitas através dos índices que contenham os campos _SDOC;
Picture
A Picture dos campos _SERIE e _SDOC, passam a ser !!!, com isso todas as Classes e objetos gráficos do ADVPL obedecerão essa PICTURE para manipulação, edição e visualização destes campos mesmo que o novo conteúdo “UNI122014NFCEE” seja gravado nos campos com o novo tamanho de 14 posições, esta solução possibilita que todos os códigos fontes não necessitem ser reescritos ao referenciar os campos.
Exemplo:
A quem se destina esta Melhoria.
- A todos os clientes que operam no setor de Comunicações, Energia Elétrica e que se enquadram na legislação do Convênio ICMS 115/03 e necessitam reiniciar o numerador dos documentos fiscais de saída a cada período de apuração;
- A todos os clientes que necessitam inserir documentos fiscais de entrada emitidos por um mesmo fornecedor que já tenha emitido o mesmo numero de documento para o usuário e receba a mensagem de violação da chave primária ao tentar incluir o documento de entrada no Protheus.
Sobre a Legislação...
O Convênio ICMS 115/03 é o dispositivo legal, a nível nacional, que dispõe sobre a uniformização e disciplina a emissão, escrituração, manutenção e prestação das informações dos documentos fiscais emitidos em via única por sistema eletrônico de processamento de dados para contribuintes prestadores de serviços de comunicação e fornecedores de energia elétrica.
Para maiores informações consulte os Links disponíveis na internet sobre as legislações
http://www1.fazenda.gov.br/confaz/confaz/convenios/icms/2003/CV115_03.htm
http://www1.fazenda.gov.br/confaz/confaz/ajustes/2005/AJ_007_05.htm
Pré-Requisitos.
- Estar atualizado com o release 12.1.009 ou superior do Protheus 12 (Dicionário de dados e RPO.);
- Ter revisado todos os códigos fontes das customizações que tenham relação com documentos fiscais de entrada e saída conforme o tópico CUSTOMIZAÇÕES, O QUE DEVE SER ANALISADO E ALTERADO, deste documento.
Restrições.
- A Melhoria não se encontra disponível para ativação em clientes que utilizam o módulo SIGATMS. A disponibilidade para atender estes clientes está prevista para o ano de 2016. Entre em contato com a TOTVS para receber mais informações.
Utilização.
A ativação desta Melhoria é opcional, portanto medidas foram tomadas para que usuários que não desejem utiliza-la, não sejam afetados pelas alterações realizadas.
Sendo assim, o sistema terá um comportamento diferente para cada modelo de dicionário de dados:
Dicionário padrão anterior a versão 12.1.009
Os campos _SERIE ainda terão o tamanho 3, e os campos _SDOC não existirão na base de dados, portanto a gravação ocorre da maneira NORMAL, sem alteração no conteúdo nos campos _SERIE
Dicionário padrão superior ou igual a versão 12.1.009
Nos dicionários 12.1.009 em diante, os campos _SDOC passam a existir, portanto teremos duas situações diferente neste caso:
- Se a Melhoria NÃO for ativada através do programa UpdSerieNF, os campos _SERIE do grupo de campos 094 “Id de Controle dos Documentos Fiscais” (SXG) ainda estarão no tamanho 3. Neste caso a gravação será feita nos 2 campos simultaneamente, porém com o mesmo conteúdo
Exemplo: F1_SERIE = “UNI” e F1_SDOC = “UNI”
- Se a Melhoria for ATIVADA através do programa UpdSerieNF, os campos _SERIE do grupo de campos 094 “Id de Controle dos Documentos Fiscais” (SXG) serão alterados para o tamanho 14. Neste caso a gravação será feita nos 2 campos simultaneamente, porém a nova chave será gravada nos campos _SERIE
Exemplo: F1_SERIE = “UNI122015NFCEE” e F1_SDOC = “UNI”
Importante
Vale lembrar que após a atualização do dicionário de dados para a versão 12.1.009 ou superior, os 2 campos de série SEMPRE serão gravados simultaneamente, independente da ativação da melhoria.
Passo a Passo para a Ativação.
- Ler as instruções deste manual e montar o plano para ativação conforme as necessidades em que se enquadra;
- Caso haja a necessidade de adequar as customizações, re-codificar conforme as instruções do manual;
- Caso existam tabelas de usuário que necessitem se relacionar diretamente com os documentos de entrada e saída, adequar-las conforme este manual;
- Agendar uma janela com tempo suficiente para a Ativação;
- Verificar o release do Protheus em uso, caso necessário providenciar a atualização através do compatibilizador UPDDISTR
Importante!
Antes de processar o UPDATE, faça um backup da sua base de dados e aplique em modo exclusivo, seguindo todas as orientações da documentação disponível no TDN.
http://tdn.totvs.com/pages/viewpage.action?pageId=181965468
- Certifique-se de que não haja usuários logados no sistema e execute o programa UpdSerieNF
- Após a ativação através do programa UpdSerieNF compilar as customizações adequadas ao novo modelo;
- A melhoria já esta ativada e pronta para entrar em produção.
Com a Ativação desta melhoria, qual será a nova chave primária (PK) das tabelas SF1 e SF2 (Documentos Fiscais de Entrada e Saída)?
Após a ativação da melhoria, os campos _SERIE das tabelas do tópico Lista de Tabelas e Campos Tratados tem o seu tamanho alterado de 3 para 14 e passam a conter 4 informações concatenadas nesta ordem: Série + Mês + Ano + Espécie do Documento Fiscal.
Exemplo de conteúdo: “UNI122014NFCEE”.
Com isso é importante ressaltar que nas tabelas SF1/SD1 e SF2/SD2, embora não tenham sido acrescentados NOVOS campos a chave primária destas tabelas, novas informações foram inseridas na chave primária, e neste caso para se relacionar com elas será necessário utilizar a seguinte chave de relacionamento:
FILIAL + NÚMERO DO DOCUMENTO + SÉRIE + MÊS DA EMISSÃO + ANO DA EMISSÃO + ESPÉCIE DO DOCUMENTO + CÓDIGO FORNECEDOR / CLIENTE + LOJA
Lembre-se:
Não será necessário alterar nos códigos fonte das customizações, instruções como DbSeek() , MsSeek(), Chaves em Whiles, WHERE ou JOINs em querys de relacionamento, pois os ÍNDICES quem contem os campos _SERIE das tabelas já possuem as informações da nova chave primária.
Uso de Rotinas Automáticas do Protheus em Customizações.
Em construções onde a operação que envolve a rotina automática for INCLUSÃO, é possível enviar na posição de array do campo _SERIE apenas a série real do documento, por exemplo: "UNI", pois as rotinas de gravação dos documentos trata a gravação correta do ID de controle nos campos _SERIE e a série real no campo _SDOC.
Em construções onde a operação que envolve a rotina automática for ALTERAÇÃO ou EXCLUSÃO, o conteúdo do campo _SERIE, deverá ser enviado com o ID COMPLETO (série+mês de emissão+ano de emissão+espécie do documento) , pois essa informação de chave é necessária para o posicionamento correto de qual documento será alterado ou excluído.
Exemplo:
Utilização dos campos _SERIE do DICIONÁRIO PADRÃO em Customizações.
Todos os campos _SERIE do dicionário padrão são tratados pela função SerieNFId(), caso a customização utilizar operações de visualização, edição ou geração de registros nas tabelas tratadas na melhoria, o usuário pode fazer uso dos recursos da função.
Para detalhes quanto ao uso da função SerieNFId() e quais tabelas e campos são tratados no sistema consulte os tópicos: Funcionamento da Função SerieNFId() e Lista de Tabelas e Campos Tratados no Sistema.
Atenção! A função SERIENFID() NÃO deve ser utilizada em campos que NÃO Constam na Lista de Tabelas e Campos Tratados no Sistema
Customizações, o que deve ser analisado e alterado.
Cada forma de desenvolvimento em um RDMAKE, Customização ou Ponto de Entrada, é muito particular, o que nos impede de termos uma visão singular e um padrão definido como proposta. Nos concentramos neste tópico em apresentar exemplos de possíveis situações e sugestões de como adequar cada situação.
Tenha em mente que antes de ativar a nova funcionalidade, TODAS as customizações deverão ser analisadas e previamente alteradas caso haja a necessidade.
TABELAS DE USUÁRIO
Caso possua tabelas de usuário que se relacionem com as tabelas tratadas na lista deste manual, você pode alterar os campos que se referem a série do documento fiscal para o mesmo padrão adotado para a melhoria (Campo _SERIE Tamanho 14, Picture "!!!" ) e criar um novo campo para armazenar a série real do documento fiscal.
Este modelo é opcional no caso de sua customização NÃO se relacionar com as tabelas do sistema, caso opte por ele, códigos onde o campo do usuário grava o conteúdo dos campos padrão _SERIE ex: ZZZ_SERIE := F1_SERIE não necessitarão de alteração em instruções como dbSeek(), Whiles, JOINs, WHEREs F1_SERIE = ZZZ_SERIE, e também as DIALOGs que utilizam classes e objetos gráficos do Protheus não necessitarão de alterações pois obedecerão a PICTURE !!! do campo, mesmo que o tamanho e conteúdo do campo sejam maiores, poupando assim um esforço maior de reescrita do código em alguns casos.
É importante ressaltar é que as tabelas de usuário que necessitam se relacionar com as tabelas tratadas pela melhoria necessitam ter os campos e ou informações que satisfaçam a nova chave primaria (PK) dos documentos fiscais de entrada e saída. a saber:
FILIAL + NÚMERO DO DOCUMENTO + SÉRIE + MÊS DA EMISSÃO + ANO DA EMISSÃO + ESPÉCIE DO DOCUMENTO + CÓDIGO FORNECEDOR / CLIENTE + LOJA
O QUE DEVE SER ALTERADO
- O tamanho dos campos _SERIE do sistema foi alterado para 14, logo, qualquer campo de usuário que seja gravado com o conteúdo destes, deve ser alterado também para 14 para poder receber o conteúdo completo, em casos de posicionamento isso é obrigatório, ou a tabela NÃO será capaz de se relacionar com as tabelas padrão do sistema;
- Verificar Filtros que buscam documentos fiscais em sua aplicação levando em consideração que terão vários documentos semelhantes com o mesmo número, série, cliente/fornecedor e loja, o uso do ID de Controle distinguirá cada um deles nesta situação;
- Verificar as rotinas automáticas que gravam as tabelas da lista de tabelas e campos deste documento, consulte o tópico Rotinas Automáticas;
- Relatórios, arquivos TXT, XML,Consultas que apresentam a série do documento fiscal a partir dos campos padrão do sistema constantes na lista, utilizar a função SerieNfId() para tratar a visualização destes processos.
Funcionamento da Função SerieNfId().
Importante!
Lembrando que esta função só terá efeito para as tabelas PADRAO do sistema, não podendo ser utilizada em tabelas CUSTOMIZADAS.
E as tabelas a serem utilizadas, deverão estar posicionadas no registro desejado, a função não faz nenhum tipo de posicionamento, somente retorna o conteúdo, tamanho, demais características, dos registros posicionados.
A função SerieNFId() é responsável pela manutenção dos campos _SERIE, tanto na gravação, visualização, ou retorno de propriedades:
LISTA DE PARÂMETROS.
cAlias -> Alias da tabela do campo _SERIE
bOpcao -> 1 - Gravação (sempre gravará 2 campos o _SERIE e o correspondente _SDOC quando existir no dicionário de dados)
2 - Visualização (Retorna o conteúdo gravado nos campos _SERIE ou _SDOC
3 - Retorna uma string com o nome do campo série a ser utilizado Exemplo: F1_SERIE ou F1_SDOC
4 - Retorna a chave de pesquisa ID ou serie Real para utilizar em validações dbSeek() ANTES da gravação dos dados editados
5 - Retorna o Criavar do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
6 - Retorna o TamSX3 do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
7 - Retorna o RetTitle do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
cCpoOrig -> String contendo o nome do campo da serie Original da tabela padrão Exemplo: F1_SERIE
dEmissao -> Data de Emissão do Documento Fiscal (OPCIONAL Usar somente com opção "1" - Gravação e "4" - Validação)
cEspecie -> Espécie do Documento Fiscal (OPCIONAL Usar somente com opção "1" - Gravação e "4" - Validação )
cSerieGrv -> Variável Conteúdo da Serie do documento fiscal a ser gravada (OPCIONAL Usar somente com opção "1" - Gravação e "4" - Validação)
cNewIdPai-> Campo da série original da tabela PAI ao gravar a tabela FILHO, o foco da utilização é herdar o ID gravado na tabela pai para as tabelas filho sem a necessidade de compor o ID novamente,
Exemplo: F1_SERIE = "UNI122014ESPEC", D1_SERIE, F3_SERIE, FT_SERIE com o mesmo conteúdo
Exemplos de uso da função utilizando cada opção.
OPÇÃO 1 - GRAVAÇÃO - Uso em rotina de gravação do campo série utilizando a função SerieNfId(), substituir a gravação direta do campo F1_SERIE onde a função gravará os 2 campos F1_SERIE e F1_SDOC
Neste exemplo, a gravação direta do campo F1_SERIE foi substituída pela utilização da função com a opção 1
Foram passadas as variáveis dDtEmissao, cEspecie e cSerie, e a função se encarrega de montar o ID e realizar a gravação nos campos F1_SERIE e F1_SDOC simultaneamente
OPÇÃO 2 - VISUALIZAÇÃO – Rotina de geração de um arquivo magnético onde a serie do documento fiscal faz parte do layout da obrigação.
A opção 2 retorna o CONTEÚDO do campo que possui o valor da série REAL, ou seja a série de tamanho 3.
Esta opção pode ser utilizada em relatórios, arquivos magnéticos, ou em qualquer momento em que o conteúdo da série real tenha de ser apresentado.
OPÇÃO 3 – Nome do Campo - Exemplo de substituição de Query em filtro de uma Pergunte com parâmetro Série utilizando a função SerieNfId() com a opção 3
O usuário digita a série real nos parâmetros MV_PAR14 e MV_PAR15, porém a busca deve ser feita no campo onde ela foi gravada, e a opção 3 retorna qual o campo contém a série real.
OPÇÃO 4 – NOVO ID ou SERIE – Retorna o novo ID ou a Serie Real do documento fiscal conforme o cenário utilizado pelo usuário através da passagem dos parâmetros dEMISSAO, cSERIE e cESPECIE
Utilizar esta opção quando for necessário montar um ID, para que não haja a necessidade de montar manualmente Exemplo (validar a inclusão de documento na tabela ANTES da gravação do mesmo.
OPÇÃO 5 – CriaVar – Em caso de necessidade de se obter o CriaVar() do campo que contenha a serie real do documento fiscal mesmo estando com o novo formato de gravação do ID de Controle ativo.
OPÇÃO 6 – TAMSX3()[1]- Exemplo de substituição da função TamSX3()[1] para obter o tamanho do campo Série real, utilizar somente quando houver a necessidade de obter o tamanho da serie real em qualquer cenário de configuração.
OPÇÃO 7 – RetTitle - Exemplo para obter o LABEL do campo _SDOC estando o cliente utilizando o novo formato de gravação do Id de Controle ou não.
Como são tratados os campos _PREFIXO (Financeiro) com a ATIVAÇÃO da Melhoria.
Embora os campos _PREFIXO herdem a série do documento fiscal quando os títulos financeiros são gerados a partir do documento fiscal, estes NÃO sofrerão alterações por conta da nova funcionalidade, devido à complexidade e o impacto desta alteração no modulo SIGAFIN.
Existem diversos campos que utilizam várias informações, entre elas o prefixo, para poder gravar uma chave composta, tornando assim impraticável as alterações do tamanho e características dos campos _PREFIXO
A solução adotada, foi a utilização de uma função auto incremental no momento da gravação dos campos _PREFIXO (SOMA1)
Quando um documento fiscal de entrada e ou saída for incluído gerando títulos financeiros vinculados aos documentos fiscais, haverá uma verificação se já existe essa mesma chave nas tabelas SE1 ou SE2.
Se não houver duplicidade, o sistema fará a gravação normalmente, sem qualquer alteração de como já é feito hoje.
Se encontrar títulos já existentes com a mesma chave, aplicará a função auto incremental SOMA1() no momento da gravação evitando assim a colisão na inclusão do novo título e o seu conteúdo também será gravado nos seus pares F1_PREFIXO e F2_PREFIXO para que a relação seja mantida.
Exemplo:
Existindo na base o seguinte título na SE2:
Ao incluir um documento fiscal de número 000007, série AAA, fornecedor 3, loja 1, o numerador
SOMA1(“AAA”) permitirá a gravação do novo título desta forma:
O campo F1_PREFIXO do documento fiscal incluído estará “AAB” e o campo série F1_SERIE e ou F1_SDOC na tabela SF1 estará “AAA”
Este é um exemplo de como os campos ficarão gravados no banco após a implantação da solução. O exemplo mostra a inclusão de 2 documentos fiscais de entrada com o mesmo número e serie em datas diferentes gerando títulos financeiros na tabela SE2.
ATENÇÃO!
Quando se procura um título financeiro (SE1/SE2) vinculado a uma NF a partir de uma nota fiscal (SF1/SF2), NÃO utilizar como parte da chave, o campo _SÉRIE (F1_SERIE / F2_SERIE) para posicionar nas tabelas SE1 ou SE2, isso é um ERRO, pois segundo a possibilidade aberta nos parâmetros MV_1DUPREF e MV_2DUPREF é possível que outro conteúdo seja gravado nos campos E1_PREFIXO e E2_PREFIXO.
Da mesma forma ocorre quando se procura uma nota fiscal que esteja vinculada a um título a partir de um título financeiro (SE1/SE2) usando o campo E1_PREFIXO / E2_PREFIXO como parte da chave de busca.
Quando a ATIVAÇÃO da funcionalidade entrar em vigor o tamanho dos campos atuais de série será alterado para 14 posições e o prefixo continuará com 3 posições, fazendo com que essa relação não tenha mais efeito
Portanto os códigos fonte customizados que possuem esta relação precisam ser conforme o exemplo abaixo:
Posicionamento utilizando a tabela SE1 para posicionar a tabela SF
Código INCORRETO:
Deverá ser substituído por:
Exemplo 2:
Posicionando uma nota fiscal a partir de um título financeiro
Deverá ser substituído por:
Obs. A ordem 1 do índice da tabela SF2 contém o campo F2_SERIE e não o campo F2_PREFIXO, logo deverá ser substituída por uma query:
Reinicializar o Número do Documento quando se utiliza o controle de número pela tabela SD9 - MV_TPNRNFS = 3.
Quando o cliente, usuário do Protheus se enquadra na legislação que determina a reinicialização da numeração do documento fiscal por período de apuração para os setores de Comunicações e Energia Elétrica, Convênio ICMS 115/03 e o mesmo também utiliza o controle de numeração dos documentos fiscais realizado pela tabela SD9 (Identificado quando o parâmetro MV_TPNRNFS = 3), será necessário reiniciar a numeração dos documentos fiscais através da rotina MATA470A - "Reiniciar Numeração dos Documentos Fiscais controlados pela tabela SD9" localizada no menu do modulo SIGAFAT.
O reinicio do numerador se dará através da seleção da série desejada. A cada vez que o numerador de uma determinada série for reiniciado os registros desta série na tabela SD9 serão EXCLUÍDOS gerando um novo controle do numerador para o período.
Lista de Tabelas e Campos Tratados no Sistema.
Alias | Descrição | Campo Série Atual Utilizado como ID de Controle | Campo Novo contendo a SÉRIE REAL |
AA3 | Assistência Técnica | AA3_ULTSER | AA3_SDOC |
AD0 | Faturamento | AD0_SERIE | AD0_SDOC |
AFN | PMS - Gestão de Projetos | AFN_SERIE | AFN_SDOC |
AFO | PMS - Gestão de Projetos | AFO_SERIE | AFO_SDOC |
AFS | PMS - Gestão de Projetos | AFS_SERIE | AFS_SDOC |
AGH | Faturamento | AGH_SERIE | AGH_SDOC |
B19 | Plano de Saude | B19_SERIE | B19_SDOC |
BM1 | Plano de Saude | BM1_SERSF2 | BM1_SDOCF2 |
BMN | Plano de Saude | BMN_SERSF2 | BMN_SDOCF2 |
BTV | Plano de Saude | BTV_SERIE | BTV_SDOC |
CB0 | Automacao coleta de dados | CB0_SERIEE | CB0_SDOCE |
CB0 | Automacao coleta de dados | CB0_SERIES | CB0_SDOCS |
CB6 | Automacao coleta de dados | CB6_SERIE | CB6_SDOC |
CB7 | Automacao coleta de dados | CB7_SERIE | CB7_SDOC |
CB8 | Automacao coleta de dados | CB8_SERIE | CB8_SDOC |
CBE | Automacao coleta de dados | CBE_SERIE | CBE_SDOC |
CBG | Automacao coleta de dados | CBG_SERIEE | CBG_SDOCE |
CBG | Automacao coleta de dados | CBG_SERIES | CBG_SDOCS |
CBK | Automacao coleta de dados | CBK_SERIE | CBK_SDOC |
CBL | Automacao coleta de dados | CBL_SERIE | CBL_SDOC |
CCX | Livros Fiscais | CCX_SERIE | CCX_SDOC |
CD0 | Livros Fiscais | CD0_SERENT | CD0_SDOCE |
CD0 | Livros Fiscais | CD0_SERIE | CD0_SDOC |
CD2 | Livros Fiscais | CD2_SERIE | CD2_SDOC |
CD3 | Livros Fiscais | CD3_SERIE | CD3_SDOC |
CD4 | Livros Fiscais | CD4_SERIE | CD4_SDOC |
CD5 | Livros Fiscais | CD5_SERIE | CD5_SDOC |
CD6 | Livros Fiscais | CD6_SERIE | CD6_SDOC |
CD7 | Livros Fiscais | CD7_SERIE | CD7_SDOC |
CD8 | Livros Fiscais | CD8_SERIE | CD8_SDOC |
CD9 | Livros Fiscais | CD9_SERIE | CD9_SDOC |
CDA | Livros Fiscais | CDA_SERIE | CDA_SDOC |
CDB | Livros Fiscais | CDB_SERIE | CDB_SDOC |
CDC | Livros Fiscais | CDC_SERIE | CDC_SDOC |
CDD | Livros Fiscais | CDD_SERIE | CDD_SDOC |
CDD | Livros Fiscais | CDD_SERREF | CDD_SDOCRF |
CDE | Livros Fiscais | CDE_SERIE | CDE_SDOC |
CDE | Livros Fiscais | CDE_SERREF | CDE_SDOCRF |
CDF | Livros Fiscais | CDF_SERIE | CDF_SDOC |
CDG | Livros Fiscais | CDG_SERIE | CDG_SDOC |
CDK | Livros Fiscais | CDK_SERIE | CDK_SDOC |
CDK | Livros Fiscais | CDK_SERECP | CDK_SDOCEC |
CDL | Livros Fiscais | CDL_SEREXP | CDL_SDOCEX |
CDL | Livros Fiscais | CDL_SERIE | CDL_SDOC |
CDL | Livros Fiscais | CDL_SERORI | CDL_SDOCOR |
CDM | Livros Fiscais | CDM_SERIEE | CDM_SDOCE |
CDM | Livros Fiscais | CDM_SERIES | CDM_SDOCS |
CDQ | Livros Fiscais | CDQ_SERIE | CDQ_SDOC |
CDR | Livros Fiscais | CDR_SERIE | CDR_SDOC |
CDS | Livros Fiscais | CDS_SEREMB | CDS_SDOCEM |
CDS | Livros Fiscais | CDS_SERIE | CDS_SDOC |
CDT | Livros Fiscais | CDT_SERIE | CDT_SDOC |
CDX | Livros Fiscais | CDX_SERIE | CDX_SDOC |
CE2 | Livros Fiscais | CE2_SERINF | CE2_SDOC |
CE5 | Livros Fiscais | CE5_SERIE | CE5_SDOC |
CE8 | Livros Fiscais | CE8_SERIE | CE8_SDOC |
CF4 | Livros Fiscais | CF4_SERIE | CF4_SDOC |
CF6 | Livros Fiscais | CF6_SERIE | CF6_SDOC |
CG8 | Livros Fiscais | CG8_SERIE | CG8_SDOC |
CKQ | Livros Fiscais | CKQ_SERIE | CKQ_SDOC |
CL5 | Livros Fiscais | CL5_SER | CL5_SDOC |
COG | Gestão de Contratos | COG_SERIE | COG_SDOC |
D07 | WMS - Gestao de armazenagem | D07_SERIE | D07_SDOC |
D12 | WMS - Gestao de armazenagem | D12_SERIE | D12_SDOC |
D13 | WMS - Gestao de armazenagem | D13_SERIE | D13_SDOC |
DAI | Distribution | DAI_SERIE | DAI_SDOC |
DAI | Distribution | DAI_SERREM | DAI_SDOCRM |
DB2 | Compras | DB2_SERIE | DB2_SDOC |
DBB | Compras | DBB_SERIE | DBB_SDOC |
DCF | WMS - Gestao de armazenagem | DCF_SERIE | DCF_SDOC |
DCF | WMS - Gestao de armazenagem | DCF_SERORI | DCF_SDOCOR |
DCN | WMS - Gestao de armazenagem | DCN_SERIE | DCN_SDOC |
DCX | WMS - Gestao de armazenagem | DCX_SERIE | DCX_SDOC |
DD9 | TMS - Gestao de Transporte | DD9_SERIE | DD9_SDOC |
DD9 | TMS - Gestao de Transporte | DD9_SERNFC | DD9_SDOCNF |
DEB | TMS - Gestao de Transporte | DEB_SERIE | DEB_SDOC |
DEF | TMS - Gestao de Transporte | DEF_SERIE | DEF_SDOC |
DF1 | TMS - Gestao de Transporte | DF1_SERIE | DF1_SDOC |
DF6 | TMS - Gestao de Transporte | DF6_SERIE | DF6_SDOC |
DFN | TMS - Gestao de Transporte | DFN_SERIE | DFN_SDOC |
DFP | TMS - Gestao de Transporte | DFP_SERDCS | DFP_SDOCS |
DFP | TMS - Gestao de Transporte | DFP_SERDCT | DFP_SDOCT |
DFR | TMS - Gestao de Transporte | DFR_SERDCT | DFR_SDOCT |
DFS | TMS - Gestao de Transporte | DFS_SERDCT | DFS_SDOCT |
DFV | TMS - Gestao de Transporte | DFV_SERIE | DFV_SDOC |
DI9 | TMS - Gestao de Transporte | DI9_SERIE | DI9_SDOC |
DIA | TMS - Gestao de Transporte | DIA_SERIE | DIA_SDOC |
DIB | TMS - Gestao de Transporte | DIB_SERIE | DIB_SDOC |
DIC | TMS - Gestao de Transporte | DIC_SERIE | DIC_SDOC |
DIH | TMS - Gestao de Transporte | DIH_SERIE | DIH_SDOC |
DII | TMS - Gestao de Transporte | DII_SERIE | DII_SDOC |
DIJ | TMS - Gestao de Transporte | DIJ_SERIE | DIJ_SDOC |
DIK | TMS - Gestao de Transporte | DIK_SERIE | DIK_SDOC |
DIM | TMS - Gestao de Transporte | DIM_SERIE | DIM_SDOC |
DIN | TMS - Gestao de Transporte | DIN_SERNFC | DIN_SDOCC |
DT5 | TMS - Gestao de Transporte | DT5_SERIE | DT5_SDOC |
DT6 | TMS - Gestao de Transporte | DT6_SERDCO | DT6_SDOCOR |
DT6 | TMS - Gestao de Transporte | DT6_SERIE | DT6_SDOC |
DT6 | TMS - Gestao de Transporte | DT6_SERMAN | DT6_SDOCMN |
DT8 | TMS - Gestao de Transporte | DT8_SERIE | DT8_SDOC |
DTA | TMS - Gestao de Transporte | DTA_SERIE | DTA_SDOC |
DTC | TMS - Gestao de Transporte | DTC_SERDPC | DTC_SDOCPC |
DTC | TMS - Gestao de Transporte | DTC_SERIE | DTC_SDOC |
DTC | TMS - Gestao de Transporte | DTC_SERNFC | DTC_SDOCC |
DTE | TMS - Gestao de Transporte | DTE_SERNFC | DTE_SDOCC |
DTX | TMS - Gestao de Transporte | DTX_SERMAN | DTX_SDOCMN |
DU1 | TMS - Gestao de Transporte | DU1_SERIE | DU1_SDOC |
DU1 | TMS - Gestao de Transporte | DU1_SERNFC | DU1_SDOCC |
DU7 | TMS - Gestao de Transporte | DU7_SERIE | DU7_SDOC |
DUA | TMS - Gestao de Transporte | DUA_SERIE | DUA_SDOC |
DUB | TMS - Gestao de Transporte | DUB_SERIE | DUB_SDOC |
DUD | TMS - Gestao de Transporte | DUD_SERBXE | DUD_SDOCBX |
DUD | TMS - Gestao de Transporte | DUD_SERIE | DUD_SDOC |
DUD | TMS - Gestao de Transporte | DUD_SERMAN | DUD_SDOCMN |
DUU | TMS - Gestao de Transporte | DUU_SERIE | DUU_SDOC |
DV4 | TMS - Gestao de Transporte | DV4_SERIE | DV4_SDOC |
DV4 | TMS - Gestao de Transporte | DV4_SERNFC | DV4_SDOCC |
DVS | TMS - Gestao de Transporte | DVS_SERIE | DVS_SDOC |
DVV | TMS - Gestao de Transporte | DVV_SERIE | DVV_SDOC |
DVX | TMS - Gestao de Transporte | DVX_SERIE | DVX_SDOC |
DXM | TMS - Gestao de Transporte | DXM_SERIE | DXM_SDOC |
DXS | TMS - Gestao de Transporte | DXS_SERNFS | DXS_SDOC |
DY4 | TMS - Gestao de Transporte | DY4_SERIE | DY4_SDOC |
DY4 | TMS - Gestao de Transporte | DY4_SERNFC | DY4_SDOCC |
DYC | TMS - Gestao de Transporte | DYC_SERIE | DYC_SDOC |
DYJ | TMS - Gestao de Transporte | DYJ_SERIE | DYJ_SDOC |
DYN | TMS - Gestao de Transporte | DYN_SERMAN | DYN_SDOCMN |
ED2 | Easy Drawback Control | ED2_SERIE | ED2_SDOC |
ED8 | Easy Drawback Control | ED8_SERIE | ED8_SDOC |
ED9 | Easy Drawback Control | ED9_SERIE | ED9_SDOC |
EDH | Easy Drawback Control | EDH_SERIE | EDH_SDOC |
EE9 | Easy Export Control | EE9_SERIE | EE9_SDOC |
EEM | Easy Export Control | EEM_SERIE | EEM_SDOC |
EES | Easy Export Control | EES_SERIE | EES_SDOC |
EEZ | Easy Export Control | EEZ_A_SER | EEZ_SDOCA |
EEZ | Easy Export Control | EEZ_SER | EEZ_SDOC |
EI1 | Controle de Importaçäo | EI1_SERIE | EI1_SDOC |
EI2 | Controle de Importaçäo | EI2_SERIE | EI2_SDOC |
EI3 | Controle de Importaçäo | EI3_SE_NFC | EI3_SDOC |
ELA | Easy Export Control | ELA_SERIE | ELA_SDOC |
EW1 | Easy Export Control | EW1_SERNF | EW1_SDOC |
EW2 | Easy Export Control | EW2_SERNF | EW2_SDOC |
EWI | Easy Export Control | EWI_SERIE | EWI_SDOC |
EYY | Easy Export Control | EYY_SERSAI | EYY_SDOCS |
EYY | Easy Export Control | EYY_SERENT | EYY_SDOCE |
FN6 | Ativo Fixo | FN6_SERIE | FN6_SDOC |
FN8 | Ativo Fixo | FN8_SERIE | FN8_SDOC |
FR3 | Financeiro | FR3_SERIE | FR3_SDOC |
FRF | Financeiro | FRF_SERDOC | FRF_SDOC |
FRK | Financeiro | FRK_SERIE | FRK_SDOC |
GW1 | Gestão de Frete Embarcador | GW1_ORISER | GW1_SDOCOR |
GW1 | Gestão de Frete Embarcador | GW1_SERDC | GW1_SDOC |
GW4 | Gestão de Frete Embarcador | GW4_SERDC | GW4_SDOCDC |
GW8 | Gestão de Frete Embarcador | GW8_SERDC | GW8_SDOCDC |
GWB | Gestão de Frete Embarcador | GWB_SERDC | GWB_SDOCDC |
GWE | Gestão de Frete Embarcador | GWE_SERDC | GWE_SDOCDC |
GWE | Gestão de Frete Embarcador | GWE_SERDT | GWE_SDOCDT |
GWH | Gestão de Frete Embarcador | GWH_SERDC | GWH_SDOCDC |
GWL | Gestão de Frete Embarcador | GWL_SERDC | GWL_SDOCDC |
GWM | Gestão de Frete Embarcador | GWM_SERDC | GWM_SDOCDC |
GWU | Gestão de Frete Embarcador | GWU_SERDC | GWU_SDOC |
GWW | Gestão de Frete Embarcador | GWW_SERDC | GWW_SDOC |
GXA | Gestão de Frete Embarcador | GXA_SERDC | GXA_SDOC |
HB6 | Sem Owner | HB6_SERIE | HB6_SDOC |
HD1 | Sem Owner | HD1_SERORI | HD1_SDOCO |
HD2 | Sem Owner | HD2_SERIE | HD2_SDOC |
HF1 | Sem Owner | HF1_SERIE | HF1_SDOC |
HF2 | Sem Owner | HF2_SERIE | HF2_SDOC |
JJ2 | Gestao Educacional | JJ2_SERIE | JJ2_SDOC |
MAX | Sistema de FidelizaþÒo e Anßlise de CrÚdito | MAX_SERIE | MAX_SDOC |
MB1 | Sistema de FidelizaþÒo e Anßlise de CrÚdito | MB1_SERIE | MB1_SDOC |
MBJ | Sem Owner - Loja | MBJ_SERIE | MBJ_SDOC |
MBN | Sem Owner - Loja | MBN_SERIE | MBN_SDOC |
MBR | Sem Owner - Loja | MBR_SERIE | MBR_SDOC |
MBZ | Sem Owner - Loja | MBZ_SERIE | MBZ_SDOC |
MDD | Sem Owner - Loja | MDD_SERIR | MDD_SDOCRC |
MDD | Sem Owner - Loja | MDD_SERIV | MDD_SDOCVD |
MDJ | Sem Owner - Loja | MDJ_SERIE | MDJ_SDOC |
MDK | Sem Owner - Loja | MDK_SERIE | MDK_SDOC |
MDL | Sem Owner - Loja | MDL_SERIE | MDL_SDOC |
MDU | Sem Owner - Loja | MDU_SERIE | MDU_SDOC |
ME4 | Sem Owner - Loja | ME4_SERIE | ME4_SDOC |
MFI | Sem Owner - Loja | MFI_SERIE | MFI_SDOC |
NNT | Estoque/Custos | NNT_SERIE | NNT_SDOC |
NOA | Gestao Agricola | NOA_SERDOC | NOA_SDOC |
NPA | Gestao Agricola | NPA_NFSSER | NPA_SDOC |
NPM | Gestao Agricola | NPM_SERNFS | NPM_SDOC |
NXA | Gestão Jurídica | NXA_SERIE | NXA_SDOC |
QEK | InspeþÒo de Entradas | QEK_SERINF | QEK_SDOC |
QEL | InspeþÒo de Entradas | QEL_SERINF | QEL_SDOC |
QEP | InspeþÒo de Entradas | QEP_SERINF | QEP_SDOC |
QER | InspeþÒo de Entradas | QER_SERINF | QER_SDOC |
QEY | InspeþÒo de Entradas | QEY_SERINF | QEY_SDOC |
QEZ | InspeþÒo de Entradas | QEZ_SERINF | QEZ_SDOC |
RHU | Gestäo de Pessoal | RHU_SERIE | RHU_SDOC |
SB6 | Estoque/Custos | B6_SERIE | B6_SDOC |
SB7 | Estoque/Custos | B7_SERIE | B7_SDOC |
SB8 | Estoque/Custos | B8_SERIE | B8_SDOC |
SC5 | Faturamento | C5_SERIE | C5_SDOC |
SC5 | Faturamento | C5_SERSUBS | C5_SDOCSUB |
SC6 | Faturamento | C6_D1SERIE | C6_SDOCSD1 |
SC6 | Faturamento | C6_SERDED | C6_SDOCDED |
SC6 | Faturamento | C6_SERIE | C6_SDOC |
SC6 | Faturamento | C6_SERIORI | C6_SDOCORI |
SC9 | Faturamento | C9_SERIENF | C9_SDOCNF |
SC9 | Faturamento | C9_SERIREM | C9_SDOCREM |
SCU | Compras | CU_SERNCP | CU_SDOCNCP |
SCU | Compras | CU_SERNF | CU_SDOCNF |
SD1 | Compras | D1_SERIE | D1_SDOC |
SD1 | Compras | D1_SERIORI | D1_SDOCORI |
SD1 | Compras | D1_SERIREM | D1_SDOCREM |
SD1 | Compras | D1_SERVINC | D1_SDOCVNC |
SD2 | Faturamento | D2_SERIE | D2_SDOC |
SD2 | Faturamento | D2_SERIORI | D2_SDOCORI |
SD2 | Faturamento | D2_SERIREM | D2_SDOCREM |
SD2 | Faturamento | D2_SERMAN | D2_SDOCMAN |
SD5 | Estoque/Custos | D5_SERIE | D5_SDOC |
SD7 | Estoque/Custos | D7_SERIE | D7_SDOC |
SD8 | Estoque/Custos | D8_SERIE | D8_SDOC |
SD9 | Estoque/Custos | D9_SERIE | D9_SDOC |
SDA | Estoque/Custos | DA_SERIE | DA_SDOC |
SDB | Estoque/Custos | DB_SERIE | DB_SDOC |
SDE | Compras | DE_SERIE | DE_SDOC |
SDS | Compras | DS_SERIE | DS_SDOC |
SDT | Compras | DT_SERIE | DT_SDOC |
SDT | Compras | DT_SERIORI | DT_SDOCORI |
SE1 | Financeiro | E1_SERIE | E1_SDOC |
SE1 | Financeiro | E1_SERREC | E1_SDOCREC |
SE3 | Financeiro | E3_SERIE | E3_SDOC |
SE5 | Financeiro | E5_SERREC | E5_SDOCREC |
SEF | Financeiro | EF_SERIE | EF_SDOC |
SEM | Financeiro | EM_SERIE | EM_SDOC |
SEU | Financeiro | EU_SERCOMP | EU_SDOCCOM |
SEU | Financeiro | EU_SERIE | EU_SDOC |
SEX | Financeiro | EX_SERREC | EX_SDOCREC |
SF1 | Compras | F1_SERIE | F1_SDOC |
SF1 | Compras | F1_SERORIG | F1_SDOCORI |
SF1 | Compras | F1_SERMAN | F1_SDOCMAN |
SF2 | Faturamento | F2_NEXTSER | F2_SDOCNXT |
SF2 | Faturamento | F2_SERIE | F2_SDOC |
SF2 | Faturamento | F2_SERIORI | F2_SDOCORI |
SF2 | Faturamento | F2_SERSUBS | F2_SDOCSUB |
SF2 | Faturamento | F2_SERMAN | F2_SDOCMAN |
SF2 | Faturamento | F2_SERMDF | F2_SDOCMDF |
SF3 | Livros Fiscais | F3_SERIE | F3_SDOC |
SF3 | Livros Fiscais | F3_SERMAN | F3_SDOCMAN |
SF6 | Livros Fiscais | F6_SERIE | F6_SDOC |
SF8 | Livros Fiscais | F8_SEDIFRE | F8_SDOCFRE |
SF8 | Livros Fiscais | F8_SERORIG | F8_SDOCORI |
SF9 | Livros Fiscais | F9_SERNFE | F9_SDOCNFE |
SF9 | Livros Fiscais | F9_SERNFS | F9_SDOCNFS |
SFE | Financeiro | FE_SERIE | FE_SDOC |
SFE | Financeiro | FE_SERIEC | FE_SDOCC |
SFS | Livros Fiscais | FS_SERIE | FS_SDOC |
SFT | Livros Fiscais | FT_SERIE | FT_SDOC |
SFT | Livros Fiscais | FT_SERORI | FT_SDOCORI |
SFU | Livros Fiscais | FU_SERIE | FU_SDOC |
SFX | Livros Fiscais | FX_SERIE | FX_SDOC |
SL1 | Sem Owner - Loja | L1_SERIE | L1_SDOC |
SL1 | Sem Owner - Loja | L1_SERPED | L1_SDOCPED |
SL1 | Sem Owner - Loja | L1_SERRPS | L1_SDOCRPS |
SL1 | Sem Owner - Loja | L1_SUBSERI | L1_SDOCSUB |
SL2 | Sem Owner - Loja | L2_SERIE | L2_SDOC |
SL2 | Sem Owner - Loja | L2_SERPED | L2_SDOCPED |
SL6 | Sem Owner - Loja | L6_SERIE | L6_SDOC |
SLQ | Sem Owner - Loja | LQ_SERIE | LQ_SDOC |
SLQ | Sem Owner - Loja | LQ_SERPED | LQ_SDOCPED |
SLQ | Sem Owner - Loja | LQ_SERRPS | LQ_SDOCRPS |
SLQ | Sem Owner - Loja | LQ_SUBSERI | LQ_SDOCSUB |
SLR | Sem Owner - Loja | LR_SERIE | LR_SDOC |
SLR | Sem Owner - Loja | LR_SERPED | LR_SDOCPED |
SLS | Sem Owner - Loja | LS_SERIE | LS_SDOC |
SLX | Sem Owner - Loja | LX_SERIE | LX_SDOC |
SN1 | Ativo Fixo | N1_NSERIE | N1_SDOC |
SN4 | Ativo Fixo | N4_SERIE | N4_SDOC |
SN7 | Ativo Fixo | N7_SERIE | N7_SDOC |
SNM | Ativo Fixo | NM_SERIE | NM_SDOC |
STL | Manutençäo Industrial | TL_SERIE | TL_SDOC |
STT | Manutençäo Industrial | TT_SERIE | TT_SDOC |
SUA | Telemarketing | UA_SERIE | UA_SDOC |
SW6 | Controle de Importaçäo | W6_SE_NF | W6_SDOC |
SW6 | Controle de Importaçäo | W6_SE_NFC | W6_SDOCC |
SWD | Controle de Importaçäo | WD_SE_NFC | WD_SDOCC |
SWD | Controle de Importaçäo | WD_SERIE | WD_SDOC |
SWD | Controle de Importaçäo | WD_SE_DOC | WD_SDOCSE |
SWN | Controle de Importaçäo | WN_SERIE | WN_SDOC |
SWN | Controle de Importaçäo | WN_SERORI | WN_SDOCORI |
SWW | Controle de Importaçäo | WW_SE_NFC | WW_SDOC |
TE0 | Assistência Técnica | TE0_SERIE | TE0_SDOC |
TE1 | Assistência Técnica | TE1_SERIE | TE1_SDOC |
TE2 | Assistência Técnica | TE2_SERIE | TE2_SDOC |
TEW | Assistência Técnica | TEW_SERENT | TEW_SDOCE |
TEW | Assistência Técnica | TEW_SERSAI | TEW_SDOCS |
TR7 | Manutençäo Industrial | TR7_SERIE | TR7_SDOC |
VD2 | Veiculos | VD2_SERNFI | VD2_SDOC |
VDD | Oficina | VDD_SERNFI | VDD_SDOC |
VDR | Oficina | VDR_NFESER | VDR_SDOCE |
VDR | Oficina | VDR_NFSSER | VDR_SDOCS |
VDU | Oficina | VDU_SERDOC | VDU_SDOC |
VDV | Oficina | VDV_ESERNF | VDV_SDOCE |
VDV | Oficina | VDV_SSERNF | VDV_SDOCS |
VE6 | Oficina | VE6_SERNFI | VE6_SDOC |
VEC | Oficina | VEC_SERNFI | VEC_SDOC |
VEC | Oficina | VEC_SERORI | VEC_SDOCOR |
VEO | Oficina | VEO_SERNFI | VEO_SDOC |
VF3 | Oficina | VF3_SERNFI | VF3_SDOC |
VG5 | Oficina | VG5_SERENT | VG5_SDOCE |
VG5 | Oficina | VG5_SERIEN | VG5_SDOCS |
VG6 | Oficina | VG6_SERENT | VG6_SDOCE |
VG6 | Oficina | VG6_SERNFI | VG6_SDOCS |
VG8 | Oficina | VG8_SERENT | VG8_SDOCE |
VG8 | Oficina | VG8_SERNFC | VG8_SDOCC |
VG8 | Oficina | VG8_SERNFI | VG8_SDOCS |
VGA | Oficina | VGA_SERFEC | VGA_SDOCC |
VGA | Oficina | VGA_SERIEN | VGA_SDOCE |
VGC | Oficina | VGC_SERFEC | VGC_SDOC |
VI0 | Oficina | VI0_SERNFI | VI0_SDOC |
VI6 | Oficina | VI6_SERNFI | VI6_SDOC |
VI7 | Oficina | VI7_SERIE | VI7_SDOC |
VI7 | Oficina | VI7_SERNFI | VI7_SDOCNF |
VIA | Oficina | VIA_SERNFI | VIA_SDOC |
VIE | Oficina | VIE_SERNFI | VIE_SDOC |
VIK | Oficina | VIK_SERNFI | VIK_SDOC |
VIK | Oficina | VIK_SERORI | VIK_SDOCOR |
VIN | Oficina | VIN_SERNFI | VIN_SDOC |
VIP | Oficina | VIP_SERIE | VIP_SDOC |
VIP | Oficina | VIP_SERNFI | VIP_SDOCNF |
VIQ | Oficina | VIQ_SERNFI | VIQ_SDOC |
VIV | Oficina | VIV_SERNFI | VIV_SDOC |
VIW | Oficina | VIW_SERNFI | VIW_SDOC |
VJ3 | Oficina | VJ3_SERNFI | VJ3_SDOC |
VJ5 | Oficina | VJ5_SERNFI | VJ5_SDOC |
VJC | Oficina | VJC_SERNFI | VJC_SDOC |
VJI | Oficina | VJI_SERNFI | VJI_SDOC |
VMB | Oficina | VMB_SRANTE | VMB_SDOCA |
VMB | Oficina | VMB_SRVSNF | VMB_SDOC |
VO3 | Oficina | VO3_SERNFI | VO3_SDOC |
VO4 | Oficina | VO4_SERNFI | VO4_SDOC |
VOO | Oficina | VOO_SERNFI | VOO_SDOC |
VQ1 | Veiculos | VQ1_SERNFI | VQ1_SDOC |
VQ2 | Veiculos | VQ2_SERNFI | VQ2_SDOC |
VQ4 | Veiculos | VQ4_SERNFI | VQ4_SDOC |
VRF | Veiculos | VRF_SERNFI | VRF_SDOC |
VS1 | Oficina | VS1_SERNFI | VS1_SDOC |
VSC | Oficina | VSC_SERNFI | VSC_SDOC |
VSY | Oficina | VSY_SERNFI | VSY_SDOC |
VSZ | Oficina | VSZ_SERNFI | VSZ_SDOC |
VV0 | Oficina | VV0_SERNFI | VV0_SDOC |
VV0 | Oficina | VV0_SNFFDI | VV0_SDOCFD |
VV0 | Oficina | VV0_SNFCOM | VV0_SDOCCO |
VV9 | Oficina | VV9_SERNFI | VV9_SDOC |
VVD | Oficina | VVD_SERNFI | VVD_SDOC |
VVF | Oficina | VVF_SERNFI | VVF_SDOC |
VZK | Veiculos | VZK_SERNFI | VZK_SDOC |
CNG | GESTÃO DE CONTRATOS | CNG_SERIE | CNG_SDOC |
CNI | GESTÃO DE CONTRATOS | CNI_SERIE | CNI_SDOC |
SDH | Materiais | DH_SERIE | DH_SDOC |
MDH | Loja | MDH_SERIE | MDH_SDOC |
CFF | Livros Fiscais | CFF_SERIE | CFF_SDOC |
CPP | localizado Mexico | CPP_SERIE | CPP_SDOC |
CPQ | localizado Mexico | CPQ_SERIE | CPQ_SDOC |
SEY | localizado | EY_SERIE | EY_SDOC |
GIC | Gestão de Transporte de Passageiros | GIC_SERNFS | GIC_SDOC |
Funcionamento da Função NewSerieNfd().
Importante!
Esta funcionalidade está disponível somente na versão 12.1.2510 e superiores.
Lembrando que esta função só terá efeito para as tabelas PADRAO do sistema, não podendo ser utilizada em tabelas CUSTOMIZADAS.
E as tabelas a serem utilizadas, deverão estar posicionadas no registro desejado, a função não faz nenhum tipo de posicionamento, somente retorna o conteúdo, tamanho, demais características, dos registros posicionados.
A função NewSerieNFd() é responsável por retornar o formato e estrutura do campo série, tendo em vista compatibilizar a função SerieNFID().
NewSerieNFd(cAlias as character ,nOpcao as numeric ,cCpoOrig as character ,cSerieGrv as character)
LISTA DE PARÂMETROS.
cAlias -> Alias da tabela do campo _SERIE
nOpcao -> 1 - Gravação (sempre gravará 2 campos o _SERIE e o correspondente _SDOC quando existir no dicionário de dados)
2 - Visualização (Retorna o conteúdo gravado nos campos _SERIE ou _SDOC
3 - Retorna o nome do campo série a ser utilizado em querys. Exemplo: F1_SERIE ou F1_SDOC
4 - Retorna a chave de pesquisa ID ou serie Real para utilizar em validações dbSeek() ANTES da gravação dos dados editados
5 - Retorna o Criavar do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
6 - Retorna o TamSX3 do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
7 - Retorna o RetTitle do campo _SDOC em casos onde o campos _SERIE já esteja com tamanho 14 para gravar o novo modelo
cCpoOrig -> String contendo o nome do campo da serie Original da tabela padrão Exemplo: F1_SERIE
cSerieGrv -> Variável Conteúdo da Serie do documento fiscal a ser gravada (OPCIONAL Usar somente com opção "1" - Gravação e "4" - Validação)
O retorno será de acordo com a opção enviada (nOpcao).
nOpcao = 1 -> Nil
nOpcao = 2 -> Conteudo do Campo Serie a ser Utilizado
nOpcao = 3 -> Nome do Campo Serie a ser utilizado
nOpcao = 4 -> Chave de Pesquisa ID ou Serie Real sempre encima do conteudo gravados nos campos _SERIE
nOpcao = 5 -> retorna o CriaVar do campo
nOpcao = 6 -> retorna o TamSX3 do campo
nOpcao = 7 -> retorna o X3Titulos do campo
Detalhamento de uso da função utilizando cada opção.
OPÇÃO 1 - GRAVAÇÃO - Uso em rotina de gravação do campo série utilizando a função SerieNfId(), substituir a gravação direta do campo F1_SERIE onde a função gravará os 2 campos F1_SERIE e F1_SDOC
A gravação direta do campo F1_SERIE é substituída pela utilização da função com a opção 1.
Ao passar os parâmetros necessários, a função se encarrega de montar o ID e realizar a gravação nos campos F1_SERIE e F1_SDOC simultaneamente
OPÇÃO 2 - VISUALIZAÇÃO – Rotina de geração de um arquivo magnético onde a serie do documento fiscal faz parte do layout da obrigação.
A opção 2 retorna o CONTEÚDO do campo que possui o valor da série REAL, ou seja a série de tamanho 3.
Esta opção pode ser utilizada em relatórios, arquivos magnéticos, ou em qualquer momento em que o conteúdo da série real tenha de ser apresentado.
OPÇÃO 3 – NOME DO CAMPO - Exemplo de substituição de Query em filtro de uma Pergunte com parâmetro Série utilizando a função SerieNfId() com a opção 3
O usuário digita a série real nos parâmetros MV_PAR14 e MV_PAR15, porém a busca deve ser feita no campo onde ela foi gravada, e a opção 3 retorna qual o campo contém a série real.
OPÇÃO 4 – NOVO ID ou SERIE – Retorna o novo ID ou a Serie Real do documento fiscal conforme o cenário utilizado pelo usuário através da passagem dos parâmetros necessários.
Utilizar esta opção quando for necessário montar um ID, para que não haja a necessidade de montar manualmente.
Exemplo: validar a inclusão de documento na tabela ANTES da gravação do mesmo.
OPÇÃO 5 – CRIAVAR – Em caso de necessidade de se obter o CriaVar() do campo que contenha a serie real do documento fiscal mesmo estando com o novo formato de gravação do ID de Controle ativo.
OPÇÃO 6 – TAMSX3()[1]- Exemplo de substituição da função TamSX3()[1] para obter o tamanho do campo Série real, utilizar somente quando houver a necessidade de obter o tamanho da serie real em qualquer cenário de configuração.
OPÇÃO 7 – RETTITLE - Exemplo para obter o LABEL do campo _SDOC estando o cliente utilizando o novo formato de gravação do Id de Controle ou não.
Funcionamento da Função RetTypeDoc().
Importante!
Esta funcionalidade está disponível somente na versão 12.1.2510 e superiores.
Lembrando que esta função só terá efeito para as tabelas PADRAO do sistema, não podendo ser utilizada em tabelas CUSTOMIZADAS.
E as tabelas a serem utilizadas, deverão estar posicionadas no registro desejado, a função não faz nenhum tipo de posicionamento, somente retorna o conteúdo, tamanho, demais características, dos registros posicionados.
A função RetTypeDoc() é responsável por retornar o tamanho do modelo ou da série do documento.
RetTypeDoc(cModelo as character, nTipo as numeric, lEmissor as logical)
LISTA DE PARÂMETROS.
cModelo → Indica o modelo do documento fiscal
nTipo → Indica qual tamanho será retornado
1 - Tamanho do campo documento
2 - Tamanho do campo série
3 - Código do modelo de documento
4 - Opções de comboBox
lEmissor → Indica se para a operação 1 ou 2 está gerando pelo sistema a numeração de nota fiscal
O retorno será de acordo com a opção enviada (nTipo).
Detalhamento de uso da função utilizando cada opção.
Tipo 1 - Tamanho documento
Onde:
Modelo = "SPED"
Tipo = 1
Emissor = .F.
Retorno será 9, o tamanho do documento.
Tipo 2 - Tamanho série
Onde:
Modelo = "NFCE"
Tipo = 2
Emissor = .F.
Retorno será 3, o tamanho da série utilizada.
Tipo 3 - Código do modelo
Onde:
Modelo = "SPED"
Tipo = 3
Emissor = .F.
Retorno será 55, o modelo do documento utilizado.
Tipo 4 - ComboBox
Onde:
Modelo = "NF"
Tipo = 4
Emissor = .F.
Retorno será a string abaixo:
"ACT=Autorização de Carregamento e Transporte;BPA=Bilhete de Passagem Aquaviário;BPE=Bilhete de passagem eletrônico - BP-e;BPECF=Bilhete de Passagem emitido por ECF;BPF=Bilhete de Passagem Ferroviário;BPNB=Bilhete de Passagem e Nota de Bagagem;BPR=Bilhete de passagem rodoviário;BRPA=Bilhete/Recibo do Passageiro;CA=Conh. Aéreo;CF=Cupon Fiscal;CFECF=Cupom Fiscal emitido por ECF;CFEECF=Cupom Fiscal Eletrônico CF-e-ECF;CTA=Conh.Transp. Aquaviário de Cargas;CTCA=Conh.Transp. Cargas Avulso;CTE=Conh.Transp. Eletrônico;CTEOS=Conh.Transp. Eletrônico - CT-e OS;CTF=Conh.Transp.Ferroviario de Cargas;CTM=Conh.Transp.Multimodal;CTR=Conh.Transp.Rodoviario de Cargas;DT=Despacho de Transporte;ECF=Cupon Fiscal gerado pelo SIGALOJA;GNRE=GNRE;MC=Manifesto de Carga;NF=Nota Fiscal;NF3E=NF Energia Eletrica Eletrônica;NFA=NF Avulsa;NFCE=NF Eletrônica Consumidor Final NFC-e;NFCEE=Nota Fiscal/Conta de Energia Elétrica;NFCF=NF de venda a Consumidor Final;NFCFG=NF/conta de fornecimento de gas;NFCOM=NF Fatura de Serviços de Comunicação;NFE=NF Entrada;NFFA=NF/Conta de fornecimento de Água;NFP=NF de Produtor;NFSC=NF Servico de Comunicacao;NFST=NF Servico de Transporte;NFTFC=NF Transp.Ferroviário de Cargas;NTSC=NF Servico de Comunicacao;NTST=NF Servico de Telecomunicacoes;OCC=Ordem de Coleta de Carga;RMD=Resumo Movimento Diario;SATCE=Cupom Fiscal Eletrônico - SAT;SPED=NF Eletrônica do SEFAZ.;3A=NF de Servico Simplificada;NFPS=NF Prestacao de Servico;NFS=NF Servico;NFSE=NF Servico Eletrônica;RPS=Recibo Provisorio de Servicos"