Benutzergesteuerte Anzahl der Kopien
Stefan Nafets
Hallo,ich möchte gern in Abhängigkeit vom Benutzer die Anzahl der Kopien der Ausgangsrechnung steuern.
Ich verwende in der Printdefinition das Marketing DIN Dokument und habe bei Kopien 2 und bei Kopien M. 1 eingetragen. Dies funktioniert soweit.
Jetzt möchte ich aber für bestimmte Benutzer mehr als 2 Kopien drucken. Ich habe es bereits über die Layoutdefinition / Drucker versucht und dort bei Kopien die Anzahl für den User eingetragen, dies funktioniert aber leider nicht.
Wie kann ich das realisieren?
MfG Stefan
Manuel Marhold
Hi Stefan,ich würde bei den Benutzern ein UDF anlegen: z.B. "Copies"
Dann bei "Kopien" eine Query auswählen, die du in der Kategorie "SWA_LD_Copies" speicherst:
SELECT U_Copies FROM OUSR WHERE USERCODE=[%user]
Die Query sollte eig. schon passen, kann aber sein, dass "USERCODE" ein falscher Spatenname ist.
Gruß
Manuel
Stefan Nafets
Hallo Manuel,erstmal vielen Dank für deine Antwort. Wo genau binde ich die Query ein? Sorry, bin noch am lernen mit dem designer. :wink:
Gruß Stefan
Manuel Marhold
Hi..wie beschrieben, Query mit dem Abfragegenerator erstellen und in der Kategorie "SWA_LD_Copies" unter einem eindeutigen Namen (z.B. "UserCopies") speichern.
In der Printdef dann in der Spalte "Kopien" diese Query in dem DropDown-menü auswählen.
Gruß
Manuel
Stefan Nafets
Ich habe das jetzt so eingebunden und erhalte jetzt noch eine Meldung beim Druck/Vorschau: "Get data: Parameter [%user] in Expression SELECT U_Copies FROM OUSR WHERE User_Code=[%user] not Found"D.h. Er kann den Benutzer nicht dynamisch auslesen. Muss man dies noch als Parameter irgendwo mitgeben?
Wenn ich den User in der Query direkt angebe funktioniert es, nur ist dies nicht sehr sinnvoll.
Manuel Marhold
Der Parameter existiert, den musst du aber in der layoutdef unter "parameter" hinterlegen.Gruß
Manuel
Stefan Nafets
Guten Morgen,ich glaube ich stelle mich hier etwas komisch an :roll:, ich habe jetzt folgende Abfrage hinterlegt:
SELECT U_Copies FROM OUSR WHERE USERID=[%UserId]
Die UserId ist bereits als Parameter vorhanden und im Layout eingebunden. Ich erhalten aber immer folgende Meldung: "Get data: Ungültiger Spaltenname 'manager'".
Ich habe das [%UserId] auch schon in ' ' gesetzt, damit erhalte ich zwar keine Fehlermeldung aber auch nicht hinterlegte Anzahl an Kopien. Wenn ich im SQL Server das [%UserId] durch den einen Wert ersetze erhalte ich ein korrektes Ergebnis.
Was mache ich noch falsch?
Manuel Marhold
Hi Stefan,USERID enthält nicht den Usernamen, der steht in USER_CODE
du kannst dir am besten die User-tabelle OUSR mal mit dem Abfragenegenerator anschauen. Dann weisst du, auf welches Feld fu prüfen musst.
Und da in diese Fall der Parameter den USER_CODE zurückgibt, welcher alphanumerisch ist, muss der in ' ' stehen.
Gruß
Manuel
Stefan Nafets
SELECT U_Copies FROM OUSR WHERE USER_CODE='[%UserId]'
Auch mit dieser Variante geht es leider nicht. Ich erhalte zwar keine Fehlermeldung, bekomme aber auch nur ein Exemplar obwohl ich beim User 3 eingestellt habe.
Manuel Marhold
Hi Stefanaktiveviere doch mal das QueryLogging in der cdesigner configuration (Administration - addons - corsutie designer - config)
Und dann schaue in %temp%coresuite nach der QueryLog-Datei.
Da schaue mal nach, wie die Query für die Copies aussieht und teste die manuell im abfragegenerator.
Gruß
manuel
Stefan Nafets
Hi Manuel,nach einem Neustart von SAP ging es, vielleicht hat es irgendeine Änderung nicht richtig mitbekommen. Herzlichen Dank für deine Hilfe und Geduld. :D
Gruß Stefan
0
Please sign in to leave a comment.
Comments
0 comments