Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Podsumowanie technologii Web w systemie PROMOTIC

Web serwer jest aplikacją, która oferuje strony Web (pliki HTML, XML, BMP, itd.) do intranetu/internetu, i strony te można następnie przeglądać przy pomocz standardowych przeglądarek (Chrome, Firefox, Edge, InternetExplorer ..). Aplikacja PROMOTIC może stać się tekim Web serwerem i poniższy tekst opisuje zasady wytwarzania takiej aplikacji.
 
aplikacja PROMOTIC działająca jako Web serwer posiada zalety zwłaszcza z następujących powodów:
- Klienci (na innych PC), którzy chcą przeglądać dane (które są oferowane przez PROMOTIC Web serwer), nie muszą instalować systemu PROMOTIC. Klienci mogą te dane przeglądać przy pomocy na przykład Internet Explorera.
- Inne aplikacje (na tym samym lub innym komputerze) mogą wykorzystać oferowane dane i dalej je opracowywać. Takimi aplikacjami mogą być ponownie aplikacje PROMOTIC ale i inne, które potrafią pracować na przykład z danymi XML.
- Transmisja danych jest założona na standardzie protokołu HTTP (lub jego zabezpieczonej wersji HTTPS patrz HTTPS - zabezpieczony protokół HTTP) i z tego powodu można dane przenosić nawet przez internet. Przez firmowy firewall protokół HTTP (standardowy port 80) i protokół HTTPS (standardowy port 443) standardowo przechodzi i nie jest konieczna ingerencja do tych urządzeń.
- Strony mogą być dostępne tylko niektórym użytkownikom. Może wykonywać się tzw. autentyzacja klienta przez wprowadzenie uprawnień w zakładce "Uprawnienia". (Patrz również zdarzenie PmWeb.onNewRequest).
 
Uwaga! Web serwer w systemie PROMOTIC podlega licencjowaniu, tzn. żeby działał w trybie runtime (z licencją runtime), jest konieczny zakup pozycji dla klientów sieciowych do licencji runtime (Data lub Web klient - według rodzaju oferowanych komponentów Web - patrz dalej). Jest konieczne zakupić taką ilość licencji, jaka jest maksymalna przewidywana ilość klientów, z którymi aplikacja ma komunikować się w jednej chwili (okres 10 minut). Patrz cennik systemu PROMOTIC.
- Klucz do środowiska deweloperskiego posiada w celach testowania licencje dla 5 klientów typu PmWebClient.
- W aplikacji typu PmFree są zawsze dostępni 2 klienci typu PmWebClient.
 
Aplikacja PROMOTIC stanie się Web serwerem jeżeli umieścisz do niej obiekt PmWeb. Zazwyczaj taki obiekt znajduje się w aplikacji tylko raz. Obiekt ten jest odpowiedzialny za to, że jakikolwiek Web element systemu PROMOTIC może zostać do tego obiektu zarejestrowany i po tym komponent ten może oferować swoje dane. Każdy PROMOTIC Web komponent (lista tych komponentów patrz dalej) posiada jednoznaczny tekstowy identyfikator (dalej będziemy go oznaczać jako "IdElementu").
 
Informacje w trybie runtime o stanie komunikacji Web serwera PROMOTIC z klientami (statystyka transmisji HTTP, zawartość kilku ostatnich transmisji, itd.) można obserwować w INFO systemie pod pozycją /COMM/WebServer.
 
W obiekcie PmWeb można ustawić tzw. port. Port jest bardzo ważną informacją prza transmisji poprzez Ethernet (TCP/IP). Jego standardowa wartość wynosi 80 dla HTTP i 443 dla HTTPS. Jeżeli aplikacja PROMOTIC stanie się Web serwerem, wtedy każdy jego Web komponent jest w intranecie dostępny pod adresem URL:
http://NazwaKomputera:Port/IdElementu/default.htm

lub jeżeli port w obiekcie PmWeb jest ustawiony na wartość standardową, wtedy prościej:

http://NazwaKomputera/IdElementu/default.htm

Strona default.htm jest zazwyczaj tylko podstawową stroną komponentu. Komponent oferuje jeszcze dużo innych (zazwyczaj pustych) stron, i to nie tylko z rozszerzeniem .htm, lecz również .xml, .png, itd. Na stronie default.htm znajduje się w większości lista pozostałych możliwych stron z odniesieniami do tych stron.

Sam obiekt PmWeb również oferuje własną stronę. Jest zatem również komponentem lecz z pustym identyfikatorem. Na tej stronie znajduje się lista komponentów Web udostępnionych w aplikacji z odniesieniami do tych komponentów Adres tej strony jest następujĽcy:

http://NazwaKomputera:Port/default.htm

Lub prościej (na standardowym porcie):

http://NazwaKomputera
 
Możliwości oferowania danych w systemie PROMOTIC w formie Web-u rozwijają się bardzo dynamicznie. Podsumujmy więc, co wszystko może aplikacja PROMOTIC zaoferować jako Web serwer. W aplikacji PROMOTIC mogą być komponentem Web następujące obiekty:
- PmData: (patrz jego zakładka Web serwer) oferuje swoje wartości w postaci danych XML.
- PmDataTable: (patrz jego zakładka Web serwer) oferuje swoje wartości w postaci danych XML.
- PmWorkspace: (patrz jego zakładka Web serwer) oferuje cały wygląd graficzny obszaru roboczego w formie strony HTML.
- PmPanel: (patrz jego zakładka Web serwer) oferuje wygląd graficzny (włącznie ze sterowaniem i transmisją danych bieżących) w formie dynamicznej strony HTML.
- PmReport: (patrz jego zakładka Web serwer) oferuje HTML stronę definiowaną przez użytkownika z możliwością bardzo ogólnych zmian takiej strony przed jej wyświetleniem u klienta.
- PmAlarmEvent: (patrz jego zakładka Web serwer) oferuje strony HTML do przeglądania stanu bieżącego i danych historycznych systemu alarmów/eventów.
- PmTrend: (patrz jego zakładka Web serwer) it offers HTML pages for viewing trends (table/graphics) and offers XML data for TrendsView graphic ActiveX item.
- PmWebFolder: umożliwia wytworzenie hierarchicznego poziomu adresu URL
- PmWebDir: oferuje pliki w określonym folderze jako statyczne strony do Web-u.
- PmWebInfo: oferuje INFO system jako strony HTML
- PmWebLang: oferuje wybór języka narodowego

Przy pomocy tych obiektów aplikacja PROMOTIC może oferować następująca dane:

 

1. Obszar roboczy aplikacji (PmWorkspace)

Przy pomocy obiektu PmWorkspace można w ten sposób oferować rozłożenie obszaru roboczego tak, że jest oferowanych kilka paneli (framug) równocześnie. W niektórych framugach só wyświetlane strony HTML obiektu PmPanel, w innych mogą jednak być także inne Web elementy, jak PmReport, PmWebDir, itd. Podstawą do wyświetlenia graficznej postaci są jednak dynamiczne strony obiektu PmPanel.
 
Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmWebClient".

2. Obrazy aplikacji (PmPanel)

Obrazy aplikacji można udostępnić w obiekcie Web serwera przy pomocy obiektu PmPanel.
 
Obiekt PmPanel oferuje swoje dane w formie dynamicznych stron HTML, które (jeżeli to jest dozwolone w konfiguratorze Udostępnić obiekt do Webu) automatycznie wytwarzają się podczas kompilacji obrazu. Te strony mają niektóre ograniczenia w porównaniu z obrazami uruchomionymi bezpośrednio w aplikacji PROMOTIC. Opis i ograniczenia patrz Web panele.

Obiekt PmPanel oferuje również statyczne strony danego obrazu. Obiekt na życzenie Web klienta wytworzy bieżący obraz (pod postacią pliku w formacie PNG) i odeśle go do klienta.

 
Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmWebClient".

3. Raporty aplikacji (PmReport)

Raporty aplikacji można udostępnić do Web serwera przy pomocy obiektu PmReport.
 
Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmWebClient".

4. Dane bieżące w formie XML (PmData, PmDataTable)

Aplikacja potrafi oferować dane bieżące, które są ulokowane w obiekcie PmData oraz PmDataTable. Obiekty te są wtedy Web serwerem danych, patrz zakładka Web serwer. Oferowane dane są dostępne pod postacią tekstu XML w kilku możliwych formatach. Taki sposób oferowania umożliwia odczyt i zapisywanie danych do obiektu PmData/PmDataTable. Patrz również: Współdzielenie danych XML.

Pierwszą możliwością wykorzystania jest komunikacja pomiędzy dwoma lub większą ilością aplikacji PROMOTIC. Jedna aplikacja ma obiekt PmData/PmDataTable ustawiony jako Web serwer a następna posiada identyczny obiekt ustawiony jako Web klient. Web klient odczytuje lub zapisuje dane do Web serwera (Patrz metoda PmData.WriteToWeb oraz PmData.ReadFromWeb).

Drugą możliwością wykorzystania jest przeglądanie dynamicznych stron HTML. Jeżeli oferują się tylko strony HTML, których zawartość ma się zmieniać, wtedy jest konieczne cykliczne wznawianie tych stron, co może okazać się zbyt wolnym i może powodować migotanie. Przy pomocy XML można wytworzyć dynamiczną stronę HTML, która w tle cyklicznie odczytuje dane XML i odświeża tylko konieczne części wizualne. Ten sposób jest w chwili obecnej najlepszy jeżeli chodzi o wytwarzanie "żywych" stron HTML. Jeżeli projektant chce takie strony wytworzyć, wtedy musi posiadać znajomość w sferze wytwarzania dynamicznych stron HTML i wykorzystania XML. To może być dosyć trudne i dlatego w systemie PROMOTIC istnieją prostsze sposoby jak wytwarzać "żywe" strony HTML - patrz dalej.

Oczywiście w ten sposób oferowane dane XML można wykorzystać do różnych innych celów, albowiem praca z danymi XML powoli staje się jednym z największych standardów w świecie komputerów. DZięki temu można takie dane przenosić również na inne systemy operacyjne, jakimi są np. UNIX, LINUX, itd.

Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmDataClient".

5. Wytworzenie struktury drzewiastej adresów Web komponentów (PmWebFolder)

Obiekt PmWebFolder przedstawia adres Web-owy, pod który można włożyć adresy Web-owe innych komponentów. W ten sposób można wytworzyć strukturę drzewiastą adresów Web komponentów. Na przykład pod jednym adresem mogę się znajdować Web komponenty wszystkich danych, pod dalszym adresem komponenty obrazów, pod dalszym trendy, alarmy, itd.

6. Oferowanie stron HTML wytworzonych przez projektanta aplikacji (PmWebDir)

Obiekt PmWebDir potrafi oferować HTML (ale i inne) pliki, które są ulokowane w ustawionym folderze na dysku. Klient zażąda o jakić plik i Web serwer ten plik odnajdzie w tym folderze i odeśle go klientowi.

To jednak nie było by zbyt pożyteczne, albowiem w ten sposób byłyby oferowane tylko strony statyczne. Dlatego obiekt PmWebDir posiada koncepcję, która umożliwia statyczny plik na dysku przed odesłaniem klientowi zmienić według stanu bieżącego. To jest umożliwione przy pomocy słów kluczowych, które mogą zostać zapisane do statycznej strony HTML a następnie dane słowa kluczowe zamienić na wartości bieżąca przed odesłaniem. Słowo kluczowe może się w ten sposób zamienić na przykład za numer, który przedstawia temperaturę, może się zamienić za określenie koloru tła czy nawet za część kodu HTML i przedstawiać w różnym czasie różne informacje.

W ten sposób można prosto wytwarzać nawet bardzop ogólne "żywe" strony. Wielkość tych stron jest dużo mniejsza niż statyczny obrazek rastrowy, jest jednak konieczne obrazy (pliki HTML) wytwarzać na przykład przy pomocy programów takich jak Microsoft FrontPage, Microsoft ExpressionWeb, itd. (ekspert w dziedzinie HTML może takie strony wytwarzać nawet w prostych edytorach tekstu typu Notepad).

Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmDataClient".

7. Oferowanie przeglądania alarmów i zdarzeń (PmAlarmEvent)

W zakładce PmAlarmEvent > Web serwer można zezwolić oferowanie stron do przeglądania alarmów i zdarzeń. Strony te są generowane automatycznie. Te Web komponenty oferują strony HTML oraz dane XML dotyczące stanu bieżącego jak również całej historii alarmów i zdarzeń.

W Web panelu można otworzyć przeglądarkę alarmów/eventów przy pomocy metody PmPanel.OpenView - patrz Przykład otwarcia przeglądarki alarmów.

Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmWebClient".

8. Oferowanie danych i przeglądanie trendów (PmTrend)

W zakładce PmTrend > Web serwer można zezwolić oferowanie danych dla klientów trendów i równocześnie oferowanie stron dla przeglądania trendów. Strony te są generowane automatycznie. Te Web komponenty oferują strony HTML oraz dane XML dotyczące stanu bieżącego jak również całej historii trendów. Wygląd automatycznie wytwarzanych stron HTML znajduje się w folderze /Pm/Web. Jeżeli użytkownikowi nie odpowiadają HTML strony generowane automatycznie, wtedy może sobie wytworzyć własne, najlepiej skopiowaniem automatycznie oferowanych stron do foldera użytkownika i te z kolei oferować na przykład przy pomocy komponentu PmWebDir.

Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmWebClient".

9. INFO system

Obiekt PmWebInfo potrafi oferować strony HTML, które zawierają informacje INFO systemu PROMOTIC. Te strony wewbowe są wytwarzane automatycznie i projektant może w prosty sposób zapewnić, że informacje o biegu aplikacji będzie można obserwować zdalnie poprzez Web.

Z punktu widzenia licencji jest klient, wymagający dane z tego Web komponentu klientem typu "PmDataClient".

10. Wersje językowe stron HTML (PmWebLang)

Obiekt PmWebLang przedstawia wybór języka, tzn. oferuje do Webu stronę, w której można wybrać język. Po wyborze języka zostanie wyświetlona lista komponentów, które są zarejestrowane do obiektu PmWebLang. Wszystkie te komponenty jednak będą wyświetlane już w wybranym języku.

Na przykład jeżeli do obiektu PmWebLang zarejestrujesz Web panel (PmPanel), wtedy automatycznie generowana strona HTML danego panelu będzie oferować w ten sposób, że wszystkie teksty panelu, które są wprowadzone przy pomocy Makro wyrażenie $.text, zostaną wyświetlone w wybranym języku.

© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice