01. DATOS GENERALES

Línea de producto:Microsiga Protheus®
Segmento:Servicios
Módulo:Fiscal
Programa:SPEDFISCAL

02. VISIÓN GENERAL

Este punto de entrada permite la modificación de los siguientes campos del registro C100 del SPED IPI/ICMS:

  • 13 - IND_PGTO (Indicador del tipo de pago).
  • 17 - IND_FRT (Indicador del tipo de flete) y/o
  • 03 - IND_EMIT (Indicador del emisor del documento fiscal).

03. ESPECIFICACIÓN

Parámetros del punto de entrada

Nombre

Tipo

Descripción

Obligatorio

PARAMIXBArray of Record

[1] = Alias de la tabla temporal de procesamiento del SPED

[2] = Array con los datos del documento final

[3] = Array con los datos para grabación del registro C100 del Sped Fiscal.

X

Devolución

Nombre

Tipo

Descripción

aRetArray

Array con la información

aRet [01] = Indicación de pago

aRet [02] = Indicador del tipo de flete

aRet [03] = Indicador del emisor del documento fiscal

04. EJEMPLO DE UTILIZACIÓN

Ejemplo 1: Al modificar solamente los campos 13 - IND_PGTO y17 - IND_FRT

SPDFIS05
#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   := ""
    //contenido del array del documento fiscal                    
    //01-docto fiscal                   
    //02-serie fact                   
    //03-cliente/proveedor                  
    //04-código tienda                  
    //05-fecha docto                 
    //06-fecha emision                
    //07-fecha anulacion                
    //08-formulario propio                
    //09-CFOP                
    //10-vacio                
    //11-alicuota ICMS               
    //12-numero PDV               
    //13-base ICMS               
    //14-alicuota ICMS                
    //15-valor ICMS               
    //16-valor exento ICMS               
    //17-otros ICMS               
    //18-ICMS retenido ST               
    //19-Cuenta contable              
    //20-tipo asto              
    //21-tipo flete              
    //22-sucursal              
    //23-estado              
    //24-observacion             
    //25-clave NFE             
    //26-tipo emision             
    //27-prefijo             
    //28-factura de credito            
    //29-comprobante fiscal            
    //30-Empresa de transportes            
    //31-peso bruto           
    //32-peso neto           
    //33-vehiculo 1           
    //34-vehiculo 2          
    //35-vehiculo 3          
    //36-optante por el simples nacional          
    //37-regimen Paraiba          
    //38-Fact original          
    //39-serie fact original  	

    If (cAlias)->FT_NFISCAL == "000000001"
        cIndpagto := "0"
        cIndfrt   := "0"
    Endif

Return {cIndpagto,cIndfrt}


Ejemplo 2: Al modificar solamente el campo 03 - IND_EMIT

SPDFIS05
#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]) //se mantiene el valor informado para el campo 13-IND_PGTO
    aAdd(aRet, aC100[nPos][17]) //se mantiene el valor informado para el campo 17-IND_FRT

    If aC100[nPos][6] == "08" .And.; // 06 - COD_SIT
        aDoc[3] == "SP0001" .And.; // Cliente
        aDoc[4] == "01" .And.; // Tienda
        AllTrim(aDoc[9]) == "5101" // CFOP        
        aAdd(aRet, "1") //modifica el valor que se presentará en el campo 03-IND_EMIT
    Endif

Return aRet

05. OTRAS INFORMACIONES

No hay.