Ustawianie formatowania i sposobu obliczania danych

Istnieje możliwość zdefiniowania treści elementu szablonu lub wartości jego właściwości używanych do formatowania i obliczania danych.

O tym zadaniu

Treść szablonu można zdefiniować przy użyciu wartości prostych, wyrażeń danych lub wyrażeń skryptów.

Zarówno wyrażenia danych, jak i wyrażenia skryptu, mają zmienne wewnętrzne, które są dostępne do wyboru.
Tabela 1. Zmienne wewnętrzne produktu Rational Publishing Engine
Zmienna Opis
_cell_number Numer komórki w bieżącym wierszu. Jeśli element nie jest komórką, wartość wynosi 0. Istnieje możliwość użycia zmiennej _cell_number z karty Wyrażenie danych lub Wyrażenie skryptu.
_element_id Numer elementu w szablonie. Zmienna przechowywana wewnętrznie w szablonie i używana do debugowania. Istnieje możliwość użycia zmiennej _element_id z karty Wyrażenie danych lub Wyrażenie skryptu.
_element_level Rekurencyjny poziom elementu. Jeśli dla elementu właściwości poziomu rekurencji na karcie Dane nie ustawiono wartości, wartość tej zmiennej wynosi 1. Istnieje możliwość użycia zmiennej _element_level z karty Wyrażenie danych lub Wyrażenie skryptu.
_row_number Numer wiersza w bieżącej tabeli. Jeśli element nie jest zawarty w elemencie wiersza, wartość tej zmiennej wynosi 0. Istnieje możliwość użycia zmiennej _row_number z karty Wyrażenie danych lub Wyrażenie skryptu.
_sessionInfo Informacje na temat właściwości środowiska wykonawczego pochodzące z szablonu lub specyfikacji dokumentu. Na karcie Wyrażenie skryptu należy wybrać zmienną _sessionInfo i wprowadzić skrypt. Aby wygenerować wartość domyślną dla właściwości w danych wyjściowych, należy użyć cudzysłowów bez żadnej wartości między nimi. Przykłady skryptów:

_sessionInfo.getDocspecProperty("właściwość", "");
_sessionInfo.getTemplateProperty("właściwość", "");
_sessionInfo.getDatasourceProperty("nazwa_źródła_danych","właściwość", "");
_sessionInfo.getOutputProperty("typ_danych_wyjściowych","właściwość", "");
_sessionInfo.docspecVersion
_sessionInfo.templateVersion
_sessionInfo.engineVersion
_sessionInfo.buildNumber

Dla skryptu getDocspecProperty można użyć właściwości specyfikacji istniejącego dokumentu lub właściwości tworzenia niestandardowych metadanych.

_sessionLogger Na potrzeby debugowania można wyświetlać niestandardowe komunikaty informacyjne, komunikaty o błędach, komunikaty ostrzegawcze lub komunikaty debugowania w pliku katalog_tymczasowy\rpe\rpe.log, widoku Konsola lub widoku Problemy. Komunikaty są wyświetlane w miejscu zdefiniowanym w pliku log4j.properties.

Ustawienie domyślne to wyświetlanie komunikatów informacyjnych w widoku Konsola, a nie w pliku rpe.log.

Na karcie Wyrażenie skryptu należy wybrać zmienną _sessionLogger i wprowadzić skrypt. Pozycje dziennika można generować za pomocą jednej z następujących metod:
  1. _sessionLogger.debug(komunikat)
  2. _sessionLogger.info(komunikat)
  3. _sessionLogger.error(komunikat)
  4. _sessionLogger.warn(komunikat)

Podczas decydowania, jaki tekst należy wprowadzić jako komunikat w skrypcie, w celu utworzenia zrozumiałego komunikatu należy rozważyć użycie elementów wizualnego wywołania, takich jak inicjały lub imię użytkownika oraz zmiennych z szablonu.

_sessionUtils Na karcie Wyrażenie skryptu można użyć tej zmiennej w celu uruchomienia funkcji w skrypcie o nazwie tidyXHTML. Ta zmienna jest przydatna w przypadku występowania w dokumencie wyjściowym bloków białych znaków, które powstają w wyniku niewłaściwego kodowania XHTML. Za pomocą zmiennej _sessionUtils argument łańcucha jest przetwarzany, a kod XHTML jest czyszczony, dzięki czemu dodatkowe białe znaki nie będą wyświetlane w danych wyjściowych.

Przykład: _sessionUtils.tidyXHTML(tekst);

Używając zmiennej _sessionUtils, należy również wybrać opcję Dane wejściowe XHTML i Dane wyjściowe XHTML na karcie Wyrażenie skryptu.
Uwaga: Istnieje możliwość ładowania szablonów zawierających tę zmienną do wcześniejszych wersji produktu Rational Publishing Engine, ale nie ma możliwości poprawnego wartościowania skryptów.

Procedura

  1. W edytorze treści szablonu kliknij dwukrotnie element tekstowy. Zostanie otwarte okno Ustawianie treści dla bieżącego elementu.
  2. Podaj treść, używając jednej z następujących opcji:
    • Aby użyć wartości prostej, kliknij kartę Wartość prosta i wprowadź wartość.
    • Aby użyć wyrażenia danych, kliknij kartę Wyrażenie danych i wykonaj jedną z następujących czynności:
      • Rozwiń pozycję Zmienne i wybierz zmienną do użycia.
      • Rozwiń pozycję Atrybuty i wybierz atrybuty danych do użycia.
    • Aby użyć wyrażenia skryptu, kliknij kartę Wyrażenie skryptu.
      • Rozwiń pozycję Zmienne, wybierz zmienną i wprowadź kod JavaScript, w którym można używać zmiennych z bieżącego kontekstu.
      • Rozwiń pozycję Atrybuty, wybierz atrybut i wprowadź kod JavaScript, w którym można używać atrybutów danych z bieżącego kontekstu.
      • Jeśli skrypt został skopiowany z pliku XHTML, można wybrać opcję Dane wejściowe XHTML, aby umożliwić edycję znaczników XHTML zawartych w skrypcie.
      • W przypadku generowania szablonu do postaci danych wyjściowych XHTML można wybrać opcję Dane wyjściowe XHTML, aby przeanalizować skrypt i wyświetlić go jako tekst formatowany.
      Aby na przykład wybrać atrybuty liczba bezwzględna, nazwa i wartość, wprowadź następujący kod JavaScript:
      "object:"+Absolute Number+
      "attribute"+name+
      "value"+_value
      Wskazówka: Jeśli szablon jest dość skomplikowany, można skorzystać z właściwości Nazwa i Opis, aby opisać wszystkie bloki w szablonie. Pola nazwy i opisu domyślnie są puste, nazwa jest wyświetlana w szablonie, a opis można wyświetlić w polu wskazówki dla elementu szablonu. Ułatwi to innym użytkownikom ponowne wykorzystanie szablonu.

      Zamiast karty wyrażenia skryptu można użyć opcji importowania istniejącego skryptu lub pracy w edytorze kodu JavaScript:

    1. Jeśli dołączasz nowy skrypt z innego pliku, kliknij opcję Dołącz skrypt i wybierz plik na komputerze, na serwerze zdalnym lub w komponencie Program budujący dokumenty. Kliknij przycisk OK.
      Wskazówka: Istnieje możliwość ponownego wykorzystywania funkcji JavaScript w obrębie różnych części szablonu. W tym celu należy ustawić właściwość Skrypt biblioteki w kodzie skryptu. Aby ustawić właściwość Skrypt biblioteki, należy przejść do widoku Właściwości elementu Kod JavaScript, wybrać kartę Konkretne i zaznaczyć pole wyboru Skrypt biblioteki. Więcej informacji o właściwości Skrypt biblioteki można znaleźć w temacie Właściwości elementu kodu JavaScript.

      W przypadku plików wybranych na komputerze lub zdalnym serwerze kopia kodu JavaScript z wybranego pliku zostanie otwarta w edytorze JavaScript.

      W przypadku plików wybranych z komponentu Program budujący dokumenty zostanie otwarte okno Używanie odwołania do skryptu. Należy wybrać, czy kod JavaScript ma zostać dołączony do szablonu jako odsyłacz referencyjny:
    • Jeśli wybierzesz opcję Tak, odsyłacz do kodu JavaScript (.js) zostanie osadzony w znaczniku <Script>. Na przykład poniższy odsyłacz referencyjny zostanie dodany do edytora JavaScript, którego nie można modyfikować:
      <Script src= "library://api/scripts/51"></Script>
      Zapamiętaj: Jeśli uruchamiasz operację generowania dokumentu z poziomu szablonu i masz w szablonie kod JavaScript w postaci odsyłacza referencyjnego, komponent Program budujący dokumenty musi być skonfigurowany i musi mieć nawiązane połączenie z aplikacją Document Studio. Szczegółowe informacje można znaleźć w temacie Nawiązywanie połączenia z komponentem Program budujący dokumenty.
    • Jeśli wybierzesz opcję Nie, kopia kodu JavaScript z wybranego pliku zostanie otwarta w edytorze JavaScript.
    1. Kliknij opcję Otwórz w edytorze, aby wprowadzić skrypt w edytorze JavaScript środowiska Eclipse. Skrypt zostanie otwarty na nowej karcie edytora jako tymczasowy plik .js w taki sposób, dzięki czemu będzie można edytować kod JavaScript i zarządzać skryptem za pomocą opcji w widoku Schemat. Po zmodyfikowaniu skryptu zapisz wprowadzone zmiany i zamknij tymczasową kartę edytora JavaScript, aby wrócić do okna Wprowadzanie kodu dla elementu kodu JavaScript.
    2. Kliknij przycisk Testuj skrypt, aby sprawdzić poprawność kodu.
    3. Kliknij przycisk OK, aby zapisać wprowadzone zmiany i zamknąć okno.
  3. Kliknij przycisk OK, aby zapisać zmiany.

Przykład

Przykład użycia wyrażenia danych
Aby wyświetlić automatycznie wygenerowane numery wierszy w tabeli:
  1. Przeciągnij element tabeli do edytora.
  2. Wprowadź wartość 3 dla wierszy i wartość 3 dla kolumn tabeli, a następnie kliknij przycisk OK.
  3. Przeciągnij element tekstu do każdej komórki.
  4. Wybierz pierwszą komórkę w pierwszym wierszu.
  5. W widoku Właściwości wybierz kartę Treść i kliknij ikonę Ikona konfiguracji. Podwójne kliknięcie elementu również spowoduje otwarcie tego samego okna.
  6. Kliknij kartę Wyrażenie danych i wybierz opcję _numer_wiersza. Następnie kliknij przycisk OK.
  7. Wykonaj te same czynności dla pierwszej komórki w drugim i trzecim wierszu.
  8. Usuń krawędzie z komórek numeru wiersza:
    1. Przytrzymaj klawisz CTRL i zaznacz pierwszą komórkę w każdym wierszu. Jeśli wybrano wiele elementów, istnieje możliwość modyfikowania właściwości dla wszystkich wybranych elementów jednocześnie.
    2. W widoku właściwości wybierz kartę Ramka.
    3. Dla właściwości Styl wybierz wartość Brak.
  9. Zapisz szablon.
  10. Przetestuj szablon, generując dane wyjściowe. Pierwsza komórka zawiera numer wiersza i nie jest otoczona ramką:
    Przykład danych wyjściowych
  11. W szablonie zakończ operację dodawania atrybutów ze schematu źródła danych do pozostałych komórek, aby wypełnić tabelę.