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: Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|
cTexto | Caracter | Texto original. |
|
|
| cCodPai | Caracter | Código do produto cuja estrutura está sendo comparada. |
|
|
| cComp | Caracter | Código do componente. |
|
|
| cDescri | Caracter | Descrição do componente. |
|
|
| cTRT | Caracter | Sequência do componente. |
|
|
| nQtde | Numérico | Quantidade do componente na estrutura. |
|
|
| cRevIni | Caracter | Revisão inicial. |
|
|
| cRevFim | Caracter |
|
|
|
|
Retorno: cRet(caracter) Texto a ser utilizado como identificação do componente na estrutura. Exemplo: Bloco de código |
---|
language | cpp |
---|
title | Exemplo de implementação: |
---|
linenumbers | true |
---|
collapse | true |
---|
| #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: |
|
M200CPTX: Manipulação dos textos nos componentes da estrutura.