Árvore de páginas

Versões comparadas

Chave

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

...

Linha de Produto:

Microsiga Protheus.

Segmento:

Manufatura.

Módulo:

SIGAMNT - Manutenção de Ativos e Gestão de Frotas.

Rotina:

Rotina

Nome Técnico

NGUTIL

Funções Genéricas

Rotinas envolvidas

Nome Técnico

MNTA693

Transferência de Bens

MNTW040Workflow de Distribuição de S.S. para o Executante

Países:

Todos.

Bancos de Dados:

Todos.

Sistemas Operacionais:

Todos.

Importante:
  • É necessário possuir o arquivo .htm do workflow que se deseja customizar no diretório de WorkFlow, do dicionário do ambiente e que será informado no parâmetro MV_WFDIR.
  • Para variáveis fora de tabelas não há necessidade de se separar através de ponto.
    • Exemplo: ( (oProcess:oHTML:ValByName( 't5l1.1') ), cValToChar( nIndex ) + '. Geração de campo em tabela 1' ).
  • Para variáveis dentro de tabelas se utiliza a referência à tabela na linha em que se encontra, separa-se com ponto e se nomeia o campo.
    • Exemplo: oProcess:oHTML:ValByName( 'strEX1', 'WorkFlow Transferência de Veículos via Construção CivilTeste' )

Ponto de Entrada

Descrição:

Ponto de Entrada chamado ao acionar o processo de envio de workflow, que permite customização com adição e/ou mudança de conteúdo de campos, através do arquivo .htm.

Programa Fonte:

NGUTIL.prx

Função:

NGTWFProcB()

Parâmetros:

NomeTipoDescriçãoObrigatório
ParamIXB[1]Objeto

Objeto para manipular o WorkFlow.

Sim
ParamIXB[2]CaractereDefine a rotina de origem que realizara a chamada do P.E.Sim
Retorno:
NomeTipoDescriçãoObrigatório
oProcessObjetoRetorna o Objeto alterado para utilização no envio de WorkFlow.Sim
Importante:

Para utilização do exemplo do Ponto ponto de Entrada entrada abaixo é imprescindível que se utilize um dos arquivos abaixo: 

deste arquivo mntw693.htm

mntw040.

...

Bloco de código
languagesql
titleExemplo do Ponto de Entrada NGTWFPro
linenumberstrue
#Include 'PROTHEUS.CH'

User Function NGTWFPro()

    Local oProcess := ParamIXB[1]
    Local cOrigin  := ParamIXB[2]
    Local nIndex   := 0

    If cOrigin == 'MNTA693'

        //Valor 'WorkFlow Transferência de Veículos via Construção Civil' na variável strEX1
        oProcess:oHTML:ValByName( 'strEX1', 'WorkFlow Transferência de Veículos via Construção Civil' )

        //Inserido campo centro de custo do registro posicionado da TQ2 na variavel t2l8.strEX2
        aAdd( oProcess:oHTML:ValByName( 't2l8.strCCusto' ), TQ2->TQ2_CCUSTO )

		// titulo inserido antes da montagem da tabela.
		oProcess:oHTML:ValByName( 'strEX2', 'Exemplo campos inserdos em tabela' )

        //Inseridos valores de modo dinâmico em tabela html que contém apenas uma linha, baseia-se nos campos dessa linha para inserir outras novas linhas.
        //Abaixo inserem-se 10 linhas com quatro campos.
        For nIndex := 1 To 10

            aAdd( (oProcess:oHTML:ValByName( 't5l1.1') ), cValToChar( nIndex ) + '. Geração de campo em tabela 1' )
            aAdd( (oProcess:oHTML:ValByName( 't5l1.2') ), cValToChar( nIndex ) + '. Geração de campo em tabela 2' )
            aAdd( (oProcess:oHTML:ValByName( 't5l1.3') ), cValToChar( nIndex ) + '. Geração de campo em tabela 3' )
            aAdd( (oProcess:oHTML:ValByName( 't5l1.4') ), cValToChar( nIndex ) + '. Geração de campo em tabela 4' )

        Next nIndex

	ElseIf cOrigin == 'MNTW040'

		aAdd( oProcess:oHTML:ValByName( 'head1.strRamal' ), 'Ramal'        )
		aAdd( oProcess:oHTML:ValByName( 'col1.strRamal'  ), TQB->TQB_RAMAL )

		dbSelectArea( 'ST9' )
		dbSetOrder( 1 )
		dbSeek( xFilial( 'ST9' ) + TQB->TQB_CODBEM )

		aAdd( oProcess:oHTML:ValByName( 'head2.strCcusto' ), 'Centro de Custos'   )
		aAdd( oProcess:oHTML:ValByName( 'head2.strCtrab'  ), 'Centro de Trabalho' )

		aAdd( oProcess:oHTML:ValByName( 'col2.strCcusto' ), ST9->T9_CCUSTO  )
		aAdd( oProcess:oHTML:ValByName( 'col2.strCtrab'  ), ST9->T9_CENTRAB )

    EndIf

Return oProcess