- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Função MaLibDoFat()
×
Linguagem de Programação ADVPL
Perguntas Função MaLibDoFat()
- Tony.totvs
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 47
- Obrigados Recebidos: 0
11 anos 10 meses atrás #9205
por Tony.totvs
Função MaLibDoFat() foi criado por Tony.totvs
Olá pessoal,
Tenho a seguinte situação:
- tenho um mBrowse com SC5
- escolhido um pedido, abre-se uma tela para confirmar, clicando em ok, faz a função abaixo. O pedido tem n itens, no While passa uma vez pela função MaLibDoFat, quando passa pela segunda vez na função, me dá o erro "Tentativa de reservar registro no Alias SC5 em EOF Stack de chamadas em MSRLOCK.eof"
- tenho essa função rodando em schedule sem problemas, não sei se o fato de usar o mBrowse com a SC5 esta causando isso.
dbSelectArea("SC6")
SC6->(DbOrderNickName("SC61"))
dbSeek(xFilial("SC6") + _cNum)
While SC6->(!Eof()) .And. _cNum = SC6->C6_NUM
RecLock("SC6")
Begin Transaction
MaLibDoFat(SC6->(RecNo()),SC6->C6_QTDVEN,.T.,.T.,.F.,.T.,.F.,.F.)
End Transaction
SC6->(MsUnLock())
SC6->(dbSkip())
EndDo
Grato
Tenho a seguinte situação:
- tenho um mBrowse com SC5
- escolhido um pedido, abre-se uma tela para confirmar, clicando em ok, faz a função abaixo. O pedido tem n itens, no While passa uma vez pela função MaLibDoFat, quando passa pela segunda vez na função, me dá o erro "Tentativa de reservar registro no Alias SC5 em EOF Stack de chamadas em MSRLOCK.eof"
- tenho essa função rodando em schedule sem problemas, não sei se o fato de usar o mBrowse com a SC5 esta causando isso.
dbSelectArea("SC6")
SC6->(DbOrderNickName("SC61"))
dbSeek(xFilial("SC6") + _cNum)
While SC6->(!Eof()) .And. _cNum = SC6->C6_NUM
RecLock("SC6")
Begin Transaction
MaLibDoFat(SC6->(RecNo()),SC6->C6_QTDVEN,.T.,.T.,.F.,.T.,.F.,.F.)
End Transaction
SC6->(MsUnLock())
SC6->(dbSkip())
EndDo
Grato
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
11 anos 10 meses atrás #9228
por kanaamlrr
Respondido por kanaamlrr no tópico Re: Função MaLibDoFat()
Para evitar esse erro, reposicione a sua tabela SC5 em cada iteração do Loop.
Não vejo o porque de estar ocorrêndo esse problema, mas pode ser por algumas propriedade do mbrowse sim...
Não vejo o porque de estar ocorrêndo esse problema, mas pode ser por algumas propriedade do mbrowse sim...
dbSelectArea("SC6")
SC6->(DbOrderNickName("SC61"))
dbSeek(xFilial("SC6") + _cNum)
dbSeek(xFilial("SC5") + _cNum)
While SC6->(!Eof()) .And. _cNum = SC6->C6_NUM
RecLock("SC6")
Begin Transaction
MaLibDoFat(SC6->(RecNo()),SC6->C6_QTDVEN,.T.,.T.,.F.,.T.,.F.,.F.)
End Transaction
SC6->(MsUnLock())
SC6->(dbSkip())
EndDo
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Função MaLibDoFat()
Tempo para a criação da página:0.089 segundos