Para quem programa em outras linguagens, a coisa mais importante para lembrar é que para atribuir um valor a uma variável deve-se utilizar a combinação de sinais “:=” ou a tecla
            
 Exemplo:
            
            valor := 6; 
            
 ou
            
            6
            valor
            
        
Comandos de Entrada
INPUT
O comando INPUT permite a criação de diversas formas de entrada de dados: campos numéricos, caixas de seleção e caixas de checagem. A possibilidade de personalização do comandos é grande podendo chegar ao nível de limitar o tipo de dado de entrada e a posição da entrada na tela.INPUT simples
Para a entrada de um valor numéricos o comando INPUT é apresentado a rotina a seguir:EXPORT Entrada01()
BEGIN
    LOCAL x;
    INPUT(x);
    MSGBOX(x);
END;INPUT com vários argumentos
O comando INPUT pode ter outros argumentos, conforme pode ser observado na forma de sua sintaxe:INPUT(var,["title"],["label"],["help"], [reset_value], [initial_value])- var: é o nome da variável que será armazenado o valor digitado
- title: Define o título do campo de entrada
- label: Esse rótulo será apresentado ao lado do campo de entrada da variável
- help: é a mensagem que aparece na parte inferior da tela e serve para indicar ao usuário algum recado.
- reset_value: valor que será atribuído ao resetar o input
- initial_value: valor inicial que aparecerá no campo de entrada.
EXPORT Entrada01()
BEGIN
    LOCAL x;
    INPUT(x, "Entrada de valores","Valor de x","Esse valor será apresentado na tela", 2, 1);
    MSGBOX(x);
END;INPUT com várias variáveis
Podemos incluir a entrada de mais campos no mesmo INPUT, para isso as variáveis devem ser passadas dentro de chaves (“{}”). Note a diferença no comando INPUT:EXPORT Entrada01()
BEGIN
    LOCAL x, y;
    INPUT({x, y});
    MSGBOX("Valor de x: " + x + ", valor de y:" + y);
END;A tela resultante:
Essa forma de entrada pode ser alterada para incluir mais campos (ainda não descobri qual o limite).
INPUT com várias variáveis e argumentos
Da mesma forma que se pode personalizar o comando INPUT, podemos fazer nesse caso, veja a sintaxe:INPUT({vars},[“title”],[{“labels”}], [{“help”}], [{reset_values}], [{initial_values}])EXPORT Entrada01()
BEGIN
    LOCAL x, y;
    INPUT({x, y}, "Entrada de valores", {"Valor de x", "Valor de y"} , {"Help do X","Help do Y"} , {2,3}, {4, 5});
    MSGBOX("Valor de x: " + x + ", valor de y:" + y);
END;Os argumento do Help serão apresentados conforme o foco da caixa, quando se clicar na caixa do Y, é que será apresentado o Help correspondente.
Configurando o tipo de dados da caixa de entrada
Para o tipo de entrada visto, podemos forçar o usuário a digitar um ou mais tipos de entrada de dados. A sintaxe do comando ficaria assim:INPUT({var,[ types allowed]});Alguns tipos:
| Valor | Significado | 
|---|---|
| -1 | Todos os tipos | 
| 0 | Números reais | 
| 1 | Inteiros | 
| 2 | String | 
| 3 | Números complexos | 
| 4 | Matrizes | 
| 6 | Listas | 
| 8 | Funções | 
| 9 | Números com unidades | 
| 14 | Objetos Cas | 
EXPORT Entrada01()
BEGIN
    LOCAL x;
    INPUT({{x, [0, 1]}});
    MSGBOX(x);
END;Veja o que acontece quando se digita uma lista:
Ou uma string:
Agora modificamos o programa para aceitar Listas ou String:
EXPORT Entrada01()
BEGIN
    LOCAL x;
    INPUT({{x, [2, 6]}});
    MSGBOX(x);
END;INPUT de caixa de seleção.
Para a entrada de uma lista de seleção, partimos do comando INPUT em sua forma simples:INPUT({{var, {choice0, choice1, choice2...}}})EXPORT Entrada01()
BEGIN
    LOCAL op;
    INPUT ({{op, {"Opção 1", "Opção 2", "Opção 3"}}});
    MSGBOX("Opção escolhida: " + op);
END;O resultado apresentado pelo comando MSGBOX será o número referente a posição escolhida, começando a lista com o valor 1.
INPUT de caixa de seleção com argumentos
Podemos configurar os argumentos da caixa de seleção também, a sintaxe é semelhante ao já visto, porém muda apenas o formato da variável:INPUT({{var,{choice0,choice1,choice2...}}},["title"],["label"],["help"],[reset_value],[initial_value])EXPORT Entrada01()
BEGIN
    LOCAL op;
    INPUT ({{op, {"Opção 1", "Opção 2", "Opção 3"}}}, "Caixa de opção","Escolha:", "Selecione a opção", 1, 2);
    MSGBOX("Opção escolhida: " + op);
END;Perceba que o valor correspondente ao initial_value será a opção padrão ao aparecer a caixa de seleção, no nosso caso, o valor 2 implicará na 2ª opção.
INPUT com várias caixas de seleção
Assim como fizermos com as caixas de entrada, também podemos ter várias opções de entrada, o maior cuidado deve ser ao se encadear as chaves:EXPORT Entrada01()
BEGIN
    LOCAL op1, op2;
    INPUT ({ {op1, {"Banana", "Maça", "Laranja"}}, {op2, {"Arroz", "Feijão", "Macarrão"}} });
    MSGBOX("Opção 1: " + op1+", opção 2: " + op2);
END;INPUT com várias caixas de seleção e argumentos
Nesse exemplo, será apresentado a criação de um input com múltiplos campos e com as configurações de campos:EXPORT Entrada01()
BEGIN
    LOCAL op1, op2;
    INPUT ({{op1, {"Banana", "Maça", "Laranja"}}, {op2, {"Arroz", "Feijão", "Macarrão"}} }, "Alimentação", {"Fruta:", "Alimento:"}, {"Selecione a fruta", "Selecione o alimento"}, {1, 1}, {2, 3});
    MSGBOX("Opção 1: " + op1+", opção 2: " + op2);
END;INPUT com caixa de verificação
O comando para caixas de verificação e parecido com o de caixas de seleção, onde n é o grupo de caixas de verificação:INPUT({{var, n}});EXPORT Entrada01()
BEGIN
    LOCAL check;
    INPUT({{check, 1}});
    MSGBOX("Caixa de verificação: " + check);
END;Conforme a caixa for marcada será apresentada a seguinte saída: 0 para caixa desmarcada e 1 para caixa marcada.
INPUT com múltiplas caixas de seleção
Veja o exemplo:EXPORT Entrada01()
BEGIN
    LOCAL check1, check2, check3;
    INPUT({{check1, 1},{check2, 1},{check3, 1}});
    MSGBOX("Caixas de verificação, 01:[" + check1 + "], 02:[" + check2 + "], 03:[" + check3 + "]");
END;INPUT com caixa de verificação e com argumentos
    Igualmente como esse exemplo, podemos definir alguns parâmetros para a caixa de seleção, a sintaxe segue o exemplo dado anteriormente:
    INPUT({{var,n}},["title"],["label"],["help"],[reset_value],[initial_value])EXPORT Entrada01()
BEGIN
    LOCAL check1, check2, check3;
    INPUT({{check1, 1},{check2, 1},{check3, 1}}, "Opções do programa", {"Listar?", "Identar?", "Formatar?"},{"Deseja Listar os elementos?", "Deseja identar os elementos?", "Deseja formartar os elementos?"},{0, 0, 0}, {1, 0, 1});
    MSGBOX("Caixas de verificação, 01:[" + check1 + "], 02:[" + check2 + "], 03:[" + check3 + "]");
END;INPUT com diversos tipos de entrada
Um exemplo mesclando os diversos tipos de entrada:EXPORT Entrada01()
BEGIN
    LOCAL numero1, numero2, opcao, check1, check2;
    INPUT({numero1, {check1, 1},numero2, {opcao, {1,2,3}},{check2, 1}});
    MSGBOX("Valores:, numero:[" + numero1 + "], numero2:[" + numero2 + "], check1:[" + check1 + "], check2:[" + check2 + "], opcao:[" + opcao + "]");
END;E um exemplo mais completo, com vários argumentos setados:
EXPORT Entrada01()
BEGIN
    LOCAL numero1, numero2, opcao, check1, check2;
	INPUT({numero1, {check1, 1},numero2, {opcao, {1,2,3}},{check2, 1}}, "Configurações", {"Valor de N1:", "Caixa 1:", "Valor de N2:", "Opções: ",  "Caixa 2:"}, {"Valor do número 1", "Caixa de seleção 1", "Valor do número 2", "Lista de opções","Caixa de seleção 2"}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0} );
    MSGBOX("Valores:, numero:[" + numero1 + "], numero2:[" + numero2 + "], check1:[" + check1 + "], check2:[" + check2 + "], opcao:[" + opcao + "]");
END;Configurando a posição da caixa de entrada
O comando INPUT permite ainda que seja especificado a posição em que aparecerá a caixa de entrada:INPUT({{var, [{type}], {position_x, length, line}});- Type: é o formato de entrada que se deseja
- Position_x: posição em relação ao eixo x da tela
- Length: largura da caixa de entrada ou da caixa de seleção
- Line: linha em que aparecerá a caixa.
EXPORT Entrada01()
BEGIN
    LOCAL x;
    INPUT({{x, {1,2,3}, {60, 20, 1}}});
    MSGBOX(x);
END;Outro exemplo com mais opções :
EXPORT Entrada01()
BEGIN
    LOCAL x, y, z;
    INPUT({{x, {1,2,3}, {20, 20, 0}}, {y, [-1], {20, 20, 1} }, {z, 1, {20, 20, 2}} });
END;Outro exemplo:
EXPORT Entrada01()
BEGIN
    LOCAL x, y, z;
    INPUT({{x, [2,3], {20, 20, 0}}, {y, [2,3], {60, 20, 0}}, {z, 1, {20, 20, 1}} });
END;E um exemplo com mais parâmetros:
EXPORT Entrada01()
BEGIN
    LOCAL x, y, z;
    INPUT({{x, [2,3], {35, 15, 0}}, {y, [2,3], {75, 15, 0} }, {z, 1, {35, 20, 1}} }, "Configurações", {"Limite Inferior:", "Superior:", "Na sequência?"}, {"Digite o limite inferior", "Digite o limite superior", "Se for marcado, os números serão gerados em sequência"});
END;Atividade
Construa as seguintes janelas de entrada em HP PPL:
- Janela com 1 caixa de entrada para valores Reais e um menu de seleção com valores entre 3 e 7. 
 
- Uma janela com 2 entradas de valores e um menu de seleção com as opções: "$, @, &", no título: "Calculadora estranha":
 
- Janela com 3 caixas de entrada, uma caixa de seleção com as opções: "Somatório, Produtório" e 
            uma caixa de checagem "Mostrar Resultado", título "Cálculo a ser feito"