OBS/Stammdaten/Artikel: Liste Externe-Artikeltexte/Textgenerierung

Aus OBS Wiki
Version vom 14. November 2022, 09:08 Uhr von Schinke (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Diese Maske dient der Generierung von externen Artikeltexten speziell für Shops auf Basis von Artikeldaten. Diese können gegenwärtig aus der Artikelmaske, den Shop-Einstellungen des Artikel oder den Artikelmerkmalen kommen. Es können immer nur für eine Shop-Schnittstelle zur Zeit Texte generiert werden. Die Generierung finden Sie für mehrerer Artikel in den Funktionen der Artikelauswertung und für einzelne Artikel in den Listen Artikel-Shop-Einstellungen und externe Artikeltexte (wenn aus der Maske Artikel-Shop-Einstellungen aufgerufen).

Maske

Im Feld Typ können Sie den Text-Typ angeben. Die Texte werden mit diesem Typ generiert. Um texte im Shop verwenden zu können, muss 9101 für Langtexte (Detailseite) und 9102 für Kurztexte (Artikeliste) eingetragen sein. Vorbelegt wird die Maske mit 9102 für die Kurztexte. Unter dem Feld Typ finden Sie eine Erklärung der Platzhalter in Kurzfassung. Der Großteil der Maske wird von einem Textfeld eingenommen. Dieses Textfeld dient der Eingabe des Textes, der die grundlage für die Generierung bilden soll. Über das Kontext-Menü (Taste links der rechten Strg oder Key mouse5.gif) können Sie vorbereitete Textbausteine übernehmen.

Platzhalter

Platzhalter für Generierung Die Platzhalter für diese Textgenerierung sehen im Vergleich zu den meisten anderen Stellen in OBS etwas anders aus. Sie werden nicht mit einem oder zwei Doppelkreuzen/Hashtags (#) kenntlich gemacht, sondern mit geschweiften Klammern ({}), Dollarzeichen ($) und bei Bedarf mit Fragezeichen (?). Es gibt einige Werte aus den Artikeldaten die über eine feste Referenzierung verfügen. Die Referenzierung der Merkmale ist hingegen variabel gestaltet.

Grundsätzlich werden die Platzhalter für diese Generierung alle in der Maske {$Name$} unterstützt. Der Name ist entsprechend den gewünschten Daten zu ersetzen.
Beispiel: Für die Übernahme des Artikelnamens ist Artikel.Name vorgesehen. Der Platzhalter lautet also {$Artikel.Name$}.

Artikel und Shop-Einstellungen

Die Platzhalter referenzieren bestimmte Daten aus dem Artikel oder seinen Shop-Einstellungen.

Name Platzhalter Bedeutung
Artikel.Name {$Artikel.Name$} Übernahme der alternativen Shop-Bezeichnung aus den Shop-Einstellungen des Artikels oder Artikelname 1
Artikel.Hersteller {$Artikel.Hersteller$} zieht den Herstellernamen aus dem Artikel
Artikel.HerstellerNr {$Artikel.HerstellerNr$} Übernahme der Herstellerartikelnummer
Artikel.Gewicht {$Artikel.Gewicht$} Trägt das gepflegte Handelsgewicht aus dem Artikel in den Text ein
Artikel.MinVK {$Artikel.MinVK$} Verpackungsgewicht

Artikelmerkmale

Die Platzhalter für die Artikelmerkmale sind nicht vorgegeben. Da unterschiedliche Artikel auch unterschiedliche Merkmale haben, wäre dies eine unlösbare Aufgabe gewesen. Ein Toner wird ein Merkmal für die Farbe haben, die enthalten ist. Ein Merkmale für die Farbe könnte auch bei Stiften gefunden werden. Aber ein Toner wird wahrscheinlich noch über eine Angabe der druckbaren Seiten verfügen, welche bei einem Stift vergebens gesucht werden würde. Daher wurde ein System für Platzhalter gewählt, welches sich von anderen Programmstellen zwar unterscheidet, aber die Anforderung erfüllt mit einer variablen Datenbasis zuverlässig arbeiten zu können.

Die Merkmale im OBS sind nach Vorlage von BMEcat implementiert worden und verfügen über sämtiche im Standard vorkommenden Felder. Von diesen Feldern sind für die Generierung drei Felder wichtig. Dies sind Name, Werte und Einheit. Der Name des Merkmals ist im Platzhalter einzutragen (z. B.: {$Farbe$}). Die Generierung übernimmt Werte und Einheit des Merkmals passend zum im Platzhalter eingegebenen Namen.

Durch die Möglichkeit pro Merkmale beliebig viele Werte zu haben, kann die Übernahme komplexer Gestaltet werden. Hier kommt das bereits erwähnte Fragezeichen ins Spiel. Direkt hinter dem Namen können mit Fragezeichen abgetrennt noch Parameter angegeben werden. Für die Merkmale werden hier die Buchstaben V (Wert; durch BMEcat FVALUE) und U (Einheit; durch BMEcat FUNIT) unterstützt. Bei Werten ist es zudem möglich auch einzelne Werte zu übernehmen. Für Artikelmerkmale bedeutet dies also vier Varianten die Daten in der Generierung in den Text zu übernehmen.

Typ Import
{$Name$} Wert(e) mit Einheit
{$Name?U$} nur Einheit
{$Name?V$} nur Wert(e)
{$Name?V?2$} nur Wert 2; für 2 kann eine entsprechende andere Zahl eingegeben werden, je nachdem welcher Wert gewünscht ist

Generierung

Funktionalität

Wird die Generierung gestartet, so selektiert OBS zunächst die Artikel anhand der Parameter, die beim Aufruf der Maske übergeben wurden. Dies ist entweder ein einzelner Artikel, wenn aus den Shop-Einstellungen eines Artikels aufgerufen, oder die Artikel einer Artikelauswertung. Für alle gefundenen Artikel führt OBS danach die folgenden Schritte aus:

  1. Ersetzen aller Platzhalter für Artikeldaten
  2. Ersetzen aller Platzhalter für Artikel-Merkmale
  3. Prüfung, ob alle Platzhalter ersetzt werden konnten
  4. Text speichern und der Shop-Schnittstelle zuordnen
  5. alte Textzuordnung entfernen (der Text wird nicht gelöscht!)

Beispiel

Hier folgt ein Beispiel für die Generierung eines Textes aus den Artikelmerkmalen eines LCD-Monitors.