Reading time: 2 minutes
Olá, no post de hoje iremos falar da documentação e sintaxe da função MaLibDoFat em ADVPL.
A função MaLibDoFat é uma função interna da TOTVS utilizada para liberação de Pedido de Vendas(MATA410) automaticamente no TOTVS Protheus.
Para que possamos executar essa função precisamos passamos algumas informações relacionadas ao pedido vendas que desejamos liberar conforme a sintaxe que iremos ver mais a frente.
Sintate:
MaLibDoFat(nRegSC6,nQtdaLib,lCredito,lEstoque,lAvCred,lAvEst,lLibPar,lTrfLocal)
Parâmetro(s):
Retorno:
——-
Exemplo da função MaLibDoFat em ADVPL:
/*{Protheus.doc} User Function fCToD
(Essa função tem por finalidade mostrar a função CToD em ADVPL)
@?type Function
@?author Adilio Costa
@?since 24/04/2024
@?version 1.0
@?Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@?Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@?Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@?Conheça os Cursos e Formações do ProtheusAdvpl:
https://protheusadvpl.kpages.online/cursos-e-formacoes-protheusadvpl
|Se esse conteúdo foi útil pra você nos ajude divulgando
ele e nossas redes sociais!!|
Plataforma:Portal ProtheusAdvpl
Módulo 7:ADVPL III
Aula:7.63.1 - [Protheus-Programação/ADVPL III/Funções, Classes e Variáveis Públicas] - Função MaLibDoFat
*/
User Function fMaLibFt(nNumPed)
Local aArea := FWGetArea()
Local cPedido := nNumPed
DBSelectArea("SC5")
SC5->(DBSetOrder(1)) // C5_FILIAL + C5_NUM
DBSelectArea("SC6")
SC6->(DBSetOrder(1)) // C6_FILIAL + C6_NUM + C6_ITEM + C6_PRODUTO
DBSelectArea("SC9")
SC9->(DBSetOrder(1)) // C9_FILIAL + C9_PEDIDO + C9_ITEM + C9_SEQUEN + C9_PRODUTO + C9_BLEST + C9_BLCRED
//Somente se encontrar o pedido e ele não tiver tido nota emitida ainda
If SC5->(MsSeek(FWxFilial("SC5") + cPedido)) .And. Empty(SC5->C5_NOTA)
SC6->(DBGoTop())
SC6->( MsSeek( SC5->C5_FILIAL + SC5->C5_NUM ) )
//Estorna as liberações
While ! SC6->(EoF()) .And. SC6->C6_FILIAL = SC5->C5_FILIAL .And. SC6->C6_NUM == SC5->C5_NUM
//Posiciona na liberação do item do pedido e estorna a liberação
SC9->(DBSeek(FWxFilial('SC9')+SC6->C6_NUM+SC6->C6_ITEM))
While ! SC9->(EoF()) .And. SC9->(C9_FILIAL+C9_PEDIDO+C9_ITEM) == FWxFilial('SC9')+SC6->(C6_NUM+C6_ITEM)
SC9->(a460Estorna(.T.))
SC9->(DBSkip())
EndDo
SC6->(DBSkip())
EndDo
//Define que o pedido foi liberado
RecLock("SC5", .F.)
SC5->C5_LIBEROK := 'S'
SC5->(MsUnlock())
SC6->(DBGoTop())
SC6->( MsSeek( SC5->C5_FILIAL + SC5->C5_NUM ) )
While !SC6->(Eof()) .And. SC5->C5_NUM == SC6->C6_NUM
//MaLibDoFat(RecSC6,nQtdaLib,lCredito,lEstoque,lAvCred,lAvEst,lLibPar,lTrfLocal)
MaLibDoFat(SC6->(RecNo()),SC6->C6_QTDVEN,,,.T.,.T.,.F.,.F.)
SC6->(DBSkip())
EndDo
EndIf
FWRestArea(aArea)
Return
Esse isso ai, finalizamos mais um post aqui no Blog ProtheusAdvpl, deixe abaixo seu comentário do que achou do post e dê dicas e sugestões de novos conteúdos. Grande abraço e fica com Deus.
Link(s) de referência(s):
Permalink
Vintage danish pictures search 56 galleries nudevista
https://game-water-sports.fetish-matters.net/?amani-princess
Permalink
Free recommended porn hot hardcore sex videos pornhub
https://esposa-infiel-mina.fetish-matters.com/?yesenia-joslyn
Permalink
Haing read this I thoughtt it waas ery informative.
I appreciate yyou fining the ttime andd efrort to put
thiss article together. I once again find myself spnding wway tooo much
time boyh readjng and postting comments. Buut so what, it waas still worthwhile!
Permalink
Goood info. Lucky mee I came across yoir sige by chance (stumbleupon).
I have boo marked iit ffor later!