Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

Versão 1 Próxima »

Função: __SetPicture

Define o comportamento de aplicação de picture numérica no sistema, para operações de entrada de dados via instrução [ @ ... SAY/GET ... PICTURE ] , bem como o comportamento na formatação de dados numéricos em string através da função Advpl Transform(), quando utilizamos a função de picture "@E", para formatar um dado numérico em string utilizando o formato Europeu ( onde a vírgula é usada como separador decimal e ponto(s) utilizado(s) como separador(es) de milhar ). 

__SetPicture ( [ cPictMode] ) --> cPictUsed

NomeTipoDescriçãoObrigatórioReferência
cPictModeCaracterString para definir o comportamento da aplicação da picture de formatação numérica. Os valores considerados são : DEFAULT e/ou AMERICAN. Veja maiores detalhes sobre o significado de cada uma destas opções nas observações da função.
    cPictUsed(caracter)
  • Retorna a string correspondente à aplicação de picture numérica em uso no sistema.

Na linguagem Advpl, a aplicação de pictures numéricas  "@E" nas pictures de entrada de dados / visualização ( @ GET / SAY ) e/ou na função de formatação Transform(), faz com que a formatação aplicada ao número seja feita em formato Europeu ( onde a vírgula é usada como separador decimal e ponto(s) utilizado(s) como separador(es) de milhar ). 

Através da função __SetPicture(), quando chamada com o parâmetro  "AMERICAN", podemos alterar o comportamento desta formatação específica, para que a formatação aplicada permaneça em formato americano ( onde o ponto é usado como separador decimal e vírgula(s) utilizada(s) como separador(es) de milhar ), mesmo que a função  "@E" esteja explícita na picture.

Caso especificada uma nova formatação, os únicos valores válidos como parâmetro são as strings  "DEFAULT" e  "AMERICAN", sem espaços, e com caixa alta ( todas as letras maiúsculas ). Quaisquer outros valores serão considerados inválidos, e serão ignorados pela função, sem a emissão de mensagem de erro ou advertência, mantendo a configuração de comportamento inalterada.

User Function TSTSETP()Local cOldCfgLocal nNumTeste := 123456.78// Mostra na tela um numero formatado e a configuração atual em uso // Deve ser mostrado 123.456,78 ( formato europeu ) MsgStop( Transform ( nNumTeste , "@E 999,999.99") , "Configuracao "+__SetPicture() )// retorna a configuração atualmente em uso // e Troca a configuração atual para padrão americano cOldCfg := __SetPicture("AMERICAN")// Mostra na tela um numero formatado e a configuração atual em uso // Deve ser mostrado 123,456.78 ( formato americano ) MsgStop( Transform ( nNumTeste , "@E 999,999.99") , "Configuracao "+__SetPicture() )// Restaura a configuração anterior __SetPicture(cOldCfg)// Mostra na tela um numero formatado e a configuração atual em uso // Deve ser mostrado 123.456,78 ( formato europeu ) MsgStop( Transform ( nNumTeste , "@E 999,999.99") , "Configuracao "+__SetPicture() )Return
Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

  • Sem rótulos