Standardwerte bei Designansicht
Andreas Eugster
Hallo zusammenIch habe folgendes Problem. Habe bei meiner Layoutdefinition ca. 20 Parameter. Nun möchte der Kunde, dass dort Standardwerte hinterlegt sind. Dies zum Beispiel beim Parameter für den ItemCode (2 Felder-> Von/Bis).
Ich habe jedoch in diesem Feld bereits die Abfrage für alle Artikelnummern abgespeichert:
{Select ItemCode, ItemName from OITM ORDER by ItemCode}
Nun ist meine Frage, wie kann ich in diesem Feld ein Standardwert eintragen? Es soll diese Auswahlbox verwendet werden (keine ComboBox).
Ist dies möglich? Wenn ja wie?
Philipp Knecht
Hallo AndreasKannst du via zweiten parameter der nur diese Standardwerte enthält plus etwas CASE WHEN (oder IF) im SQL lösen.
hth
Andreas Eugster
Hallo PhilippLeider war mir deine Antwort ein bisschen zu grob. Könntest ud mir evt. ein kleines Beispiel machen?
Ich weiss nicht genau wie du das meinst mit den 2. Parametern.
Andreas Eugster
Hallo PhilippKönntest du mir das bitte noch etwas genauer erläutern?
Grüsse
Andreas
Philipp Knecht
Hallo AndreasNehmne wir mal an dein Parameter heisst CardCode.
Dann machst du nen zweiten sagen wir CardCode2
Den CardCode2 machst du nicht eingabefähig sondern gibst dort nur deine Standardwerte an.
In der Query machst du nun folgendes (Pseudocode)
Declare @CardCode As NVARCHAR
Declare @CardCode2 As NVARCHAR
SET @CardCode = '[%CardCode]'
SET @CardCode2 = '[%CardCode2]'
IF @CardCode = ''
SET @CardCode = @CardCode2
END
...
...
hth
Andreas Eugster
Besten Dank für deine Antwort, werde mir das gleich mal anschauen.gruss
Andreas
Andreas Eugster
Also habe mal was versucht, wobei folgender Coder herauskam:
SET '[%FromCardCode]' = (Select CASE WHEN '[%FromCardCode]'='' OR '[%FromCardCode]' is null THEN (Select MAX(CardCode) from OCRD) ELSE '[%FromCardCode]' END)
Select '[%FromCardCode]'
Und dies beim DesignParam-Wert eingetragen. Doch leider wird dabei immer eine Fehlermeldung ausgegeben wenn ich diese Zeile drin habe (Anhang).
Habe ich etwas vergessen?
Attachment
[url=http://www.coresystems.ch/wp-content/../wp-content/forum-image-uploads/andreas-eugster/Fehler.JPG]Fehler.JPG[/url]
Manuel Marhold
Hi Andreas,du kannst nicht SET '[%FromCardCode]' machen, da '[%FromCardCode]' keine variable in SQL ist
dann musst due dir mit DECALRE @FromCardCode nvarchar(15) die variable in SQL erstellen und dann SET @FromCardCode nutzen
Andreas Eugster
Ja aber wie fülle ich das dann in den anderen Parameter ab?Manuel Marhold
DECALRE @FromCardCode nvarchar(15)
SET @FromCardCode = (SELECT CASE WHEN '[%FromCardCode]'='' OR '[%FromCardCode]' IS NULL THEN (SELECT MAX(CardCode) FROM OCRD) ELSE '[%FromCardCode]' END)
SELECT @FromCardCode
Andreas Eugster
Aber so sind ja die Daten erst im zweiten Parameter, wie gebe ich jetzt an, dass mein Feld automatisch mit diesem Wert abgefüllt wird?Ich möchte ja, dass wenn ich z.B. auf Vorschau drücke, dass dort in meinem Feld der Parameter eingetragen ist. Wobei dieses Feld eine ChooseFromList als Auswahl besitzt.
Grüsse
Andreas
Manuel Marhold
Hi Andreas,das weiss ich leider auch nicht. Habe es selbst nie hinbekommen. Glaube, dass Philipp dich da missverstanden hat, interessiert mich aber auch sehr!
Andreas Eugster
Hi ManuelDas war jetzt nicht die Antwort, welche ich erwartet habe ;)
Hoffe Philipp schreibt so schnell wie möglich zurück...
Gruss
Andreas
Andreas Eugster
Hallo zusammenWeiss niemand etwas? Ich brauche unbedingt eine Antwort ob das funktioniert.
Grüsse
Andreas
Philipp Knecht
Hi AndreasMir fällt nur die schon beschriebene Lösung ein.
Du musst dann aber diese If Then Geschichte in der Datenquery machen (Nicht in der Parameterquery)
hth
Andreas Eugster
Hi PhilippAber ich kann doch so gar keinen Vorschlagewert direkt in die Auswahlbox reinschreiben (nicht ComboBox). Das Feld, in welches die Parameter geschrieben werden, ist trotzdem leer...
Grüsse
Andreas
Philipp Knecht
Hallo AndreasJa das kann man nicht. Deshalb würd ich ja auch einen zweiten parameter definieren welcher nur die Vorschlagswerte beiinhaltet.
Ich denke du störst dich daran dass diese Standardwerte dann nicht sichtbar sind?
hth
Andreas Eugster
Hi PhilippJetzt verstehe ich was du meinst. Doch müsste ich jetzt 20 weitere Parameter erfassen (für jeden einen weiteren) und diese auch in der Auswahl anzeigen...
Ich werde mir dies überlegen.
Besten Dank
Gruss
Andreas
0
Please sign in to leave a comment.
Comments
0 comments