Árvore de páginas


Linha de Produto:

Microsiga Protheus

Segmento:

Serviços

Módulo:

Estoque e Custos (SIGAEST)

Faturamento (SIGAFAT)

Rotina:

Rotina

Nome Técnico

Gerar Remito 

SIGACUSB

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 :

Nome

Tipo

Descrição

Obrigatório

 PARAMIXB

Array of recordes

Parâmetros que podem ser manipulados:

PARAMIXB[01] - Produto
PARAMIXB[02] - Local
 
 

X

 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