Ações de emulação de terminal
O Power Automate fornece integração com emuladores de terminal por meio das ações Emulação de terminal. Essas ações permitem que você lide com terminais e mainframes e execute várias operações neles, como mover o cursor, definir e obter texto e enviar teclas.
Antes de implantar qualquer ação de terminal, use a ação Abrir sessão de terminal para abrir uma nova conexão com o provedor instalado.
Importante
Antes de tentar se conectar a uma sessão de terminal, verifique se a sessão de terminal real já esteja aberta em sua máquina.
Se você instalou o Micro Focus Reflection em seu computador, escolha a respectiva opção no parâmetro Provedor da ação e preencha a configuração necessária.
Se você instalou outro provedor, selecione HLLAPI que funciona com a maioria dos provedores de emulação de terminal.
Dependendo do provedor que você está usando, selecione o arquivo de DLL de HLLAPI apropriado, localizado em sua pasta de instalação. Na lista a seguir, você pode ver os nomes dos arquivos de DLL de HLLAPI de alguns provedores de emulação de terminal populares:
- RocketSoftware BlueZone: ehlapi64.dll
- IBM Personal Communications: EHLAPI32.dll
- MicroFocus Rumba: System/ehlapi32.Dll
- Cybelesoft zScope: zHllap32.dll
Observação
Não há suporte atualmente para a DLL HLLAPI do Windows (WinHLLAPI).
Depois de abrir uma sessão de terminal e concluir todas as operações desejadas, encerre a conexão usando a ação Fechar sessão de terminal. Se você não fechar a conexão, alguns provedores não permitirão que você se conecte novamente à sessão já aberta sem reiniciar o software ou a conexão.
Abrir sessão de terminal
Abra uma nova sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Provider | N/D | Reflection da Micro Focus, HLLAPI | Reflection da Micro Focus | A emulação de terminal a ser usada |
HLLAPI DLL path | Não | Arquivo | A DLL HLLAPI do provedor. Nome padrão da RocketSoftware BlueZone: 'ehlapi64.dll'. Nome padrão do IBM Personal Communications: 'EHLAPI32.dll'. Caminho padrão do MicroFocus Rumba: 'System/ehlapi32.Dll'. Nome padrão do Cybelesoft zScope: 'zHllap32.dll'. Outro provedor que oferece uma HLLAPI DLL em sua pasta de instalação. | |
Installation path | Não | Pasta | O caminho de instalação do aplicativo do provedor no sistema de arquivos do usuário | |
Configuration | N/D | Perfil existente, especificar conexão | Perfil existente | Escolha 'Perfil existente' para selecionar um arquivo que contém uma conexão de emulação de terminal pré-configurada. Escolha 'Especificar conexão' para especificar o tipo de conexão, o endereço do host e a porta. |
Session name | Não | Valor do texto | O nome da sessão à qual se conectar. O nome abreviado HLLAPI e é um identificador exclusivo para a sessão do host. Ele pode ser encontrado nas definições de configuração do emulador do Terminal. | |
Host type | N/D | IBM 3270, IBM 5250 | IBM 3270 | O tipo de host da conexão |
Profile | Não | Arquivo | O arquivo que contém a conexão pré-configurada | |
Host address | Não | Valor do texto | O endereço do host ao qual se conectar | |
Port | Não | Valor numérico | A porta a ser usada para esta conexão | |
Attach to running session | N/D | Valor booliano | False | Especifica se deve anexar a uma sessão de terminal aberta/em execução no momento |
Variáveis produzidas
Argumento | Type | Descrição |
---|---|---|
TerminalSession | Sessão de terminal | A sessão de terminal específica a ser usada com os comandos posteriores de emulação de terminal |
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Erro de perfil | Profile error |
Fechar sessão de terminal
Feche uma sessão de terminal aberta.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session to close | Não | Sessão de terminal | A sessão de terminal aberta anteriormente |
Variáveis produzidas
Essa ação não produz variáveis.
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Mover cursor na sessão de terminal
Move o cursor do terminal para a posição especificada.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual trabalhar | |
Row | Não | Valor numérico | A posição vertical do cursor na tela | |
Column | Não | Valor numérico | A posição horizontal do cursor na tela |
Variáveis produzidas
Essa ação não produz variáveis.
Exceções
Exceção | Descrição |
---|---|
Screen position out of bounds | Indica que a posição de tela está fora dos limites |
Position commands aren't supported by the emulator | Indica que não há suporte para os comandos de posição usados pelo emulador |
Operation is unavailable for this session type | Indica que a operação não está disponível para este tipo de sessão |
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Obter texto de sessão de terminal
Obter texto de uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual trabalhar | |
Get text from | N/D | Campo, tela inteira, posição do cursor, posição específica | Campo | O local de onde o texto será obtido |
Get field by | N/D | Rótulo, índice, posição | Label | Especifica como pesquisar o campo |
Label | Não | Valor do texto | O rótulo do campo a ser pesquisado | |
Index | Não | Valor numérico | O índice do campo a ser pesquisado | |
Text length | Não | Valor numérico | O tamanho do texto a ser recebido | |
Row | Não | Valor numérico | A posição vertical do campo na tela | |
Column | Não | Valor numérico | A posição horizontal do campo na tela |
Variáveis produzidas
Argumento | Type | Descrição |
---|---|---|
TerminalText | Valor do texto | O texto recuperado da sessão de terminal |
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Field index out of bounds | Indica que o índice do campo está fora dos limites |
Field label not found | Indica que o rótulo do campo não existe |
Screen position out of bounds | Indica que a posição de tela está fora dos limites |
No field found at the given position | Indica que não existe campo na posição especificada |
Terminal screen is unformatted | Indica que a tela do terminal não está formatada |
Position commands aren't supported by the emulator | Indica que não há suporte para os comandos de posição usados pelo emulador |
Operation is unavailable for this session type | Indica que a operação não está disponível para este tipo de sessão |
Definir texto em uma sessão de terminal
Defina texto em uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual trabalhar | |
Texto | Não | Entrada direta criptografada ou Valor do texto | O texto a ser definido no local especificado | |
Definir texto | N/D | Posição do cursor, Campo | Campo | O local para onde o texto será definido |
Get field by | N/D | Rótulo, índice, posição | Label | Especifica como pesquisar o campo |
Label | Não | Valor do texto | O rótulo do campo a ser pesquisado | |
Index | Não | Valor numérico | O índice do campo na tela | |
Row | Não | Valor numérico | A posição vertical do campo na tela | |
Column | Não | Valor numérico | A posição horizontal do campo na tela | |
Treat @ character as literal | N/A | Valor booliano | False | Marque esta caixa para enviar o caractere '@' literalmente. Deixe esta opção desabilitada para enviá-la como um caractere especial |
Variáveis produzidas
Essa ação não produz variáveis.
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Field index out of bounds | Indica que o índice do campo está fora dos limites |
Field label not found | Indica que o rótulo do campo não existe |
Screen position out of bounds | Indica que a posição de tela está fora dos limites |
No field found at the given position | Indica que não existe campo na posição especificada |
Terminal screen is unformatted | Indica que a tela do terminal não está formatada |
Position commands aren't supported by the emulator | Indica que não há suporte para os comandos de posição usados pelo emulador |
Operation is unavailable for this session type | Indica que a operação não está disponível para este tipo de sessão |
Input text was rejected | Indica que o texto de entrada foi rejeitado |
Enviar chave para sessão de terminal
Envie uma tecla de controle para uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual trabalhar | |
Control key | N/D | Transmitir, Cursor Alt, Atenção, Backspace, guia Voltar, Bloquear alternar, Interromper, Cancelar, Centralizar, Limpar, Limpar comunicação, Limpar exibição, Limpar linha, Limpar página, Limpar partição, Vírgula, Linha de comando, Janela de comando, Escrever, Ctrl+F1, Ctrl+F2, Ctrl+F3, Ctrl+F4, Ctrl+F5, Ctrl+F6, Ctrl+F7, Ctrl+F8, Ctrl+F9, Ctrl+F10, Ctrl+F11, Ctrl+F12, Ctrl+Shift+F1, Ctrl+Shift+F2, Ctrl+Shift+F3, Ctrl+Shift+F4, Ctrl+Shift+F5, Ctrl+Shift+F6, Ctrl+Shift+F7, Ctrl+Shift+F8, Ctrl+Shift+F9, Ctrl+Shift+F10, Ctrl+Shift+F11, Ctrl+Shift+F12, Cursor piscando, Cursor selecionar, Decimal, Excluir, Excluir caractere, Excluir linha, Excluir palavra, Destrutivo espaço traseiro, Desconectar, Duplo, Baixo, Baixo duplo, Dup, Duplicar, Editar script, Fim da tecla, Fim do campo, Apagar EOF, Apagar EOL, Apagar EOP, Apagar entrada, Escape ExtGr, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23, F24, F25, F26, F27, F28, F29, F30, F31, F32, F33, F34, F35, F36, F37, F38, F39, F40, F41, F42, F43, F44, F45, F46, F47, F48, Delimitador de campo, saída de campo, marca de campo, menos campo, campo mais, encontrar, reinicialização forçada, Ajuda, Hex, Hex 00, Hex 01, Hex 02, Hex 03, Hex 04, Hex 05, Hex 06, Hex 07, Hex 08, Hex 09, Hex 0A, Hex 0B, Hex 0C, Hex 0D, Hex 0E, Hex 0F, Hex 10, Hex 11, Hex 12, Hex 13, Hex 14, Hex 15, Hex 16, Hex 17, Hex 18, Hex 19, Hex 1A, Hex 1B, Hex 1C, Hex 1D, Hex 1E, Hex 1F, Hex 7F, Manter, Manter limpo, Manter definido, Home, Home down, Home up, Inserir, Inserir caractere, Inserir aqui, Inserir linha, Inserir modo, tecla inválida, KeyPad0, KeyPad1, KeyPad2, KeyPad3, KeyPad4, KeyPad5, KeyPad6, KeyPad7, KeyPad8, KeyPad9, Esquerda, Dupla esquerda, Avanço de linha, Menos, Alternar monitor, Nova linha, Próxima página, Próxima tela, Próxima palavra,, PA1, PA2, PA3, Página, Página abaixo, Página acima, Pan à esquerda, Pan à direita, Pular partição, PF1, PF2, PF3, PF4, Plus Cr, Palavra anterior, PrevPage, PrevScreen, Imprimir, Imprimir linha, Imprimir mensagem, tela de envio, remover, substituir, redefinir, retornar, campo de reserva, direito, direito duplo, rolar para baixo, rolar para cima, linha Rile, executar script, rolar para baixo, rolar esquerda, Rolar para a direita, Rolar para cima, Selecionar, Enviar, Enviar resposta de volta, Enviar exclusão, Enviar linha, Enviar mensagem, Shift + Backspace, Shift + Excluir, Shift + Baixo, Shift+F1, Shift+F2, Shift+F3, Shift+F4, Shift+F5, Shift+F6, Shift+F7, Shift+F8, Shift+F9, Shift+F10, Shift+F11, Shift+F12, Shift+F13, Shift+F14, Shift+F15, Shift F16, Shift+F17, Shift+F18, Shift+F19, Shift+F20, Shift+Home, Shift+Insert, Shift+Left, Shift+Print screen, Shift+Right, Shift+Up, Solicitação do sistema, Tab, Tek zoom, Termo página seguinte, Termo página anterior, Teste, Assistente de texto começar em negrito, Assistente de texto começar em negrito, Assistente de texto começar sublinhado, Assistente de texto na parte inferior da página, Retorno do suporte de texto, Centro de assistência de texto, Assistente de texto terminar em negrito, Assistente de texto fim da linha, assistente de texto meio índice para baixo, assistente de texto meio índice para cima, símbolos de inserção de assistente de texto, próxima parada de assistente de texto, próxima coluna de texto assistida, final de página de assistente de texto, espaço necessário de assistente de texto, guia necessária de assistente de texto, parada de assistente de texto, Assistente de texto avanço da guia de texto, Assistente de texto topo da página e, Sublinhado de palavra de assistente de texto, Rastrear Alternância Udk 10, Udk 6, Udk 7, Udk 8, Udk 9, Udk 11, Udk 12, Udk 13, Udk 14, Udk 15, Udk 16, Udk 17, Udk 18, Udk 19, Udk 20, Up, Up duplo | Transmitir | A tecla para enviar à sessão |
Variáveis produzidas
Essa ação não produz variáveis.
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Key not supported | Indica que não há suporte para a tecla |
Aguardar texto na sessão de terminal
Aguarde até que um texto específico seja exibido em uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal aberta anteriormente | |
Text to wait for | Não | Valor do texto | A exibição do texto ou da expressão regular na tela do terminal ou em um campo especificado a ser aguardada | |
Regular expression | N/D | Valor booliano | False | Especifica se é necessário aguardar uma expressão regular em vez de texto sem formatação |
Wait for text location | N/D | Tela, Campo | Tela | O local no qual aguardar a exibição do texto |
Get field by | N/D | Rótulo, índice, posição | Label | Especifica como pesquisar o campo |
Label | Não | Valor do texto | O rótulo do campo a ser pesquisado | |
Index | Não | Valor numérico | O índice do campo a ser pesquisado | |
Row | Não | Valor numérico | A posição vertical do campo na tela | |
Column | Não | Valor numérico | A posição horizontal do campo na tela | |
Timeout | Sim | Valor numérico | 0 | O tempo máximo de espera |
Observação
O mecanismo de expressão regular do Power Automate é o .NET. Para encontrar mais informações sobre expressões regulares, vá para Linguagem de Expressões Regulares – Referência Rápida.
Variáveis produzidas
Essa ação não produz variáveis.
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Field index out of bounds | Indica que o índice do campo está fora dos limites |
Field label not found | Indica que o rótulo do campo não existe |
Screen position out of bounds | Indica que a posição de tela está fora dos limites |
No field found at the given position | Indica que não existe campo na posição especificada |
Terminal screen is unformatted | Indica que a tela do terminal não está formatada |
Position commands aren't supported by the emulator | Indica que não há suporte para os comandos de posição usados pelo emulador |
Operation is unavailable for this session type | Indica que a operação não está disponível para este tipo de sessão |
Timeout expired | Indica que o tempo limite expirou |
Procurar texto na sessão de terminal
Procurar todas as ocorrências de um texto específico em uma sessão de terminal
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor padrão | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal aberta anteriormente | |
Texto para pesquisa | Não | Valor do texto | O texto ou a expressão regular a procurar na tela do terminal | |
Regular expression | N/A | Valor booliano | False | Especifica se é necessário procurar uma expressão regular em vez de texto sem formatação |
Tamanho da coluna | Não | Valor numérico | 80 | O número de colunas na tela do terminal |
Observação
O mecanismo de expressão regular do Power Automate é o .NET. Para encontrar mais informações sobre expressões regulares, vá para Linguagem de Expressões Regulares – Referência Rápida.
Variáveis produzidas
Argumento | Type | Descrição |
---|---|---|
FindResults | Tabela de dados | Os resultados da pesquisa recuperados da tela da sessão de terminal |
Exceções
Exceção | Descrição |
---|---|
Error communicating with the emulator | Indica um problema ao conectar ao emulador |
Texto não encontrado | Indica que o texto que estava procurando não foi encontrado |
Expressão regex inválida | Indica que a expressão regular usada é inválida |