Działania związane z emulacją terminala

Power Automate umożliwia integrację z terminalami za pośrednictwem akcji emulowania terminali. Czynności te umożliwiają obsługę terminali i komputerów mainframe oraz wykonywanie na nich operacji, jak przesuwanie kursora, ustawianie i pobieranie tekstu oraz wysyłanie klawiszy.

Przed wdrożeniem jakichkolwiek akcji terminalowych należy użyć akcji Otwórz sesję terminalową , aby otworzyć nowe połączenie z zainstalowanym dostawcą.

Ważne

Przed próbą połączenia się z sesją terminala, upewnij się, że aktualna sesja terminala jest już otwarta na twoim komputerze.

Jeśli zainstalowano Micro Focus Reflection na swoim komputerze, wybierz odpowiednią opcję w parametrze Dostawca akcji i uzupełnij wymaganą konfigurację.

Zrzut ekranu akcji Otwórz sesję terminala.

Jeśli zainstalowałeś innego dostawcę, wybierz HLLAPI, który działa z większością dostawców emulacji terminala.

W zależności od używanego providera należy wybrać odpowiedni plik HLLAPI DLL znajdujący się w jego folderze instalacyjnym. Na poniższej liście można zobaczyć nazwy plików HLLAPI DLL niektórych popularnych dostawców emulacji terminala:

  • RocketSoftware BlueZone: ehlapi64.dll
  • IBM Personal Communications: EHLAPI32.dll
  • MicroFocus Rumba: System/ehlapi32.Dll
  • Cybelesoft zScope: zHllap32.dll

Uwaga

Windows HLLAPI DLL (WinHLLAPI) nie jest obecnie obsługiwane.

Zrzut ekranu akcji Open terminal session z zaznaczoną opcją HLLAPI.

Po otwarciu sesji terminala i wykonaniu wszystkich żądanych operacji należy zakończyć połączenie za pomocą akcji Zamknij sesję terminala. Jeśli nie zamkniesz połączenia, niektórzy dostawcy nie pozwolą Ci połączyć się ponownie z już otwartą sesją bez ponownego uruchomienia oprogramowania lub połączenia.

Zrzut ekranu akcji Zamknij sesję terminala.

Otwórz sesję terminalu

Otwórz nową sesję terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Provider Nie dotyczy Usługa Reflection firmy Micro Focus, HLLAPI Usługa Reflection firmy Micro Focus Emulacja terminalu do użycia
HLLAPI DLL path Nie Plik Biblioteka HLLAPI DLL dostawcy. RocketSoftware BlueZone Nazwa domyślna: „ehlapi64.dll”. Domyślna nazwa IBM Personal Communications: „EHLAPI32.dll”. Domyślna ścieżka MicroFocus Rumba: „System / ehlapi32.Dll”. Domyślna nazwa Cybelesoft zScope: „zHllap32.dll”. Każdy inny dostawca, który oferuje w folderze instalacyjnym bibliotekę DLL HLLAPI.
Installation path Nie Folder Ścieżka instalacji aplikacji dostawcy w systemie plików użytkownika
Configuration Nie dotyczy Istniejący profil, Określ połączenie Istniejący profil Wybierz „Istniejący profil”, aby wybrać plik zawierający wstępnie skonfigurowane połączenie emulacji terminala. Wybierz opcję „Określ połączenie”, aby określić typ połączenia, adres hosta i port.
Session name Nie Wartość tekstowa Nazwa sesji, z którą ma zostać nawiązane połączenie. Krótka nazwa HLLAPI jest unikatowym identyfikatorem sesji hosta. Można ją znaleźć w ustawieniach konfiguracyjnych Terminala.
Host type Nie dotyczy IBM 3270, IBM 5250 IBM 3270 Typ hosta połączenia
Profile Nie Plik Plik zawierający wstępnie skonfigurowane połączenie
Host address Nie Wartość tekstowa Adres hosta, z którym ma zostać nawiązane połączenie
Port Nie Wartość liczbowa Port, który ma być używany w tym połączeniu
Attach to running session Nie dotyczy Wartość logiczna Fałsz Określa, czy dołączyć do aktualnie otwartej/uruchomionej sesji terminalu

Utworzone zmienne

Argument Type opis
TerminalSession Terminal session Określona sesja terminalu do użycia z nowszymi poleceniami emulacji terminalu

Wyjątki

Wyjątek Opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Błąd profilu Błąd profilu

Zamknij sesję terminalu

Zamknij otwartą sesję terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session to close Nie Terminal session Uprzednio otwarta sesja terminalu

Utworzone zmienne

Ta akcja nie wywołuje żadnych zmiennych.

Wyjątki

Wyjątek opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem

Przenieś kursor w sesji terminalu

Przenieś kursor terminalu na określoną pozycję.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie Sesja terminalu Sesja terminalu, która ma być używana
Row Nie Wartość liczbowa Pozycja w pionie kursora na ekranie
Column Nie Wartość liczbowa Pozycja w poziomie kursora na ekranie

Utworzone zmienne

Ta akcja nie wywołuje żadnych zmiennych.

Wyjątki

Wyjątek opis
Pozycja ekranu poza zakresem Wskazuje, że pozycja ekranu jest poza zakresem
Emulator nie obsługuje poleceń dotyczących pozycji Wskazuje, że emulator nie obsługuje użytych poleceń dotyczących pozycji
Operacja niedostępna dla sesji tego typu Wskazuje, że operacja jest niedostępna w przypadku sesji tego typu
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem

Pobierz tekst z sesji terminalu

Pobierz tekst z sesji terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie Sesja terminalu Sesja terminalu, która ma być używana
Get text from Nie dotyczy Pole, Cały ekran, Pozycja kursora, Pozycja konkretna Pole Lokalizacja, z której ma zostać pobrany tekst
Get field by Nie dotyczy Etykieta, Indeks, Pozycja Label Określa, jak ma być wyszukiwane pole
Label Nie Wartość tekstowa Etykieta pola do wyszukania
Index Nie Wartość liczbowa Indeks pola do wyszukania
Text length Nie Wartość liczbowa Długość tekstu do odebrania
Row Nie Wartość liczbowa Pozycja w pionie pola na ekranie
Column Nie Wartość liczbowa Pozycja w poziomie pola na ekranie

Utworzone zmienne

Argument Type opis
TerminalText Wartość tekstowa Tekst pobrany z sesji terminalu

Wyjątki

Wyjątek Opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Indeks pola poza zakresem Wskazuje, że indeks pola jest poza zakresem
Nie znaleziono etykiety pola Wskazuje, że etykieta pola nie istnieje
Pozycja ekranu poza zakresem Wskazuje, że pozycja ekranu jest poza zakresem
Nie znaleziono pola na danej pozycji Wskazuje, że na danej pozycji nie istnieje żadne pole
Ekran terminalu jest niesformatowany Wskazuje, że ekran terminalu jest niesformatowany
Emulator nie obsługuje poleceń dotyczących pozycji Wskazuje, że emulator nie obsługuje użytych poleceń dotyczących pozycji
Operacja niedostępna dla sesji tego typu Wskazuje, że operacja jest niedostępna w przypadku sesji tego typu

Ustaw tekst w sesji terminalu

Ustaw tekst w sesji terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie. Terminal session Sesja terminalu, która ma być używana
Tekst Nie. Bezpośrednie wprowadzanie zaszyfrowanego tekstu lub wartości tekstowej Tekst do ustawienia w określonej lokalizacji
Set text Brak Pozycja kursora, Pole Pole Lokalizacja, w której ma zostać ustawiony tekst
Get field by Nie dotyczy Etykieta, Indeks, Pozycja Label Określa sposób, w jaki ma być wyszukiwane pole
Label Nie Wartość tekstowa Etykieta pola do wyszukania
Index Nie Wartość liczbowa Indeks pola na ekranie
Row Nie Wartość liczbowa Pozycja w pionie pola na ekranie
Column Nie Wartość liczbowa Pozycja w poziomie pola na ekranie
Treat @ character as literal Brak Wartość logiczna Fałsz Zaznacz to pole, aby dosłownie wysłać znak „@”. Zaznacz to pole, aby dosłownie wysłać znak „@”.

Utworzone zmienne

Ta akcja nie wywołuje żadnych zmiennych.

Wyjątki

Wyjątek opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Indeks pola poza zakresem Wskazuje, że indeks pola jest poza zakresem
Nie znaleziono etykiety pola Wskazuje, że etykieta pola nie istnieje
Pozycja ekranu poza zakresem Wskazuje, że pozycja ekranu jest poza zakresem
Nie znaleziono pola na danej pozycji Wskazuje, że na danej pozycji nie istnieje żadne pole
Ekran terminalu jest niesformatowany Wskazuje, że ekran terminalu jest niesformatowany
Emulator nie obsługuje poleceń dotyczących pozycji Wskazuje, że emulator nie obsługuje użytych poleceń dotyczących pozycji
Operacja niedostępna dla sesji tego typu Wskazuje, że operacja jest niedostępna w przypadku sesji tego typu
Tekst wejściowy został odrzucony Wskazuje, że tekst wejściowy został odrzucony

Wyślij klawisz do sesji terminalu

Wyślij klawisz kontrolny do sesji terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie Sesja terminalu Sesja terminalu, która ma być używana
Control key Nie dotyczy Transmisja, kursor Alt, uwaga, Backspace, karta Wstecz, przełączanie bloku, przerwa, anuluj, środek, wyczyść, wyczyść polecenie, wyczyść wyświetlacz, wyczyść linię, wyczyść stronę, wyczyść partycję, przecinek, wiersz poleceń, okno poleceń, tworzenie, 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, Miganie kursora, Wybór kursora, Dziesiętny, Usuń, Usuń znak, Usuń linię, Usuń słowo, Niszcząca spacja, Rozłącz, Wykonaj, Dół, Podwójnie w dół, Duplikuj, Duplikuj, Edytuj skrypt, Koniec klucza, Koniec pola, Kasuj EOF, Kasuj EOL, Kasuj EOP, Kasuj dane wejściowe, 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, pole ogranicznik, wyjście z pola, znak pola, pole minus, pole plus, znajdź, twardy reset, pomoc, szesnastkowy, szesnastkowy 00, szesnastkowy 01, szesnastkowy 02, szesnastkowy 03, szesnastkowy 04, szesnastkowy 05, szesnastkowy 06, szesnastkowy 07, szesnastkowy 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, Hold, Hold clear, Hold set, Home, Home down, Home up, Insert, Insert char, Insert here, Insert line, Insert tryb, Nieprawidłowy klawisz, KeyPad0, KeyPad1, KeyPad2, KeyPad3, KeyPad4, KeyPad5, KeyPad6, KeyPad7, KeyPad8, KeyPad9, Lewy, Lewy podwójny, Line feed, Minus, Monitor toggle, New line, Next page, Next screen, Next word, Nul, NumLock, PA1, PA2, PA3, Page, Page down, Page up, Pan left, Pan right, Partition jump, PF1, PF2, PF3, PF4, Plus Cr, Poprzednie słowo, PrevPage, PrevScreen, Print, Print line, Drukuj Msg, ekran Prent, Usuń, Zastąp, Resetuj, Zwróć, Pole zarezerwuj, Prawo, Podwójnie w prawo, Przewiń w dół, Zwiń, Linia Rile, Uruchom skrypt, Przewiń w dół, Przewiń w lewo, Przewiń w prawo, Przewiń w górę, Wybierz, Wyślij, Odeślij odpowiedź, Wyślij usuń, Wyślij wiersz, Wyślij wiadomość, Shift + Backspace, Shift + Delete, Shift + Down, 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, Miękki reset, Żądanie systemowe, Tab, Tek powiększenie, następna strona terminu, strona poprzednia terminu, test, pogrubienie początku pomocy tekstowej, początek wiersza pomocy tekstowej, początek linii podkreślenia pomocy tekstowej, dół strony pomocy tekstowej, powrót nośnika pomocy tekstowej, centrum pomocy tekstowej, pogrubienie końca pomocy tekstowej, pomoc tekstowa koniec wiersza, połowa indeksu wspomagającego tekst w dół, połowa indeksu pomocniczego w górę, symbole wstawiania wspomagającego tekst, następny przystanek pomocniczy tekst, następna kolumna tekstu pomocniczego, koniec strony pomocniczej tekst, spacja wymagana pomoc tekstowa, zakładka Wymagana pomoc tekstowa, zatrzymanie pomocy tekstowej , Przewijanie tekstu pomocniczego do przodu, Pomoc tekstowa na górze strony e, Podkreślenie słowa wspomagającego tekst, Przełączanie śledzenia, 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 podwójnie Prześlij Klawisz do przesłania do sesji

Utworzone zmienne

Ta akcja nie wywołuje żadnych zmiennych.

Wyjątki

Wyjątek opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Nieobsługiwany klawisz Wskazuje, że klawisz nie jest obsługiwany

Zaczekaj na tekst w sesji terminalu

Zaczekaj, aż określony tekst zostanie wyświetlony w sesji terminalu.

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie Sesja terminalu Uprzednio otwarta sesja terminalu
Text to wait for Nie Wartość tekstowa Tekst lub wyrażenie regularne, na wyświetlenie którego na ekranie terminalu lub w określonym polu należy oczekiwać
Regular expression Nie dotyczy Wartość logiczna Fałsz Określa, czy należy czekać na wyrażenie regularne, a nie zwykły tekst
Wait for text location Nie dotyczy Ekran, Pole Ekran Lokalizacja, w której ma zostać wyświetlony oczekiwany tekst
Get field by Nie dotyczy Etykieta, Indeks, Pozycja Label Określa sposób, w jaki ma być wyszukiwane pole
Label Nie Wartość tekstowa Etykieta pola do wyszukania
Index Nie Wartość liczbowa Indeks pola do wyszukania
Row Nie Wartość liczbowa Pozycja w pionie pola na ekranie
Column Nie Wartość liczbowa Pozycja w poziomie pola na ekranie
Timeout Tak Wartość liczbowa 0 Maksymalny czasu oczekiwania

Uwaga

Aparat wyrażenia regularnego usługi Power Automate to .NET. Więcej informacji na temat wyrażeń regularnych można znaleźć w temacie język wyrażenia regularnego — szybkie informacje.

Utworzone zmienne

Ta akcja nie wywołuje żadnych zmiennych.

Wyjątki

Wyjątek opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Indeks pola poza zakresem Wskazuje, że indeks pola jest poza zakresem
Nie znaleziono etykiety pola Wskazuje, że etykieta pola nie istnieje
Pozycja ekranu poza zakresem Wskazuje, że pozycja ekranu jest poza zakresem
Nie znaleziono pola na danej pozycji Wskazuje, że na danej pozycji nie istnieje żadne pole
Ekran terminalu jest niesformatowany Wskazuje, że ekran terminalu jest niesformatowany
Emulator nie obsługuje poleceń dotyczących pozycji Wskazuje, że emulator nie obsługuje użytych poleceń dotyczących pozycji
Operacja niedostępna dla sesji tego typu Wskazuje, że operacja jest niedostępna w przypadku sesji tego typu
Przekroczenie limitu czasu Wskazuje, że przekroczono limit czasu

Wyszukaj tekst w sesji terminalu

Wyszukaj wszystkie wystąpienia określonego tekstu w sesji terminalu

Parametry wejściowe

Argument Opcjonalnie Akceptuje Wartość domyślna opis
Terminal session Nie Terminal session Uprzednio otwarta sesja terminalu
Tekst do wyszukania Nie. Wartość tekstowa Tekst lub wyrażenie regularne do wyszukania na ekranie terminalu
Regular expression Brak Wartość logiczna Fałsz Określa, że ma być wyszukiwane wyrażenie regularne, a nie zwykły tekst
Rozmiar kolumny Nie. Wartość liczbowa 80 Liczba kolumn na ekranie terminalu

Uwaga

Aparat wyrażenia regularnego usługi Power Automate to .NET. Więcej informacji na temat wyrażeń regularnych można znaleźć w temacie język wyrażenia regularnego — szybkie informacje.

Utworzone zmienne

Argument Type opis
FindResults Tabela danych Wyniki wyszukiwania pobrane z ekranu sesji terminalu

Wyjątki

Wyjątek opis
Błąd podczas komunikowania się z emulatorem Wskazuje problem podczas nawiązywania połączenia z emulatorem
Nie znaleziono tekstu Wskazuje, że szukany tekst nie został znaleziony
Nieprawidłowe wyrażenie regularne Wskazuje, że użyte wyrażenie regularne jest nieprawidłowe