Neu B-Ware Hinweis auf Rechnung drucken

  • Wenn Ihr uns das erste Mal besucht, lest euch bitte zuerst die Foren-Regeln durch.

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#1
Hallo zusammen,

kann mir jemand einen Hinweis geben, wie ich in der Wawi 1.3.x auf die Rechnung beim Artikel einen Hinweis ausgeben kann, wenn das Artikel.(Eigenens Feld).B-Ware = True ist?! Ich habe mir gedacht, so schwer kann das ja nicht sein und stelle irgendwie fest, das ja doch nicht so einfach ist. Ich möchte quasi an die Artikelbeschreibung einen Text anhängen, wenn diesen Feld True ist.

Danke euch schonmal im Vorraus.

P.S. Achso... es ist die Professional Vorlage. :)
 
Zuletzt bearbeitet:

Rico Giesler

Administrator
Mitarbeiter
10. Mai 2017
10.484
974
#2
Ihr habt also "B-Ware" nur als eigenes Feld angelegt oder gibt es bei den Artikel noch andere Identifizierungsmerkmale? Anhand Name oder Artikelnummer?
 

Rico Giesler

Administrator
Mitarbeiter
10. Mai 2017
10.484
974
#4
Also:
Du hängst in der Rechnungs-Vorlage bei der Tabelle für die Auftragspositionen ein Unterelement an.
Wähle hierzu "Tabelle" aus und dann "Freier Inhalt". Das nächste Fenster kannst du einfach mit OK bestätigen.
Öffne die neue Tabelle und trage bei der Zeilendefinition als Darstellungsbedingung folgendes als Formel ein:
len(Alias$("DerNameDeinesEigenenFeldes",Auftragspositionen.Artikel.EigeneFelderAlsText)) > 0
Dann fügst du der Zeilendefinition noch einen Eintrag (Text) hinzu und schreibst dort rein (z.Bsp. "Das ist B-Ware") .
Du kannst dann das Erscheinungsbild noch anpassen (von Haus aus ist dort ein Rahmen drum) und auch die Breite anpassen.

Nun sollte nur bei Artikeln die das entsprechende Eigene Feld haben auch der Hinweistext ausgegeben werden.
 
Zustimmungen: Stephs182

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#7
Jetzt klappt es. Vielen Dank, nun habe ich verstanden was da falsch lief. An der Stelle war ich noch nie dran und da habe ich die Denke noch nicht so verstanden.

Der Screenshot hat mir weitergeholfen.
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#8
Ich habe es mir nochmal etwas angeschaut und ein wenig versucht zu spielen. Attribute habe ich auch nutzen können. -> Super. Gibt es eine Beschreibung, die auf as Thema genauer eingeht ohne im Forum fragen zu müssen?

Nach dem ich auf der Rechnung hinweise, dass es ein B-Ware Artikel ist, möchte ich auch noch gern den Zustand der im
Code:
Alias$("Zustand Beschreibung",Auftragspositionen.Artikel.AttributeAlsText)
stehen sollte einfügen. Ich meine, das ist ein NiceToHave aber man will ja auch nicht dumm sterben. :)
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#10
Ich muss jetzt nochmal das Thema hochholen und dumm fragen:

Wie bekomme ich ein de Wert eines Attibuts mit in den Artikel auf die Rechnung, wenn das Attribut gesetzt ist?

1557346444455.png
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#11
So ich habe nun den Wert per SQL Abfrage auf die Rechnung gesetzt und da ein "Zustand" vorgesetzt:

Code:
"Zustand: " + JTL_DirectQuery ("SELECT tArtikelAttributSprache.cWertVarchar FROM tArtikelAttributSprache
JOIN tArtikelAttribut ON tArtikelAttribut.kArtikelAttribut=tArtikelAttributSprache.kArtikelAttribut
JOIN tAttribut on tArtikelAttribut.kAttribut=tAttribut.kAttribut
WHERE  tArtikelAttribut.kArtikel="+Fstr$(Auftragspositionen.InterneArtikelnummer,"?")+"
AND tArtikelAttributSprache.kSprache=1
AND tAttribut.kAttribut=135")
Kann mir noch jemand sagen, wie ich das Ganze NICHT ausgebe, wenn die SQL keinen Inhalt hatte bzw. diese Abfrage false ist!?
 

albi123

Gut bekanntes Mitglied
7. Dezember 2009
494
24
#12
Ich denke das geht mit den Darstellungsbedingungen wie es oben schon gezeigt wurde. "=0" wäre dann die Darstellungsbedingung.
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#13
Nun habe ich es irgendwie geschafft: Darstellungsbedingung ist dann:

Code:
len(JTL_DirectQuery ("SELECT tArtikelAttributSprache.cWertVarchar FROM tArtikelAttributSprache
JOIN tArtikelAttribut ON tArtikelAttribut.kArtikelAttribut=tArtikelAttributSprache.kArtikelAttribut
JOIN tAttribut on tArtikelAttribut.kAttribut=tAttribut.kAttribut
WHERE  tArtikelAttribut.kArtikel="+Fstr$(Auftragspositionen.InterneArtikelnummer,"?")+"
AND tArtikelAttributSprache.kSprache=1
AND tAttribut.kAttribut=135")
) > 0
Also die Länge der SQL Abfrage soll länger als 0 sein.
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#14
So nun der nächste Fehler...
Code:
"+Fstr$(Auftragspositionen.InterneArtikelnummer,"?")+"
findet man ja beim Versand nicht... Wie schliesse ich die Pos. Versand bei der Bedingung aus?
 

Rico Giesler

Administrator
Mitarbeiter
10. Mai 2017
10.484
974
#16
Wir haben eine passende Lösung gefunden die zumindest die Versandpositionen ausschließt und Artikel bei denen das Atribut leer ist.
Das Attribut hat in der DB die internen ID "137". Das ist bei jedem eine andere ID und muss mit eurer ersetzt werden.
Ihr findet die ID in der Tabelle tAttribut in der Spalte kAttribut. (Tipp: gebt dem Attribut eine Beschreibung, dann findet ihr das richtige schneller in der Spalte.

Cond(Auftragspositionen.IstVersandkostenPosition or IsNullorEmpty (JTL_DirectQuery ("SELECT tArtikelAttributSprache.cWertVarchar FROM tArtikelAttributSprache
JOIN tArtikelAttribut ON tArtikelAttribut.kArtikelAttribut=tArtikelAttributSprache.kArtikelAttribut
JOIN tAttribut on tArtikelAttribut.kAttribut=tAttribut.kAttribut
WHERE tArtikelAttribut.kArtikel="+Fstr$(Auftragspositionen.InterneArtikelnummer,"?")+"
AND tArtikelAttributSprache.kSprache=1
AND tAttribut.kAttribut=137")),"","Zustand: " +JTL_DirectQuery ("SELECT tArtikelAttributSprache.cWertVarchar FROM tArtikelAttributSprache
JOIN tArtikelAttribut ON tArtikelAttribut.kArtikelAttribut=tArtikelAttributSprache.kArtikelAttribut
JOIN tAttribut on tArtikelAttribut.kAttribut=tAttribut.kAttribut
WHERE tArtikelAttribut.kArtikel="+Fstr$(Auftragspositionen.InterneArtikelnummer,"?")+"
AND tArtikelAttributSprache.kSprache=1
AND tAttribut.kAttribut=137"))
Eingetragen wird das ganze dann in List & Label in dem unterhalb der Artikelbeschreibung eine Untertabelle angelegt wird bei der ihr dann obigen Wert eintragt.
 

Stephs182

Gut bekanntes Mitglied
21. Januar 2015
138
7
#17
Super Rico,
ich bin total happy durch dich eine Lösung gefunden zu haben. Ich werde mal sehen, ob ich das noch verfeinern kann auf nur Artikelpositionen, wie wir es besprochen hatten und ggf. es dann hier posten. Zunächst werde ich aber ein Update auf Wawi 1.4. machen.
 
Zustimmungen: Rico Giesler