Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Fiscal |
Programa: | SPEDFISCAL |
Este ponto de entrada possibilita a alteração dos seguintes campos do registro C100 do SPED IPI/ICMS:
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
PARAMIXB | Array of Record | [1] = Alias da tabela temporária de processamento do SPED [2] = Array contendo dados do documento final [3] = Array contendo dados para gravação do registro C100 do Sped Fiscal. | X |
Nome | Tipo | Descrição |
---|---|---|
aRet | Array | Array com as informações aRet [01] = Indicação de pagamento aRet [02] = Indicador do tipo do frete aRet [03] = Indicador do emitente do documento fiscal |
Exemplo 1: Alterando apenas os campos 13 - IND_PGTO e 17 - IND_FRT
#Include "Protheus.ch" #Include "TopConn.ch" User Function SPDFIS05() Local cAlias := ParamixB[1] Local aDoc := ParamixB[2] Local aC100 := ParamixB[3] Local cIndpagto := "" Local cIndfrt := "" //conteudo do array do documento fiscal //01-docto fiscal //02-serie nf //03-cliente/fornecedor //04-codigo loja //05-data docto //06-data emissao //07-data cancelamento //08-formulario proprio //09-CFOP //10-vazio //11-aliquota ICMS //12-numero PDV //13-base ICMS //14-aliquota ICMS //15-valor ICMS //16-valor isento ICMS //17-outros ICMS //18-ICMS retido ST //19-conta contabil //20-tipo lancto //21-tipo frete //22-filial //23-estado //24-observacao //25-chave NFE //26-tipo emissao //27-prefixo //28-duplicata //29-cupom fiscal //30-transportadora //31-peso bruto //32-peso liquido //33-veiculo 1 //34-veiculo 2 //35-veiculo 3 //36-optante pelo simples nacional //37-regime Paraiba //38-NF original //39-serie nf original If (cAlias)->FT_NFISCAL == "000000001" cIndpagto := "0" cIndfrt := "0" Endif Return {cIndpagto,cIndfrt} |
Exemplo 2: Alterando apenas o campo 03 - IND_EMIT
#Include "Protheus.ch" #Include "TopConn.ch" User Function SPDFIS05() //Local cAlias := ParamixB[1] Local aDoc := ParamixB[2] Local aC100 := ParamixB[3] Local aRet := {} Local nPos := Len(aC100) aAdd(aRet, aC100[nPos][13]) //mantém-se o valor já informado para o campo 13-IND_PGTO aAdd(aRet, aC100[nPos][17]) //mantém-se o valor já informado para o campo 17-IND_FRT If aC100[nPos][6] == "08" .And.; // 06 - COD_SIT aDoc[3] == "SP0001" .And.; // Cliente aDoc[4] == "01" .And.; // Loja AllTrim(aDoc[9]) == "5101" // CFOP aAdd(aRet, "1") //altera o valor que será apresentado no campo 03-IND_EMIT Endif Return aRet |
Não há.