Histórico da Página
Ponto de entrada para atribuição de valores no arquivo .htm utilizado
...
nos workflows.
Características do Requisito
Linha de Produto: | Microsiga Protheus. | ||||||||||||||||
Segmento: | Manufatura. | ||||||||||||||||
Módulo: | SIGAMNT - Manutenção de Ativos e Gestão de Frotas. | ||||||||||||||||
Rotina: |
| ||||||||||||||||
Países: | Todos. | ||||||||||||||||
Bancos de Dados: | Todos. | ||||||||||||||||
Sistemas Operacionais: | Todos. | ||||||||||||||||
ObservaçãoImportante: |
|
Ponto de Entrada
Descrição: | Ponto de Entrada chamado ao | incluir e alterar uma transferência na rotina de Transferência de Bens(MNTA693), após confirmação da telaacionar 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 | , no WorkFlow de Solicitação de NF para Transferência. | ||||||||||
Localização: | SIGAMNT: Atualizações/Construção Civil/Transferência/Transferência de Bens. | ||||||||||||
Programa Fonte: | MNTA693NGUTIL.prx | ||||||||||||
Função: | MNT693WFNGTWFProcB() | ||||||||||||
Parâmetros: |
| ||||||||||||
Retorno: |
|
...
Aviso | ||
---|---|---|
| ||
Para utilização do exemplo do ponto de entrada é imprescindível que se utilize o arquivo correspondente a rotina desejada abaixo: Qualquer alteração realizada no P.E. deve-se ser replicada ao arquivo de layout, caso contrário resultará em uma inconsistência. |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#Include 'TotvsPROTHEUS.chCH' User Function NGTWFPro() Local oProcess := ParamIXB[1] Local cOrigin := ParamIXB[2] Local nIndex := 0 Do Case If // Transferência de Bens Case cOrigin == 'MNTA693' // Valor apresentadoValor '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 variávelvariavel t2l8.strEX2 aAdd( oProcess:oHTML:ValByName( 't2l8.strCCusto' ), TQ2->TQ2_CCUSTO ) // Títulotitulo inserido antes da montagem da tabela. oProcess:oHTML:ValByName( 'strEX2', 'Exemplo campos inseridosinserdos 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 EndIf Return oProcess | ||||||||
Bloco de código | ||||||||
| ||||||||
<html> <head> <title>%strTitulo%</title> </head> <body bgcolor="#FFFFFF"> <p><b><font face="Arial">%strTitulo%</font></b></p> </u> <p><b><font face="Arial">%strEX1%</font></b></p> </u> <table border=0 WIDTH=655 cellpadding="1"> <tr> <td bgcolor="#FFFFFF" align="left" width="157"><font face="Arial" size="2">%strSubTitulo%</font></td> </tr> </table> <br> <b><font face="Arial" size="2">%strOrigem%</font></b> <br><br> <table border=0 WIDTH=655 cellpadding="1"> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l1.strNumME%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l1.strNUMME%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l2.strEmpOrig%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l2.strEMPORI%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l3.strFilOrig%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l3.strFILORI%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l4.strCodBem%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l4.strCODBEM%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l5.strNumSer%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l5.strSERIE%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l6.strDataTR%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l6.strDATATR%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t1l7.strHoraTR%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l7.strHORATR%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">Centro de Custos</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t2l8.strCCusto%</font></td> </tr> </table> <br> <b><font face="Arial" size="2">%strDestino%</font></b> <br><br> <table border=0 WIDTH=655 cellpadding="1"> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t3l1.strEmpDest%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t4l1.strEMPDES%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t3l2.strFilDest%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t4l2.strFILDES%</font></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="157"><b><font face="Arial" size="2">%t3l3.strObserv%</font></b></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t4l3.strMOTTRA%</font></td> </tr> </table> <table border=0 WIDTH=655 cellpadding="1"> <tr> <td bgcolor="#EEEEEE" align="left" width="157" colspan="4"><b><font face="Arial" size="2">%strEX2%</font></b></td> </tr> <tr> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t5l1.1%</font></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t5l1.2%</font></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t5l1.3%</font></td> <td bgcolor="#EEEEEE" align="left" width="420"><font face="Arial" size="1">%t5l1.4%</font></td> </tr> </table> </body> </html>/ Distribuição de S.S. Case 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 ) // Inclusão de S.S. Case cOrigin == 'MNTW025' aAdd( oProcess:oHTML:ValByName( 'head.strCCusto' ), 'Centro de Custos' ) aAdd( oProcess:oHTML:ValByName( 'cols.strCCusto' ), TQB->TQB_CCUSTO ) // Inclusão de Multa // Inclusão de Notificação Case cOrigin == 'MNTW060' .Or. cOrigin == 'MNTW061' aAdd( oProcess:oHTML:ValByName( 'it1.TEXTO2' ), 'Recebemos a notificação de multa abaixo apresentada, a qual identificada pelo sistema de rastreador que o Sr(a) é o condutor.' ) aAdd( oProcess:oHTML:ValByName( 'it1.TEXTO3' ), 'Notificamos que, conforme prevê a CLT em seu art. 462 § 1º, o desconto da multa + 5% de taxa administrativa, será realizado em sua folha de pagamento.' ) aAdd( oProcess:oHTML:ValByName( 'it1.TEXTO4' ), 'Informamos que caso queira indicar o condutor na infração descriminada abaixo é necessário entrar em contato com o departamento de frota no prazo de 15 dias, a contar de hoje.' +; 'Ciente da responsabilidade de arcar com o custo, caso seja lavrada a multa por não identificação do condutor.' ) aAdd( oProcess:oHTML:ValByName( 'it1.TEXTO5' ), 'Caso tenha interesse em realizar o parcelamento da multa, desde que o valor de cada parcela não seja inferior a R$100,00, o condutor deve procurar também o Departamento de Frota no prazo supracitado.' ) EndCase Return oProcess |