Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Portuguese

Pagetitle
SPED1300 - Movimentação diária de combustíveis
SPED1300 - Movimentação diária de combustíveis

Ponto-de-Entrada: SPED1300 - Movimentação diária de combustíveis
Abrangências: Microsiga Protheus 10
Versões: Microsiga Protheus 10
Compatível Países: Brasil
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Idiomas: Português (Brasil)
Descrição:
Registro apresentado pelos contribuintes do ramo varejista de combustíveis (postos de combustíveis), refere-se à movimentação diária de combustíveis, havendo apenas um registro por tipo de combustível e por data do fechamento da movimentação (campo COD_ITEM e campo DT_FECH), independente de ocorrerem intervenções.Não pode haver mais de um registro com o mesmo código de combustível e mesma data de fechamento.
Eventos
Exemplo da tabela SPED1300C.DBF criada para alimentar os registros 1300, 1310 e 1320

MV_COMB = Movimentação Diária de Combustíveis
MV_TANQUE = Movimentação por Tanque
MV_VENDAS = Volume de Vendas

 MV_COMB    MV_TANQUE     MV_VENDAS
1126126
1127127
1127127
1127127
1128128
Programa Fonte
SPED1300.PRW
Sintaxe

SPED1300 - Movimentação diária de combustíveis ( [ cAlias ], [ dDataDe ], [ dDataAte ], [ aReg0200 ], [ aReg0190 ] )

Parâmetros:
NomeTipoDescriçãoDefaultObrigatórioReferência
cAliasArray of RecordAlias da tabela
dDataDeDataCódigo do produto
dDataAteDataData inicial
aReg0200Array of RecordData final
aReg0190Array of Record
Retorno
    ()
Exemplos
User Function SPED1300 () Local 	cAlias		:=(ParamIxb[1])   	Local 	dDataDe		:=(ParamIxb[2])Local	dDataAte	                      :=(ParamIxb[3])Local	aReg0200	                      :=(ParamIxb[4])Local	aReg0190	                      :=(ParamIxb[5])	Local	aReg1300	                      := {}	nPos1300 := Reg1300P(cAlias,dDataDe,dDataAte,@aReg1300)GrvReg(cAlias,dDataDe,dDataAte,nPos1300,aReg1300)Reg1350P(cAlias,dDataDe,dDataAte,aReg0200,aReg0190) Return ()     //////////////////////////////////////////////////////////// Registro 1300 MOVIMENTACAO DIARIA DE COMBUSTIVEIS    ////////////////////////////////////////////////////////////Function Reg1300P(cAlias,dDataDe,dDataAte,aReg1300)			Local 	nPos   		:=0Local	dData		:= ctod("25/12/2011")aAdd(aReg1300, {})nPos:= Len(aReg1300)aAdd (aReg1300[nPos], "1300"				)	 	//01 - REGaAdd (aReg1300[nPos], "GAS1"				)	 	//02 - COD_ITEMaAdd (aReg1300[nPos], dData			   	)	 	//03 - DT_FECHaAdd (aReg1300[nPos], 10				)	 	//04 - ESTQ_ABERTaAdd (aReg1300[nPos], 100				)	 	//05 - VOL_ENTRaAdd (aReg1300[nPos], 110				)	 	//00 - VOL_DISPaAdd (aReg1300[nPos], 50				)	 	//00 - VOL_SAIDASaAdd (aReg1300[nPos], 60				)	 	//00 - ESTQ_ESCRaAdd (aReg1300[nPos], 0				)	 	//00 - VAL_AJ_PERDAaAdd (aReg1300[nPos], 0	   			)	 	//00 - VAL_AJ_GANHOaAdd (aReg1300[nPos], 60				)	 	//00 - FECH_FISICOReturn (nPos)/////////////////////////////////////////////////////////////////// Registro 1310 MOVIMENTACAO DIARIA DE COMBUSTIVEIS POR TANQUE/////////////////////////////////////////////////////////////////// Function GrvReg(cAlias,dDataDe,dDataAte,nPos1300,aReg1300)Local 	aReg1310	:= {}Local 	aReg1320	:= {}Local 	nRectan	:= 0Local 	nRecven	:= 0 Local 	nPos1310	:= 0//Le o arquivo dbf	C:\P10\Protheus_Data\DBFdbUseArea( .T.,"DBFCDXADS", "SPED1300C.DBF","SSS",.T., .F. )       dbSelectArea("SSS")DbGoTop ()While !Eof()nRectan := SSS->MV_TANQUE  	While !Eof() .And. nRectan == SSS->MV_TANQUE		    	    nPos1310 := SPED1310(cAlias,dDataDe,dDataAte,nRectan,@aReg1310,nPos1300)     //1310		nRecven := SSS->MV_VENDAS						While !Eof() .And. SSS->MV_VENDAS == nRecven .And. nRectan == SSS->MV_TANQUE						SPED1320(cAlias,dDataDe,dDataAte,@aReg1320,nPos1310)	 //1320						DbSkip()		EndDo	EndDoEndDoSSS->(DbCloseArea ())SPEDRegs(cAlias,{aReg1300,aReg1310,aReg1320})Return()Function SPED1310 (cAlias,dDataDe,dDataAte,nRectan,aReg1310,nPos1300)  	Local 	nPos	:= 0Local	nTanque	:= nRectanaAdd(aReg1310, {})nPos:= Len(aReg1310)aAdd (aReg1310[nPos], nPos1300		)	 	//00 - RELACAOaAdd (aReg1310[nPos], "1310"		)	 	//01 - REGaAdd (aReg1310[nPos], nTanque		)	 	//02 - NUM_TANQUEaAdd (aReg1310[nPos], 10	   	)	 	//03 - ESTQ_ABERTaAdd (aReg1310[nPos], 10		)	 	//04 - VOL_ENTRaAdd (aReg1310[nPos], 20		)	 	//05 - VOL_DISPaAdd (aReg1310[nPos], 10		)	 	//06 - VOL_SAIDASaAdd (aReg1310[nPos], 10		)	 	//07 - ESTQ_ESCRaAdd (aReg1310[nPos], 0		)	 	//08 - VAL_AJ_PERDAaAdd (aReg1310[nPos], 0		)	 	//09 - VAL_AJ_GANHOaAdd (aReg1310[nPos], 0		)	 	//10 - FECH_FISICO  dbSelectArea("SSS")Return (nPos)      /////////////////////////////////////////////////////////////////// Registro 1320 VOLUME DE VENDAS/////////////////////////////////////////////////////////////////// Function SPED1320 (cAlias,dDataDe,dDataAte,aReg1320,nPos1310)  	Local 	nPos	:= 0		aAdd(aReg1320, {})nPos:= Len(aReg1320)aAdd (aReg1320[nPos], nPos1310				)	 	//00 - RELACAOaAdd (aReg1320[nPos], "1320"				)	 	//01 - REGaAdd (aReg1320[nPos], "123"				)	 	//02 - NUM_BICOaAdd (aReg1320[nPos], "192"  			  	)	 	//03 - NR_INTERVaAdd (aReg1320[nPos], "mo intervencao"      	                                           )	 	//04 - MOT_INTERVaAdd (aReg1320[nPos], "Nom do Interventor"	   	                     )	 	//05 - NOM_INTERVaAdd (aReg1320[nPos], "79427589000320"			)	 	//06 - CNPJ_INTERVaAdd (aReg1320[nPos], "45723220667"			)	 	//07 - CPF_INTERVaAdd (aReg1320[nPos], 100				)	 	//08 - VAL_FECHAaAdd (aReg1320[nPos], 20				)	 	//09 - VAL_ABERTaAdd (aReg1320[nPos], 10  				)	 	//10 - VOL_AFERIaAdd (aReg1320[nPos], "70"				)	 	//11 - VOL_VENDASdbSelectArea("SSS") Return (aReg1320)Function Reg1350P(cAlias,dDataDe,dDataAte,aReg0200,aReg0190)Local 	cProd	:= "GAS1"Local	aReg1350	:= {}Local	aReg1360	:= {}Local	aReg1370	:= {}Local	nPos	:= 0 //------------------------------- 1aAdd(aReg1350, {})nPos:= Len(aReg1350)aAdd (aReg1350[nPos], "1350"				)	 	//01 - REGaAdd (aReg1350[nPos], "01"				)	 	//02 - SERIEaAdd (aReg1350[nPos], "nome fabricante 1"      	                     )	 	//03 - FABRICANTEaAdd (aReg1350[nPos], "mod bomba 1"			)	 	//04 - MODELOaAdd (aReg1350[nPos], "0"				)	 	//04 - TIPO_MEDICAO aAdd(aReg1360, {})nPos:= Len(aReg1360)aAdd (aReg1360[nPos], "1360"				)	 	//01 - REGaAdd (aReg1360[nPos], "01"				)	 	//02 - NUM_LACREaAdd (aReg1360[nPos], dDataAte			  	)	 	//03 - DT_APLICACAOaAdd(aReg1360, {})nPos:= Len(aReg1360)aAdd (aReg1360[nPos], "1360"				)	 	//01 - REGaAdd (aReg1360[nPos], "011"				)	 	//02 - NUM_LACREaAdd (aReg1360[nPos], dDataAte			  	)	 	//03 - DT_APLICACAOaAdd(aReg1370, {})nPos:= Len(aReg1370)aAdd (aReg1370[nPos], "1370"				)	 	//01 - REGaAdd (aReg1370[nPos], "01"				)	 	//02 - NUM_BICOaAdd (aReg1370[nPos], cProd			  	)	 	//03 - COD_ITEMaAdd (aReg1370[nPos], "10"            			)//geracao do 0200SPEDSeek("SB1",,xFilial("SB1")+cProd)SFRG0200(cAlias,@aReg0200,@aReg0190,dDataDe,dDataAte,,cProd)GrvRegTrS (cAlias,1,aReg1350)GrvRegTrS (cAlias,1,aReg1360)GrvRegTrS (cAlias,1,aReg1370)//-------------------------------------------- 2aReg1350	:= {}aReg1360	:= {}aReg1370	:= {}aAdd(aReg1350, {})nPos:= Len(aReg1350)aAdd (aReg1350[nPos], "1350"				)	 	//01 - REGaAdd (aReg1350[nPos], "02"				)	 	//02 - SERIEaAdd (aReg1350[nPos], "nome fabricante 2"      	                     )		//03 - FABRICANTEaAdd (aReg1350[nPos], "mod bomba 2"			)	 	//04 - MODELOaAdd (aReg1350[nPos], "0"				)	 	//04 - TIPO_MEDICAO aAdd(aReg1360, {})nPos:= Len(aReg1360)aAdd (aReg1360[nPos], "1360"				)	 	//01 - REGaAdd (aReg1360[nPos], "02"				)	 	//02 - NUM_LACREaAdd (aReg1360[nPos], dDataAte			  	)	 	//03 - DT_APLICACAOaAdd(aReg1370, {})nPos:= Len(aReg1370)aAdd (aReg1370[nPos], "1370"				)	 	//01 - REGaAdd (aReg1370[nPos], "02"				)	 	//02 - NUM_BICOaAdd (aReg1370[nPos], cProd				)	 	//03 - COD_ITEMaAdd (aReg1370[nPos], "10"             			)//geracao do 0200SPEDSeek("SB1",,xFilial("SB1")+cProd)SFRG0200(cAlias,@aReg0200,@aReg0190,dDataDe,dDataAte,,cProd)aAdd(aReg1370, {})nPos:= Len(aReg1370)aAdd (aReg1370[nPos], "1370"				)	 	//01 - REGaAdd (aReg1370[nPos], "022"				)	 	//02 - NUM_BICOaAdd (aReg1370[nPos], cProd			  	)	 	//03 - COD_ITEMaAdd (aReg1370[nPos], "10"             			)//geracao do 0200SPEDSeek("SB1",,xFilial("SB1")+cProd)SFRG0200(cAlias,@aReg0200,@aReg0190,dDataDe,dDataAte,,cProd)GrvRegTrS (cAlias,2,aReg1350)GrvRegTrS (cAlias,2,aReg1360)GrvRegTrS (cAlias,2,aReg1370)//-------------------------------- 3aReg1350	:= {}aReg1360	:= {}aReg1370	:= {}aAdd(aReg1350, {})nPos:= Len(aReg1350)aAdd (aReg1350[nPos], "1350"				)	 	//01 - REGaAdd (aReg1350[nPos], "03"				)	 	//02 - SERIEaAdd (aReg1350[nPos], "nome fabricante 3"      	                     )	 	//03 - FABRICANTEaAdd (aReg1350[nPos], "mod bomba 3"			)	 	//04 - MODELOaAdd (aReg1350[nPos], "0"				)	 	//04 - TIPO_MEDICAO aAdd(aReg1360, {})nPos:= Len(aReg1360)aAdd (aReg1360[nPos], "1360"				)	 	//01 - REGaAdd (aReg1360[nPos], "03"				)	 	//02 - NUM_LACREaAdd (aReg1360[nPos], dDataAte			  	)	 	//03 - DT_APLICACAOaAdd(aReg1360, {})nPos:= Len(aReg1360)aAdd (aReg1360[nPos], "1360"				)	 	//01 - REGaAdd (aReg1360[nPos], "033"				)	 	//02 - NUM_LACREaAdd (aReg1360[nPos], dDataAte			  	)	 	//03 - DT_APLICACAOaAdd(aReg1370, {})nPos:= Len(aReg1370)aAdd (aReg1370[nPos], "1370"				)	 	//01 - REGaAdd (aReg1370[nPos], "03"				)	 	//02 - NUM_BICOaAdd (aReg1370[nPos], cProd				)	 	//03 - COD_ITEMaAdd (aReg1370[nPos], "10"             			)//geracao do 0200SPEDSeek("SB1",,xFilial("SB1")+cProd)SFRG0200(cAlias,@aReg0200,@aReg0190,dDataDe,dDataAte,,cProd)aAdd(aReg1370, {})nPos:= Len(aReg1370)aAdd (aReg1370[nPos], "1370"				)	 	//01 - REGaAdd (aReg1370[nPos], "033"				)	 	//02 - NUM_BICOaAdd (aReg1370[nPos], cProd				)	 	//03 - COD_ITEMaAdd (aReg1370[nPos], "10"             			)//geracao do 0200SPEDSeek("SB1",,xFilial("SB1")+cProd)SFRG0200(cAlias,@aReg0200,@aReg0190,dDataDe,dDataAte,,cProd)GrvRegTrS (cAlias,3,aReg1350)GrvRegTrS (cAlias,3,aReg1360)GrvRegTrS (cAlias,3,aReg1370)                              Return ()
Variáveis
NomeTipoEscopoPode Alterardescrição
Array of RecordGlobalNão