Technische Dokumentation des Documents-Widget

  • 09.08.2023 → neuer Eingangsparameter disableMetaTag

  • 24.11.2022 → neuer Eingangsparameter “showArchivedDocs”

  • 21.11.2022 → Neuen Eingangsparameter “widgetstate” und Ausgangsevent “pdflinkextended“ hinzugefügt

  • 30.09.2022 → Neuen Eingangsparameter “downloadinnewtabtarget“ hinzugefügt

  • 26.09.2022 → Einbindung über Widget-Loader V2.0.0 hinzugefügt

  • 09.08.2022 → Eingangsevent closeAllDialogs hinzugefügt

  • 19.07.22: PDFlink hinzugefügt

  • 14.07.2022 → Dokumentation Suchlogik hinzugefügt

  • 06.07.2022

    • shopcart Event erweitert

    • dialogstatus Event hinzugefügt

    • Parameter style und pdfviewer hinzugefügt

  • 04.05.2022 → Screenshots ausgetauscht

  • 14.04.2022 → Neuen Parameter searchRequest hinzugefügt. Spezifikation der Eingangsparameter angepasst.

  • 02.03.2022 → Beispieleinbindung ergänzt

  • 02.03.2022 → Umstellen Widget-Loader-Version auf 1.0.1

  • 02.03.2022 → Umstellen URLs von GC nach OpenDatacheck

  • 01.12.2022 → neuer Status not_found

  • 28.01.2022 → Erstellen der Dokumentation als Einzelseite


Beschreibung

Auf dieser Seite finden Sie die technischen Beschreibungen der Großhandels Bibliothek. Es wird also beschrieben wie Sie die Bibliothek in Ihrem System einbinden können. Hiermit können Sie z.B. auch Dokumente aufrufen und den Inhalt innerhalb des Dokumentes durchsuchen. Im Folgenden finden Sie das Inhaltsverzeichnis zu dieser Seite:


Inhalt


Integration per “xs-loader” Widget

Alle Widgets werden über den “xs-loader” eingebunden. Bitte machen Sie sich mit der Dokumentation https://itek-wissen.atlassian.net/wiki/spaces/SOF/pages/2841313293 vertraut.


Parameter “xs-documents“

Dieses Widget startet eine Suche mit den übergebenen Parametern und stellt die Treffer in Verkaufsdokumenten als Einzelseiten dar. Es werden nur PDF Dokumente berücksichtigt.

Eingang

Eingang

Parameter

Pflicht

Beschreibung

Beispielwert

channelid

Ja

Kanalid die als Grundlage für die Suche verwendet werden soll.

2

searchRequest

nein

Es muss entweder der Parameter searchRequest oder die Kombination von searchterm und manufacturerid übergeben werden

Struktur zur Übergabe von lieferantenspezifischen Suchbegriffen.

  • Es muß mindestens ein Objekt in searchRequest enthalten sein.

  • Inerhalb dieses Objekts ist das Attribut searchTerm Pflicht.

  • Wird darin auch das Attribut manufacturerid verwendet, so muß dieses mindestens eine Id enthalten.

 

{ "searchRequest": [{ "searchTerms": [ "Suchbegriff 1" ], "manufacturerid": [ "Lieferant 1", "Lieferant 2" ] }, { "searchTerms": [ "Suchbegriff 2", "Suchbegriff 3" ], "manufacturerid": [ "Lieferant 2" ] } ] }

searchterm

nein

Es muss entweder der Parameter searchRequest oder searchterm übergeben werden.

Suchbegriff der zum Durchsuchen der Dokumente im Kanal verwendet wird.

test

manufacturerid

Nein

Wird der Parameter searchRequest verwendet, so darf dieser Parameter nicht verwendet werden.

Liste von HerstellerID’s zum einschränken der Suche. Wenn keine ID’s angegeben wurden, werden alle Dokumente nach dem “searchterm” innerhalb des Kanals durchsucht.

[“COSMO”,”Oventrop”]

manufactureridtype

Nein

Der Id-Typ, welcher bei einer Anfrage verwendet wird. Das Feld muss nur gesetzt werden, wenn die manufacturerid von einem anderen System verwendet werden soll. Dabei müssen alle manufacturerids vom selben Typ sein.

Diese Funktionalität steht nur zur Verfügung, wenn eine IDHUB Integration beauftragt wurde.

Wird dieser Parameter nicht übertragen, so werden die übergebenen manufacturerid vom angefragten System verwendet.

Der manufactureridtype bezieht sich sowohl auf den Parameter manufacturerid als auch auf die Property manufacturerid in dem Objekt des Parameters searchRequest.

 

odc

maxsize

Nein

Maximale Anzahl der Einzelseiten die angezeigt werden sollen.

100

maxpagesperdocument

Nein

Maximale Anzahl der Einzelseiten die pro Dokument zurückgeliefert werden. Wenn nicht angegeben wird 5 als Defaultwert verwendet.

5

style

Nein

JSON-Objekt zur Definition der Primär- und Sekundär-Farbe des Widgets. Das Objekt hat zwei Felder:

  • primarycolor: Primärfarbe. Als Wert wird ein Hexadezimal-String erwartet (Beispiel: "#616161").

  • secondarycolor: Sekundärfarbe. Als Wert wird ein Hexadezimal-String erwartet (Beispiel: "#D3D3D3").

"style":{ "primarycolor": "#616161", "secondarycolor": "#D3D3D3" }

pdfviewer

nein

Das Objekt dient als Konfigurationsobjekt für den PDF-Viewer

Aktuell gibt es nur eine Oberkategorie

  • position

    • top

    • right

    • bottom

    • left

Alle Werte werden als Pixel-Werte implementiert. Eine Einheit muss nicht zwingend angegeben werden.

"pdfviewer":{ "position":{ "top": "150px", "right": "20px", "bottom": "50px", "left": "20px" } }

downloadinnewtab

Nein

Wird der Parameter auf true gesetzt, so öffnet sich beim klick auf den Downloadbutton ein neuer Tab und die Datei wird heruntergeladen

 

downloadinnewtabtarget

Nein

In Verbindung mit “downloadinnewtab” zu verwenden. Wird nur verwendet, wenn “downloadinnewtab” auf true gesetzt ist

Gibt das Ziel an, das die Download-URL öffnen soll

Im Standard oder wenn kein Wert gesetzt ist, wird “_blank“ verwendet

 

showArchivedDocs

Nein

Der Parameter sorgt dafür, je nachdem welchen String man übergibt, ob nur Archivierte oder keine Archivierte oder alle angezeigt werden.

Folgende Werte können angegeben werden:

  • “archived“ ← zeigt nur Archivierte Dokumente an und keine nicht Archivierten Dokumente

  • “notArchived“ ← zeigt keine Archivierte Dokumente an, nur nicht Archivierten Dokumente

  • “all“ ← zeigt alle Dokumente an, also archiviert und nicht archiviert

Hinweis: Wert “all“ ist nicht zwingend notwendig, da dieser Wert defaultmäßig gesetzt wird, wenn der Parameter nicht bzw. leer übergeben wird

widgetstate

Nein

Alle GET-Parameter des XS-Documents-Widget als Base64 String.

Damit kann eine bestimmte Ansicht sofort beim Öffnen der Deep-Search geladen werden.

In Kombination mit dem “pdflinkextended“-Event verwendbar

disableMetaTag

Nein

Das XS-Documents-Widget bindet ein meta-Tag ein. Dieses meta-Tag ist wie folgt definiert:

Das Tag ist essenziell für die Darstellung des Widgets auf mobilen Endgeräten. Bei der Einbindung des Widgets in Apps kann der Tag zu Problemen führen.

Mit diesem Parameter lässt sich steuern, ob der meta-Tag angelegt wird. Der meta-Tag kann dann beispielsweise von der einbinden Webseite zur Verfügung gestellt werden.

Zu beachten ist, dass, falls der Tag abgeschaltet wird, für eine korrekte Darstellung auf mobilen Endgeräten keine Gewähr übernommen wird.

Standardwert ist false.

true

Ausgang

status

ja

Dieses Event wird immer beim Initialisieren ausgegeben.

  • error

  • complete

  • found

  • not_found

 

shopsearch

Nein

Dieses Event wird nur ausgegeben, wenn diese Funktion für den entsprechenden Kanal angeschaltet wurde.

Das Event beinhaltet folgende zwei Informationen.

  • searchterm

    • String / Kann leer sein

  • manufacturerid

    • String / Kann leer sein

  • callback

    • thumbnailurl: String, URL zum Thumbnail des Dokumentes. Bei Abruf muss der OAuth2 Token im Header der Anfrage mitgegeben werden.

    • uploaddescription: String, Uploadbeschreibung des Dokumentes

    • widgetstate: String, Status des Widgets für Rücksprung. Muss dem Widget beim Rücksprung in den Parametern übergeben werden um den Status wiederherzustellen.

 

shopcart

Nein

Dieses Event wird nur ausgegeben, wenn diese Funktion für den entsprechenden Kanal angeschaltet wurde.

  • thumbnailurl: String, URL zum Thumbnail des Dokumentes. Bei Abruf muss der OAuth2 Token im Header der Anfrage mitgegeben werden.

  • uploaddescription: String, Uploadbeschreibung des Dokumentes

  • widgetstate: String, Status des Widgets für Rücksprung. Muss dem Widget beim Rücksprung in den Parametern übergeben werden um den Status wiederherzustellen.

 

 

dialogstatus

Nein

Dieses Event wird beim öffnen und schließen eines Dialoges ausgegeben. Werte:

  • open

  • close

 

pdflink

Nein

Dieses Event wird bei einem Klick auf einen externen Link in einem PDF Dokument ausgegeben.

Ausgabe des im PDF Dokument angegebene Wert für den externen Link als String

pdflinkextended

Nein

Dieses Event wird zusätzlich zum Event “pdflink” ausgelöst und beinhaltet ein callback-Attribut, das für den Rücksprung ins Widget verwendet werden kann.

Die Attribute in des Callback-Events sind:

  • searchterm

  • manufacturerid

  • thumbnailurl

  • uploaddescription

  • widgetstate

Beispielausgabe des Events:

Eingangsevents

closeAlldialogs

 

Dieses Event kann an das Widget emittet werden. Das Widget fängt das Event und schließt daraufhin alle zu Zeit geöffneten Dialogfenster.

Beispielaufruf:

Logik Suche

Fall 1 nur Parameter searchterm angegeben:

  • Der Suchbegriff wird bei Leerzeichen aufgetrennt und mittels Oder-Operator zusammengeführt.

  • Gefundene Dokumente enthalten mindestens einen der Teilsuchbegriffe enthalten.

Fall 2 Parameter searchterm und manufacturerid angegeben:

  • Der Suchbegriff wird wie in Fall 1 aufbereitet.

  • Das Feld manufacturerid dient als zusätzlicher Filter. Die einzelnen IDs werden Oder verknüpft.

  • manufacturerid und searchterm werden mittels Und-Operator verknüpft.

  • Gefundene Dokumente enthalten mindestens einen der Teilsuchbegriffe und von einem der angegebene Lieferanten stammen.

Fall 3 Parameter searchRequest angegeben:

  • Aufbereitung der einzelnen Suchbegriffe in searchTerms wie in Fall 1

  • Die Aufbereiteten Suchbegriffe werden mittels Oder-Operator verknüpft.

  • Das Feld manufacturerid dient als zusätzlicher Filter. Die einzelnen IDs werden Oder verknüpft.

  • manufacturerid und searchterm werden mittels Und-Operator verknüpft.

  • Die Suchrequests im Array searchRequest werden Oder verknüpft.

  • Gefundene Dokumente die auf mindestens einen der Suchrequests passen.

Beispielabbildung

image-20220504-083332.png
image-20220504-083501.png
PDF-Viewer

Beispielparameter

Beispielintegration

Folgendes Codesnippet in den HTML DOM einbetten.

Widget-Loader V1.x.x

Widget-Loader V2.x.x

Beispielevent “status”

Folgendes Codebeispiel wartet auf das Rückgabevent “status” von dem Documents Widget.

Beispielcode (PHP)

Widget-Loader V1.x.x

 

Widget-Loader V2.x.x