Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
firstline1
linenumberstrue
#Include 'Protheus.ch'

User Function AT850ACT(oPanel) 
Local aProposta := PARAMIXB[1][1] //Array com dados da proposta selecionada
Local oPanel := PARAMIXB[1]2] //Objeto onde serão incluídos novos campos

Local aArrayCombo:= {"SIM", "NÃO"} //Array de conteudo Combo box
Local cCampoBox    := "SIM" //Valor inicial do combo   
Local cCampoStr    := "STRING" //Conteúdo do campo caracter
Local dCampoData   := Stod("20230322") //Conteúdo do campo data
Local nCampoNum    := 123456789 //Conteúdo do campo numérico

//-----------------------------------------------------------//
//EXEMPLO 1 CAMPO NUMÉRICO:
@ 175,010;  //Coordenada vertical e Horizontal em pixels / Construtor de objeto da descrição
        SAY "Campo Numérico" OF oPanel; //Título do da descrição do campo
        SIZE 200,009 PIXEL //Indica a largura e altura em pixels do objeto.

@ 175,230; //Coordenada vertical e Horizontal em pixels / Construtor de objeto container do campo
        MsGet nCampoNum ; //"MsGet" Para numéricos e caracteres, "Combobox" para combo box
        PICTURE "@E 99,999,999,999.99" ; //Picture do campo (X3_PICTURE)
        WHEN .F.; //Se é possível editar o campo - booleano
        VALID .T.; //validação do campo - booleano
        OF oPanel SIZE 050,010 PIXEL  //Indica a largura e altura em pixels do objeto.

//-----------------------------------------------------------//
//EXEMPLO 2 CAMPO CARACTER:
@ 190,010;  
        SAY "Campo Caracter" OF oPanel; 
        SIZE 200,009 PIXEL 

@ 190,230; 
        MsGet cCampoStr;
        PICTURE "@!";
        WHEN .F.;
        VALID .T.;
        OF oPanel SIZE 050,010 PIXEL

//-----------------------------------------------------------//
//EXEMPLO 3 CAMPO COMBO BOX:
@ 205,010;
        SAY "Campo Combo Box" OF oPanel;
        SIZE 200,009 PIXEL

@ 205,230;
        Combobox cCampoBox ;
        ITEMS aArrayCombo;
        VALID .T.;
        OF oPanel SIZE 030,010 PIXEL

//-----------------------------------------------------------//
//EXEMPLO 4 CAMPO DATA:
@ 220,010;
        SAY "Campo Data" OF oPanel;
        SIZE 200,009 PIXEL

@ 220,230;
        MsGet dCampoData;
        WHEN .F.;
        VALID .T.;
        OF oPanel SIZE 050,010 PIXEL

Return

  oPanel //Importante retorno do Objeto para atualização da tela  

Obs.: Note que na coordenada vertical de cada campo é acrescido 15 em relação ao campo anterior, e inicia-se em 175, pois o ultimo campo da tela padrão do assistente esta na posição 160. Recomenda-se o acréscimo de 15 para seguir com o alinhamento da tela, porém é possível alterar as posições dos campos que estão sendo incluídos.

...