Neu Artikeletikett mit Merkmale

Traumpixel

Gut bekanntes Mitglied
11. April 2021
71
28
Hallo,

gibt es eine Möglichkeit alle Merkmale eines Artikels zum Artikeletikett hinzuzufügen?

Habe bereits gesehen das man einzelne Merkmale aus der Merkmaltabelle einblenden kann und frage daher nach ob es nicht eine einfachere Lösung gibt um alle hinterlegten Merkmale einzublenden.

Vielen Dank im Voraus für jede Hilfe.
Lg
 

Chris Ohm

Aktives Mitglied
10. August 2020
24
5
Hey Cuneyt2002,

ich hoffe, dass du mit folgenden Code das suchst, was du brauchst. Zu Erklärung: hier kannst du nur bestimmte Merkmale einer Gruppe ausgeben. Wenn du wirklich alle Merkmale ausgeben willst, lass die Gruppe weg:

JTL_DirectTableQuery("SELECT tMerkmalSprache.cName, tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
INNER JOIN tMerkmalGruppeMerkmal ON tArtikelMerkmal.kMerkmal = tMerkmalGruppeMerkmal.kMerkmal
INNER JOIN tMerkmalGruppe ON tMerkmalGruppeMerkmal.kMerkmalGruppe = tMerkmalGruppe.kMerkmalGruppe
WHERE tMerkmalGruppe.cName = 'Eigenschaften' AND tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")
 

Ryja

Gut bekanntes Mitglied
12. März 2019
164
10
Oberhütte
Firma
Projekte Agentur
Hi, Grüße!
Ich wollte diesen Code für meine Etiketten verwenden und ihn etwas ummodellieren, da ich die Bildpfade nutzen wollte.
Leider funktioniert der Code als solcher nicht, zumindest nicht unter 1.6 .
Hat jemand eine Lösung für mich?
Ich habe schon viel herumprobiert und möchte eigentlich nur die Html-Kurzbeschreibung
<p>
<img alt="src="https://..../... .png" />
....
</p>
als Bild auf ein Artikeletikett wiedergeben. Alternativ wäre das Merkmalbild möglich.
Lieben Dank!

Ich habe mich mal mit dem "Join" beschäftigt und habe das gebastelt. Es kann nicht stimmen, weil ich nicht weiß, wie ich nach dem = eintragen muss.

Code:
JTL_DirectTableQuery("SELECT tArtikelMerkmal.cBildpfad
FROM tArtikel
INNER JOIN kMerkmalWert.cBildpfad = tArtikelMerkmal.cBildpfad
WHERE tMerkmalWertBild = tArtikelMerkmal.cBildpfad
'Merkmal' AND tArtikelMerkmal.cBildpfad = '"Artikel.Beschreibung_Kurz'",": ","¶")
 
Zuletzt bearbeitet:

Chris Ohm

Aktives Mitglied
10. August 2020
24
5
Hey Ryja,
Der Code funktioniert in 1.6 evtl hast du die Eingrenzung der Merkmalgruppen übersehen (... tMerkmalGruppe.cName = 'Eigenschaften' ... ), die müsstestst du dann ändern oder rausnehmen.

Merkmalbilder kannst du zwar über den gleichen Weg in der DB finden und aufrufen (tBild.bBild), ich bin aber (bis jetzt) nicht in der Lage, diese im Artikelettikett auszugeben. Vielleicht übersehe ich etwas oder es geht einfach nicht.

Wie viele Merkmale hast du denn?
Wenn es jetzt nicht so viele sind, könntest du den Umweg nehmen und zu jedem Merkmal eine eigene Abfrage zu schreiben und in der Cond() dann ein Bild vom Server reinladen.
Ungefähr so mit Beispiel "Farbe = Grau"

cond(JTL_DirectTableQuery("SELECT tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
WHERE tMerkmalSprache.cName = 'Farbe' AND tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")="Grau",Drawing("S:/bilder_merkmale/merkmal1jpg"),Drawing(""))

Sag mal, ob das was taugt
 

Ryja

Gut bekanntes Mitglied
12. März 2019
164
10
Oberhütte
Firma
Projekte Agentur
Hi GastroNeeds,
danke für Deine schnelle Anwort.

Es sind viele Merkmale, kostet etwas Zeit, aber wenn es funktioniert....

Das mit dem Bild vom Server laden, ist mal eine interessante Option. Ich habe meine Pfade eingegeben, jedoch kommt der Fehler, dass Zahlen erwartet werden, aber ein Bild aufgerufen wird.
 

Ryja

Gut bekanntes Mitglied
12. März 2019
164
10
Oberhütte
Firma
Projekte Agentur
cond(JTL_DirectTableQuery("SELECT tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
WHERE tMerkmalSprache.cName = 'Produkt-Info' AND tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")="zuckerfrei",Drawing("C:\...\zuckerfrei.jpg"),Drawing(""))

Bildbox. In den Merkmalen habe ich Bild-Text ausgegeben. Nun kommt zwar keine Fehlermeldung mehr, aber ein Bild wird auch nicht angezeigt.
 

Ryja

Gut bekanntes Mitglied
12. März 2019
164
10
Oberhütte
Firma
Projekte Agentur
Ich habe ein Paar Bilder von der Datenbank gemacht, vielleicht hilft das ja weiter.
Besten Dank!
 

Anhänge

  • DB-merkmalsprache.png
    DB-merkmalsprache.png
    71,6 KB · Aufrufe: 31
  • DB-merkmalwert.png
    DB-merkmalwert.png
    100,6 KB · Aufrufe: 32
  • DB-merkmalwertbild.png
    DB-merkmalwertbild.png
    91,2 KB · Aufrufe: 32

Chris Ohm

Aktives Mitglied
10. August 2020
24
5
Hallo Zusammen, wo genau kann man denn den Code setzen ?
im JTL > Admin > Druck- / Email- / Exportvorlagen
Dort im Fenster rechts unter > Root > Artikeletikett > Artikeletikett(*) (oder ein Neues erstellen) auswählen und > Bearbeiten
Im Editor unter > Einfügen > Text eine Textbox erstellen
Im nun geöffnetetn Fenster unten den Code einkopieren, alles Bestätigen und Speichern und schließen. Fertig. 🙂
 

KennyKaan

Aktives Mitglied
5. Februar 2023
9
0
im JTL > Admin > Druck- / Email- / Exportvorlagen
Dort im Fenster rechts unter > Root > Artikeletikett > Artikeletikett(*) (oder ein Neues erstellen) auswählen und > Bearbeiten
Im Editor unter > Einfügen > Text eine Textbox erstellen
Im nun geöffnetetn Fenster unten den Code einkopieren, alles Bestätigen und Speichern und schließen. Fertig. 🙂
Dann habe ich es ja bis dahin richtig gemacht aber es erschein bei mir kein Text. Die Merkmale werden nicht angezeigt. Textfeld ist leer.

Es kommt jedoch eine Meldung bei Auswahl des Vorlagensets:

"Es existieren zum aktuellen Zeitpunkt keine zur Vorlage zugehörige Daten. Sie müssen entsprechende Vorgänge zunächst erst anlegen"

Merkmale sind allerdings in den Artikeln gesetzt.

Mein Ziel ist was angezeigt werden soll

Logo
Artikelname
Artikelmerkmale
Artikelbild
Barcode
Artikelnummer

Alles wird angezeigt, außer die Merkmale.
 

Chris Ohm

Aktives Mitglied
10. August 2020
24
5
Dann habe ich es ja bis dahin richtig gemacht aber es erschein bei mir kein Text. Die Merkmale werden nicht angezeigt. Textfeld ist leer.

Es kommt jedoch eine Meldung bei Auswahl des Vorlagensets:

"Es existieren zum aktuellen Zeitpunkt keine zur Vorlage zugehörige Daten. Sie müssen entsprechende Vorgänge zunächst erst anlegen"

Merkmale sind allerdings in den Artikeln gesetzt.

Mein Ziel ist was angezeigt werden soll

Logo
Artikelname
Artikelmerkmale
Artikelbild
Barcode
Artikelnummer

Alles wird angezeigt, außer die Merkmale.
Kannst du deinen Code, den du benutzt, hier einmal teilen?
Benutzt du Merkmalgruppen?
 

KennyKaan

Aktives Mitglied
5. Februar 2023
9
0
Kannst du deinen Code, den du benutzt, hier einmal teilen?
Benutzt du Merkmalgruppen?
Na das ist der Code hier den Ihr hier gepostet habt.

JTL_DirectTableQuery("SELECT tMerkmalSprache.cName, tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
INNER JOIN tMerkmalGruppeMerkmal ON tArtikelMerkmal.kMerkmal = tMerkmalGruppeMerkmal.kMerkmal
INNER JOIN tMerkmalGruppe ON tMerkmalGruppeMerkmal.kMerkmalGruppe = tMerkmalGruppe.kMerkmalGruppe
WHERE tMerkmalGruppe.cName = 'Eigenschaften' AND tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")

Ich möchte die Merkmale und den daugehörigen Merkmalwert angezeigt bekommen.
 

Chris Ohm

Aktives Mitglied
10. August 2020
24
5
Ja, schau dir mal den Code an, der wird so nur Merkmale ausgeben, die in einer bestimmten Merkmalgruppe sind (hier Merkmalgruppe "Eigenschaften"). Wenn du keine Merkmalgruppen pflegst, und keine Merkmalgruppe "Eigenschaften" hast, dann gibt der Code auch nichts aus.

Probier mal folgenden Code:

JTL_DirectTableQuery("SELECT tMerkmalSprache.cName, tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
WHERE tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")
 
  • Gefällt mir
Reaktionen: ffcclol

KennyKaan

Aktives Mitglied
5. Februar 2023
9
0
Ja, schau dir mal den Code an, der wird so nur Merkmale ausgeben, die in einer bestimmten Merkmalgruppe sind (hier Merkmalgruppe "Eigenschaften"). Wenn du keine Merkmalgruppen pflegst, und keine Merkmalgruppe "Eigenschaften" hast, dann gibt der Code auch nichts aus.

Ja, schau dir mal den Code an, der wird so nur Merkmale ausgeben, die in einer bestimmten Merkmalgruppe sind (hier Merkmalgruppe "Eigenschaften"). Wenn du keine Merkmalgruppen pflegst, und keine Merkmalgruppe "Eigenschaften" hast, dann gibt der Code auch nichts aus.

Probier mal folgenden Code:

JTL_DirectTableQuery("SELECT tMerkmalSprache.cName, tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
WHERE tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")
Ick danke dir. Dat läuft jetzt.
 

style4Bike

Aktives Mitglied
13. März 2013
36
2
Ja, schau dir mal den Code an, der wird so nur Merkmale ausgeben, die in einer bestimmten Merkmalgruppe sind (hier Merkmalgruppe "Eigenschaften"). Wenn du keine Merkmalgruppen pflegst, und keine Merkmalgruppe "Eigenschaften" hast, dann gibt der Code auch nichts aus.

Probier mal folgenden Code:

JTL_DirectTableQuery("SELECT tMerkmalSprache.cName, tMerkmalWertSprache.cWert
FROM tArtikel
INNER JOIN tArtikelMerkmal ON tArtikel.kArtikel = tArtikelMerkmal.kArtikel
INNER JOIN tMerkmalWertSprache ON tArtikelMerkmal.kMerkmalWert = tMerkmalWertSprache.kMerkmalWert
INNER JOIN tMerkmalSprache ON tArtikelMerkmal.kMerkmal = tMerkmalSprache.kMerkmal
WHERE tArtikel.cArtNr = '"+Artikel.Artikelnummer+"'",": ","¶")
Welchen Teil dieses Codes müsste ich entfernen damit nicht der Name der Merkmalgruppe mit ausgegeben wird sondern nur das Merkmal an sich?
 

Ähnliche Themen