Passo a passo: | Localização: Function Btn200Ok() - Responsável por acionar o botão de confirmação da estrutura. Em que ponto: Este Ponto de Entrada valida TODAS as alterações efetuadas na estrutura do produto. Executado no botão Ok, presente na mesma dialog da árvore da estrutura,deve ser retornado um valor lógico validando ou não as alterações. Programa fonte: MATA200.PRW Sintaxe: A200BOK - Valida Alterações na Estrutura do Produto ( [ aRegs ], [ cCod ] ) --> lRet Parâmetro: Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|
aRegs | Array of Record | Array bidimensional contendo os números dos registros que foram incluídos ou excluídos. Este array tem utilidade apenas informativa e o Ponto de Entrada não deve deletar ou efetuar alteração nos registros deste array.Isto será feito automaticamente, de acordo com o retorno do PE:.T. Assume as alterações, mantendo as alterações no SG1;.F. Desfaz todas as alterações efetuadas no SG1 (semelhante ao teclar botão cancela, presente na mesma tela);Qualquer retorno não-lógico, será ignorado pelo programa.PS: Cada registro do array pode estar deletado ou não. Se estiver deletado, foi deletado durante a alteração atual, se não estiver deletado foi incluído.O Array poderá também estar vazio (Len(aRegs)=0), o que significa que nenhuma inclusão ou alteração foi realizada no SG1 na estrutura do produto. |
|
|
| cCod | Array of Record | Código do produto que está tendo a estrutura incluída ou alterada. |
|
|
| nOpcX | Array of Record | Em ParamIXB[3], corresponde ao número da operação realizada, sendo 2 = visualização, 3 = inclusão e 4 = alteração. |
|
|
|
Retorno: lRet(logico) - .T. ou .F., validando ou não as alterações na estrutura. Note que durante a manipulação na estrutura, os registros no SG1 sempre serão deletados ou incluídos. Podendo inclusive ser checado o SG1 pelo PE.Retorno .T.: Grava normalmente os dados no SG1Retorno .F.: Nada será feito, aguardando nova ação do usuário, ja que a janela da estrutura não será fechada, dando a chance de fazer novas alterações e acionar novamente o botao ok, quando o PE realiza nova verificação.
Exemplo: User Function A200BOK aRegs := PARAMIXB[1] cCod := PARAMIXB[2] nOpcX := PARAMIXB[3] Alert("Produto sendo alterado: " + cCod) For x := 1 to Len(aRegs) Alert("Foi alterado o registro " + AllTrim(Str(aRegs[x][1])) + " no SG1") Next Return(.T.) // aceito as alteracoes. Para nao aceitar, retornar .F.
|