Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Fiscal |
Ponto de Entrada para inserir registros F200/F205/F210 referentes a atividade imobiliária do SPED Contribuições.
Retorno:
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
aRetPE [1] = Registro F200 [3] = Registro F205 [2] = Registro F210 | Array | Retorna registros F200/F205/F210 | Sim |
No retorno do array F200, na última posição do array F200 informe se o item se enquadra no regime cumulativo 0 ou não cumulativo 1 para geração do bloco M. Para não gerar os registros F500/F525 basta deixar os campos Apur. PIS (ED_APURPIS) e Apur. COFINS (ED_APURCOF) sem conteúdo. |
User Function SPDPCIMOB() Local aRetF200 := {} Local aRetF205 := {} Local aRetF210 := {} Local nPosF200 := 0 Local nPosF205 := 0 Local nPosF210 := 0 Local nX := 0 //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³REGISTRO F200 (IMPORTANTE) ³ //³O ultimo campo NAO pertece ao layout do registro F200 porem eh ³ //³essencial para correta geracao do bloco M no arquivo magnetico ³ //³REGISTRO F205 (IMPORTANTE) ³ //³O primeiro campo NAO pertence ao layout do registro F205 porem eh ³ //³essencial para correta geracao do arquivo magnetico ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //REGISTRO F210 (IMPORTANTE) ³ //³O primeiro campo NAO pertence ao layout do registro F210 porem eh ³ //³essencial para correta geracao do arquivo magnetico ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³Neste exemplo sera gerado dois registros F200 e um F205/F210 para³ //³cada F200 gerado ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³REGISTRO F200 - Sera gerado 1 para cada F010 do SpedPisCofins ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ For nX:=1 To 2 Aadd(aRetF200,{}) nPosF200 := Len(aRetF200) If nX == 1 Aadd(aRetF200[nPosF200],"F200") //01-REG Aadd(aRetF200[nPosF200],"01") //02-IND_OPER Aadd(aRetF200[nPosF200],"01") //03-UNID_IMOB Aadd(aRetF200[nPosF200],"TOTVS") //04-IDENT_EMP Aadd(aRetF200[nPosF200],"Descricao Resumida Totvs") //05-DESC_UNID_IMOB Aadd(aRetF200[nPosF200],"123456789") //06-NUM_CONT Aadd(aRetF200[nPosF200],"36403560808") //07-CPF_CNPJ_ADQU Aadd(aRetF200[nPosF200],"13062018") //08-DT_OPER Aadd(aRetF200[nPosF200],50000.00) //09-VL_TOT_VEND Aadd(aRetF200[nPosF200],20000.00) //10-VL_REC_ACUM Aadd(aRetF200[nPosF200],10000.00) //11-VL_TOT_REC Aadd(aRetF200[nPosF200],"01") //12-CST_PIS Aadd(aRetF200[nPosF200],50000.00) //13-VL_BC_PIS Aadd(aRetF200[nPosF200],0.65) //14-ALIQ_PIS Aadd(aRetF200[nPosF200],325.00) //15-VL_PIS Aadd(aRetF200[nPosF200],"01") //16-CST_COFINS Aadd(aRetF200[nPosF200],50000.00) //17-VL_BC_COFINS Aadd(aRetF200[nPosF200],3.0) //18-ALIQ_COFINS Aadd(aRetF200[nPosF200],1500.00) //19-VL_COFINS Aadd(aRetF200[nPosF200],60.00) //20-PERC_REC_RECEB Aadd(aRetF200[nPosF200],"1") //21-IND_NAT_EMP Aadd(aRetF200[nPosF200],"Informações complementares") //22-INF_COMP Aadd(aRetF200[nPosF200],"0") //Informa se o registro eh de regime cumulativo (0) ou nao cumulativo (1) Else Aadd(aRetF200[nPosF200],"F200") //01-REG Aadd(aRetF200[nPosF200],"02") //02-IND_OPER Aadd(aRetF200[nPosF200],"01") //03-UNID_IMOB Aadd(aRetF200[nPosF200],"TOTVS") //04-IDENT_EMP Aadd(aRetF200[nPosF200],"Descricao Resumida Totvs") //05-DESC_UNID_IMOB Aadd(aRetF200[nPosF200],"123456789") //06-NUM_CONT Aadd(aRetF200[nPosF200],"36403560808") //07-CPF_CNPJ_ADQU Aadd(aRetF200[nPosF200],"13062018") //08-DT_OPER Aadd(aRetF200[nPosF200],50000.00) //09-VL_TOT_VEND Aadd(aRetF200[nPosF200],20000.00) //10-VL_REC_ACUM Aadd(aRetF200[nPosF200],10000.00) //11-VL_TOT_REC Aadd(aRetF200[nPosF200],"01") //12-CST_PIS Aadd(aRetF200[nPosF200],50000.00) //13-VL_BC_PIS Aadd(aRetF200[nPosF200],1.65) //14-ALIQ_PIS Aadd(aRetF200[nPosF200],825.00) //15-VL_PIS Aadd(aRetF200[nPosF200],"01") //16-CST_COFINS Aadd(aRetF200[nPosF200],50000.00) //17-VL_BC_COFINS Aadd(aRetF200[nPosF200],7.6) //18-ALIQ_COFINS Aadd(aRetF200[nPosF200],3800.00) //19-VL_COFINS Aadd(aRetF200[nPosF200],60.00) //20-PERC_REC_RECEB Aadd(aRetF200[nPosF200],"1") //21-IND_NAT_EMP Aadd(aRetF200[nPosF200],"Informações complementares") //22-INF_COMP Aadd(aRetF200[nPosF200],"1") //Informa se o registro eh de regime cumulativo (0) ou nao cumulativo (1) EndIf //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ //³REGISTRO F205 - Sera Gerado 1 para cada registro F200³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Aadd(aRetF205,{}) nPosF205 := Len(aRetF205) Aadd(aRetF205[nPosF205],nPosF200) //Referencia do registro F200 Pai Aadd(aRetF205[nPosF205],"F205") //01-REG Aadd(aRetF205[nPosF205],30000.00) //02-VL_CUS_INC_ACUM_ANT Aadd(aRetF205[nPosF205],10000.00) //03-VL_CUS_INC_PER_ESC Aadd(aRetF205[nPosF205],40000.00) //04-VL_CUS_INC_ACUM Aadd(aRetF205[nPosF205],8000.00) //05-VL_EXC_BC_CUS_INC_ACUM Aadd(aRetF205[nPosF205],32000.00) //06-VL_BC_CUS_INC Aadd(aRetF205[nPosF205],"50") //07-CST_PIS Aadd(aRetF205[nPosF205],1.65) //08-ALIQ_PIS Aadd(aRetF205[nPosF205],528.00) //09-VL_CRED_PIS_ACUM Aadd(aRetF205[nPosF205],40.00) //10-VL_CRED_PIS_DESC_ANT Aadd(aRetF205[nPosF205],60.00) //11-VL_CRED_PIS_DESC Aadd(aRetF205[nPosF205],428.00) //12-VL_CRED_PIS_DESC_FUT Aadd(aRetF205[nPosF205],"50") //13-CST_COFINS Aadd(aRetF205[nPosF205],7.6) //14-ALIQ_COFINS Aadd(aRetF205[nPosF205],2432.00) //15-VL_CRED_COFINS_ACUM Aadd(aRetF205[nPosF205],100.00) //16-VL_CRED_COFINS_DESC_ANT Aadd(aRetF205[nPosF205],200.00) //17-VL_CRED_COFINS_DESC Aadd(aRetF205[nPosF205],2132.00) //18-VL_CRED_COFINS_DESC_FUT //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ //³REGISTRO F210 - Gerados N registros para cada F200 ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Aadd(aRetF210,{}) nPosF210 := Len(aRetF210) Aadd(aRetF210[nPosF210],nPosF200)//Referencia do registro F200 Pai Aadd(aRetF210[nPosF210],"F210") //01-REG Aadd(aRetF210[nPosF210],5000.00) //02-VL_CUS_ORC Aadd(aRetF210[nPosF210],0.00) //03-VL_EXC Aadd(aRetF210[nPosF210],5000.00) //04-VL_CUS_ORC_AJU Aadd(aRetF210[nPosF210],10000.00) //05-VL_BC_CRED Aadd(aRetF210[nPosF210],"50") //06-CST_PIS Aadd(aRetF210[nPosF210],1.65) //07-ALIQ_PIS Aadd(aRetF210[nPosF210],165.00) //08-VL_CRED_PIS_UTIL Aadd(aRetF210[nPosF210],"50") //09-CST_COFINS Aadd(aRetF210[nPosF210],7.6) //10-ALIQ_COFINS Aadd(aRetF210[nPosF210],760.00) //11-VL_CRED_COFINS_UTIL Next Return {aRetF200,aRetF205,aRetF210} |