Linha de Produto: | Microsiga Protheus | ||||
Segmento: | Serviços | ||||
Módulo: | Estoque e Custos (SIGAEST) Faturamento (SIGAFAT) | ||||
Rotina: |
| ||||
Cadastros Iniciais: | Faturamento | ||||
Parâmetro(s): | PARAMIBX (array) | ||||
Ponto de Entrada: | MTPOSSBD | ||||
País(es): | Brasil | ||||
Banco(s) de Dados: | Todos | ||||
Tabelas utilizadas: | SBD | ||||
Sistema(s) operacional(is): | Windows/Linux | ||||
Versões/Release: | 11.8 |
Ponto de Entrada
Descrição: | O Ponto de Entrada MTPOSSBD é utilizado para posicional a tabela SBD, de acordo com a regra do usuário para tratamento do custo de lote FIFO. | ||||||||
Localização: | No momento da geração do Remito. | ||||||||
Eventos: | Na geração do remito, o usuário pode fazer o posicionamento da tabela SBD e sobrepor a regra do custo FIFO indicando o lote ou amarração definida fugindo da regra standard para determinar o custo FIFO. | ||||||||
Programa Fonte: | SIGACUSB | ||||||||
Função: | BaixaSBD | ||||||||
Parâmetros : |
Nota: é obrigatório fazer o posicionamento da tabela SBD. | ||||||||
Retorno : | NIL |
Exemplo:
#INCLUDE 'PROTHEUS.CH'
User Function MTPOSSBD ()
Local cProduto:= Paramixb[1]
Local cLocal := Paramixb[2]
Local cSeek := ""
Local lLifo := SuperGetMv('MV_CUSLIFO',.F.,.F.)
Local lFifo := SuperGetMv('MV_CUSFIFO',.F.,.F.)
Alert ('PE MTPOSSBD Produto: '+cProduto+' Local :'+cLocal)
dbSelectArea("SBD")
dbSetOrder(1)
If lLIFO .And. !lFIFO
If dbSeek(cSeek:=xFilial("SBD")+cProduto+cLocal+" ")
Do While !Eof() .And. cSeek == BD_FILIAL+BD_PRODUTO+BD_LOCAL+BD_STATUS
dbSkip()
EndDo
dbSkip(-1)
EndIf
Else
dbSeek(xFilial("SBD")+cProduto+cLocal+" ")
EndIf
Return Nil