Histórico da Página
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Seguimento: | Serviços |
Módulo | Fiscal |
02. DESCRIÇÃO
Ponto de entrada utilizado para a geração da DIMESC para o registro tipo 48 onde pode ser alterado os campos de código de município, Tipo e o valor, estamos abrindo a possibilidade do usuário conseguir alterar essas informações para que seja possível atender algumas movimentações especificas como a de energia elétrica.
...
Aviso | ||
---|---|---|
| ||
A utilização desse ponto de entrada é de responsabilidade exclusiva do cliente, pois terá impacto direto na escrituração das notas e dos livros fiscais. Utilize com cautela! |
03. Especificação
Para a geração do registro tipo 48 é necessário o preenchimento dos CFOPS nos seguintes parâmetros:
...
Sendo que para uso do ponto de entrada os cfops devem ser preenchidos em qualquer um dos parâmetros, para os registros sejam classificados para serem inseridos para a composição do registro tipo 48.
Parâmetros para a Função:
Os parâmetros são passados no Array Paramixb, é passado como uma matriz sendo o primeiro campo um descritivo para que seja possível o entendimento da informação que está sendo passado e o segundo campo é passado o valor, os valores são baseados na tabela SF3 onde buscamos as informações para montar o registro do tipo 48.
...
Obs.: Para maiores informações sobre o campo poderá ser encontrado em documentações anteriores sobre a tabela “Livro fiscal por Item da Nf.”, com exceção dos campos Tipo Reg e código de Munícipio o conteúdo desses campos é referente ao tipo que está vinculado ao CFPO que foi cadastrado em um dos parâmetros para a geração do registro tipo 48 e o código do munícipio é decorrente do cadastro de clientes ou fornecedor que foi utilizado no documento fiscal.
Retorno:
O ponto de entrada deverá retornar uma variável do tipo array com o tamanho de 3 posições, sendo o primeiro campo deverá ser do tipo caractere e retornar o código de município, o segundo deverá ser o tipo de registro deve ser do tipo caractere, esse campo deve compor o tipo do registro 48. O terceiro campo deve ser o valor, deve ser do tipo caractere e caso exista mais de um registro com o mesmo código de município e tipo de registro o sistema vai somar os valores que serão passados, abaixo segue alguns exemplos do conteúdo que devem ser retornados.
...
Obs.: Caso o array não possua o tamanho de 3 posições o sistema vai ignorar as informações do ponto de entrada, caso o tipo do conteúdo do array não seja respeitado esse conteúdo será ignorado.
04. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
#Include "PROTHEUS.CH" User Function DMSC48TP() Local aRet := {} //Retorno do ponto de entrada Local cMunic := "" Local cTipo := "" Local nValor := 0 Local aParam := ParamIxb Do Case Case AllTrim(aParam[8][2]) == '1251' cMunic := "51801" cTipo := "013" //energia elétrica adquirida de terceiros para comercialização nValor := aParam[11][2] Case AllTrim(aParam[8][2]) == "5102" cMunic := "50308" cTipo := "012" //energia elétrica adquirida de terceiros e comercializada no mês nValor := aParam[11][2] Case AllTrim(aParam[8][2]) == "1201" cMunic := aParam[14][2] cTipo := aParam[13][2] nValor := Round(aParam[11][2],2) // Caso não seja nenhum desses CFOPS Arredondo o valor Case !AllTrim(aParam[8][2]) $ "5102|1201|1251" cMunic := Nil cTipo := Nil nValor := Nil // Caso desejar manter os valores do padrão, sem tratamento do ponto de entrada EndCase AADD( aRet, cMunic ) AADD( aRet, cTipo ) AADD( aRet, nValor ) Return aRet |
05. DEMAIS INFORMAÇÕES
Não há
06. ASSUNTOS RELACIONADOS
Não há.
HTML |
---|
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |
...