Partilhar via


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.

Captura de ecrã da ação Abrir sessão terminal.

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.

Captura de ecrã da ação Abrir sessão terminal com a opção HLLAPI selecionada.

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.

Captura de ecrã da ação Fechar a sessão de terminal.

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