Salva todas as alterações pendentes de todos os alias abertos na thread.
Exemplo da Rotina:
DbCommitAll()
Exemplo 1- Altera a descrição de um produto e o nome de um cliente:
//Bibliotecas
#Include "Protheus.ch"
/*/{Protheus.doc} zTeste
Função de Teste
@type function
@author Terminal de Informação
@since 13/11/2016
@version 1.0
@example
u_zTeste()
/*/
User Function zTeste()
Local aArea := GetArea()
Local cDescAtu := ""
Local cNomeAtu := ""
DbSelectArea('SB1')
SB1->(DbSetOrder(1)) //B1_FILIAL + B1_COD
SB1->(DbGoTop())
//Se conseguir posicionar no produto
If SB1->(DbSeek(FWxFilial('SB1') + 'F00003'))
cDescAtu := Alltrim(SB1->B1_DESC)+"..."
//Atualiza a Descrição
RecLock('SB1', .F.)
B1_DESC := cDescAtu
SB1->(MsUnlock())
EndIf
DbSelectArea('SA1')
SA1->(DbSetOrder(1)) //A1_FILIAL + A1_COD + A1_LOJA
SA1->(DbGoTop())
//Se conseguir posicionar no cliente
If SA1->(DbSeek(FWxFilial('SA1') + 'C00003'))
cNomeAtu := Alltrim(SA1->A1_NOME)+"..."
//Atualiza o nome
RecLock('SA1', .F.)
A1_NOME := cNomeAtu
SA1->(MsUnlock())
EndIf
//Salva todas as alterações pendentes
DbCommitAll()
RestArea(aArea)
Return
Exemplo em Vídeo:
Clique nesse link para ver um exemplo em Vídeo da nossa Maratona de Exemplos.
Observações:
– Caso tenha dúvidas ou problemas com os exemplos, entre em contato;
– Se tiver sugestões de rotinas, pode entrar em contato;
Referências:
– TDN