Descrição:
A Função MayIUseCode tem o objetivo de reservar uma palavra , ou seja quando uma estação reserva uma palavra, a outra não conseguira usar.
Podem ser reservadas ate 20 palavras simultaneamente e estas palavras são liberadas automaticamente nos seguintes pontos:
- Volta para o Menu
- Volta para a mbrwose ou MarkBrowse
- no End Transaction
Especialmente em funções com transação esta eh muito útil, visto que enquanto em uma transação eh impossível checar por outra conexão se o registro já esta incluído enquanto a outra estação não der o EndTransaction.
Exemplos de possíveis usos :
Não deixar gravar 2 pedidos de venda com o mesmo numero
Não deixar gravar 2 produtos com o mesmo código, melhor lugar a colocar eh na validação do produto.
( ATENCAO!! Verificar a função FreeForUse() para utilização da MayIUseCode na validação do SX3 ).
Para se liberar os registros em outro ponto que não seja os automáticos, utilizar a função freeusedCode(), que liberara todos os códigos reservados.
Para se desabilitar a função utilizar MV_USELOCK com retorno False
Programa Fonte:
APLIB060.PRW
Sintaxe:
MayIUseCode - Reserva de nomes com semáforo ( cCode [ cBlqUser ] ) --> lOK
Retorno:
lOK
- (logico)
- .T. se conseguiu, .F. se falhou
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
cCode | Caracter | Nome a ser reservado (Semáforo) | X | ||||||||||||||
cBlqUser | Caracter | Código do usuário que está bloqueando |