Metadane spraw
Mercury to repozytorium metadanych o obiektach wraz z definicjami kontrolek GUI umożliwiającymi generowanie formularzy GUI. Metadane to ustrukturyzowany informacje stosowane do opisu obiektów (spraw) - opisują logiczny i fizyczny związek pomiędzy częściami złożonego obiektu (zobacz Opisywanie obiektów cyfrowych, 21 października 2016 [dostęp 2020-07-01]). Mercury DB w swoich strukturach umożliwia również przechowywanie niezbędnych danych pozwalających na generowanie formularzy edycji oraz stron prezentacji składowanych obiektów. Metadane składowane są w relacyjnej bazie danych (SQL). Synonimem definicji metadanych spraw jest typ sprawy. Poniżej opis encji.
TypeCase
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeCase |
Encja reprezentująca typ sprawy. Obiekt wykorzystywany w usługach warstwy logicznej. Poniżej przedstawiony jest diagram powiązań TypeCase z innymi encjami, które opisane są w niniejszym dokumencie.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
id | Identyfikator typu. Wartość unikalna w obrębie repozytorium. | Long | Tak | |
accountNumber | Domyślny kod konta księgowego przypisany do danego typu. Dana jest podstawą do generowania unikalnego numeru inwentaryzacyjnego. | String | Nie | |
checkStoreCounter | Czy sprawdzać licznik zliczający liczbę dokumentów danego typu. Zliczanie za pośrednictwem wyzwalaczy w mechanizmach modyfikacji obiektów spraw. | Boolean | Nie | Domyślna wartość false |
code | Kod typu – prosta nazwa grupująca wszystkie wersje typu | TypeCode | Tak | |
description | Opis wersji typu | String | Nie | |
fromDate | Ważność wersji typu – data od. Parametr wykorzystywany do zawężania wyników wyszukiwania (do zbioru spraw w typach występujących w danym okresie czasowym) | Calendar | Nie | |
isActive | Czy typ jest aktywny? | Boolean | Nie | Domyślna wartość true |
isDocumentType | Czy dany typ jest typem dokumentu? W powiązaniu z Archiwum Elektronicznym Dokumentów CMIS informacja czy typ jest typem dokumentu. | Boolean | Nie | |
isEditable | Czy typ jest modyfikowalny?. Typy dokumentów nie są modyfikowalne, ponieważ będą one synchronizowane z AE (Archiwum Elektronicznego, repozytorium dokumentów w standardzie CMIS). Typy spraw z kolei mogą podlegać zmianom wprowadzanym przez użytkownika. | Boolean | Nie | Domyślna wartość true |
isLatestVersion | Czy to jest aktualnie obowiązująca wersja danego typu. | Boolean | Nie | |
kind | Identyfikator grupy typów | TypeKind | Tak | |
sourceOfObject | Nazwy źródeł danych pochodzenia definicji typu. | List<String> | Nie | Dane mogą być przekazywane za pośrednictwem obiektu kontekstu. |
subTypes | Lista typów złożonych powiązanych z odpowiednimi parametrami | Set<SubType> | Nie | |
sumControl | Suma kontrolna wyliczana na podstawie nazw definicji wszystkich parametrów - jest jedną z podstaw do identyfikacji tych samych typów. | String | Nie | |
toDate | Ważność wersji typu – data do. Parametr wykorzystywany do zawężania wyników wyszukiwania (do zbioru spraw w typach występujących w danym okresie czasowym) | Calendar | Nie | |
typeName | Nazwa typu | String | Tak | |
typeParams | Lista parametrów typu | List<TypeParam> | Tak | |
version | Numer wersji typu | Long | Nie |
TypeParam
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeParam |
Obiekt reprezentujący parametr typu. Obiekt wykorzystywany w usługach warstwy logicznej. Poniżej przedstawiony jest diagram powiązań obiektu TypeParam z innymi encjami, które opisane są w niniejszym dokumencie.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
id | Identyfikator parametru typu. Wartość unikalna w obrębie repozytorium. | TypeParamPK | Tak | |
paramDefinition | Identyfikator parametru | ParamDefinition | Tak | |
label | Etykieta pola występującego na formularzu GUI | String | Nie | |
tooltip | Podpowiedź akcji użytkownika przywiązana do pola na formularzu GUI | String | Nie | |
updateable | Czy pole można edytować/zmieniać za pomocą formularza GUI | String | Nie | Domyślna wartość true |
withEmptyOption | Czy pole formularza GUI może zawierać pustą opcję? | Boolean | Nie | |
isRequired | Czy obowiązkowy, czy wymagane jest uzupełnienie wartości? Pole sterujące dla mechanizmów generacji formularzy. | Boolean | Nie | Domyślna wartość false |
isSearchData | Czy dostępny w wyszukiwaniu? | Boolean | Nie | Domyślna wartość true |
hasMultiValues | Czy możemy do pola wstawiać wiele wartości, nie zależnie od tego czy mamy do czynienia ze zwykłym polem typu prostego np. INTEGER czy też z multilistą. | Boolean | Nie | Domyślna wartość false |
arg1 | Argument uniwersalny nr 1. Pole sterujące dla mechanizmów generacji formularzy GUI. | String | Nie | |
arg2 | Argument uniwersalny nr 2. Pole sterujące dla mechanizmów generacji formularzy GUI. | String | Nie | |
arg3 | Argument uniwersalny nr 3. Pole sterujące dla mechanizmów generacji formularzy GUI. | String | Nie | |
arg4 | Argument uniwersalny nr 4. Pole sterujące dla mechanizmów generacji formularzy GUI. | String | Nie | |
arg5 | Argument uniwersalny nr 5. Pole sterujące dla mechanizmów generacji formularzy GUI. | String | Nie | |
xmlId | identyfikator XML - pole dodawane do XML’a potrzebne do identyfikacji pól o tych samych nazwach, ale o innych label’ach, etykietach | String | Tak | |
actions | Lista akcji Javascript przypisanych do pola na formularzu GUI. Pole sterujące dla mechanizmów generacji formularzy | Set<TypeParamAction> | Nie |
TypeParamPK
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeParamPK |
Klucz główny encji TypeParam (parametru typu) wiążący identyfikator typu oraz pozycję, na którym występuje dany parametr.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
type | Identyfikator typu sprawy (referencja do encji TypeCase). | TypeCase | Tak | |
position | Numer pola, z którym związany jest dany parametr, domyślna pozycja na formularzu GUI w konfiguracji pionowej. | Integer | Tak | Pole numeryczne z wartościami od 1 do 128 (maksymalna liczba parametrów). |
Pola sterujące i definicje ich wartości dla mechanizmów generacji prezentacji GUI
Poniżej zostaną wyszczególnione pola, których znaczenie sterujące nie wynika z opisu umieszczonego w tabeli z opisem obiektu. Niektóre akcje generacji są uzupełnieniem dla pól sterujących zdefiniowanych w powiązanej encji ParamDefinition.
isRequired
Pole sterujące dla mechanizmów generacji formularzy. Wartość true
oznacza, że pole jest wymagane. Wartość false
oznacza, że pole nie jest wymagane. Jeżeli z ParamDefinition wynika, że pole reprezentuje kontrolkę SELECT (tag HTML <select>
) lub MULTI (tag HTML <select multiple>
) na formularzu GUI, a wartość pola przyjmuje false to do listy opcji zostanie dodana pozycja --- wybierz ---
z pustą wartością.
arg1
Pole reprezentuje uniwersalny argument nr 1. W zależności od tego jakie dane zawarte są w ParamDefinition pole uzyskuje różne znaczenie sterujące:
- Dla kontrolek
SELECT
lubMULTI
to informacja czy z elementu opcji ma być wyciągana wartość (value), czy nazwa (name). Wartośćtrue
oznacza pobranie atrybutuvalue
. - Dla kontrolki reprezentującej TEXTAREA, to liczba kolumn (znaków w poziomie).
- Dla kontrolki reprezentującej prosty input, to jego typ:
text
lubpassword
- Dla kontrolki reprezentującej wprowadzaną datę to javascript'owy format daty np.
yyyy MM dd
- Dla kontrolki reprezentującej wprowadzaną liczbę to format liczby.
- Dla kontrolki reprezentującej plik to wartość reprezentująca typ ładowanego pliku. Możliwe wartości to
[img|doc|xls|pdf|unknown]
arg2
Pole reprezentuje uniwersalny argument nr 2. W zależności od tego jakie dane zawarte są w ParamDefinition pole uzyskuje różne znaczenie sterujące:
- Dla kontrolek
SELECT
lubMULTI
to informacja reprezentująca atrybutsize
. - Dla kontrolki reprezentującej TEXTAREA, to liczba wierszy (znaków w pionie).
- Dla kontrolki reprezentującej prosty input, to rozmiar tego pola.
- Dla kontrolki reprezentującej wprowadzaną datę to położenie ikonki z kalendarzem (wartość
left
– po lewej stronie pola formularza,right
– po prawej stronie) - Dla kontrolki reprezentującej plik to rozmiar pola
arg3
Pole reprezentuje uniwersalny argument nr 3. W zależności od tego jakie dane zawarte są w ParamDefinition pole uzyskuje różne znaczenie sterujące:
- Dla kontrolek SELECT lub MULTI to informacja czy z listy ma być wyciągana konkatenacja wartości i nazwy (
value{separator}name
, gdzie wartość{separator}
domyślnie przyjmuje wartość znaku pałka|
), wartośćtrue
oznacza, że tak. - Dla kontrolki reprezentującej prosty input, to maksymalna liczba znaków.
arg4
Pole reprezentuje uniwersalny argument nr 4. W zależności od tego jakie dane zawarte są w ParamDefinition pole uzyskuje różne znaczenie sterujące:
- Dla kontrolek reprezentujących dane typ LOB są to dane dotyczące metadanych opisujących ten obiekt (wykorzystywane do prezentacji podglądu obiektu):
JSON
,ANY
,FILE
,XML
,HTML
,TEXT
.
arg5
Pole reprezentuje uniwersalny argument nr 5. W zależności od tego jakie dane zawarte są w ParamDefinition pole uzyskuje różne znaczenie sterujące:
- Dla kontrolek reprezentujących dane typ LOB są to dane mimeType obiektu (wykorzystywane do prezentacji podglądu obiektu):
public String getDefaultContentType() {
switch (this) {
case JSON:
return "application/json";
case XML:
return "application/xml";
case HTML:
return "text/html";
case FILE:
return "application/octet-stream";
default:
return "text/plain";
}
}
actions
Lista akcji/funkcji JavaScript przypisanych do pola na formularzu GUI. Zobacz opis encji TypeParamAction.
TypeCode
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeCode |
Kod grupujący różne wersje tego samego typu.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
name | Identyfikator, nazwa kodu typu. | String | Tak | |
alias | Do prezentacji na formularzach lub pokazania, że jakiś typ jest pochodną innego typu - najbardziej użyteczne dla kodów opisujących pakiety. | String | Nie | |
color | Kolor tła. Do prezentacji na formularzach lub listach: kolor prezentowany w postaci heksadecymalnej RGB | String | Nie | Kolor HTML w postaci heksadecymalnej RGB np. ffdecc |
fgcolor | Kolor napisów. Do prezentacji na formularzach lub listach: kolor prezentowany w postaci heksadecymalnej RGB | String | Nie | Kolor HTML w postaci heksadecymalnej RGB np. 010101 |
icoSrc | Logo/ikona reprezentująca dany typ spraw. Do prezentacji na formularzach lub listach: źródło HTML (dla tagu SRC). Może być prezentowane jako URL lub odpowiedni base64 | String | Nie | Wskazanie źródła http. |
label | Etykieta reprezentująca dany typ spraw. Do prezentacji na formularzach. Może być pusty. | String | Nie | |
publishVersion | Wersja zmieniana jest przy każdej aktualizacji - potrzebne do identyfikacji, czy dany wpis został już opublikowany. | String | Nie | Wartość generowana |
uniqueConstraintParamName | Nazwa pola, która zawiera unikalne wartości w ramach danego typu | String | Nie | Nazwa pola występująca w zbiorze parametrów reprezentacji typu sprawy. |
retentionTimeMilis | Czas, wyrażony w milisekundach, po którym obiekt sprawy danego typu, zostanie usunięty, licząc od czasu/daty jego utworzenia. | Long | Nie | |
useArchivization | Flaga, informująca, czy ma być użyta metoda archiwizacji spraw podczas usuwania sprawy danego typu. | Boolean | Nie | true albo false |
subjectFormula | Formuła budowania tematu sprawy danego typu. Formuła ta jest definicją konkatenacji nazw pól danego typu. | String | Nie | |
partitionName | Nazwa partycji głównej encji Case , w której przechowywane są dane spraw danego typu. | String | Nie |
Pola sterujące i definicje ich wartości dla mechanizmów generacji prezentacji GUI
Encja TypeCode
zawiera pola sterujące, które można wykorzystać do tworzenia mechanizmów prezentacji GUI.
Powyższa ilustracja prezentuje w jaki sposób można przedstawić typy spraw w aplikacji warstwy prezentacyjnej. Pokazuje również w jaki sposób podczas budowania GUI mogą zostać wykorzystane wartości pól color
, fgcolor
, icoSrc
oraz label
.
Pole icoSrc
Logo/ikona reprezentująca dany typ spraw wykorzystywana do prezentacji na formularzach. W implementacji GUI, która została zaprezentowana na wcześniejszej ilustracji wykorzystana została ikonografia ze zbioru Font Awesome wersja 4. Pole przyjmuje przykładowe wartości: fa-thumbs-o-up
, fa-bars
, fa-address-book
, fa-gavel
, fa-user-secret
itp. Po stronie warstwy GUI pobierana jest wartość pola w celu generacji następującego kodu:
<html>
<head>
<link type="text/css" rel="stylesheet" href="/mercury-gui-portal/static/css/font-awesome.min.css"/>
</head>
<body>
<i class="fa fa-thumbs-o-up fa-3x" aria-hidden="true"></i>
</body>
</html>
Pole subjectFormula
Formuła budowania wartości reprezentującej temat sprawy danego typu. Formuła ta jest definicją konkatenacji pól danego typu oraz wartości literalnych. Formuła jest wykorzystana do prezentacji wartości pola subject
obiektu CaseNarrative
będącego elementem wykorzystanym w prezentacji wyników wyszukiwania w warstwie prezentacyjnej GUI.
Poniżej przykłady wartości jakie może przyjmować pole w celu prezentacji zajawek1 spraw:
activityName||':'||bpmProcessInstanceId||'<br/>'||bpmGroupDisplayName||'<br/>'||bpmTaskStatus||'<br/>'||userFullName
city||' '||street
county||' '||community||' '||city||' '||street||' '||buildingNumber
'FV:'||invoceNo||'<br/>'||documentNo||' '||category
TypeKind
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeKind |
Rodzaj / kategoria typu.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
name | Identyfikator, nazwa rodzaju typu. | String | Tak | |
description | Opis rodzaju. | String | Nie |
Przykłady rodzajów typów:
INW
- InwentaryzacjaASSETS
- Środki trwałeGEN
- Generowane definicje typów
SubType
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | SubType |
Dane dotyczące typu sprawy zależnej oraz pozycji formularza sprawy zależnej na formularzu głównym (sprawy nadrzędnej).
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
id | Identyfikator podtypu. Wartość unikalna w obrębie repozytorium. | Long | Tak | |
parentType | Identyfikator typu sprawy | TypeCase | Tak | |
code | Kod typu | TypeCode | Tak | |
isSearchData | Czy dostępny w wyszukiwaniu? | Boolean | Nie | true albo false |
label | Nagłówek prezentacji formularza sprawy zależnej. | String | Nie | |
isList | Czy sprawy zależne występują jako lista? | Boolean | Nie | true albo false |
fieldName | Nazwa pola sprawy nadrzędnej, z którym jest powiązany dany formularz sprawy zależnej. | String | Nie | |
tooltip | Podpowied ź akcji użytkownika przywiązana do pola na formularzu GUI | String | Nie | |
updateable | Czy formularz (dane) sprawy zależnej są możliwe do zmiany? | String | Nie | true albo false |
TypeParamAction
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | TypeParamAction |
Zbiór akcji wraz z kodem JavaScript, które powiązane są z polami formularza GUI.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
id | Identyfikator akcji. Wartość unikalna w obrębie repozytorium. | Long | Tak | |
typeParam | Wskaźnik na parametr typu | TypeParam | Tak | |
jsEventName | Nazwa zdarzenia JavaScript przywiązana do pola danego typu. | String | Tak | Nazwy zdarzeń HTML2 |
jsFunctionBody | Kod JavaScript z implementacją funkcji. | LOB | Tak |
ParamDefinition
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | ParamDefinition |
Encja reprezentująca podstawowe informacje o nazwie pola, jego typie prostym lub złożonym. ParamDefinition jest elementem wielokrotnie wykorzystywanym jako definicja parametru typu sprawy, może występować w wielu różnych typach. Jest definicją parametru typu sprawy. Na przykład pole o nazwie name
może być wykorzystane w wielu różnych typach definiujących obiekt użytkownika, samochód, samolot, komputer.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
id | Identyfikator definicji parametru. Wartość unikalna w obrębie repozytorium. Klucz złożony. | ParamDefinitionPK | Tak | |
description | Opis parametru | String | Nie | |
alternateName | Alternatywna nazwa parametru. | String | Nie | |
recomendedLabel | Rekomendowany label opisujący daną definicję. | String | Nie | |
isLatestVersion | Czy to ostatnia wersja definicji pola? | Boolean | Tak | true albo false |
isIndexable | Czy pole jest indeksowane w indeksie Lucene, czy możliwym jest wyszukiwanie po tym polu za pomocą mechanizmów Lucene. | Boolean | Nie | true albo false |
htmlControlName | Nazwa typu kontrolki HTML, pola na formularzu GUI . | String | Tak | Wartości reprezentujące obiekt HtmlSupportedControl opisany w dalszej części dokumentu. |
paramType | Typ parametru, wartość | String | Tak | Wartości reprezentujące obiekt AttributeType opisany w dalszej części dokumentu. |
subType | Informacja dla typów złożonych oraz jakiego typu jest element. | String | Nie | Nazwa typu sprawy (obiektu TypeCase) reprezentującej sprawę zależną przypisaną do pola. |
timeToLiveSeconds | Parametr jest definiowany opcjonalnie i definiuje czas wygaśnięcia ważności pamięci podręcznej atrybutu. | Long | Nie | Wartość numeryczna |
valueDefinition | Opcjonalna definicja wartości parametru (gdy mamy do czynienia z wartościami słownikowymi). | String | Nie | |
sourceType | Pole opcjonalne dla typów słownikowych - informacja o tym jakiego typu jest definicja wartości. | String | Nie | Wartość reprezentująca obiekt SourceType opisany w dalszej części dokumentu. |
source | Nazwa/definicja źródła, z którego pochodzą dane słownikowe dla pól z wyborem. | String | Nie | |
sourceJndiName | Ogólnie nazwa JNDI źródła z wyjątkami. | String | Nie | |
sourceJ2CName | Nazwa wskazująca na tożsamość i hasło użytkowników używanych przez architekturę zabezpieczeń łączy technologicznych Java(TM) 2 Connector. | String | Nie | |
presentationUrlPrefix | Prefiks URL-a (ścieżki HTTP, HTTPS) jaki jest generowany podczas prezentacji wartości (wartość pola doklejana jest na końcu URL'a). | String | Nie | |
complexClass | Nazwa klasy Java, która reprezentuje złożony obiekt przechowywany w danym polu. | String | Nie | |
defaultValue | Domyślna wartość pola parametru | String | Nie | |
fromDate | Ważność wersji typu – data od. Parametr wykorzystywany do zawężania wyników wyszukiwania (do zbioru spraw w typach występujących w danym okresie czasowym) | Calendar | Nie | |
toDate | Ważność wersji typu – data do, Parametr wykorzystywany do zawężania wyników wyszukiwania (do zbioru spraw w typach występujących w danym okresie czasowym) | Calendar | Nie | |
isEditable | Czy można modyfikować dane pola (obiektu ParamDefinition ) | Boolean | Nie | true albo false |
sourceOfObject | Nazwa źródła, z którego pochodzi nazwa pola. | String | Nie | |
mimeType | Dodatkowa informacja dotycząca mimeType. Wartość uzupełniająca dane dotyczące pola typu LOB, przechowywane w polu knownLobMetadata | String | Nie | Definicje mimeType np.: application/json , application/xml , text/html , application/octet-stream , text/plain |
knownLobMetadata | Znane definicje metadanych dla pól reprezentujących obiekt LOB | String | Nie | Wartość reprezentująca obiekt KnownLobMetadata: JSON , ANY , FILE , XML , HTML , TEXT |
ParamDefinitionPK
Warstwy, w których użyty | Logic |
Rodzaj | Encja |
complexType | ParamDefinitionPK |
Definicja klucza głównego encji ParamDefinition.
Lista i znaczenie poszczególnych pól
Pole | Opis | Typ | Wymagany | Dozwolone wartości |
---|---|---|---|---|
definitionName | Unikalna nazwa pola. | String | Tak | |
version | Wersja pola. | Long | Tak | Wartość generowana automatycznie po identyfikacji zmiany definicji parametru. |
Pola sterujące i definicje ich wartości dla mechanizmów generacji prezentacji GUI
Poniżej opisano enumeratory, których dane są zawarte w opisie encji ParamDefinition, a o które oparto reguły budowania kontrolek HTML podczas generacji formularza.
HtmlSupportedControl
Pole sterujące htmlControlName
opisujące pojedynczą kontrolkę HTML związaną z danym polem formularza. Poniżej lista wartości mających wpływ na wybór odpowiedniej kontrolki formularza GUI:
Wartość | Opis |
---|---|
TEXT | długi tekst, prezentowany w TEXTAREA |
INTEGER | Liczba całkowita. Pole input z walidacją formatu liczby całkowitej |
CURRENCY | Liczba zmiennoprzecinkowa z dodatkową informacją o walucie (kod waluty np. PLN , USD , GBP itd.) |
NUMBER | Liczba zmiennoprzecinkowa. Pole input z walidacją formatu liczby całkowitej |
STRING | krótki tekst, prezentowany w zwykłym polu INPUT TYPE="text" |
CHECK | typ prezentowany jako pole CHECKBOX |
RADIO | Typ prezentowany jako pole RADIO |
DATE | Typ daty, pole z datePicker |
URL | Pole tekstowe, do którego można wprowadzić odnośnik. |
FILE | Pole tekstowe, do którego można wprowadzić położenie lokalnego (na stacji roboczej) pliku. |
SELECT | Lista rozwijalna z pojedynczym wyborem, ale można zrobić z niego pole z wieloma wyborami poprzez ustawienie odpowiedniej wartości. |
MULTI | Lista rozwijalna z możliwością wyboru wielu wartości |
GROUPEDSELECT | Lista rozwijalna z pojedynczym wyborem, z tym, ze na liście prezentowane są pogrupowane pary nazwa-wartość |
GROUPEDMULTI | Lista rozwijalna z możliwością wyboru wielu wartości, z tym, ze na liście prezentowane są pogrupowane pary nazwa-wartość, ale można zrobić z niego pole z wieloma wyborami poprzez ustawienie odpowiedniej wartości. |
LOVSELECT | Pole z listą rozwijalną, z pojedynczym wyborem, ale lista jest prezentowana w osobnym oknie (LOV - List OF Values) |
LOVMULTI | Pole z listą rozwijalną, z możliwością wyboru wielu wartości, ale lista jest prezentowana w osobnym oknie (LOV - List OF Values), ale można zrobić z niego pole z wieloma wyborami poprzez ustawienie odpowiedniej wartości. |
GROUPEDLOVSELECT | Pole z listą rozwijalną, z pojedynczym wyborem, ale lista jest prezentowana w osobnym oknie (LOV - List OF Values), z tym, ze na liście prezentowane są pogrupowane pary nazwa-wartość, ale można zrobić z niego pole z wieloma wyborami poprzez ustawienie odpowiedniej wartości. |
GROUPEDLOVMULTI | Pole z listą rozwijalną, z możliwością wyboru wielu wartości, ale lista jest prezentowana w osobnym oknie (LOV - List OF Values), z tym, ze na liście prezentowane są pogrupowane pary nazwa-wartość |
SUBFORM | Generacja podformularza GUI/prezentacji sprawy zależnej. Dla pola paramType o wartości SUBCASE - zobacz opis AttributeType. |
SUBTABLE | Generacja list/tablic, dla list spraw zależnych. Dla pola paramType o wartości SUBCASE - zobacz opis AttributeType. |
AttributeType
Pole sterujące attributeType
definiujące typy pól formularza. Może być podstawą do zbudowania walidatora wartości. Poniżej lista wartości mających wpływ na budowę odpowiedniej kontrolki formularza GUI.
Wartość | Nazwa typu | Implementacja Java | Opis |
---|---|---|---|
BOOLEAN | Boolean | java.lang.Boolean | Lista warto ści odpowiadających prawdzie i fałszowi; |
BOOLEAN_INTEGER | BooleanInteger | java.lang.Integer | Lista wartości odpowiadających prawdzie i fałszowi z wartością liczbową; |
TEXT | Text | java.lang.String | Tekst długi - znaki (słowa, zdania itp.); |
STRING | String | java.lang.String | Tekst krótki - znaki (słowo, zdanie itp.) |
PASSWORD | Password | java.lang.String | krótki tekst, prezentowany w zwykłym polu z maską zasłaniającą wprowadzaną wartość |
NUMBER | Number | java.lang.Double | Liczba zmiennoprzecinkowa; #########0.#### |
DECIMAL | Decimal | java.lang.Double | Liczba zmiennoprzecinkowa; #########0.#### |
DOUBLE | Double | java.lang.Double | Liczba zmiennoprzecinkowa; #########0.#### |
FLOAT | Float | java.lang.Float | Liczba zmiennoprzecinkowa; #########0.#### |
CURRENCY | Currency | pro.ibpm.mercury.attrs.javax .CurrencyValue | Liczba w formacie waluty, z dwoma miejscami po przecinku; #########0.## |
INTEGER | Integer | java.lang.Long | Liczba całkowita |
DATE | Date | pro.ibpm.mercury.attrs.javax .DateInString | Data prosta w formacie DD-MM-YYYY |
DATE_LONG | DateLong | pro.ibpm.mercury.attrs.javax .DateInString | Data z czasem (godziną) w formacie DD-MM-YYYY HH24:MI:SS |
TIME | Time | pro.ibpm.mercury.attrs.javax .DateInString | Data z czasem (godziną) w formacie DD-MM-YYYY HH24:MI:SS |
URL | URL | pro.ibpm.mercury.attrs.javax .URLValue | Adres HTTP |
SELECT | n/a | java.util.Collection | Atrybut z przechowujący listy. Pole wielowartościowe. |
COMPLEX | n/a | java.lang.Object | Typ złożony, dla pola takiego typu będzie generowana formatka oparta o dane zdefiniowane w obiekcie spełniającym interfejs ComplexValue . Typ złożony może być obsługiwany również przez kontrolkę HTML typu SELECT - wtedy value zawiera odpowiednio przygotowaną postać reprezentującą wartość (na podstawie implementacji metody ComplexValue#encode(Object, String, String) ) |
LOB | Lob | java.lang.String | Large object |
SUBCASE | n/a | java.lang.Object | sprawa zależna |
JSONNameValuePair | pro.ibpm.mercury.attrs.sub .JSONNameValuePairSubType | name oraz value przestarzały, obecnie w wykorzystaniu jest NameValuePair | |
NVP | NameValuePair | pro.ibpm.mercury.attrs.sub .NameValuePairSubType | Podtyp reprezentujący obiekt z parą nazwy i wartości (z polami name oraz value ) |
ENTRY | Entry | pro.ibpm.mercury.attrs.sub .EntrySubType | Podtyp reprezentujący obiekt Entry z parą klucza i wartości (z polami key oraz value ) |
MAP | Map | pro.ibpm.mercury.attrs.sub .MapSubType | Podtyp reprezentujący listę obiektów typu Entry |
ANY | ANY | pro.ibpm.mercury.attrs.sub .AnySubType | Podtyp reprezentujący dowolny obiekt |
SourceType
Pole sterujące sourceType
definiujące pochodzenie danych słownikowych wartości pola. Typy źródeł danych dla kontrolek z listami rozwijalnymi formularza GUI.
Wartość | Opis |
---|---|
DEFAULT | Domyślne pochodzenie danych - dla pól typu Integer , Number , Date |
JSON | Sformatowana w postaci JSON lista w polu valueDefinition encji ParamDefinition . |
WS | W polu w polu valueDefinition encji ParamDefinition jest nazwa klasy interpretującej wynik, a polu SOURCE jest adres WebService po protokole HTTPS |
HTTP | W polu w polu valueDefinition encji ParamDefinition jest ścieżka pośrednia prowadząca do chronionej listy elementów zdefiniowanych jako plik, a w SOURCE jest URL kierujący do strony z odpowiednim formatem XML lub JSON - wykorzystanie protokołów HTTP i HTTPS. Strona nie jest zabezpieczona, lub zabezpieczona jest mechanizmem BASIC, OAuth. |
WEB | W polu w polu valueDefinition encji ParamDefinition jest ścieżka pośrednia prowadząca do chronionej listy elementów zdefiniowanych jako plik, a w SOURCE jest URL kierujący do strony z odpowiednim formatem XML lub JSON - wykorzystanie protokołów HTTP i HTTPS. Strona serwera, na której znajdują się dane zabezpieczona jest mechanizmem FORM |
FILE | W polu w polu valueDefinition encji ParamDefinition jest ścieżka pośrednia prowadząca do listy elementów zdefiniowanych jako plik, a polu w polu SOURCE jest URL kierujący do pliku z odpowiednim formatem XML lub JSON |
JNDI_RESOURCE | W polu w polu valueDefinition encji ParamDefinition jest ścieżka pośrednia prowadząca do listy elementów zdefiniowanych jako plik, a polu w polu SOURCE jest URL kierujący do strony z odpowiednim formatem XML lub JSON - wykorzystanie protokołu HTTP/HTTPS |
SAVEDVALS | wartości zapisane w bazie danych w tablicy. Tablica zawiera wiersze z polami nazwy atrybutu oraz zapisanej wartości, a jej dane uzupełniane są wraz z wprowadzanymi, różnymi wartościami pochodzącymi z formularza GUI. |
LOCALDAO | wykorzystanie klas lokalnego DAO (nazwa klasy DAO będzie budowana na podstawie nazwy parametru ParamDefinition ) |
QUERY | Zapytanie SQL w polu valueDefinition encji ParamDefinition . JNDI źródła danych powinno być w polu sourceJndiName albo JDBC URL w polu source |
Footnotes
-
Zajawka - krótki opis sprawy, który służy do zaprezentowania sprawy w wynikach wyszukiwania. ↩
-
Listę nazw dostępnych zdarzeń HTML można znaleźć na stronie https://www.w3schools.com/tags/ref_eventattributes.asp. ↩