Case jako uniwersalny obiekt MRC - MrcObject
W niniejszym artykule znajdziemy opis uniwersalnego obiektu MRC wraz z jego komponentami. Jest on wykorzystywany w usługach SOAP oraz REST. W przeciwieństwie do dowolności tworzenia obiektów spraw za pomocą schematów ANY XML i ANY JSON, uniwersalny obiekt MRC jest zdefiniowany w sposób ścisły i i jednoznacznie opisuje dowolny obiekt MRC.
MrcObject
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcObject, IMrcPropertyAttrs |
| className/type | MrcObject |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcObject |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcObject |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Uniwersalny obiekt MRC. Obiekt biznesowy wykorzystywany do opisania dowolnej instancji sprawy o dowolnym typie. W poniższej tabeli opis obiektu DTO wykorzystywanego w usługach SOAP oraz REST.
| Parametr | Opis | Typ | Wymagany | Dozwolone wartości |
|---|---|---|---|---|
| mrcClassName | Nazwa klasy uniwersalnego obiektu MRC. | String | Tak | MrcObject, MrcPagedResult, MrcPagingParams, MrcPage |
| name | Dla spraw zależnych to nazwa pola w którym występuje dany obiekt typu MrcObject. Dla spraw nadrzędnych wartość nie jest ustawiana | String | Nie/Tak1 | |
| mrcCaseHeader | Nagłówek sprawy | CaseHeader | Tak2 | |
| propertyNames | Lista nazw parametrów sprawy. Lista kluczy mapy zawartej w polu propertyMap | DtoMrcPropertyNames | Tak | |
| propertyMap | Mapa, której kluczem (pole key) jest nazwa parametru sprawy (pobrana z pola propertyNames) a wartością (pole value) jest obiekt reprezentujący parametr (wraz z jego wartością) - zobacz opis obiektów MrcDateProperty | DtoPropertyMap | Tak | |
| mrcObjectWithRequiredPosition | Czy wymagane jest by w wartości występujące w mapie (pole propertyMap) muszą posiadać odpowiednie pole mówiące o tym, jaką pozycję zajmuje dane pole. Jeżeli ustawimy na false, to numer pozycji zostanie nadany automatycznie. | Boolean | Nie | true lub false |
W poniższym przykładzie zaprezentowano sprawę o nazwie typu TestUser w postaci uniwersalnego obiektu MRC wykorzystywanego w usługach SOAP w postaci XML.
<?xml version="1.0" encoding="utf-8"?>
<dto xmlns="http://business.dto.ws.hgdb.io/mrcObject"
xsi:schemaLocation="http://business.dto.ws.hgdb.io/mrcObject https://hgdb.org/xsd/dto/hgdb-mrc-object-3.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<mrcClassName>MrcObject</mrcClassName>
<mrcCaseHeader>
<headerMetadata>
<className>MrcCaseHeader</className>
</headerMetadata>
<bpmProcessId>1234</bpmProcessId>
<groupId>1001</groupId>
<typeCode>TestUser</typeCode>
<status>A</status>
<storeCount>1</storeCount>
<storeId>1001</storeId>
<className>TestUser</className>
<objectID>TestUser.1</objectID>
<rootVersionContextID>App.1</rootVersionContextID>
<dirty>true</dirty>
</mrcCaseHeader>
<propertyNames>
<propertyName>timeZone^7</propertyName>
<propertyName>isTechnical^5</propertyName>
<propertyName>fullName^3</propertyName>
<propertyName>userName^2</propertyName>
<propertyName>isActive^4</propertyName>
<propertyName>locale^6</propertyName>
<propertyName>id^1</propertyName>
</propertyNames>
<propertyMap>
<entry>
<key>timeZone^7</key>
<value>
<name>timeZone</name>
<type>String</type>
<version>1</version>
<id>7</id>
<position>7</position>
<isEncoded>false</isEncoded>
<valueString>Europe/Warsaw</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>isTechnical^5</key>
<value>
<name>isTechnical</name>
<type>Integer</type>
<version>1</version>
<id>5</id>
<position>5</position>
<isEncoded>false</isEncoded>
<valueString>0</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>fullName^3</key>
<value>
<name>fullName</name>
<type>String</type>
<version>1</version>
<id>3</id>
<position>3</position>
<isEncoded>false</isEncoded>
<valueString>SlawomirCichy</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>userName^2</key>
<value>
<name>userName</name>
<type>String</type>
<version>1</version>
<id>2</id>
<position>2</position>
<isEncoded>false</isEncoded>
<valueString>slawas</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>isActive^4</key>
<value>
<name>isActive</name>
<type>Integer</type>
<version>1</version>
<id>4</id>
<position>4</position>
<isEncoded>false</isEncoded>
<valueString>1</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>locale^6</key>
<value>
<name>locale</name>
<type>String</type>
<version>1</version>
<id>6</id>
<position>6</position>
<isEncoded>false</isEncoded>
<valueString>pl_PL</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>id^1</key>
<value>
<name>id</name>
<type>Integer</type>
<version>1</version>
<id>1</id>
<position>1</position>
<isEncoded>false</isEncoded>
<valueString>2</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
</propertyMap>
<mrcObjectWithRequiredPosition>false</mrcObjectWithRequiredPosition>
</dto>
W poniższym przykładzie zaprezentowano sprawę o nazwie typu SampleOrder w postaci uniwersalnego obiektu MRC wykorzystywanego w usługach REST w postaci JSON.
{
"dto": {
"mrcClassName": "SampleOrder",
"name": null,
"status": null,
"mrcCaseHeader": {
"headerMetadata": {
"status": "ALL",
"className": "MrcCaseHeader"
},
"caseId": 835495,
"bpmProcessId": null,
"inventoryCode": null,
"groupId": 303542,
"typeId": 10022,
"typeCode": "SampleOrder",
"endDate": null,
"dueDate": null,
"status": "A",
"previousVersionId": null,
"rootVersionId": 835495,
"priceValue": 0,
"priceValueCode": null,
"priceExchangeDate": null,
"storeCount": 1,
"storeId": 4010,
"createDate": "24-10-2019 02:40:09 +02",
"createdBy": "bpmimpl",
"lastModifyDate": "24-10-2019 02:40:09 +02",
"lastModifiedBy": "bpmimpl",
"modifyComment": null,
"createdByRoleName": "Wnoskodawca",
"lastModifiedByRoleName": "Wnoskodawca",
"subCaseReferenceId": null,
"className": "SampleOrder",
"objectID": "TWClass.2ec37a12-40ff-4d8a-81f1-4d05be9b5156",
"rootVersionContextID": "72658b04-d39c-459c-b765-4ed6f19248cf",
"version": "55013",
"dirty": false,
"pkPropertyName": null
},
"propertyNames": [
"cost^1",
"subject^2",
"invoceNo^3",
"documentNo^4",
"category^5"
],
"propertyMap": {
"entries": [
{
"key": "cost^1",
"value": {
"name": "cost",
"type": "Decimal",
"version": "1",
"label": null,
"id": "1",
"position": 1,
"isRequired": null,
"updateable": null,
"isEncoded": null,
"valueString": "",
"isString": true,
"valueMrcObject": null,
"isMrcObject": false,
"mrcClass": "MrcSimpleProperty",
"lobMetadata": null,
"lobMimeType": null,
"valueMrcList": null,
"isMrcList": false
}
},
{
"key": "subject^2",
"value": {
"name": "subject",
"type": "String",
"version": "1",
"label": null,
"id": "2",
"position": 2,
"isRequired": null,
"updateable": null,
"isEncoded": null,
"valueString": "",
"isString": true,
"valueMrcObject": null,
"isMrcObject": false,
"mrcClass": "MrcSimpleProperty",
"lobMetadata": null,
"lobMimeType": null,
"valueMrcList": null,
"isMrcList": false
}
},
{
"key": "invoceNo^3",
"value": {
"name": "invoceNo",
"type": "String",
"version": "1",
"label": null,
"id": "3",
"position": 3,
"isRequired": null,
"updateable": null,
"isEncoded": null,
"valueString": "",
"isString": true,
"valueMrcObject": null,
"isMrcObject": false,
"mrcClass": "MrcSimpleProperty",
"lobMetadata": null,
"lobMimeType": null,
"valueMrcList": null,
"isMrcList": false
}
},
{
"key": "documentNo^4",
"value": {
"name": "documentNo",
"type": "String",
"version": "1",
"label": null,
"id": "4",
"position": 4,
"isRequired": null,
"updateable": null,
"isEncoded": null,
"valueString": "",
"isString": true,
"valueMrcObject": null,
"isMrcObject": false,
"mrcClass": "MrcSimpleProperty",
"lobMetadata": null,
"lobMimeType": null,
"valueMrcList": null,
"isMrcList": false
}
},
{
"key": "category^5",
"value": {
"name": "category",
"type": "String",
"version": "1",
"label": null,
"id": "5",
"position": 5,
"isRequired": null,
"updateable": null,
"isEncoded": null,
"valueString": "",
"isString": true,
"valueMrcObject": null,
"isMrcObject": false,
"mrcClass": "MrcSimpleProperty",
"lobMetadata": null,
"lobMimeType": null,
"valueMrcList": null,
"isMrcList": false
}
}
],
"empty": false
},
"mrcObjectWithRequiredPosition": true
}
}
DtoMrcPropertyNames
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Implementacja Java | String[] |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcPropertyNames |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Obiekt pomocniczy wspierający implementację obiektu MrcObject, reprezentacja pola propertyNames. Lista nazw parametrów i prezentuje listę nazw parametrów w uniwersalnym obiekcie MRC, opisującym dowolną sprawę składowaną w bazie Mercury DB (HgDB). Jest to lista wartości kluczy mapy zawartej w polu propertyMap obiektu MrcObject.
| Parametr | Opis | Typ | Wymagany? | Dozwolone wartości |
|---|---|---|---|---|
| propertyName | Nazwa elementu listy. Może być wiele elementów. | String | Nie | Nazwy parametrów (pól) sprawy wraz (opcjonalnie) z ich identyfikatorem XML (najczęściej reprezentującym pozycję parametru zobacz encję TypeParam). Format: <nazwa_pola>[^xmlId] |
Przykładowa lista parametrów (wartości kluczy mapy pola propertyMap):
<propertyNames>
<propertyName>timeZone^7</propertyName>
<propertyName>isTechnical^5</propertyName>
<propertyName>fullName^3</propertyName>
<propertyName>userName^2</propertyName>
<propertyName>isActive^4</propertyName>
<propertyName>locale^6</propertyName>
<propertyName>id^1</propertyName>
</propertyNames>
DtoPropertyMap
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | Map<String, DtoMrcProperty> |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoPropertyMap |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Obiekt pomocniczy wspierający implementację obiektu MrcObject, mapa parametrów, reprezentacja pola propertyMap. Jest implementacją mapy (listy obiektów DtoPropertyMapEntry), której kluczem jest nazwa parametru sprawy (zobacz wartości pola propertyNames obiektu MrcObject) a wartością jest obiekt reprezentujący parametr (wraz z jego wartością).
| Parametr | Opis | Typ | Wymagany? |
|---|---|---|---|
| entry | Nazwa elementu listy reprezentującej mapę. Może być wiele elementów. | DtoPropertyMapEntry | Nie |
DtoPropertyMapEntry
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | Map.Entry<String, DtoMrcProperty> |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoPropertyMapEntry |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Element mapy parametrów. Obiekt jest elementem obiektu DtoPropertyMap i jest implementacją Entry.
| Parametr | Opis | Typ | Wymagany? |
|---|---|---|---|
| key | Klucz mapy | String | Tak |
| value | Wartość reprezentująca obiekt będący elementem mapy. | DtoMrcProperty w reprezentacji dla | Tak |
MrcSimpleProperty (MrcSimpleItem)
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcPropertyAttrs |
| className/type | MrcSimpleProperty, MrcSimpleItem (implementacja elementu listy) |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcSimpleProperty, pro.ibpm.mercury.business.data.api.MrcSimpleProperty (implementacja elementu listy) |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcProperty |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Parametr sprawy. Podstawowa reprezentacja pola w uniwersalnym obiekcie MRC, opisującym dowolną sprawę składowaną w bazie Mercury DB (HgDB). Obiekt zawiera wartość parametru, w zależności od jego typu w różnych polach.
| Parametr | Opis | Typ | Wymagany? | Dozwolone wartości |
|---|---|---|---|---|
| name | Nazwa pola sprawy. Odpowiednik pola definitionName w encji ParamDefinition. | String | Tak | |
| type | Nazwa typu pola sprawy. Odpowiednik pola subType w encji ParamDefinition. Dla typów pól, które są listą elementów, które reprezentowane są przez MrcList, do nazwy typu trzeba dodać sufiks [] np. Date[], TestUser[] itp. jednoznacznie wskazującego na to, że parametr jest listą.
| String | Tak | |
| version | Wersja definicji pola sprawy. Odpowiednik pola version w encji ParamDefinition. | String | Nie | |
| label | Etykieta parametru. Należy pamiętać, że system Mercury służy również do generacji formularzy – pole z wartością etykiety, odpowiednik pola label w encji TypeParam. | String | Nie | |
| id | Identyfikator XML pola w type sprawy. Odpowiednik pola xmlId w encji TypeParam. Jeżeli pole nie jest ustawione w systemie, to przyjmuje wartość pozycji (pole position). | String | Tak | |
| position | Pozycja pola w sprawie. Odpowiednik pola position występującego w kluczu złożonym encji TypeParam (TypeParamPK). | Integer | Tak3 | |
| isRequired | Czy wartość pola jest wymagana? Odpowiednik pola isRequired w encji TypeParam | String | Nie | Reprezentacja pola typu Boolean: true lub false |
| updateable | Czy dopuszczalnym jest zmiana wartości pola? Odpowiednik pola updateable w encji TypeParam | String | Nie | Jedna z wartości: READWRITE, READONLY, ONCREATE, ONCREATEVISIBLE, OTHER |
| isEncoded | Czy pole jest zakodowane do postaci przechowywanej w bazie Mercury. Jeżeli pole ma wartość ostawioną na false oznacza, że wartość jest wartością prezentacyjną. Prosty przykład. Wartość pola typu Date w bazie Mercury jest przechowywana jako liczba milisekund. Jeżeli isEncoded=”true” to zostanie przesłana liczba, jeżeli isEncoded=”false”, to data sformatowana zgodnie z zadanym formatem w kontekście akcji. | String | Nie | Reprezentacja pola typu Boolean: true lub false |
| valueString | Wartość parametru w postaci łańcucha znakowego. | String | Nie | |
| isString | Czy wartość jest przesłana jako łańcuch znakowy? Jeżeli true to szukamy wartości w polu valueString. | Boolean | Tak | true lub false |
| valueMrcObject | Wartość parametru w postaci sprawy zależnej reprezentowanej za pomocą uniwersalnego obiektu MRC (MrcObject). | MrcObject | Nie | |
| isMrcObject | Czy wartość jest przesłana jako uniwersalny obiekt MRC? Jeżeli true to szukamy wartości w polu valueMrcObject. | Boolean | Tak | true lub false |
| mrcClass | Nazwa klasy/typ elementu uniwersalnego obiektu MRC. | String | Tak | Jedna z wartości: MrcSimpleProperty, MrcDateProperty, MrcObject, MrcList, MrcPage, MrcPagingParams |
| lobMetadata | Metadane obiektu LOB, dotyczy tylko parametrów sprawy reprezentujących pole typu LOB. | String | Nie | Wartości reprezentujące format wartości typu LOB: JSON, ANY, FILE, XML, HTML, TEXT |
| lobMimeType | Typ MIME obiektu LOB, dotyczy tylko parametrów sprawy reprezentujących pole typu LOB. | String | Nie | Wartości reprezentujące format wartości typu LOB: application/json, application/xml, text/html, application/octet-stream, text/plain |
| valueMrcList | Wartość parametru w postaci listy innych wartości. | MrcList | Nie | |
| isMrcList | Czy wartość jest listą innych wartości? Jeżeli true to szukamy wartości w polu valueMrcList | Boolean | Tak | true lub false |
Poniżej przykładowa reprezentacja pola typu prostego. Bazując na wcześniej przedstawionych przykładach sprawy o nazwie TestUser, obiekt pola o nazwie fullName zostanie przekształcony do następującej postaci:
<entry>
<key>fullName^3</key>
<!-- Reprezentacja MrcSimpleProperty - START -->
<value>
<name>fullName</name>
<type>String</type>
<version>1</version>
<id>3</id>
<position>3</position>
<valueString>Slawomir Cichy</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
<!-- Reprezentacja MrcSimpleProperty - KONIEC -->
</entry>
<entry>
<key>startDate^4</key>
<!-- Reprezentacja MrcDateProperty - START-->
<value>
<name>startDate</name>
<type>Date</type>
<version>1</version>
<id>4</id>
<position>4</position>
<isEncoded>false</isEncoded>
<valueString>2017/04/23 22:58:24.842 CEST</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcDateProperty</mrcClass>
</value>
<!-- Reprezentacja MrcDateProperty - KONIEC-->
</entry>
Przykład prezentacji parametru reprezentującego listę (MrcList):
<entry>
<key>listDates^8</key>
<!-- Reprezentacja MrcList - START -->
<value>
<name>listDates</name>
<type>Date[]</type>
<version>1</version>
<id>8</id>
<position>8</position>
<isEncoded>false</isEncoded>
<valueMrcList>
<mrcClassName>Date</mrcClassName>
<name>listDates</name>
<arraySize>2</arraySize>
<items>
<item>
<isEncoded>false</isEncoded>
<valueString>2017/02/04 21:58:24.842 CET</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcDateProperty</mrcClass>
</item>
<item>
<isEncoded>false</isEncoded>
<valueString>2017/02/03 21:58:24.842 CET</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcDateProperty</mrcClass>
</item>
</items>
</valueMrcList>
<isString>false</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>true</isMrcList>
<mrcClass>MrcList</mrcClass>
</value>
<!-- Reprezentacja MrcList - KONIEC -->
</entry>
MrcDateProperty (MrcDateItem)
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcPropertyAttrs |
| className/type | MrcDateProperty, MrcDateItem (implementacja elementu listy) |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcDateProperty, pro.ibpm.mercury.business.data.api.MrcDateItem (implementacja elementu listy) |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcProperty |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Szczególna implementacja obiektu MrcSimpleProperty przeznaczona do przesyłania danych związanych z typem daty i czasu.
MrcObjectMetadata
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcObjectMetadata |
| className/type | MrcObjectMetadata |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcObjectMetadata |
| Implementacja DTO | pro.ibpm.mercury.business.data.api.MrcObjectMetadata |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Obiekt metadanych. Pierwotnie miał wspierać identyfikację typu parametru (zarówno obiektów złożonych jak i typów prostych), jednakże w chwili obecnej wykorzystywany tylko i wyłącznie jako pole headerMetadata w obiekcie MrcCaseHeader (zobacz Context i CaseHeader).
| Parametr | Opis | Typ | Wymagany | Dozwolone wartości |
|---|---|---|---|---|
| className | Nazwa typu sprawy lub typu prostego. | String | Tak | MrcCaseHeader |
| status | Status przesyłanego obiektu.. | String | Nie |
|
MrcList
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcList |
| className/type | MrcList |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcList |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcList |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Uniwersalna lista MRC. Lista zawierać może elementy następujących typów:
- MrcSimpleItem (reprezentacja obiektu
MrcSimplePropertyna liście) - MrcDateItem (reprezentacja obiektu
MrcDatePropertyna liście) - MrcObject (uniwersalna reprezentacja obiektu sprawy)
Opis pól:
| Parametr | Opis | Typ | Wymagany | Dozwolone wartości |
|---|---|---|---|---|
| mrcClassName | Nazwa typu elementów/wartości listy. | String | Tak | Przykłady nazw typów: String, ElixAddress itp. |
| name | Nazwa pola sprawy, które jest reprezentowane przez listę wartości. | String | Tak | |
| arraySize | Rozmiar listy, liczba elementów listy. | Integer | Tak | Liczba całkowita |
| items | Elementy/wartości listy. | MrcListItems | Nie |
Przykład listy prostych wartości typu String:
<?xml version="1.0" encoding="UTF-8"?>
<valueMrcList
xmlns="http://business.dto.ws.hgdb.io/mrcObject"
xsi:schemaLocation="http://business.dto.ws.hgdb.io/mrcObject http://hgdb.io/xsd/dto/hgdb-mrc-object-3.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mrcClassName>String</mrcClassName>
<name>users</name>
<arraySize>5</arraySize>
<items>
<item>
<type>String</type>
<valueString>slawa1233</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</item>
<item>
<type>String</type>
<valueString>slawas2</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</item>
<item>
<type>String</type>
<valueString>slawas3</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</item>
<item>
<type>String</type>
<valueString>slawas4</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</item>
<item>
<type>String</type>
<valueString>ttest2345</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</item>
</items>
</valueMrcList>
Przykład listy uniwersalnych obiektów MRC opisujących sprawy różnych typów (Quarter oraz Month):
<?xml version="1.0" encoding="UTF-8"?>
<valueMrcList
xmlns="http://business.dto.ws.hgdb.io/mrcObject"
xsi:schemaLocation="http://business.dto.ws.hgdb.io/mrcObject http://hgdb.io/xsd/dto/hgdb-mrc-object-3.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mrcClassName>ANY</mrcClassName>
<name>result</name>
<arraySize>2</arraySize>
<items>
<item>
<name>item</name>
<valueMrcObject>
<name>item</name>
<mrcCaseHeader>
<headerMetadata>
<status>ALL</status>
<className>MrcCaseHeader</className>
</headerMetadata>
<caseId>808289</caseId>
<groupId>301037</groupId>
<typeId>5012</typeId>
<typeCode>Quarter</typeCode>
<status>A</status>
<rootVersionId>808289</rootVersionId>
<priceValue>0.0</priceValue>
<storeCount>1</storeCount>
<storeId>2507</storeId>
<createDate type="Date" isEncoded="false">21-01-2019 15:05:54 +01:00</createDate>
<createdBy>slawas</createdBy>
<lastModifyDate type="Date" isEncoded="false">21-01-2019 15:05:54 +01:00</lastModifyDate>
<lastModifiedBy>slawas</lastModifiedBy>
<modifyComment>SOAP request</modifyComment>
<createdByRoleName>CKBPM-Team</createdByRoleName>
<lastModifiedByRoleName>CKBPM-Team</lastModifiedByRoleName>
<className>Quarter</className>
<objectID>?.Quarter</objectID>
<rootVersionContextID>SoapUI.001</rootVersionContextID>
<version>50917</version>
<dirty>false</dirty>
<pkPropertyName>id</pkPropertyName>
</mrcCaseHeader>
<propertyNames>
<propertyName>status^1</propertyName>
<propertyName>id^2</propertyName>
<propertyName>name^3</propertyName>
<propertyName>months^4</propertyName>
</propertyNames>
<propertyMap>
<entry>
<key>status^1</key>
<value>
<name>status</name>
<type>String</type>
<version>1</version>
<id>1</id>
<position>1</position>
<valueString>Closed</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>id^2</key>
<value>
<name>id</name>
<type>String</type>
<version>2</version>
<id>2</id>
<position>2</position>
<valueString>2018.Q1</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>name^3</key>
<value>
<name>name</name>
<type>String</type>
<version>1</version>
<id>3</id>
<position>3</position>
<valueString>Kwartał 1'2018</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>months^4</key>
<value>
<name>months</name>
<type>Month[]</type>
<version>1</version>
<id>4</id>
<position>4</position>
<isEncoded>false</isEncoded>
<valueMrcList>
<mrcClassName>Month</mrcClassName>
<name>months</name>
<status>TRUNCATED</status>
<arraySize>0</arraySize>
</valueMrcList>
<isString>false</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>true</isMrcList>
<mrcClass>MrcList</mrcClass>
</value>
</entry>
</propertyMap>
<mrcObjectWithRequiredPosition>true</mrcObjectWithRequiredPosition>
</valueMrcObject>
<isString>false</isString>
<isMrcObject>true</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcObject</mrcClass>
</item>
<item>
<name>item</name>
<valueMrcObject>
<name>item</name>
<mrcCaseHeader>
<headerMetadata>
<status>ALL</status>
<className>MrcCaseHeader</className>
</headerMetadata>
<caseId>808300</caseId>
<groupId>301039</groupId>
<typeId>5014</typeId>
<typeCode>Month</typeCode>
<status>A</status>
<previousVersionId>808298</previousVersionId>
<rootVersionId>808298</rootVersionId>
<priceValue>0.0</priceValue>
<storeCount>1</storeCount>
<storeId>2507</storeId>
<createDate type="Date" isEncoded="false">21-01-2019 18:51:05 +01:00</createDate>
<createdBy>slawas</createdBy>
<lastModifyDate type="Date" isEncoded="false">17-12-2019 13:04:22 +01:00</lastModifyDate>
<lastModifiedBy>slawas</lastModifiedBy>
<createdByRoleName>mrc-user</createdByRoleName>
<lastModifiedByRoleName>mrc-user</lastModifiedByRoleName>
<className>Month</className>
<objectID>?.Month</objectID>
<rootVersionContextID>SoapUI.001</rootVersionContextID>
<version>1</version>
<dirty>false</dirty>
<pkPropertyName>id</pkPropertyName>
</mrcCaseHeader>
<propertyNames>
<propertyName>id^1</propertyName>
<propertyName>displayName^2</propertyName>
<propertyName>revenue^3</propertyName>
<propertyName>costs^4</propertyName>
<propertyName>vat^5</propertyName>
</propertyNames>
<propertyMap>
<entry>
<key>id^1</key>
<value>
<name>id</name>
<type>Number</type>
<version>3</version>
<id>1</id>
<position>1</position>
<valueString>2018.04</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>displayName^2</key>
<value>
<name>displayName</name>
<type>String</type>
<version>1</version>
<id>2</id>
<position>2</position>
<valueString>kwiecień'2018</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>revenue^3</key>
<value>
<name>revenue</name>
<type>Double</type>
<version>1</version>
<id>3</id>
<position>3</position>
<valueString>134564.34</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>costs^4</key>
<value>
<name>costs</name>
<type>Double</type>
<version>1</version>
<id>4</id>
<position>4</position>
<valueString>155344.34</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>vat^5</key>
<value>
<name>vat</name>
<type>Double</type>
<version>1</version>
<id>5</id>
<position>5</position>
<valueString>73432.23</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
</propertyMap>
<mrcObjectWithRequiredPosition>true</mrcObjectWithRequiredPosition>
</valueMrcObject>
<isString>false</isString>
<isMrcObject>true</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcObject</mrcClass>
</item>
</items>
</valueMrcList>
MrcListItems
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | Serializable |
| className/type | MrcListItems |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcListItems |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Obiekt pomocniczy wspierający implementację obiektu MrcList. Reprezentuje implementację listy elementów. Lista zawiera elementy o nazwie item.
| Parametr | Opis | Typ |
|---|---|---|
| item | Element listy/wartość. Możliwe występowanie wiele elementów. | MrcSimpleItem |
MrcPagedResult
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcPagedResult, IMrcObject |
| className/type | MrcPagedResult |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcPagedResult |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcObject |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Stronicowany wynik zapytania. Zastosowanie i szczegółowy opis znajdziemy artykule PagedResult jako lista pobieranych danych. Jest to szczególna reprezentacja obiektu MrcObject, która reprezentuje wyniki wyszukiwania (pobieranie list danych o dużych wolumenach). Pomimo uniwersalnej struktury, obiekt ten ma z góry ustalone parametry o określonych nazwach. W odróżnieniu od ogólnej definicji uniwersalnego obiektu MRC pole mrcCaseHeader, charakterystyczne dla reprezentacji dowolnej instancji obiektu sprawy, nie jest ustawione. Inne predefiniowane wartości pól tego obiektu:
- pole
mrcClassNameprzyjmuje zawsze wartośćMrcPagedResult. - pole
nameprzyjmuje zawsze wartośćvariable. - pole
propertyNamesjest listą charakterystycznych dla tego obiektu wartości reprezentujących pola:resultSize,result,message,executionTime,currentPageInfo,firstPageInfo,previousPageInfo,nextPageInfo,lastPageInfo,allPages,pagingParams - pole
propertyMapto mapa, której kluczami są wartości zawarte w parametrzepropertyNames.
<propertyNames>
<propertyName>resultSize</propertyName>
<propertyName>result</propertyName>
<propertyName>message</propertyName>
<propertyName>executionTime</propertyName>
<propertyName>currentPageInfo</propertyName>
<propertyName>firstPageInfo</propertyName>
<propertyName>previousPageInfo</propertyName>
<propertyName>nextPageInfo</propertyName>
<propertyName>lastPageInfo</propertyName>
<propertyName>allPages</propertyName>
<propertyName>pagingParams</propertyName>
</propertyNames>
W poniższej tabeli opisano znaczenie poszczególnych parametrów:
| Parametr | Opis | mrcClass | Pozycja |
|---|---|---|---|
| resultSize | Całkowity rozmiar wyniku. | MrcSimpleProperty | 1 |
| result | Lista elementów (spraw) zwróconych w wyniku zapytania odpowiadających danej stronie. | MrcList | 2 |
| message | Komunikat związany z wynikiem. Dozwolone wartości:
| MrcSimpleProperty | 3 |
| executionTime | Czas wykonania zapytania (w milisekundach) | MrcSimpleProperty | 4 |
| currentPageInfo | Informacje o obecnej stronie zwróconego wyniku (obecny numer strony) | MrcPage | 5 |
| firstPageInfo | Informacje o pierwszej stronie zwróconego wyniku (numer pierwszej strony) | MrcPage | 6 |
| previousPageInfo | Informacje o poprzedniej stronie zwróconego wyniku (numer poprzedniej strony) | MrcPage | 7 |
| nextPageInfo | Informacje o następnej stronie zwróconego wyniku (numer następnej strony) | MrcPage | 8 |
| lastPageInfo | Informacje o ostatniej stronie zwróconego wyniku (numer ostatniej strony) | MrcPage | 9 |
| allPages | Lista stron. W celach optymalizacyjnych reprezentuje 10 kolejnych stron "wokół" pobranej za pomocą usługi strony stronicowanego wyniku. | MrcList | 10 |
| pagingParams | Parametry stronicowania (kryteria będące podstawą do podziału wyniku na strony) | MrcPagingParams | 11 |
MrcPage
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcPage, IMrcObject |
| className/type | MrcPage |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcPage |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcObject |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Obiekt opisujący stronę stronicowanego wyniku zapytania. Jest to szczególna reprezentacja obiektu MrcObject. Jest on użyty do reprezentacji pól currentPageInfo, firstPageInfo, previousPageInfo, nextPageInfo oraz lastPageInfo stronicowanego wyniku usług wyszukiwania/pobierania spraw. Pomimo uniwersalnej struktury, obiekt ten ma z góry ustalone parametry o określonych nazwach. W odróżnieniu od ogólnej definicji uniwersalnego obiektu MRC pole mrcCaseHeader, charakterystyczne dla reprezentacji dowolnej instancji obiektu sprawy, nie jest ustawione. Inne predefiniowane wartości pól tego obiektu:
- pole
mrcClassNameprzyjmuje zawsze wartośćMrcPage. - pole
propertyNamesjest listą charakterystycznych dla tego obiektu wartości reprezentujących pola:number,size - pole
propertyMapto mapa, której kluczami są wartości zawarte w parametrzepropertyNames.
<propertyNames>
<propertyName>size</propertyName>
<propertyName>number</propertyName>
</propertyNames>
W poniższej tabeli opisano znaczenie poszczególnych parametrów:
| Parametr | Opis | mrcClass | Pozycja |
|---|---|---|---|
| size | Rozmiar strony | MrcSimpleProperty | 1 |
| number | Numer strony | MrcSimpleProperty | 2 |
MrcPagingParams
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Interfejs Java | IMrcPagingParams, IMrcObject |
| className/type | MrcPagingParams |
| Implementacja Java | pro.ibpm.mercury.business.data.api.MrcPagingParams |
| Implementacja DTO | pro.ibpm.mercury.ws.server.api.returns.DtoMrcObject |
| Definicja XML | hgdb-mrc-object-3.0.xsd |
Parametry stronicowania wyniku zapytania. Jest on użyty w polu pagingParams stronicowanego wyniku usług wyszukiwania/pobierania spraw MrcPagedResult. Jest to szczególna reprezentacja obiektu MrcObject. W jego przypadku nie ma możliwości dodawania własnych parametrów, ponieważ nie jest to obiekt predefiniowany przez system, w odróznieniu od definicji obiektów spraw. Pomimo uniwersalnej struktury, obiekt ten ma z góry ustalone parametry o określonych nazwach. W odróżnieniu od ogólnej definicji uniwersalnego obiektu MRC pole mrcCaseHeader, charakterystyczne dla reprezentacji dowolnej instancji obiektu sprawy, nie jest ustawione. Inne predefiniowane wartości pól tego obiektu:
- pole
mrcClassNameprzyjmuje zawsze wartośćMrcPagingParams. - pole
nameprzyjmuje zawsze wartośćpagingParams. - pole
propertyNamesjest listą charakterystycznych dla tego obiektu wartości reprezentujących pola:offset,cursorOfPage,maxPageSize,maxCount,pageSize,page,validorazisReadOnly. - pole
propertyMapto mapa, której kluczami są wartości zawarte w parametrzepropertyNames.
<propertyNames>
<propertyName>offset</propertyName>
<propertyName>cursorOfPage</propertyName>
<propertyName>maxPageSize</propertyName>
<propertyName>maxCount</propertyName>
<propertyName>pageSize</propertyName>
<propertyName>page</propertyName>
<propertyName>valid</propertyName>
<propertyName>isReadOnly</propertyName>
</propertyNames>
W poniższej tabeli opisano znaczenie poszczególnych parametrów:
| Parametr | Opis | mrcClass | Pozycja |
|---|---|---|---|
| offset | Pozycja wyniku (numer elementu), od którego zaczyna się pierwsza strona wyniku. | MrcSimpleProperty | 1 |
| cursorOfPage | Pozycja wyniku (numer elementu), od którego zaczyna się obecna strona | MrcSimpleProperty | 2 |
| maxPageSize | Maksymalny rozmiar strony jaki jest możliwy do ustawienia dla danego wyniku. | MrcSimpleProperty | 3 |
| maxCount | Maksymalna liczba elementów w wyniku | MrcSimpleProperty | 4 |
| pageSize | Obecny rozmiar strony | MrcSimpleProperty | 5 |
| page | Obiekt reprezentujący definicję obecnej strony | MrcPage | 6 |
| valid | Czy parametry stronicowania są poprawne? Chodzi o to, że np. rozmiar strony nie może być większy od maksymalnej liczby elementów w wyniku, albo pozycja wyniku również nie może być większa od wartości maksymalnej. Jeżeli te parametry nie będą zgodne, to pole przyjmować będzie wartość odpowiadającą fałszowi. | MrcSimpleProperty | 7 |
| isReadOnly | Czy parametry można zmienić? | MrcSimpleProperty | 8 |
Przykład reprezentujący informacje o obecnej stronie stronicowanego wyniku w postaci XML:
<?xml version="1.0" encoding="utf-8"?>
<valueMrcObject xmlns="http://business.dto.ws.hgdb.io/mrcObject"
xsi:schemaLocation="http://business.dto.ws.hgdb.io/mrcObject http://hgdb.io/xsd/dto/hgdb-mrc-object-3.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mrcClassName>MrcPagingParams</mrcClassName>
<name>pagingParams</name>
<propertyNames>
<propertyName>offset</propertyName>
<propertyName>cursorOfPage</propertyName>
<propertyName>maxPageSize</propertyName>
<propertyName>maxCount</propertyName>
<propertyName>pageSize</propertyName>
<propertyName>page</propertyName>
<propertyName>valid</propertyName>
<propertyName>isReadOnly</propertyName>
</propertyNames>
<propertyMap>
<entry>
<key>offset</key>
<value>
<name>offset</name>
<type>Integer</type>
<position>1</position>
<valueString>0</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>cursorOfPage</key>
<value>
<name>cursorOfPage</name>
<type>Integer</type>
<position>2</position>
<valueString>0</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>maxPageSize</key>
<value>
<name>maxPageSize</name>
<type>Integer</type>
<position>3</position>
<valueString>100</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>maxCount</key>
<value>
<name>maxCount</name>
<type>Integer</type>
<position>4</position>
<valueString>1000</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>pageSize</key>
<value>
<name>pageSize</name>
<type>Integer</type>
<position>5</position>
<valueString>100</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>page</key>
<value>
<name>page</name>
<type>MrcPage</type>
<position>6</position>
<valueMrcObject>
<mrcClassName>MrcPage</mrcClassName>
<name>page</name>
<propertyNames>
<propertyName>size</propertyName>
<propertyName>number</propertyName>
</propertyNames>
<propertyMap>
<entry>
<key>size</key>
<value>
<name>size</name>
<type>Integer</type>
<position>1</position>
<valueString>100</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>number</key>
<value>
<name>number</name>
<type>Integer</type>
<position>2</position>
<valueString>1</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
</propertyMap>
<mrcObjectWithRequiredPosition>false</mrcObjectWithRequiredPosition>
</valueMrcObject>
<isString>false</isString>
<isMrcObject>true</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcPage</mrcClass>
</value>
</entry>
<entry>
<key>valid</key>
<value>
<name>valid</name>
<type>Boolean</type>
<position>7</position>
<valueString>true</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
<entry>
<key>isReadOnly</key>
<value>
<name>isReadOnly</name>
<type>Boolean</type>
<position>8</position>
<valueString>false</valueString>
<isString>true</isString>
<isMrcObject>false</isMrcObject>
<isMrcList>false</isMrcList>
<mrcClass>MrcSimpleProperty</mrcClass>
</value>
</entry>
</propertyMap>
<mrcObjectWithRequiredPosition>false</mrcObjectWithRequiredPosition>
</valueMrcObject>
MrcCaseDate (CaseDate)
| Warstwy, w których użyty | Business |
| Rodzaj | Obiekt biznesowy |
| Implementacja Java | pro.ibpm.mercury.attrs.javax.CaseDate |
| Implementacja DTO | pro.ibpm.mercury.attrs.javax.CaseDate |
| Definicja XML | hgdb-mrc-case-date-3.0.xsd |
Obiekt daty. Jest on wykorzystywany w usługach biznesowych w celu jednoznacznej identyfikacji pola typu Date.
Jako definicja daty w uniwersalnym obiekcie MrcObject występuje tylko w usługach kompatybilnych z produktem Mercury 2.0. Obiekt został zastąpiony w API Mercury DB (HgDB) przez MrcDateProperty.
Jednakże występuje jako argumet metod, które na wejściu przyjmują argument kryterium typu data.
| Parametr | Opis | Typ | Wymagany | Dozwolone wartości |
|---|---|---|---|---|
| fullYear | Pełen rok | Integer | Tak | Liczby całkowite |
| month | Numer miesiąca | Integer | Tak | Liczby całkowite z przedziału [1..12] |
| date | Numer dnia miesiąca | Integer | Tak | Liczby całkowite z przedziału [1..31] |
| dayOfWeek | Numer dnia w tygodniu | Integer | Nie | Liczby całkowite z przedziału [1..7] |
| hours | Godzina dla czasu | Integer | Nie | Liczby całkowite z przedziału [0..24] |
| minutes | Minuta dla czasu | Integer | Nie | Liczby całkowite z przedziału [0..59] |
| seconds | Sekunda dla czasu | Integer | Nie | Liczby całkowite z przedziału [0..59] |
| milliseconds | Milisekunda dla czasu | Integer | Nie | Liczby całkowite z przedziału [0..1000] |
| timeZone | Definicja strefy czasowej użytkownika | String | Nie | Przykład: Europe/Warsaw |
<?xml version="1.0" encoding="UTF-8"?>
<dateFrom type="MrcCaseHeader" xmlns="http://business.dto.ws.hgdb.io/caseDate"
xsi:schemaLocation="http://business.dto.ws.hgdb.io/caseDate http://hgdb.io/xsd/dto/hgdb-mrc-case-date-3.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<fullYear>2017</fullYear>
<month>6</month>
<date>17</date>
<dayOfWeek>7</dayOfWeek>
<hours>1</hours>
<minutes>16</minutes>
<seconds>33</seconds>
<milliseconds>847</milliseconds>
<timeZone>Europe/Belgrade</timeZone>
</dateFrom>
Footnotes
-
Nie/Tak - wymagalność oznacza, że parametr jest wymagany gdy obiekt definiuje sprawę zależną. ↩
-
Tak - wymagalność oznacza, że parametr jest wymagany gdy obiekt ma ustawiony parametr
mrcClassName = MrcObject. ↩ -
Wymagalność pola
position- Tak - parametr jest wymagany gdy obiekt reprezentuje pole w uniwersalnym obiekcie MRC sprawy (MrcObject) z ustawionym atrybutemmrcObjectWithRequiredPositionnatrue. ↩