Neu Workflow - ändern der Auftragsfarbe auf Default in der Datenbank mittels SQL

3d-printerstore.ch

Aktives Mitglied
24. Juni 2019
49
4
Hallo zusammen

Ich probiere mit mässigem Erfolg, die Auftragsfarbe wieder auf "Default" zu bekommen, denn mittels Farbcodierung geht das ja bekanntlich nicht, da man "Transparent" nicht auswählen kann.

Nur bringe ich es nicht fertig, dies im "Ausführen" Skript auch zum Laufen zu bringen.
Den Anhang 102292 betrachten
Peobiert habe ich ihne Erfolg:
Code:
 UPDATE dbo.tBestellung SET dbo.tBestellung.kColor =“” WHERE dbo.tBestellung.kColor = “4” AND dbo.tBestellung.cBestellNr = "Vorgang.Stammdaten.Auftragsnummer" ;

und das auch nicht:
Code:
 {% capture itemquery %}SELECT kColor FROM tBestellung WHERE tBestellung.kColor = “4” AND tBestellung.cBestellNr = {{Vorgang.Stammdaten.Auftragsnummer}}{% endcapture -%}
{% assign kColor = SET tBestellung.kColor =“” -%}

Kann mir da bitte jemand auf die Sprünge helfen?

Das wäre super lieb von euch.

Gruss
Ralph
 

kelvin.

Sehr aktives Mitglied
15. Februar 2023
168
65
Frankfurt
Ich habe das Gefühl, dass du nicht so viel Ahnung hast, was du da machst. Ich würde es dir lieber abraten, bevor irgendwas kaputt geht.

Bei beiden Befehlen sind Syntax Fehler. Das zweite sollte so gar nicht funktionieren.

Sollte das erste eine Skript Datei sein, wird die Variable Vorgang.Stammdaten.Auftragsnummer so nicht funktionieren. Die Datei weiß nicht was die Auftragsnummer ist.
Zudem würde ich in die Skript Datei einen Parameter für die Auftragsnummer hinzufügen. So kannst du beim Ausführen aus dem Wawi die Auftragsnummer mitgeben.

Und bist du dir sicher, dass dbo.tBestellung.kColor =“” der Default Value ist? Ich glaube nämlich nicht. Laut Dokumentation ist kFarbe ein Integer und kein String.
 

3d-printerstore.ch

Aktives Mitglied
24. Juni 2019
49
4
Hi Kelvin
"Ich habe das Gefühl, dass du nicht so viel Ahnung hast, was du da machst."
Da hast du absolut recht - versuche es nur gerne😂
und darum habe ich auch gedacht, ich frag hier im Forum mal nach, mit der Hoffnung, dass mir jemand helfen kann

"Sollte das erste eine Skript Datei sein, wird die Variable Vorgang.Stammdaten.Auftragsnummer so nicht funktionieren"
Wenn du Skript Datei eine .bat meinst, nein ist es nicht - den Code habe ich direkt eingegeben.

"Zudem würde ich in die Skript Datei einen Parameter für die Auftragsnummer hinzufügen"
Ok , das kann ich machen.


"Und bist du dir sicher, dass dbo.tBestellung.kColor =“” der Default Value ist?"
Wenn hier keine Farbe drinnen ist, steht "NULL", was für mich "" wäre oder sehe ich das falsch?
Screen Shot 09-08-23 at 02.24 PM.jpg

Gruss
Ralph
 

jtldudel

Sehr aktives Mitglied
4. Januar 2018
636
208
NULL ist nicht das gleiche wie "", für die Datenbank ist NULL ein nicht existierender Wert und "" ist eine Zeichenkette ohne Inhalt. Du müsstest den Wert also wirklich NULL setzen.

Ich dachte, dass die "Farbe" Weiß im Workflow die Standardfarbe ist (also transparent) - hast du das mal ausprobiert?
 

3d-printerstore.ch

Aktives Mitglied
24. Juni 2019
49
4
NULL ist nicht das gleiche wie "", für die Datenbank ist NULL ein nicht existierender Wert und "" ist eine Zeichenkette ohne Inhalt. Du müsstest den Wert also wirklich NULL setzen.

Ich dachte, dass die "Farbe" Weiß im Workflow die Standardfarbe ist (also transparent) - hast du das mal ausprobiert?
Ok, dann muss also schonmal "NULL" da drinnen stehen und leider ist "Weiss" nicht gleich Transparent, das hatte ich schon ausprobiert
 

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.877
564
außerdem musst du Strings in einfache typographische Anführungszeichen setzen.
Die komischen von dir bzw. irgendeinem überschlauen Editor gesetzten Ersatzzeichen werden immer zu einem Syntaxfehler führen.


Ok, dann muss also schonmal "NULL" da drinnen stehen und leider ist "Weiss" nicht gleich Transparent, das hatte ich schon ausprobiert
Auch das ist falsch, denn NULL ist nicht "NULL":
'NULL' wäre ein String
"NULL" wäre ein Syntaxfehler
NULL wäre ein fehlender Wert für das Attribut

Ohne dir zu nahetreten zu wollen: ich sehe es wie @kelvin. und empfehle dir dringend nicht direkt mit SQL in die Datenbank zu schreiben! Jedenfalls zum jetzigen Zeitpunkt. Soll heißen, du kannst dir ja ein bisschen solides Grundlagenwissen aneignen und dann loslegen... 🙂
 
Zuletzt bearbeitet:

renscde

Aktives Mitglied
26. Mai 2023
2
0
Hi 3d-printerstore.ch,

wenn du unbedingt auch der DB-Ebene eingreifen möchtest, kann ich als allererstes nur mal diesen Tipp geben.

Mach eine Sicherung von deiner eazybusiness und spiel die Sicherung unter einem anderen Namen wieder ein.
So hast du genau den selben Stand wie dein aktives System und wenn du doch was kaputt machst in der neuen DB spielst die Sicherung wieder ein, aber bitte nie auf der produktiven Umgebung. 😉

So siehst zwar nicht was das JTL macht, aber du kannst auf der DB-Ebene experimentieren, das Internet ist voll mit Anleitungen um dir Grundlagen anzueignen.
Oder du hast noch eine Kiste rumstehen, da machst das JTL drauf, Worker bleibt aus, spiel die Sicherung der eazybusiness ein, da siehst auch was das JTL daraus macht. <-- so mach ich dies auch und mir ist TSQL definitiv nicht fremd

Wenn du jeden Schritt ausgiebig getestet hast, könntest dann evtl. anfangen dies in der produktiven Umgebung umzusetzen. Ach und trotzdem übernehme ich keine Garantie.

​

 

Ähnliche Themen