Plik PXF jako odpowiednik funkcji "plug and play" w oprogramowaniu – przykład zastosowania w edycji baz danych

Kilka tygodni temu przedstawiliśmy Państwu format Portable XML Form (PXF), w którym wszystkie elementy projektu, wspierające projekt StyleVision, w tym schematy XML i dokumenty instancji, pliki projektów SPS, XSLT, obrazy oraz inne pliki zewnętrzne, są zintegrowane. Użytkownicy końcowi mogą po prostu otworzyć plik PXF w programie Authentic i od razu rozpocząć edycję danych XML i baz danych.

W tym artykule stworzymy elektroniczny formularz, który umożliwi użytkownikom biznesowym rejestrowanie darowizn i wprowadzanie danych o nowych darczyńcach dla fikcyjnej organizacji charytatywnej o nazwie Green Planet Fund. Nowy format plików PXF firmy Altova jest ogromnym ułatwieniem zarówno dla programistów, jak i dla użytkowników końcowych – plik PXF można transportować, pobierać, kopiować i zapisywać, podobnie jak każdy inny dokument biurowy, co zwiększa zarówno efektywność, jak i minimalizuje ryzyko błędów podczas wdrażania. Programiści nie muszą już przesyłać ani instalować wielu plików, ani tworzyć aplikacji serwerowej, aby obsługiwać daną funkcjonalność, a użytkownicy biznesowi mogą szybko i niezawodnie udostępniać kluczowe informacje. Jest to szczególnie ważne w organizacjach rozproszonych, gdzie dane biznesowe muszą być przesyłane drogą elektroniczną między różnymi lokalizacjami lub między pracownikami terenowymi a ich odpowiednikami w centrali. Plik PXF, który obsługuje elektroniczne formularze zaprojektowane w StyleVision i edytowane przez użytkowników biznesowych w Authentic, sprawia, że edycja danych biznesowych jest niezwykle prosta. W większości przypadków dane biznesowe będą bezpośrednio zawarte w pliku PXF jako osadzony dokument XML, ale możliwe jest również połączenie pliku PXF z serwerem bazy danych i przechowywanie danych bezpośrednio w bazie danych, jak pokazuje poniższy przykład.

W tym przykładzie użyjemy programu StyleVision do stworzenia formularza elektronicznego, w którym użytkownicy będą rejestrować darowizny i dodawać nowych darczyńców dla fikcyjnego funduszu Green Planet. Końcowi użytkownicy korzystają z tych formularzy w edytorze Authentic WYSIWYG, który jest zaawansowanym interfejsem przypominającym edytor tekstu i umożliwia użytkownikom dodawanie, przeglądanie i aktualizowanie treści XML oraz danych z baz danych. Po kliknięciu opcji Plik, Nowy z bazy danych w programie StyleVision, uruchomiony zostaje kreator połączenia. Po prostu wybierz typ bazy danych – zostaniesz poproszony o wskazanie lokalizacji źródła.

W tym miejscu zidentyfikowano bazę danych DonorsDatabase, która znajduje się na serwerze MARKETING006SQLEXPRESS. Łańcuch połączenia jest automatycznie zapisywany wraz z plikiem projektu i odzyskiwany za każdym razem, gdy użytkownik biznesowy uzyskuje dostęp do formularza w systemie Authentic. Baza danych jest aktualizowana o informacje, które użytkownik biznesowy wprowadza w formularzu w systemie Authentic.

Po nawiązaniu połączenia, w oknie dialogowym "Wstawianie obiektów bazy danych" można wybrać tabele, widoki danych, a nawet instrukcje SQL SELECT.

W tym przykładzie dodaliśmy instrukcję SQL SELECT (poniżej), która łączy tytuł darczyńcy, imię i nazwisko, a także oblicza łączną kwotę przekazaną przez każdego darczyńcę. Po kliknięciu przycisku "Dodaj instrukcję SELECT", instrukcja SQL SELECT staje się dostępna w projekcie StyleVision, jak widać powyżej.

Prosimy pamiętać, że do stworzenia naszego zapytania SQL wykorzystaliśmy narzędzie Altova DatabaseSpy, które służy do wykonywania zapytań, projektowania i porównywania baz danych. Chociaż można eksportować dane z edytora SQL w programie DatabaseSpy do różnych formatów, w tym przykładzie po prostu skopiowaliśmy instrukcję SELECT z DatabaseSpy do okna w oknie dialogowym SQL SELECT w programie StyleVision. StyleVision generuje tymczasowy schemat XML na podstawie struktury bazy danych i wyświetla go w oknie schematu. Należy zauważyć, że zarówno tabele "Contributions" i "Donors", jak i nasze zapytanie SQL SELECT pojawiają się w drzewie schematu.

Podczas tego procesu transformacji, StyleVision tworzy wewnętrzne pliki XML – jeden, który nie jest edytowalny i służy do podglądów, oraz plik XML będący źródłem generowanych danych, a także edytowalny plik XML, który zapisuje zmiany z powrotem do bazy danych. Teraz, gdy już zdefiniowaliśmy i zapisaliśmy ciąg połączenia z bazą danych, możemy przystąpić do projektowania formularza elektronicznego, który Green Planet Fund będzie wykorzystywać do dodawania nowych darczyńców i rejestrowania wpłat. W tym przykładzie utworzyliśmy dwie proste tabele w StyleVision – jedną do rejestrowania wpłat, a drugą do wyszukiwania i dodawania darczyńców. (Należy pamiętać, że nasz przykład służy wyłącznie do celów ilustracyjnych i pokazujemy tylko niewielką próbkę pól, które zwykle umieszczamy w rzeczywistej aplikacji. Funkcjonalność jest również znacznie mniej zaawansowana niż w rzeczywistym projekcie.) W naszym projekcie wykonaliśmy następujące czynności:

  • Utworzyliśmy fragment projektu zawierający tabelę do wprowadzania danych o nowych darczyńcach oraz tabelę zawierającą listę zarejestrowanych darczyńców, która jest dynamicznie aktualizowana.
  • Dodaliśmy pole wyboru, które po zaznaczeniu wyświetla tabelę zarejestrowanych darczyńców oraz tabelę do wprowadzania danych z fragmentu projektu.
  • Zmodyfikowaliśmy właściwości "Authentic" tabeli zarejestrowanych darczyńców, aby pobierać wszystkie rekordy.
  • Zmodyfikowaliśmy właściwości "Authentic" tabeli do wprowadzania danych, aby pobierać tylko jeden rekord, co ułatwia wprowadzanie danych.
  • Użyliśmy XPath do połączenia tytułu, imienia i nazwiska każdego darczyńcy w tabeli zarejestrowanych darczyńców, używając funkcji normalize-space do usunięcia wszystkich odstępów.
  • Użyliśmy formatowania wartości (patrz poniżej) do formatowania daty wpłaty – to również pozwala użytkownikowi końcowemu edytować datę za pomocą interfejsu kalendarza w module "Authentic".

Należy zauważyć, że fragment projektu o nazwie "DonorList" jest umieszczony wewnątrz znaczników DB i reprezentowany jako pojedynczy element. Sam fragment projektu znajduje się na dole projektu.

Kliknięcie zakładek znajdujących się obok zakładki "Projekt" spowoduje wyświetlenie raportu w różnych formatach. Poniżej prezentujemy wersję "Autentyczną".

Należy zauważyć, że projekt jest nadal w standardowym formacie SPS (greenplanetdonorsII.sps) – teraz jesteśmy gotowi, aby zapisać go jako plik PXF, dzięki czemu można go przesłać e-mailem do klienta i natychmiast wdrożyć po otrzymaniu. Po wybraniu opcji "Plik" -> "Zapisz jako" z górnego menu, można wybrać, czy zapisać projekt w formacie SPS, czy PXF.

Po wybraniu opcji "Zapisz jako plik PXF", zostaniesz poproszony o wybranie plików, które mają zostać wbudowane w plik PXF. Wszystkie pliki obsługiwane przez program StyleVision są automatycznie dostępne w oknie dialogowym.

W tym miejscu sprawdziliśmy wszystkie elementy projektu, a także pliki XSLT. Dzięki temu użytkownicy końcowi będą mogli generować dane w każdym z tych formatów bezpośrednio z formularza zaprojektowanego w StyleVision, korzystając z programu Authentic. Należy pamiętać, że istnieje również możliwość dołączenia dodatkowych plików. Chociaż ten projekt nie wymaga innych plików, ta funkcja znacznie ułatwia przesyłanie i wdrażanie projektów, które wymagają wielu plików. Teraz można przesłać plik PXF, który właśnie utworzyliście, do klienta. Wszystkie pliki projektu, a także ciąg połączenia z bazą danych, są zawarte w pliku PXF, dzięki czemu, po otwarciu go przez użytkownika końcowego w programie Authentic, może on od razu rozpocząć przeglądanie, edytowanie i wprowadzanie danych. Aby utworzyć nowy rekord w programie Authentic, umieść kursor w jednym z pól w tabeli "Wpisy" na formularzu i kliknij przycisk "Dodaj wiersz" na pasku narzędzi. (Alternatywnie, można wybrać opcję "Authentic – Dodaj wiersz" z górnego menu.)

Teraz użytkownik biznesowy może wprowadzać dane (nowe dane są wyróżnione pogrubieniem)

...or nowych darczyńców.

Należy pamiętać, że w bazie danych SQL Server, identyfikator darczyńcy (Donor ID) jest polem generowanym automatycznie. Po tym, jak użytkownik kliknie "Plik" -> "Zapisz" w menu głównym, nowe dane są przesyłane do bazy danych, baza danych generuje numer identyfikacyjny, a nowe dane są wpisywane do pozostałych tabel formularza. (Jak widać powyżej, dane są wpisywane w czasie rzeczywistym). Zmiany i dodatki są natychmiast zapisywane w bazie danych. Poniższy widok bazy danych SQL Server pokazuje, że Edward i Julie Jay, których właśnie dodaliśmy do formularza, otrzymali identyfikator darczyńcy o numerze 18.

Chociaż nie uwzględniliśmy tego w tym przykładzie, formularz można zaprojektować tak, aby generował komunikat o błędzie, gdy użytkownik próbuje zapisać nowego darczyńcę bez podania przynajmniej imienia i nazwiska. Można to osiągnąć za pomocą XPath w dodatkowej właściwości walidacji właściwości "Authentic" lub poprzez utworzenie ograniczenia w bazie danych SQL Server. Ten przykład został zaprojektowany, aby pokazać, jak łatwo jest tworzyć i wdrażać interaktywne formularze. Elektroniczne formularze zaprojektowane w StyleVision zawsze były doskonałym sposobem na aktualizację zarówno zawartości XML, jak i bazy danych – plik PXF po prostu ułatwia ich transport i wdrażanie.