01. VISÃO GERAL

Linha de Produto:Microsiga Protheus®
Segmento:BackOffice
Módulo:Fiscal
Programa FonteSPEDFISCAL / FISA008

02. DESCRIÇÃO


O ponto de entrada SPED0205 retorna um array com informações da alteração do produto, caso o procedimento padrão não atenda o cliente para geração do registro 0205 - Alteração do Item.

Neste Ponto de Entrada é passado como parâmetro a data inicial, data final da geração do arquivo magnético e o código de produto que está sendo processado no momento, desta forma é possível identificar o produto e retornar as informações de alterações, caso existam.

03. ESPECIFICAÇÃO

Parâmetros do ponto de entrada

Nome

Tipo

Descrição

PARAMIXBArray of Record

Array com os dados de processamento com elementos 

[1] - Data - Data inicial para geração do arquivo

[2] - Data - Data final para geração do arquivo

[3] - Caracter - Código do Produto

Retorno

Nome

Tipo

Descrição


Array of Record

O array de retorno deve ter os seguintes elementos:

[1] - Descrição Anterior do item: Campo com formato de texto.

[2] - Data inicial de utilização da descrição do item: Campo com formato de data.

[3] - Data final de utilização da descrição do item: Campo com formato de data.

[4] - Código anterior do item: Campo em formato de texto.


Ao utilizar este ponto de entrada, todas as posições devem ser preenchidas.



Caso seja necessário retornar mais de uma alteração de um mesmo produto, deve-se retornar um array multidimensional com as informações da alteração do produto.

Este array deve conter as mesmas informações descritas anteriormente. Para um melhor detalhamento, observe o Exemplo 2.

04. EXEMPLO DE UTILIZAÇÃO

O exemplos abaixo são exemplificativos, sendo seu comportamento determinado pelas regras de negócios definidas pelo cliente.


Exemplo 1
- Array Unidimencional - Apenas uma alteração por produto

#include "totvs.ch"

User Function SPED0205()

Local dDataIni := paramixb[1]
Local dDataFin := paramixb[2]
Local cCodProd := paramixb[3]
Local aRet := {}

aAdd(aRet, "Descrição de alteração do produto")
aAdd(aRet, stod("13/09/01"))
aAdd(aRet, stod("13/09/29"))
aAdd(aRet, "0811")

Return( aRet )


Exemplo 2 - Array Multidimencional - Múltiplas alterações por produto

#include "totvs.ch"

User Function SPED0205()

Local dDataIni := paramixb[1]
Local dDataFin := paramixb[2]
Local cCodProd := paramixb[3]
Local aRet := {}

If	Alltrim(cCodProd) == "001"
	aAdd(aRet, {"Descrição de alteração do produto 1", stod("15/02/19"), stod("15/02/17"), ""})
	aAdd(aRet, {"Descrição de alteração do produto 2", stod("15/02/17"), stod("15/02/20"), ""})
EndIf

Return( aRet )

05. DEMAIS INFORMAÇÕES

06. ASSUNTOS RELACIONADOS