1. Áttekintés
A Hibridlevél rendszere kétféle módon tud küldeményeket fogadni:
- A Megrendelés tartalmazza a fődokumentumot, amiben megtalálhatóak az egyes Küldemények. Ilyenkor a Küldemény nem tartalmaz dokumentumot. Ilyen lehet például egy körlevél, amikor egy PDF dokumentum tartalmazza az összes küldeményt (ez kerül a Megrendelésbe), a Küldemények pedig csak azt adják meg, hogy mettől-meddig tartanak a fődokumentumban.
- A Megrendelés nem tartalmaz dokumentumot, hanem az egyes Küldeményekben kerülnek átadásra a hozzájuk tartozó dokumentumok. Ez olyan esetben hasznos, ha külön-külön vannak a PDF dokumentumok.
Minden más beküldési lehetőség jelenleg nem engedélyezett. Ilyen például, hogy a Megrendelés is és a Küldemények is tartalmaznak dokumentumot.
2. Használat
Az első esetben a Megrendelés documentStructure adattagjában kell elhelyezni a beküldendő dokumentumot. Ehhez egy DocumentStructure objektumra lesz szükség, ez fogja tartalmazni a dokumentumot, ami jelen esetben még csak Base64EncodedDocument lehet. Ilyenkor ez a dokumentum tartalmazza az összes küldeményt, egy PDF dokumentumban. Ahhoz, hogy ezek a küldemények beazonosíthatóak és egymástól elválaszthatóak legyenek, a Küldemény documentStructure adattagjában el kell helyezni egy PartialDocumentStructure objektumot. Ez az objektum tartalmaz egy orderMainDocumentPartDescription adattagot, ami OrderMainDocumentPartDescription típusú. Ebben lehet megadni, hogy az adott küldemény hol kezdődik a Megrendelésben elhelyezett dokumentumban (ez lesz a startPage) és hol fejeződik be (ez lesz az endPage).
A második esetben a Megrendelés nem tartalmaz dokumentumot, ezért a documentStructure adattagját üresen kell hagyni. Ilyenkor az egyes Küldemények fogják tartalmazni a hozzájuk tartalmazó dokumentumokat. Az előző példával ellentétben a documentStructure adattag most nem PartialDocumentStructure típusú objektumot fog tartalmazni, hanem egy DocumentStructure típusút. Ez azért változott, mert már nem leírót tartalmaz a Küldemény, hanem egy konkrét dokumentumot. Ez igaz lesz az összes Küldeményre, amit a Megrendelés tartalmaz. A DocumentStructure objektum használata megegyezik az előző ponttal: ez az objektum fogja tartalmazni a Base64EncodedDocument típusú dokumentumot.
3. Mellékletek
A Megrendelés és a Küldemény is tartalmazhat mellékletet. Ezek szintén Base64EncodedDocument típusú objektumok lehetnek jelenleg, amiknek a használata megegyezik azzal, mint amikor Megrendeléshez vagy Küldeményhez adjuk hozzá a dokumentumot.
A fontos különbség a feldolgozás során jelentkezik:
- Ha Megrendelés mellett szerepel melléklet, akkor az az összes Küldemény végéhez hozzá lesz fűzve
- Ha egy Küldemény tartalmaz mellékletet, akkor az csak az adott Küldeménynek a végére lesz fűzve, a többi Küldeményt nem érinti. A Küldeményekhez akkor is tartozhat melléklet, ha a Küldemény maga nem tartalmaz dokumentumot, csak a leírót a Megrendelésben található dokumentumhoz.
4. Példák
Az alábbi két példa bemutatja az 1. Áttekintés pontban szereplő két esetet:
Példa: A Megrendelés tartalmazza a fődokumentumot, a Küldemények nem tartalmaznak dokumentumot.
Megrendelés (Order) - A Megrendelés tartalmazza a fődokumentumot, a Küldemények nem tartalmaznak dokumentumot"order": { "documentStructure": { "attachments": [], "mainDocument": { "checksum": "7d457a22c5f8e80da4fbfad4cbb6d9e5f9baaa57", "needPrintedCopyToSender": false, "metadata": [], "encodedContent": "A kiküldendő Base64 kódolt dokumentum helye", "type": "Base64EncodedDocument" }, "type": "DocumentStructure" }, "consignments": [{ // ... }], "productionProperties": { // ... }, "serviceProperties": { // ... }, // ... }
Küldemény (Consignment) - A Megrendelés tartalmazza a fődokumentumot, a Küldemények nem tartalmaznak dokumentumot"consignment": { "documentStructure": { "attachments": [], "orderMainDocumentPartDescription": { "startPage": 1, "endPage": 4 }, "type": "PartialDocumentStructure" }, "recipientAddress": { // ... }, "senderAddress": { // ... }, // ... }
Példa: A Megrendelés nem tartalmaz dokumentumot, hanem a Küldemények tartalmazzák a hozzájuk tartalmazó dokumentumot:
Megrendelés (Order) - A Megrendelés nem tartalmaz dokumentumot, hanem a Küldemények tartalmazzák a hozzájuk tartalmazó dokumentumot"order": { "documentStructure": null, "consignments": [{ // ... }], "productionProperties": { // ... }, "serviceProperties": { // ... }, // ... }
Küldemény (Consignment) - A Megrendelés nem tartalmaz dokumentumot, hanem a Küldemények tartalmazzák a hozzájuk tartalmazó dokumentumot"consignment": { "documentStructure": { "attachments": [], "mainDocument": { "checksum": "7d457a22c5f8e80da4fbfad4cbb6d9e5f9baaa57", "needPrintedCopyToSender": false, "metadata": [], "encodedContent": "A kiküldendő Base64 kódolt dokumentum helye", "type": "Base64EncodedDocument" }, "type": "DocumentStructure" }, "recipientAddress": { // ... }, "senderAddress": { // ... }, // ... }