Ponto-de-Entrada: M200TEXT - Exibe informações na árvore da estrutura
Abrangências: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Versões: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Descrição:
LOCALIZAÇÃO:
Ponto de entrada localizado na função "A200Prompt" da rotina de manutenção de estruturas. Esta função é aresponsável por montar as informações que serão apresentadas para cada item na árvore da estrutura.
EM QUE PONTO:
Será executado antes que o texto seja inserido na árvore da estrutura. Este ponto de entrada tem como objetivopermitir que o usuário manipule o texto original montado pelo sistema de acordo com sua necessidade.
UTILIZAÇÃO:
Para cada item da estrutura o sistema executa a função "A200Prompt" para montar o texto a ser exibido. Este ponto de entrada permitirá que o usuário possa alterar o texto original, acrescentando ou excluindo informações e retornando o novo texto que será adicionado à árvore da estrutura.
PARÂMETROS DE ENVIO:
Os parâmetros enviados ao ponto de entrada estão no vetor PARAMIXB, sendo eles:
ParamIXB[1] -> Texto original, já com o TRT e a QTDE adicionados por padrão do sistema.
ParamIXB[2] -> Código do item pai.
ParamIXB[3] -> Sequencia TRT do item na estrutura.
ParamIXB[4] -> Código do componente que está sendo inserido na árvore.
ParamIXB[5] -> Quantidade do item na estrutura.
Importante: Quando for executada a inclusão de uma nova estrutura, ao ser executado pela primeira vez, o ponto de entrada receberá no parâmetro PARAMIXB[2] um valor vazio, pois o primeiro item da estrutura não possui um item pai. A partir da inclusão de outros itens, o parâmetro receberá o código do item pai normalmente.
PARÂMETROS DE RETORNO:
Deverá ser retornado o novo texto do item que será adicionado à árvore da estrutura.
Sintaxe M200TEXT - Exibe informações na árvore da estrutura ( [ PARAMIXB[1] ], [ PARAMIXB[2] ], [ PARAMIXB[3] ], [ PARAMIXB[4] ], [ PARAMIXB[5] ] ) --> cTexto
Parâmetros: | Nome | | | Tipo | | | Descrição | | | Default | | | Obrigatório | | | Referência | |
| PARAMIXB[1] | | | Caracter | | | Texto original, já com o TRT e a QTDE adicionados por padrão do sistema | | | | | | | | | | |
| PARAMIXB[2] | | | Caracter | | | Código do item pai (produto principal da estrutura) | | | | | | | | | | |
| PARAMIXB[3] | | | Caracter | | | Sequencia TRT do item na estrutura | | | | | | | | | | |
| PARAMIXB[4] | | | Caracter | | | Código do componente que está sendo inserido na árvore | | | | | | | | | | |
| PARAMIXB[5] | | | Numérico | | | Quantidade do item na estrutura. | | | | | | | | | | |
Retorno cTexto() - Novo texto a ser apresentado para o item na árvore da estrutura.
Exemplos #include "rwmake.ch"#include "TbiConn.ch"#include "protheus.ch"User Function M200TEXT()Local aArea := GetArea()Local aAreaSB1 := SB1->(GetArea())Local cQuant := ""Local cTextOri := ParamIXB[1] // Texto original, já com o TRT e a QTDE adicionados por padrão do sistemaLocal cPai := ParamIXB[2] // Código do item paiLocal cTRT := ParamIXB[3] // Sequencia TRT do item na estruturaLocal cComp := ParamIXB[4] // Código do componente que está sendo inserido na árvoreLocal nQuant := ParamIXB[5] // Quantidade do item na estruturaLocal nTamCod := TamSX3("B1_COD")Local nTamQtd := TamSX3("G1_QUANT")Local cReturn := "" // retorno do PEIf !(Empty(cComp)) SB1->(dbSetOrder(1)) If SB1->(dbSeek(xFilial("SB1") + cComp, .F.)) // Posiciona no produto para obter sua descrição cReturn := AllTrim(cComp) + " - " + SB1->B1_DESC + Space(nTamCod[1] - Len(AllTrim(cComp))) EndIf If !Empty(cTRT) cTRT := " | "+cTRT EndIf cQuant := " | "+AllTrim(Str(nQuant, nTamQtd[1], nTamQtd[2])) If !(Empty(cPai)) .And. !(cPai == cComp) // itens internos da estrutura cReturn := Pad(AllTrim(cReturn)+cQuant+cTRT, Len(cReturn+cQuant+cTRT)) EndIfElse cReturn := cTextOriEndIf// Restaura as áreas originaisRestArea(aAreaSB1)RestArea(aArea)Return cReturn // novo texto a ser apresentado na árvore da estrutura