Wir haben ein ERP System welches List&Label einsetzt. Hier habe ich bei einem Report für die Auftragsdarstellung ein Problem. Ich möchte dass im Hintergrund je nach Firma und Marke ein anderer Hintergrund / Briefpapier dargestellt wird.
Ich bin wie folgt vorgegangen:
Ich habe eine Variable @BriefpapierJPG definiert. Hier ermittel ich mit einer verschachtelten If Anweisung das zu verwendende Briefpapier. Die Variable habe ich mir auf dem Report oben zu Testzwecken anzeigen lassen. Sie ist immer korrekt gesetzt.
Dazu habe ich im Report 6 unterschiedliche Bilder mit dem jeweiligen Briefpapier. Alle haben die gleichen Eigenschaften: eingebettete Datei, als Bild speichern nein, Ebene im Index 0, etc. Als Darstellungsbedingung habe ich je Bild z.B. @BriefpapierJPG = “Briefpapier1”, @BriefpapierJPG = “Briefpapier2” usw … Die Darstellungsbedingung unterscheidet sich bei jedem Bild.
Zum Problem:
Jetzt kommt es vor dass ich einen Report aufrufe und das falsche Briefpapier angezeigt wird. Die Variable @BriefpapierJPG lasse ich mit andrucken und sehe das zum Beispiel Briefpapier2 als Text angezeigt wird, im Hintergrund aber Briefpapier1 liegt. Warum zeigt er Briefpapier1 an obwohl die Variable Briefpapier2 enthält ? Je nachdem in welcher Reihenfolge ich die unterschiedlichen Belege aufrufe kann es mal richtig und mal falsch sein. Ich erkenne da kein wirkliches Muster. Für mich sieht das nach einem Caching Problem o.ä. aus.
Kennt jemand das Problem und kann mir einen Tipp geben ?
Gruß
Charles
ppreuschoff
(combit Support - Patrick Preuschoff)
2
Herzlich Willkommen im List & Label-Forum, Charles!
Haben Sie bereits versucht anstelle einer Benutzervariable, die darin enthaltene Formel direkt in den Darstellungsbedinungen der jeweiligen Objekte zu verwenden? Wie sieht es aus, wenn Sie ggf. Bausteine und die dortigen Darstellungsbedingungen nutzen?
Wird möglicherweise ein Seriendruck ausgeführt, bei dem das Briefpapier des nächsten Datensatzes angezeigt wird? Wenn ja, dann könnte eine Objektverkettung helfen.
Falls das noch nicht helfen sollte, dann freuen wir uns auch über einige Screenshots
Hallo @ppreuschoff , vielen Dank für Deine Antwort.
Bevor ich es mit der Variable gemacht habe war es so gelöst, dass es an jeder Grafik einzeln geprüft wurde. Ich habe es jetzt zu Testzwecken nochmal neu direkt an den Grafiken gemacht - ohne die extra Variable die erst bestimmt werden muss. Es funktioniert allerdings wieder nicht wie erwartet.
Es wird nur 1 Objekt aufgerufen - nicht mehrere Objekte.
Folgende Briefpapiere sind in dieser Reihenfolge mit den folgenden Anzeigebedingungen vorhanden:
Small foot DE - Bedingung: Client.ClientNumber=“1100” AND _Webshop.Number = “220”
Italia - Bedingung: Client.ClientNumber = “1300” OR Customer._Association.Code = “PUP” OR @Language = “IT”
Legler DE - Bedingung: Client.ClientNumber = “1100” AND @Language = “DE” AND _Webshop.Number != “220”
Legler ES - Bedingung: Client.ClientNumber = “1100” AND @Language = “ES” AND _Webshop.Number != “220”
Legler FR - Bedingung: Client.ClientNumber = “1100” AND @Language = “FR” AND _Webshop.Number != “220”
Legler EN - Bedingung: Client.ClientNumber = “1100” AND _Webshop.Number != “220” AND (@Language != “DE” AND @Language != “FR” AND @Language != “IT” AND @Language != “ES”)
Oben auf dem Briefpapier lasse ich mir die ClientNumber, Language und Webshop Nummer zum verifizieren anzeigen.
Beispiel:
Ich mache die Aufträge neu auf, wähle gezielt einen “Small foot DE” Auftrag aus. Das List&Label Briefpapier ist korrekt…
Danach geht ich auf einen “Legler DE” Auftrag. Es wird jetzt das Small Foot DE Briefpapier angezeigt, obwohl Client=1100, Webshop=100 und Language = DE angezeigt werden. → Falsch
Beispiel
Ich mache die Aufträge neu auf, wähle einen “Legler DE”. Das List&Label Briefpapier ist korrekt.
Danach gehe ich auf einen “Small foot DE” und es wird das falsche Briefpapier angezeigt von “Legler DE”
Danach gehe ich auf einen “Legler FR” und es wird immer noch das falsche Briefpapier angezeigt von “Legler DE”
Beispiel
Ich mache die Aufträge neu auf, wähle einen “Legler FR”. Das List&Label Briefpapier ist falsch. Es wird das von “Legler DE” angezeigt.
Danach wähle ich ein “Small foot DE” und es wird “Legler DE” angezeigt
Gleichen Auftrag nochmal aufgemacht - wieder “Legler DE” anstatt “Small Foot DE”
Den Gleichen Auftrag jetzt nicht mit dem fertigen List&Label anzeigen lassen sondern in den Editor gegangen → falsches Briefpapier trotz Klicks in Preview etc
Nochmal aus den Aufträgen komplett (!) raus und nochmal rein und den gleichen Auftrag der gerade zuvor falsch angezeigt wurde anzeigen lassen. Jetzt wird das richtige Briefpapier angezeigt.
Beispiel
Ich mache die Aufträge neu auf, wähle einen “Legler EN” Auftrag und es wird das Briefpapier von “Small foot DE” angezeigt. Angezeigte Parameter: Language=EN, Webshop = 100, Client=1100 - laut der Werte die auf dem Formular angezeigt werden hätte ein anderes Briefpapier angezeigt werden müssen.
Dazu habe ich mal 2 Bilder aus dem Report Designer hochgeladen.
Ich hoffe dass noch jemand eine Idee hat. Die ersten 3 Beispiel könnten ein Caching Problem sein. Beispiel Nummer 4 spricht schon wieder dagegen da es diesmal direkt beim 1. Aufruf passiert ist.
ppreuschoff
(combit Support - Patrick Preuschoff)
5
Die ersten 3 Beispiel könnten ein Caching Problem sein. Beispiel Nummer 4 spricht schon wieder dagegen da es diesmal direkt beim 1. Aufruf passiert ist.
Da stimme ich in Gänze zu. Um das Verhalten jetzt aber weiter analysieren zu können, bräuchte es wahrscheinlich ein paar mehr Insights und Dateien. Ich denke hierbei an ein Code-Snippet der List & Label-Integration und eine Log-Datei je Einzelvorgang (Beispiele 1-4).
Da wir diese Dateien (auch aus datenschutzrechtlichen Gründen) hier besser nicht austauschen, macht es Sinn, wenn bei uns ein Support-Case eröffnet wird.
Sollten Sie die Anwendung nicht selber entwickeln, dann möchte ich Sie bitten den Hersteller zu kontaktieren, welcher sich jederzeit bei uns melden kann (und ggf. auch gleich Code-Snippet und Log-Datei mitliefert).
bitte entschuldigen Sie, dass ich so ein altes Thema ausgrabe: wir setzen List&Label 26 in einem VB.NET-Projekt ein und haben ein ähnliches, wenn nicht gar das gleiche Problem. Wie ist obiger Fall denn ausgegangen, um welche L&L-Version handelte es sich hier? Ich finde leider keine weiteren Informationen hierüber. Gibt es irgendwo ein detaillierteres Changelog als die “Produktentwicklung.pdf”?
Zu unserem Fall:
Wir übergeben die Pfade zu unterschiedlichen Bildern an einen Report. Mitunter, aber nicht immer, kommt es vor, dass statt einem bestimmten Bild eines der anderen übergebenen Bilder angezeigt wird. Wir lassen nun testweise den verwendeten Pfad anzeigen; dieser ist augescheinlich korrekt, aber es wird dennoch ein falsches Bild angezeigt.
Eine Analyse mit DebWin4 hat bestätigt, dass die übergebenen Pfade korrekt sind.
Im Temp-Verzeichnis des Systems findet sich ein combit-Ordner, in dem die Grafiken, die auf dem Report erscheinen, als Blobs abgelegt sind. Diese lassen sich mit Paint öffnen. Das jeweilige Bild, welches nicht korrekt angezeigt wird, fehlt in diesen Blobs.
Interessanterweise kann das Problem auf den Entwicklungsrechnern selbst in mehreren Dutzend Versuchen nicht nachgestellt werden, sondern tritt nur auf den PCs unserer Kunden, unseres Testers oder in virtuellen Maschinen auf - dort dann unter bestimmten Bedingungen relativ zuverlässig.
Der letzte Stand des hier beschriebenen Verhaltens war der, dass man es sich deutlich detaillierter anschauen muss und dafür ein Support-Case erforderlich ist. So richtig etwas passendes konnte ich auf die Schnelle auch im Change-Log von List & Label 26 dafür aber nichts ausmachen - das muss allerdings auch nichts heißen, da es eben auch im Detail darauf ankommt wie die Integration umgesetzt ist, die betreffende Systemlandschaft aussieht und wie die Bilder im Code angemeldete und im Bericht verwendet werden. Zahlreiche Faktoren die es individuell zu überprüfen gibt. Vielleicht kann man an dieser Stelle, da es offenbar sporadisch auftritt und nicht zuverlässig reproduzierbar ist, auch einmal versuchen etwaige Virenscanner temporär auf dem Test-System zu deaktivieren, um ein Eingreifen externe Tools auszuschließen?
Ein ausführliches Change-Log für die List & Label Versionen werden immer im eigenen Account beim Servicepack bereitgestellt, wenn eine aktive Subscription besteht. In unserem Blog informieren wir auch immer für Anpassungen im Servicepack - das letzte war 12/2022 für die Version 26.009 - Neues Service Pack 26.009 für List & Label und den Report Server. Verfügbar wird diese Version aber nicht mehr sein, da wir uns aktuell bei der Version 29 befinden mit List & Label. Und sollten Anpassungen erforderlich sein in der Version 26 könnten die auch nicht mehr durchgeführt werden - das würde ausschließlich in der aktuellen Version möglich sein. Daher würde ich vorschlagen einmal zu versuchen das Verhalten mit der aktuellen Version 29 nachzustellen - eine kostenlose Trial-Version steht dafür zur Verfügung.
wir können das Fehlverhalten auch in der aktuelle LL29-Trial nachstellen. Ich werde daher nun einen Support Case dafür eröffnen. Vielen Dank nochmals für Deine Unterstützung!
ich bin hin und her gerissen, ob das nun insgesamte gute Nachrichten sind
Aber wenn sich ein solcher Fall nachstellen lässt, möchten wir natürlich davon Wind bekommen und die Chance es nachzustellen, damit wir eine mögliche Lösung anbieten können.