Skip to end of metadata
Go to start of metadata

W celu uruchomienia klas klienckich należy w pliku suncode-plugin.xml wtyczki klienckiej dodać następujący wpis:

<pzmodule key="klucz" class="ścieżka_do_klasy"/>

gdzie:

  • klucz - unikalny klucz dla modułu, definiowany przez twórcę wtyczki klienckiej
  • ścieżka_do_klasy - pełna ścieżka do klasy klienckiej, która ma zostać zarejestrowana w module PZ

 

Należy także dodać zależność do określonej wersji modułu PZ w pliku pom.xml wtyczki klienckiej:

<dependency>
	<groupId>com.suncode.plugin</groupId>
   	<artifactId>pzmodule</artifactId>
	<version>wersja</version>
    <scope>provided</scope>
    <exclusions>
        <exclusion>
            <groupId>*</groupId>
            <artifactId>*</artifactId>
        </exclusion>
    </exclusions>
</dependency>

gdzie:

  • wersja - numer wersji modułu PZ, z którego chcemy skorzyskać jako zależność

 

Możliwe jest rejestrowanie trzech typów klas klienckich:

  1. klasa wyszukująca rekordy - w klasie klienckiej należy zaimplementować interfejs RecordProvider. Posiada on dwie metody, jedna z nich zwraca obiekt RecordPage, a więc aktualną stronę z danymi do modułu oraz druga, służąca do podliczania poszczególnych grup rekordów (jest wywoływana, jeśli w module włączone jest grupowanie), zwraca listę obiektów GroupSumResult, reprezentujących zbiór sum poszczególnych grup. Wszytkie rezultaty wspomnianych metod należy uzupełnić na podstawie parametrów wejściowych do nich przekazanych.
  2. klasa przygotowująca fragment zapytania związany za filtrowanie rezultatów (tzw. where clause) - w klasie klienckiej należy zaimplementować interfejs CustomWhereClauseBuilder. Posiada on jedną metodę, która zwraca fragment zapytania po słowie kluczowym WHERE (nie jest wymagane dodawanie WHERE na jego początku) w postaci String. Fragment zapytania należy uzupełnić na podstawie parametrów wejściowych metody - konfiguracji modułu PZ, informacji, czy szukamy podłączonych czy niepodłączonych rekordów oraz aktualnych parametrów wyszukiwania.
  3. klasa wykonująca dodatkowe akcje podczas zapisu modułu PZ - w klasie klienckiej należy zaimplementować interfejs CustomRecordSaver. Klasa ta wykonuje się także z innymi akcjami zapisu i jest wykonywana jako pierwsza. Posiada ona jedną metodę, która zwraca rezultat zapisu w postaci obiektu CustomSaveResult. Jego właściwości są następujące:
    1. success - informuje, czy zapis zakończył się sukcesem, gdy wartość ustawiona jest na false, zapis całego modułu zostanie przerwany, w przypadku wystąpienia błędu wykonania kodu, cały zapis jest również przerywany, wartość domyślna: true
    2. errorMessage - wiadomość błędu, która zostanie wyświetlona użytkownikow, w przypadku, gdy success jest ustawiony na wartość false
    3. attachedRecordsChanged - informuje, czy lista podłączonych rekordów przekazana do metody została zmodyfikowana i ma zostać zastąpiona, wartość domyślna: false
    4. attachedRecords - zmodyfikowana lista podłączonych PZ
  • No labels
Write a comment…