Ações de emulação terminal
O Power Automate proporciona integração com emuladores terminais através das ações Emulação terminal. Estas ações permitem-lhe lidar com terminais e computadores principais e realizar operações, tais como mover o cursor, configurar e obter texto, e enviar chaves.
Antes de implementar quaisquer ações terminais, utilize a ação Abrir sessão terminal para abrir uma nova ligação com o fornecedor instalado.
Importante
Antes de tentar ligar-se a uma sessão terminal, certifique-se de que a sessão terminal já está aberta na sua máquina.
Se instalou o Micro Focus Reflection no seu computador, escolha a respetiva opção no parâmetro Fornecedor da ação e preencha a configuração necessária.
Se instalou outro fornecedor, selecione HLLAPI que funciona com a maioria dos fornecedores de emulação terminal.
Dependendo do fornecedor que estiver a utilizar, selecione o ficheiro DLL HLLAPI apropriado localizado na sua pasta de instalação. Na lista seguinte, pode ver os nomes dos ficheiros DLL HLLAPI de alguns fornecedores de emulação de terminais populares:
- RocketSoftware BlueZone: ehlapi64.dll
- Comunicações Pessoais IBM: EHLAPI32.dll
- MicroFocus Rumba: System/ehlapi32.Dll
- Cybelesoft zScope: zHllap32.dll
Nota
Atualmente, a DLL HLLAPI do Windows (WinHLLAPI) não é suportada.
Depois de abrir uma sessão terminal e de completar todas as operações desejadas, termine a ligação utilizando a ação Fechar sessão terminal. Se não fechar a ligação, alguns fornecedores não o deixarão ligar novamente à sessão já aberta sem reiniciar o software ou a ligação.
Abrir sessão de terminal
Abrir uma nova sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Provider | N/D | Micro focus reflection, HLLAPI | Micro focus reflection | A emulação de terminal a utilizar |
HLLAPI DLL path | Não | Ficheiro | O HLLAPI DLL do fornecedor. Nome predefinido de RocketSoftware BlueZone: 'ehlapi64.dll'. Nome predefinido de IBM Personal Communications: 'EHLAPI32.dll'. Caminho predefinido de MicroFocus Rumba: 'System/ehlapi32.Dll'. Nome predefinido de Cybelesoft zScope: 'zHllap32.dll'. Qualquer outro fornecedor que ofereça um HLLAPI DLL na respetiva pasta de instalação. | |
Installation path | Não | Pasta | O caminho de instalação da aplicação do fornecedor no sistema de ficheiros do utilizador | |
Configuration | N/D | Perfil existente, Especificar ligação | Perfil existente | Escolha "Perfil existente" para selecionar um ficheiro que contenha uma ligação de emulação de terminal pré-configurada. Escolha "Especificar ligação" para especificar o tipo de ligação, o endereço de host e a porta. |
Session name | Não | Valor de texto | O nome da sessão de destino da ligação. O nome abreviado de HLLAPI e é um identificador exclusivo para a sessão de anfitrião. Pode ser encontrado nas definições de configuração do emulador de terminal. | |
Host type | N/D | IBM 3270, IBM 5250 | IBM 3270 | O tipo de anfitrião da ligação |
Profile | Não | Ficheiro | O ficheiro que contém a ligação pré-configurada | |
Host address | Não | Valor de texto | O endereço do anfitrião de destino da ligação | |
Port | Não | Valor numérico | A porta a utilizar para esta ligação | |
Attach to running session | N/D | Valor booleano | Falso | Especifica se pretende anexar a uma sessão de terminal aberta/em execução |
Variáveis produzidas
Argumento | Tipo | Descrição |
---|---|---|
TerminalSession | Sessão terminal | A sessão de terminal específica a utilizar com comandos de emulação de terminal posteriores |
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Erro do perfil | Erro do perfil |
Fechar a sessão de terminal
Fechar uma sessão de terminal aberta.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session to close | Não | Sessão terminal | A sessão de terminal previamente aberta |
Variáveis produzidas
Esta ação não produz quaisquer variáveis.
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Mover cursor na sessão de terminal
Mover o cursor do terminal na posição especificada.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual pretende trabalhar | |
Row | Não | Valor numérico | A posição vertical do cursor no ecrã | |
Column | Não | Valor numérico | A posição horizontal do cursor no ecrã |
Variáveis produzidas
Esta ação não produz quaisquer variáveis.
Exceções
Exceção | Descrição |
---|---|
Posição do ecrã fora dos limites | Indica que a posição do ecrã está fora dos limites |
Os comandos de posição não são suportados pelo emulador | Indica que os comandos de posição utilizados não são suportados pelo emulador |
Operação indisponível para este tipo de sessão | Indica que a operação não está disponível para este tipo de sessão |
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Obter texto a partir de uma sessão de terminal
Obter texto a partir de uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual pretende trabalhar | |
Get text from | N/D | Campo, Ecrã inteiro, Posição do cursor, Posição específica | Campo | A localização a partir da qual o texto deve ser obtido |
Get field by | N/D | Etiqueta, Índice, Posição | Label | Especifica como procurar pelo campo |
Label | Não | Valor de texto | A etiqueta do campo a pesquisar | |
Index | Não | Valor numérico | O índice de campos a pesquisar | |
Text length | Não | Valor numérico | O comprimento do texto a receber | |
Row | Não | Valor numérico | A posição vertical do campo no ecrã | |
Column | Não | Valor numérico | A posição horizontal do campo no ecrã |
Variáveis produzidas
Argumento | Tipo | Descrição |
---|---|---|
TerminalText | Valor de texto | O texto obtido a partir da sessão de terminal |
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Índice de campos fora dos limites | Indica que o índice de campos está fora dos limites |
Etiqueta do campo não encontrada | Indica que a etiqueta do campo não existe |
Posição do ecrã fora dos limites | Indica que a posição do ecrã está fora dos limites |
Não foi encontrado nenhum campo na posição indicada | Indica que não existe nenhum campo na posição indicada |
Ecrã do terminal não formatado | Indica que o ecrã do terminal não está formatado |
Os comandos de posição não são suportados pelo emulador | Indica que os comandos de posição utilizados não são suportados pelo emulador |
Operação indisponível para este tipo de sessão | Indica que a operação não está disponível para este tipo de sessão |
Definir texto numa sessão de terminal
Definir texto numa sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão terminal | A sessão de terminal com a qual pretende trabalhar | |
Texto | Não | Entrada direta encriptada ou Valor de texto | O texto a definir na localização especificada | |
Definir texto | N/D | Posição do cursor, Campo | Campo | A localização onde o texto deve ser definido |
Get field by | N/D | Etiqueta, Índice, Posição | Label | Especifica como o campo deve ser procurado |
Label | Não | Valor de texto | A etiqueta do campo a pesquisar | |
Index | Não | Valor numérico | O índice de campos no ecrã | |
Row | Não | Valor numérico | A posição vertical do campo no ecrã | |
Column | Não | Valor numérico | A posição horizontal do campo no ecrã | |
Treat @ character as literal | N/A | Valor booleano | Falso | Marque esta caixa para enviar o caráter "@" literalmente. Deixe esta opção desativada para enviá-la como um carácter especial |
Variáveis produzidas
Esta ação não produz quaisquer variáveis.
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Índice de campos fora dos limites | Indica que o índice de campos está fora dos limites |
Etiqueta do campo não encontrada | Indica que a etiqueta do campo não existe |
Posição do ecrã fora dos limites | Indica que a posição do ecrã está fora dos limites |
Não foi encontrado nenhum campo na posição indicada | Indica que não existe nenhum campo na posição indicada |
Ecrã do terminal não formatado | Indica que o ecrã do terminal não está formatado |
Os comandos de posição não são suportados pelo emulador | Indica que os comandos de posição utilizados não são suportados pelo emulador |
Operação indisponível para este tipo de sessão | Indica que a operação não está disponível para este tipo de sessão |
O texto de entrada foi rejeitado | Indica que o texto de entrada foi rejeitado |
Enviar a tecla para a sessão de terminal
Enviar uma tecla de controlo para uma sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal com a qual pretende trabalhar | |
Control key | N/D | Transmitir, Cursor alternativo, Atenção, Tecla de Retrocesso, Tabulação anterior, Ativar/Desativar bloquear, Pausa, Cancelar, Centrar, Limpar, Limpar comunicação, Limpar ecrã, Limpar linha, Limpar página, Limpar partição, Vírgula, Linha de comandos, Janela de comandos, Compor, 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, Intermitência do cursor, Selecionar cursor, Decimal, Eliminar, Eliminar caráter, Eliminar linha, Eliminar palavra, Retrocesso destrutivo, Desligar, Fazer, Para baixo, Para baixo duplo, Dup, Duplicado, Editar script, Fim da tecla, Fim do campo, Apagar EOF, Apagar EOL, Apagar EOP, Apagar entrada, Esc, 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 campos, Sair do campo, Marcar campo, Campo menos, Campo mais, Localizar, Reinicialização total, 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, Espera, Limpar espera, Definir espera, Home, Home para baixo, Home para cima, Inserir, Inserir caráter, Inserir aqui, Inserir linha, Modo de inserção, Tecla inválida, 0 do Teclado Numérico, 1 do Teclado Numérico, 2 do Teclado Numérico, 3 do Teclado Numérico, 4 do Teclado Numérico, 5 do Teclado Numérico, 6 do Teclado Numérico, 7 do Teclado Numérico, 8 do Teclado Numérico, 9 do Teclado Numérico, Esquerda, Esquerda dupla, Avanço de linha, Subtração, Ativar/desativar monitor, Nova linha, Página Seguinte, Ecrã seguinte, Palavra seguinte, Nulo, NumLock, PA1, PA2, PA3, Página, Page down, Page up, Deslocamento panorâmico para a esquerda, Deslocamento panorâmico para a direita, Saltar partição, PF1, PF2, PF3, PF4, Mais Cr, Palavra anterior, PrevPage, PrevScreen, Imprimir, Imprimir linha, Imprimir Mensagem, Print screen, Remover, Substituir, Repor, Voltar, Campo de reserva, Direita, Direita dupla, Rolar para baixo, Rolar para cima, Linha de régua, Executar script, Deslocar para baixo, Deslocar para a esquerda, Deslocar para a direita, Deslocar para cima, Selecionar, Enviar, Enviar resposta, Enviar eliminar, Enviar linha, Enviar Mensagem, Shift+Tecla de Retrocesso, Shift+Delete, Shift+Seta para 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+Seta para a esquerda, Shift+Print screen, Shift+Seta para a direita, Shift+Seta para cima, Reinicialização parcial, Pedido do sistema, Tabulação, Tek zoom, Termo página seguinte, Termo página anterior, Testar, Assistente de texto iniciar negrito, Assistente de texto início da linha, Assistente de texto iniciar sublinhado, Assistente de texto parte inferior da página, Assistente de texto símbolo de retorno, Assistente de texto centrar, Assistente de texto terminar negrito, Assistente de texto fim da linha, Assistente de texto meio índice para baixo, Assistente de texto meio índice para cima, Assistente de texto inserir símbolos, Assistente de texto paragem seguinte, Assistente de texto coluna de texto seguinte, Assistente de texto fim da página, Assistente de texto espaço necessário, Assistente de texto separador necessário, Assistente de texto paragem, Assistente de texto avançar para tabulação seguinte, Assistente de texto parte superior da página, Assistente de texto sublinhar palavra, Ativar/Desativar Rastreio, 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, Para cima, Para cima duplo | Transmitir | A tecla a submeter à sessão |
Variáveis produzidas
Esta ação não produz quaisquer variáveis.
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Tecla não suportada | Indica que a tecla não é suportada |
Esperar por texto numa sessão de terminal
Esperar que um texto específico apareça numa sessão de terminal.
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão de terminal | A sessão de terminal previamente aberta | |
Text to wait for | Não | Valor de texto | O texto ou expressão regular que pretende esperar até que apareça no ecrã do terminal ou num campo especificado | |
Regular expression | N/D | Valor booleano | Falso | Especifica se pretende esperar por uma expressão regular em vez de texto simples |
Wait for text location | N/D | Ecrã, Campo | Ecrã | A localização onde pretende esperar que o texto apareça |
Get field by | N/D | Etiqueta, Índice, Posição | Label | Especifica como o campo deve ser procurado |
Label | Não | Valor de texto | A etiqueta do campo a pesquisar | |
Index | Não | Valor numérico | O índice de campos a pesquisar | |
Row | Não | Valor numérico | A posição vertical do campo no ecrã | |
Column | Não | Valor numérico | A posição horizontal do campo no ecrã | |
Limite de tempo excedido | Sim | Valor numérico | 0 | A quantidade máxima de tempo a esperar |
Nota
O motor de expressão regular do Power Automate é .NET. Para encontrar mais informações sobre expressões regulares, aceda a Linguagem de Expressão Regular – Referência Rápida.
Variáveis produzidas
Esta ação não produz quaisquer variáveis.
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Índice de campos fora dos limites | Indica que o índice de campos está fora dos limites |
Etiqueta do campo não encontrada | Indica que a etiqueta do campo não existe |
Posição do ecrã fora dos limites | Indica que a posição do ecrã está fora dos limites |
Não foi encontrado nenhum campo na posição indicada | Indica que não existe nenhum campo na posição indicada |
Ecrã do terminal não formatado | Indica que o ecrã do terminal não está formatado |
Os comandos de posição não são suportados pelo emulador | Indica que os comandos de posição utilizados não são suportados pelo emulador |
Operação indisponível para este tipo de sessão | Indica que a operação não está disponível para este tipo de sessão |
Tempo limite expirado | Indica que o tempo limite expirou |
Procurar texto numa sessão de terminal
Procurar todas as ocorrências de um texto específico numa sessão de terminal
Parâmetros de entrada
Argumento | Opcional | Aceita | Valor Predefinido | Descrição |
---|---|---|---|---|
Terminal session | Não | Sessão terminal | A sessão de terminal previamente aberta | |
Texto a procurar | Não | Valor de texto | O texto ou expressão regular que pretende procurar no ecrã do terminal | |
Regular expression | N/A | Valor booleano | Falso | Especifica se pretende procurar uma expressão regular em vez de texto simples |
Tamanho da coluna | Não | Valor numérico | 80 | O número das colunas no ecrã do terminal |
Nota
O motor de expressão regular do Power Automate é .NET. Para encontrar mais informações sobre expressões regulares, aceda a Linguagem de Expressão Regular – Referência Rápida.
Variáveis produzidas
Argumento | Tipo | Descrição |
---|---|---|
FindResults | Tabela de dados | Os resultados da pesquisa obtidos no ecrã da sessão de terminal |
Exceções
Exceção | Descrição |
---|---|
Erro ao comunicar com o emulador | Indica um problema ao ligar ao emulador |
Texto não encontrado | Indica que o texto que procura não foi encontrado |
Expressão regex inválida | Indica que a Expressão Regular usada é inválida |