Produto:
| Microsiga Protheus |
Versões:
|
11
|
Ocorrência:
|
Parâmetros que definem os tipos de Natureza
|
Ambiente:
|
SIGALOJA
|
Passo a passo:
|
Os parâmetros definem o tipo de Natureza são:
MV_NATDINH // Natureza DINHEIRO
MV_NATCHEQ // Natureza CHEQUE
MV_NATCART // Natureza CARTAO DE CREDITO
MV_NATTEF // Natureza CARTAO DE DEBITO AUTOMATICO
MV_NATFIN // Natureza FINANCIADO
MV_NATVALE // Natureza VALES
MV_NATCONV // Natureza CONVENIO
MV_NATOUTR // Natureza OUTRAS
MV_NATCRED // Natureza CREDITO
MV_NATNCC // Natureza NOTA DE CREDITO
MV_NATRECE // Natureza RECEBIMENTO
MV_NATDEV // Natureza DEV./TROCA
MV_NATTROC // Natureza Troco
|
terça-feira, 29 de maio de 2018
Quais são os parâmetros que definem o tipo de Natureza?
Como controlar a NCC (Nota de crédito ao consumidor) por data de validade?
Produto:
|
Microsiga Protheus
|
Versões:
|
11 e 12
|
Ocorrência:
|
Como controlar a NCC(Nota de crédito ao consumidor) por data de validade?
|
Ambiente:
|
Controle de Loja, Frente de Loja
|
Passo a passo:
|
Para controlar a NCC por data de validade configure os parâmetros: MV_LJDTNCC, com a quantidade de dias que será somada à database para validação do vencimento e MV_LJVLNCC, com conteúdo igual a .T.
|
Observações:
|
Função do parâmetro MV_LJTITGR no Recebimento de Títulos.
Produto:
| Microsiga Protheus |
Versões:
|
P11
|
Passo a passo:
|
Ao realizar o Recebimento de um titulo o prefixo do título gerado (E1_PREFIXO) no “Contas a Receber” é gravado com o conteúdo do Parâmetro MV_LJTITGR.
Nome: MV_LJTITGR
Tipo: Caracter
Valor Padrão: REC
Descrição: Prefixo do Título Gerado
|
Função do parâmetro MV_LJTITGR no Recebimento de Títulos.
Produto:
| Microsiga Protheus |
Versões:
|
P11
|
Passo a passo:
|
Ao realizar o Recebimento de um titulo o prefixo do título gerado (E1_PREFIXO) no “Contas a Receber” é gravado com o conteúdo do Parâmetro MV_LJTITGR.
Nome: MV_LJTITGR
Tipo: Caracter
Valor Padrão: REC
Descrição: Prefixo do Título Gerado
|
Como Realizar o Recebimento de Títulos em Contingência (OffLine) - TOTVSPDV
Produto:
|
Microsiga Protheus
|
Versões:
| Release 11 e Superior |
Ocorrência:
|
Recebimento de Títulos em Contingência (OffLine) TotvsPdv
|
Ambiente:
|
TOTVSPDV
|
Passo a passo:
|
Premissas
Configurar os Parâmetros de Recebimento contidos nos Links abaixo em sua Retaguarda e TotvsPdv:
Após realizar as configurações acima, o sistema estará preparado para realizar o Recebimento de Títulos em Contingência (OffLine) no TotvsPdv.
Cenário 1 - Recebimento OffLine informando os dados do titulo do Totvspdv.
Após realizar o recebimento, quando a conexão for restabelecida, os dados serão enviados para o BackOffice (Retaguarda) e a mesma realizará a baixa do titulo.
Cenário 2 - Recebimento OffLine informando o CPF / CNPJ do cliente e realizando o pagamento em valor maior.
Neste caso, quando o recebimento for enviado para o BackOffice, será localizado o titulo com o vencimento mais antigo para baixa. Caso o valor do recebimento seja maior que o valor do titulo, será gerado uma NCC para o cliente com a diferença de valores.
Cenário 3 - Recebimento OffLine informando o CPF / CNPJ do cliente sem localização de títulos.
Neste caso, quando o recebimento for enviado para o BackOffice, será gerado uma NCC para o cliente com a diferença de valores.
Cenário 4 - Recebimento OffLine informando o CPF / CNPJ do cliente sem o mesmo estar cadastrado e sem localização de títulos.
Neste caso, quando o recebimento for enviado para o BackOffice, será apresentado a mensagem abaixo no console:
[Recebimento_Titulo] Fim da Baixa - cRet -> C ( 67) [Não localizado títulos nem localizado o cliente CPF[81898955086 ]]
14:41:48 [7296] Function STDROPTITLES Line 11030
[Recebimento_Titulo] Fim da Baixa - Requisicao: -> C ( 30) [RECD MG 01001CX120170123144047]
|
Observações:
|
Os fontes abaixo deverão estar com a mesma data ou superior em seu ambiente.
LOJA701C.PRW 03/02/2017 14:44:40 14
LOJXREC.PRW 03/02/2017 17:20:55 14 STBPAYMENT.PRW 26/01/2017 14:35:58 14 STBREMOTEEXECUTE.PRW 03/02/2017 17:22:48 14 STDRECEIPTTITLE.PRW 26/01/2017 14:39:53 14 STICONTTIT.PRW 30/01/2017 11:45:54 14 STIRECECON.PRW 06/02/2017 09:41:17 14 STIRECESEL.PRW 03/02/2017 17:31:14 14 STWRECEIPTTITLE.PRW 03/02/2017 17:24:07 14 |
Carga automática sequencia da carga incremental
- O fonte loja1159.prw deve estar com data igual ou superior a 12/05/2016 no PDV;
- O parâmetro MV_LJVEROD deve existir no dicionario de dados do PDV e devera estar desabilitado (MV_LJVEROD = .F.)
quinta-feira, 15 de março de 2018
MP - Automatizar a geração envio e recebimento da carga no TOTVSPDV
alizado em
Dúvida
Automatizar a geração de envio e recebimento da carga no TOTVSPDV?
Ambiente
Microsiga Protheus - SIGFRT (TOTVSPDV) - Aplicável a partir da versão 11.80
Solução
1. Implementada a geração da carga no ambiente retaguarda via JOB e a importação e processamento da carga via JOB no ambiente TOTVSPDV.
2. A rotina via JOB é executada somente após a geração de uma carga completa de forma manual nos PDVS.
3. É pré-requisito que a carga de forma manual esteja totalmente funcional antes da ativação da carga automática via JOB.
4. Após a aplicação do pacote é necessário os seguintes procedimentos de configuração.
6. Para versão 11 executar o programa de update UPDLO162 para criação da tabela de agendamento da JOB.
7. O update vai gerar a tabela MH1. Esta tabela é alimentada de forma automática após a inclusão de uma carga incremental através do wizard de configuração de nova carga no ambiente retaguarda.
8. No ambiente retaguarda configurar o JOB no appserver.ini conforme exemplo abaixo:
[STFLoadRet]
Main=STFLoadRet
Environment=< Ambiente> - Ambiente Local Retaguarda
nParms=5
Parm1=<cRetEmp> - Empresa da Retaguarda
Parm2=<cRetFils > - Filiais da Retaguarda podendo ser separados por ponto e virgula para várias filiais.
Parm3=<300000> - Tempo para repetição da execução do Job LOJA1156 Job em milissegundos - No exemplo representa 5 minutos
Parm4=<nIpType> - 1=Dinâmico (Ip Atualizado automaticamente); 2=Estático (O Ip permanece com a configuração Inicial)
Parm5=<cLoadDel > - Limite para iniciar o processo de exclusao das cargas processadas em todos os pdvs
[OnStart]
Jobs=STFLoadRet
9. No ambiente TOTVSPDV configurar o JOB no appserver.ini conforme exemplo abaixo:
[STFLoadPdv]
Main=STFLoadPdv
Environment=< Ambiente> - Ambiente Local PDV
nParms=7
Parm1=<cPdvEmp> - Empresa do Pdv
Parm2=<cPdvFil> - Filial do Pdv
Parm3=<cRetAmb> - Ambiente da Retaguarda
Parm4=<cRetEmp> - Empresa da Retaguarda
Parm5=<cRetFil > - Filial da Retaguarda
Parm6=<300000> - Tempo para repetição da execução do Job LOJA1157Job em milissegundos - No exemplo representa 5 minutos
Parm7=<nIpType> - 1=Dinâmico (Ip Atualizado automaticamente); 2=Estático (O Ip permanece com a configuração Inicial)
[OnStart]
Jobs=STFLoadPdv
fonte:
https://centraldeatendimento.totvs.com/hc/pt-br/articles/115012257568-MP-Automatizar-a-geração-envio-e-recebimento-da-carga-no-TOTVSPDVComo analisar error.log protheus
Bloco 01: Informações Gerais:
- Informações de Build;
- Nome do usuário e do computador onde ocorreu o erro;
- Data e Hora da geração do erro;
- Tipo do erro;
- Função onde aconteceu o erro;
- Nome do Fonte onde está localizada a função que gerou o erro;
- Data e Hora de compilação do fonte;
- Linha do fonte onde ocorreu o erro.
Bloco 02: Informações AppServer:
- Informações de Build;
- Plataforma do AppServer;
- Nome do Ambiente;
- Número da transação do AppServer (thread);
- Número de transação do Banco de dados (dbthread);
- Tipo de Banco de Dados utilizado;
- Tipo dos Local Files;
- Código da Empresa/Filia
- Usuário logado;
- Nome do Módulo.
- Objeto a qual pertence a função que está gerando o erro.
Bloco 03: Pilha de Chamada das Funções:
- Nome da Função;
- Nome do Fonte;
- Data e Hora compilação;
- Linha de execução do fonte.
Bloco 04: Variáveis em uso pelas Funções da Pilha de Chamada:
- Parâmetros dos objetos;
- Variáveis Públicas;
- Variáveis Locais;
- Variáveis Privates.
Bloco 05: Arquivos em Uso – Local Files e Tabelas:
- Nome do Arquivo;
- Tipo do RDD (Replaceable Database Driver);
- Alias;
- Filtro do Arquivo;
- Número do Registro (Recno);
- Total de Registros;
- Ordem do Arquivo (Índice selecionado);
- Campos dos registros posicionados;
- Dados dos Registros informados.
Apenas a geração de um único error.log, pode-se gerar milhares de linhas, isto porque, o Protheus trás o maior número de informações possíveis para análise.
Para cada função executada, o Protheus trás as respectivas variáveis em uso por função, além de trazer todos os Local Files, Tabelas e seus respectivos registros em uso, no momento em que é gerada a exceção de erro. Por isso, é gerada tantas linhas no arquivo de log.
A primeira vez que temos que analisar o error.log do Protheus, podemos ficar um pouco “assustado”, devido à enorme quantidade de informações geradas. Porém com o tempo, e sabendo “ler” o arquivo de erro.log corretamente, logo nos acostumamos.
Nas imagens abaixo, fazemos uma alusão da separação das informações do log por “Blocos”, conforme descrito acima:
Bloco 01 – Informações Gerais
Imagem 01 – Bloco 01 error.log – Smart Siga
Bloco 02 – Informações AppServer
Imagem 02 – Bloco 02 error.log – Smart Siga
Bloco 03 – Pilha de Chamada das Funções
Imagem 03 – Bloco 03 error.log – Smart Siga
Bloco 04 – Variáveis em uso pelas Funções da Pilha de Chamada
Imagem 04 – Bloco 02 error.log – Smart Siga
Bloco 05 – Arquivos em Uso – Local Files e Tabelas
Imagem 05 – Bloco 05 error.log – Smart Siga
No nosso exemplo, foi executada a função MATR260 (Relatório de Estoque Analítico), a qual chamou a função REPORTPRINT, que está comparando variáveis de tipos diferentes, gerando o error.log de “type mismatch on compare”.
Analisando as imagens, podemos verificar que o erro foi na linha 259, do fonte MATR260, conforme descrito no Bloco 01.
Depois, no Bloco 02, temos as informações referentes a Build, e as configurações do AppSever.
No Bloco 03 temos a Pilha de Chamadas de funções, a partir da função REPORTPRINT.
No Bloco 04, temos todas as variáveis em uso, separadas por função, da Pilha de Execução.
E para finalizar, no Bloco 05, temos todos os Local Files, Tabelas, e seus receptivos registros, os quais a função MATR260 estava posicionado e/ou em uso, no momento que ocorre o erro.
Esse tipo de erro “type mismatch on compare”, poderia ter sido, causado por um registro e/ou parâmetro cadastrado de forma errado, por exemplo, o qual deveria ser do tipo “numérico” e estava cadastrado com o tipo “string”.
Abaixo, listamos os erros mais comuns gerados no Protheus:
Array out of Bounds
Esse tipo de erro, ocorre quando a função tenta acessar diretamente um elemento de uma variável do tipo Array, e tal elemento não existe.
Array Index out of Bounds
Similar ao erro “Array out of Bounds”, tal exceção é gerada quando tentamos acessar uma posição de uma variável do tipo Array, que não existe.
Alias Already in Use
Esse erro ocorre, quando a função tenta abrir uma Tabela ou uma Query, que já está em uso na thread atual.
Alias Does Not Exist
Quando a função faz referência a uma Alias, e esse Alias não está “aberto” no momento da chamada, é retornado tal erro.
Argument X Error, Expected Z->Y, Function XPTO
Quando a função espera um parâmetro por exemplo do tipo “string” e é passado um parâmetro do tipo “numérico”, tal exceção de erro é gerada.
Type Mismatch on Compare On XPTO
Esse erro ocorre, quando a função tenta comparar, por exemplo, uma variável do tipo “string” com uma variável do tipo “numérica”, isto é, quando se tenta comprar variáveis com tipos de dados (escopos) diferentes.
Cannot Insert Duplicate Key
Essa exceção de erro, ocorre quando se tenta, incluir um registro “duplicado”, isto é, quando a função tenta incluir um registro exatamente igual, a outro registro já existente no Banco de Dados.
terça-feira, 6 de março de 2018
Como gerar o registro de inventário no bloco H?
Microsiga Protheus
Versões:
10 e 11
Como gerar o registro de inventário no bloco H?
Passo a passo:
Este registro tem como origem um arquivo gerado através do relatório Registro de Inventário Modelo P7(MATR460), disponível no módulo Livros Fiscais (SIGAFIS).
Para gerar o relatório é necessário configurar os parâmetros Gerar Arquivo de Exportação com a opção Sim e informar o nome do arquivo gerado no parâmetro Arquivo De Exportação do SPED Fiscal.
Com esta configuração será gerado um arquivo de dados na pasta SYSTEM.
Uma vez gerado este arquivo, é possível gerar o SPED Fiscal configurando os seguintes parâmetros na primeira tela Wizard :
Gera inventário: Informe a opção Sim.
Data de Fechamento: Configure conforme os parâmetros do relatório
Os parâmetros da ultima tela wizard são referentes a inventário, porém o parâmetro a seguir é obrigatório:
Nome do arquivo gerado no relatório de inventário modelo P7: Preencha com o nome informado no parâmetro Arquivo De Exportação do SPED Fiscal do relatório.
Versões:
P11 e P12
SPEDFISCAL - Bloco H InventárioPasso a passo:
Bloco H – Inventário Físico e Controle de Estoque
Em virtude da instabilidade da versão atual do programa de extração do bloco H, tomamos a decisão de voltar ao método antigo de processamento, apoiado no arquivo de trabalho gerado pelo relatório de Registro de Inventário Mod. P7 (MATR460). Este método será mantido até a completa estabilização da versão atual do programa extrator.
Desta forma, será necessária a emissão do relatório MATR460 (configurado em seus parâmetros para gerar o arquivo) antes da execução da rotina SPEDFISCAL. Não haverá parametrização no programa SPEDFISCAL quanto a leitura do arquivo gerado pelo MATR460 pois este lerá os parâmetros do relatório para obtenção do arquivo.
Os registros contidos neste bloco não são de apresentação obrigatória. Por isso foi disponibilizado no wizard da rotina uma pergunta, deixando a critério do usuário a geração ou não dessas informações. Os registros somente são gerados se a pergunta Gera Inventário estiver preenchida como Sim e o Data de fechamento do estoque igual data de fechamento emitido no relatório MATR460.
Importante
Todas as informações do Bloco H são geradas por meio do arquivo gerado pelo Reg. Invent. Mod. 7 (MATR460) criado na pasta System, este arquivo é um espelho do relatório com saldo em estoque, saldo de terceiros, saldo em terceiros e saldo em processo.
Pacotes de Correção/Atualização (Bloco H e K)
Atenção: Para geração dos blocos H e K e essencial a atualização dos fontes MATR460, MATXSPED e SPEDXFUN através da patch de programas abaixo:
BLOCO H e K - Pacote Essencial para geração do bloco
https://suporte.totvs.com/portal/p/10098/download?e=662710
(warning) Atenção: Aviso da Receita sobre problemas no validador (PVA) para o Bloco K
http://sped.rfb.gov.br/pagina/show/2522
Registro tipo H001 - Abertura do bloco H
Contém a identificação do registro e um campo informando se há movimentos para este bloco.
Registro tipo H005 - Totais do inventário
Este registro contém os totais do inventário.
Registro tipo H010 - Inventário
Este registro apresenta um resumo do inventário disponível, informações são obtidas do arquivo gerado pelo relatório Reg. Invent. Mod. 7 (MATR460). Segue processo e validação para geração do registro:
No momento da geração do Relatório Reg. Invent. Mod. 7 (MATR460), configurar as perguntas da seguinte maneira:
Gerar Exp. SPED FISCAL = SIM // Para gerar DBF na Pasta System, para ser levado para SPED FISCAL no Bloco H.
Data de fechamento de estoque = 31/12/2017//Data do arquivo de Inventario, de quando foi fechado.
Arquivo Exp. Spedfiscal = 20171231 //Informe o nome do arquivo com mesma data a ser informado na Data de fechamento do estoque - Informe a data em que foi feito o fechamento do estoque, caso queira gerar os registros de inventário.
IMPORTANTE :
Os campos abaixo, devem possuir o mesmos dados ou seja o nome do arquivo " Arquivo Exp. Spedfiscal " vai ser a data de fechamento de estoque, no campo Arquivo Exp. Sped Fiscal, o formato é (AAAAMMDD).
Exemplo:
E no momento da geração do arquivo magnético SPEDFISCAL, o fonte está realizando seguinte validação nas perguntas de WIZARD:
Gera Inventário = Sim// Selecione se deseja gerar os registros de inventário (bloco H).
Data de fechamento do estoque= Informe a data em que foi feito o fechamento do estoque, caso queira gerar os registros de inventário. Onde fonte irá buscar na sua pasta /SYSTEM/ .DBF ou .DTC com a mesma data gerado pelo Relatório Reg. Invent. Mod. 7 (MATR460).
Motivo do Inventário - Selecione qual o motivo do inventário:
01 – No final no período;
Importante
A partir do período de Janeiro de 2015, será gerado o novo campo 11-VL_ITEM_IR no registro H010. Este novo campo será gerado baseando-se no valor de custo médio, que é o tipo de custo processado pelo sistema .
Incluído ponto de entrada SPEDALTH para processamento do registro H010 SPED FISCAL.
http://tdn.totvs.com/x/l6Q4E
Ponto de entrada para alteração conta contábil:
SPDFIS07 - Conta Contábil registro H010
Segue vídeo evidenciando o processo de geração do Registro H010 do Arquivo magnético SPEDFISCAL:
P12.1.17_SPEDFISCAL_H010_FDL.avi.zip
Registro tipo H020 - Informação complementar do Inventário
Para geração deste registro, já existe uma FAQ com o processo e validação:
ARQ0013_H020_SPED_FISCAL
Preencha o conteúdo deste registro para complementar as informações do inventário, quando o campo MOT_INV do registro H005 for de 02 a 05. Onde essas informação é obtida na WIZARD do SPEDFISCAL:
Motivo do Inventário - Selecione qual o motivo do inventário:
02 – Na mudança de forma de tributação da mercadoria (ICMS);
03 – Na solicitação da baixa cadastral, paralisação temporária e outras situações;
04 – Na alteração de regime de pagamento – Condição do contribuinte;
05 – Por determinação dos fiscos.
Importante
Caso selecione a opção por 02 (mudança da forma de tributação da mercadoria de ICMS) somente são gerados os registros para os produtos que sofram alteração da tributação de ICMS. Para identificação desses produtos está disponível o campo na tabela SB5 (B5_ALTTRIB) para informar se houve ou não alteração da tributação do ICMS.
Os produtos com quantidade zerada são gerados no SPEDFISCAL e também se forem listados no relatório de inventário P7.
Registro tipo H990 - Encerramento do bloco H
Contém a identificação do registro e um campo informando a quantidade de registros do bloco H.
http://tdn.totvs.com/display/PROT/FIS0005_SPED_FISCAL
sexta-feira, 2 de março de 2018
rodapé MV_LJFISMS
MV_LJFISMS , neste parâmetro é possível customizar o rodapé incluindo informações. Segue abaixo um exemplo do preenchimento do parâmetro:
Segue abaixo uma dica de como usar o parâmetro MV_LJFISMS sem criar um rdmake a ser compilado.
&("Filial: "+SL1->L1_FILIAL+CHR(10)+SA3->A3_COD+" - "+SA3->A3_NOME+CHR(10)+SA6->A6_COD+" - "+SA6->A6_NOME+CHR(10)+PADC("Obrigado! Volte Sempre!",40))
No código acima é impresso no rodapé do cupom fiscal:
Filial: (código da filial)
Código do Vendedor – Nome Vendedor
Código do Caixa – Nome do Caixa
Obrigado! Volte Sempre!
Segue abaixo uma dica de como usar o parâmetro MV_LJFISMS sem criar um rdmake a ser compilado.
&("Filial: "+SL1->L1_FILIAL+CHR(10)+SA3->A3_COD+" - "+SA3->A3_NOME+CHR(10)+SA6->A6_COD+" - "+SA6->A6_NOME+CHR(10)+PADC("Obrigado! Volte Sempre!",40))
No código acima é impresso no rodapé do cupom fiscal:
Filial: (código da filial)
Código do Vendedor – Nome Vendedor
Código do Caixa – Nome do Caixa
Obrigado! Volte Sempre!
quinta-feira, 1 de março de 2018
MV_LJALTAP - Características do Parâmetro
Linha de Produto:
|
Microsiga Protheus
|
Segmento:
|
Varejo
|
Módulos:
|
SIGALOJA
|
Definição
Parâmetro que permite a alteração do aPgtos após escolha da condição de pagamento na finalização da venda.
Procedimento para Configuração
No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Crie/configure o parâmetro a seguir:
Nome da Variável
|
MV_LJALTAP
|
Tipo
|
Lógico
|
Descrição
|
Permite a alteração do aPgtos após escolha da condição de pagamento na finalização da venda.;
Quando estiver como .F. o aPgtos estará bloqueado.
|
Valor Padrão
|
.F.
|
Assinar:
Postagens (Atom)