W tym przykładzie pokazano, jak można połączyć formatkę, za pomocą
której firma świadcząca usługi gastronomiczne może wyszukiwać dostawców.
Aby można było utworzyć łącznik przebiegający od formatki na diagramie usługi
personelu, formatka musi zawierać widok formatki, który z kolei musi zawierać
element sterujący uruchamiający zdarzenie graniczne. Dowolny widok formatki
uruchamiający zdarzenie graniczne, który został dodany do formatki, może zostać
wybrany jako zdarzenie graniczne, a następnie połączony jako takie zdarzenie w
przepływie sekwencji.
Zdarzenia graniczne są określane przy użyciu ustawienia Może
wywołać zdarzenie graniczne na karcie
Przegląd w widoku formatki. Domyślnie zdarzenie
graniczne jest uruchamiane przez standardowy element
sterujący Przycisk.
W tym przykładzie pokazano, jak można skonfigurować formatkę, aby była
wykonywana w pętli i aby przechodziła do końca usługi. W przypadku połączenia
formatki w pętli z tą samą formatką, na przykład w usłudze wyszukiwania, w
czasie wykonywania są odświeżane tylko dane wyświetlane na stronie (a nie
cała strona). To przyczynia się do usprawnienia pracy użytkowników.
Wskazówka: Inicjowanie danych jest konieczne, gdy formatka wraca przy użyciu pętli do tej
samej formatki po wykonaniu logiki (np. zadania skryptu). Jeśli logika, która
jest wykonywana przed przekazaniem sterowania do formatki, spowoduje, że
właściwość lub zmienna będzie niezainicjowana (będzie mieć wartość NULL), po
wysłaniu formatki może wystąpić błąd wykonywania w usłudze personelu. Aby
zapobiec występowaniu takich błędów wykonywania, można zainicjować zmienne
przed powrotem do formatki przy użyciu pętli. Na przykład:
Zadania wstępne dla tego przykładu:
- Utwórz przykładowe artefakty wymienione w sekcji Przykładowe artefakty (Obejmuje to obiekty danych biznesowych, usługę Ajax, widok formatki i usługę
personelu).
Przegląd czynności opisanych w tym przykładzie:
- Dodaj zmienne wejściowe i wyjściowe do usługi personelu.
- Tworzenie formatki złożonej z widoku formatki i dwóch przycisków
- Skonfiguruj komponenty diagramu usługi personelu i przepływ sekwencji.
Otwórz usługę personelu
Formularz dostawcy i wykonaj
następujące kroki:
- Na karcie Zmienne dodaj następującą zmienną lokalną do danych wejściowych i wyjściowych:
- supplier - jako Typ zmiennej
wybierz obiekt biznesowy Dostawca.
- Tworzenie formatki Wysyłanie danych dostawcy
- Na karcie Diagram dodaj formatkę do kanwy.
- Jeśli jest używana tradycyjna usługa personelu, przeciągnij formatkę na
kanwę i nadaj jej nazwę Wysyłanie danych dostawcy.
- Jeśli jest używana usługa personelu po stronie klienta, wybierz
wygenerowaną formatkę i nadaj jej nazwę
Wysyłanie danych dostawcy.
- Na karcie Formatki wybierz formatkę i przeciągnij
sekcję pionową na kanwę.
- Przeciągnij widok Informacje o dostawcy z palety (w sekcji
Bez znaczników) na kanwę. Zostaną otwarte właściwości widoku.
- W polu Powiązanie wybierz zmienną wejściową
supplier (utworzoną w kroku 1).
- Przeciągnij element sterujący Przycisk z palety do sekcji
pionowej i nadaj mu nazwę Wyszukiwanie dostawcy.
- Wybierz przycisk OK, który został
wcześniej wygenerowany, i nadaj mu nazwę Wyślij.
- Skonfiguruj skrypt Wyszukiwanie dostawcy i
przepływ sekwencji. Jeśli jest używana tradycyjna usługa personelu, skrypt
Wyszukiwanie dostawcy jest skryptem serwera. Jeśli jest
używana usługa personelu po stronie klienta, skrypt Wyszukiwanie
dostawcy jest skryptem po stronie klienta.
- Na karcie Diagram przeciągnij komponent Skrypt na
kanwę i nadaj mu nazwę Wyszukiwanie dostawcy.
- We właściwościach w sekcji Implementacja podaj skrypt
(podobny do poniższego przykładu) dla funkcji wyszukiwania dostawcy:
if (tw.local.supplier.ID == "1234") {
tw.local.supplier.Name = "Restauracja Jana";
tw.local.supplier.address = "1 jakaśUlica, jakieśMiasto, jakieśWojewództwo";
} else if (tw.local.supplier.ID == "2345") {
tw.local.supplier.Name = "Piekarnia Joanny";
tw.local.supplier.address = "2 jakaśUlica, jakieśMiasto, jakieśWojewództwo";
}
- Na diagramie połącz komponent Zdarzenie
początkowe z formatką Wysyłanie danych dostawcy. Następnie
połącz formatkę Wysyłanie danych dostawcy ze skryptem Wyszukiwanie dostawcy. Na koniec połącz skrypt z
powrotem z formatką Wysyłanie danych dostawcy, aby utworzyć
pętlę.
- Wybierz linię przebiegającą od formatki Wysyłanie danych
dostawcy
do skryptu Wyszukiwanie dostawcy. Zostaną otwarte właściwości linii.
- W polu Powiązanie stanu końcowego kliknij przycisk
Wybierz, a następnie wybierz przycisk
Wyszukiwanie dostawcy (utworzony w kroku 3).
- Połącz formatkę Wysyłanie danych klienta z komponentem
Zdarzenie końcowe, a następnie wybierz linię połączenia. Zostaną otwarte właściwości linii.
- W polu Powiązanie stanu końcowego kliknij przycisk
Wybierz, a następnie wybierz przycisk
Wyślij (utworzony w kroku 2).
- Zapisz zmiany i uruchom usługę. Zostanie otwarte osobne okno przeglądarki
WWW z wyświetloną formatką.
- Przetestuj opcje aplikacji.
- W polu Identyfikator wpisz wartość
1234 lub 2345, a następnie
kliknij przycisk Wyszukiwanie dostawcy. Zostanie zwrócona
nazwa i dane adresowe odpowiedniego dostawcy.
- Aby zakończyć proces, kliknij przycisk Wyślij. Usługa personelu jest zakończona.
Przykładowe artefakty
Przed rozpoczęciem wykonywania przykładu utwórz artefakty wymienione w poniższych tabelach.
Wskazówka: w przypadku właściwości, które nie są określone, zaakceptuj ustawienia domyślne.
Tabela 1. Obiekty danych biznesowych| Nazwa |
Parametry |
| Dostawca |
Identyfikator (String) Nazwa (String)
Adres (String)
|
Tabela 2. Usługa Ajax| Nazwa |
Zawartość |
| Wyszukiwanie identyfikatora dostawcy |
Komponent Skrypt z dodanym skryptem na potrzeby
opcji wyszukiwania, który jest podobny do poniższego przykładu:tw.local.results = new tw.object.listOf.String();
Packages.java.lang.System.out.println("tw.local.text: " + tw.local.text);
Packages.java.lang.System.out.flush();
if (tw.local.text.charAt(0) == '1') {
tw.local.results[0] = "1234";
} else if (tw.local.text.charAt(0) == '2') {
tw.local.results[0] = "2345";
} else {/*
*/
}
|
Tabela 3. Widoki formatek| Nazwa |
Zawartość |
| Informacje o dostawcy |
Elementy sterujące Tekst: Identyfikator
dostawcy, Nazwa i Adres- Właściwości elementu Identyfikator dostawcy:
- Powiązanie:
Dostawca.Identyfikator
- Włącz automatyczne uzupełnianie: Włączone
- Usługa automatycznego uzupełniania:
Wyszukiwanie identyfikatora dostawcy
(usługa Ajax)
- Właściwości elementu Nazwa:
- Powiązanie: Dostawca.Nazwa
- Właściwości elementu Adres:
- Powiązanie: Dostawca.Adres
|
Tabela 4. Usługa personelu| Nazwa |
Właściwości |
| Formularz dostawcy |
Usługę personelu należy skonfigurować, wykonując kroki podane w tym przykładzie. |