SAP Jobsuche bei DV-Treff
Kleo123
  • Kleo123
  • SAP Forum - User Thema Starter
vor 15 Jahre
Hallo zusammen,

ich möchte gerne 2 Felder miteinander vergleichen.

Es sind folgende Felder:

Tabelle: PACKKP, Feld: POBJID, Datentyp CHAR, Datenlänge 20

Tabelle: VEKP, Feld: PACKVORSCHR, Datentyp CHAR, Datenlänge 22

Beide Felder bekomme ich als Output meines Quickviewers angezeigt.

Ich habe ein lokales Feld mit folgenden Angaben gemacht:

Feldeigenschaften:

angekreuzt das Rechenfeld, mit der Feldlänge 1.

Bei der Berechnungsvorschrift habe ich eine 1 eingetragen.

Bei der Bedingung: POBJID PACKVORSCHR.

Was möchte ich erreichen?

Wenn POBJID PACKVORSCHR dann soll eine 1 ausgegeben werden, sonst Null.

Das Problem ist, daß ich immer eine 1 ausgegeben bekomme, auch wenn POBJID = PACKVORSCHR ist.

Kann das an der unterschiedlichen Datenlänge liegen? Hat jemand eine Idee?

Herzlichen Dank!

Förderer

encore
vor 15 Jahre
Hallo,

nach meinem Verständnis können die beiden verglichenen Felder so nie gleich sein, da unterschiedlich lang.
Aber: man kann Feld-Auschnitte bzw. -Teile verarbeiten. Wenn du also von den beiden CHAR-Feldern nur die ersten 10 Stellen vergleichst, solte das doch passen; bei CHAR-Feldern steht der Wert ja üblicherweise linksbündig, also vorne beginnend.

SAP-Doku zu Formeln im Query: :    Im Fall von feld[n1:n2] muß Feld ein Textfeld sein. Außerdem müssen n1 und n2 ganzzahlige numerische Konstanten (ohne Dezimalpunkt) und es muß n1 < n2 gelten. feld[n1:n2] stellt dann den Ausschnitt aus dem Textfeld dar, der vom Zeichen mit der Position n1 bis zum Zeichen mit der Position n2 reicht. Das erste Zeichen eines Textfeldes hat die Position 1.

also
POBJID (1:10) 
PACKVORSCHR (1:10)

Ich habe es allerdings selbst noch nicht eingesetzt
Grüsse

nk

Kleo123
  • Kleo123
  • SAP Forum - User Thema Starter
vor 15 Jahre

Hallo encore,

vielen Dank für Deine schnelle Antwort.

Ich habe leider nicht alles verstanden, vielleicht liegt es daran, daß ich noch nie eine Formel in dem QuickViewer hinzugefügt habe.

Die Felder haben keine Dezimalstellen. In der AVL Sicht bekomme ich die Packvorschrift in der Tabelle PACKKP rechtsbündig angezeigt mit vielen führenden Nullen. In der anderen Sicht allerdings ist es linksbündig.

In der Felddefinition habe ich das lokale Feld als Textfeld deklariert. Muss ich hier etwas in der "Anzahl der Zeichen" eintragen?

Was muss ich dann in der Berechnungsvorschrift eintragen?

Vielen Dank.

encore
vor 15 Jahre
Hallo,

das hat nichts mit Dezimalstellen zu tun.

Wir reden auch von Query, nicht von QuickView, oder ?  Also SQ00 / SQ01  und nicht SQVI; im QuickView weiss ich nichts von lokalen Feldern

Hinterleg für dein lokales Feld eine Bedingung ; diese heisst :  POBJID[1:20] <> PACKVORSCHR[1:20]
dann Ergebnis :        1
SONST:                       0  oder 9  oder was auch immer
Achtung: eckige Klammern !

Grüsse

nk

Kleo123
  • Kleo123
  • SAP Forum - User Thema Starter
vor 15 Jahre

Hallo encore,

ja, wir reden von SQ01.

Die Formel funktioniert leider nicht 😞  Deswegen habe ich eine andere Frage, diesmal zu SQVI.

Wie kann ich das Feld PACKVORSCHR (aus der Tabelle VEKP) mit dem Feld POBJID (aus der Tabelle PACKKP) verbinden? Ich bekomme die Meldung angezeigt:

"Illegale Join-Bedingungen" (wahrscheinlich wegen der unterschiedlichen Feldlänge). Vielleicht kennst Du einen Trick, wie ich es trotzdem machen kann?

Viele Grüße und ein schönes Wochendende!

encore
vor 15 Jahre
Hallo  kleo123,

dieser Join geht nicht - die Stellenanzahlen müssen nunmal passen und können im Join nicht verändert werden.

Mir ist aber nicht klar, warum die Formel bei dir nicht klappen sollte - bei Interesse kann ich dir aber Hardcopies meiner Formel-Definition mailen.
Grüsse

nk

Kleo123
  • Kleo123
  • SAP Forum - User Thema Starter
vor 15 Jahre
Hallo encore,

ich füge jetzt die Daten in Access zusammen. Da ich diese Daten aber regelmäßig auswerte, wurde mich sehr freuen wenn Du mir Deine Hardcopy zusenden könntest.

Viele Grüße

Kleo123

Kleo123
  • Kleo123
  • SAP Forum - User Thema Starter
vor 15 Jahre
encore
vor 15 Jahre

.....freut mich wenn es bei Dir funktioniert und Dir hilft !
Grüsse

nk

Benutzer, die gerade dieses Thema lesen