Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Produto:

Protheus.

Ocorrência:

M200CPTX: Manipulação dos textos nos componentes da estrutura.

Passo a passo:

Descrição: Ponto de entrada que permite a manipulação dos textos utilizados na identificação dos componentes da estrutura, na tela Comparação de Estruturas.

Eventos: O ponto de entrada será executado sempre ao adicionar um item nas estruturas que estão sendo comparadas.

Programa fonte: MATA200.PRW / PCPA200.PRW

Sintaxe: M200CPTX - Manipulação dos textos nos componentes da estrutura ( [ cTexto ], [ cCodPai ], [ cComp ], [ cDescri ], [ cTRT ], [ nQtde ], [ cRevIni ], [ cRevFim ] ) --> cRet

Parâmetro:

NomeTipoDescriçãoDefaultObrigatórioReferência
cTextoCaracterTexto original.


cCodPaiCaracterCódigo do produto cuja estrutura está sendo comparada.


cCompCaracterCódigo do componente.


cDescriCaracterDescrição do componente.


cTRTCaracterSequência do componente.


nQtdeNuméricoQuantidade do componente na estrutura.


cRevIniCaracterRevisão inicial.


cRevFimCaracter



Retorno:

cRet(caracter) Texto a ser utilizado como identificação do componente na estrutura.

Exemplo:

Bloco de código
languagecpp
titleExemplo de implementação:
linenumberstrue
collapsetrue
#INCLUDE 'TOTVS.CH'
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'RWMAKE.CH'

User Function M200CPTX()

Local cTexto  := PARAMIXB[1] // Texto original, já com o TRT e a QTDE adicionados por padrão do sistema
Local cCodPai := PARAMIXB[2] // Código do item pai
Local cComp   := PARAMIXB[3] // Código do componente que está sendo inserido na árvore
Local cDescri := PARAMIXB[4] // Descricao do Produto (B1_DESC)
Local cTRT    := PARAMIXB[5] // Sequencia TRT do item na estrutura
Local nQtde   := PARAMIXB[6] // Quantidade do item na estrutura
Local cRevIni := PARAMIXB[7] // Revisão Inicial do Item na estrura
Local cRevFim := PARAMIXB[8] // Revisão Final do Item na estrura
Local nTamCod := TamSX3("B1_COD")
Local nTamQtd := TamSX3("G1_QUANT")
Local cQuant  := ""
Local cRet    := ""//Customizações

If !(Empty(cComp))    
    SB1->(dbSetOrder(1))    
    If SB1->(dbSeek(xFilial("SB1") + cComp, .F.)) // Posiciona no produto para obter sua descrição
        cRet := AllTrim(cComp) + " - " + SB1->B1_DESC + Space(nTamCod[1] - Len(AllTrim(cComp)))    
    EndIf	    
    If !Empty(cTRT)
        cTRT := " | "+cTRT    
    EndIf
        cQuant := " | "+AllTrim(Str(nQtde, nTamQtd[1], nTamQtd[2]))	    
    If !(Empty(cCodPai)) .And. !(cCodPai == cComp) // itens internos da estrutura        
        cRet := Pad(AllTrim(cRet)+cQuant+cTRT, Len(cRet+cQuant+cTRT))
    EndIf
Else    
    cRet := cTexto
EndIf// Restaura as áreas originaisRestArea(aAreaSB1)RestArea(aArea)

Return cRet

Observações:


...