SUBMIT: WITH

MATNR_GL, PLSCN, WERKS_GL seien die Parameter Variablen oder Ranges / Select Options im aufgerufenen Programm.

Folgende Option funktioniert bei Parametern und Select Options:

sel {EQ|NE|CP|NP|GT|GE|LT|LE} dobj [SIGN sign]

Hier würde diese mit Einzelwerten und bei Angabe von Sign ‚I‘ oder ‚E‘ inkludiert oder exkludiert werden.

Folgende Optionen funktionieren nur bei Select Options:

sel [NOT] BETWEEN dobj1 AND dobj2 [SIGN sign]

In diesem Fall funktioniert es nur mit Select Options, eine neue Zeile wird angehängt werden.

sel IN rtab

Auch hier funktioniert es nur mit Select Options, ein Range Objekt würde übergeben werden.

Bsp.:

MATNR_GL, PLSCN, WERKS_GL können Parameter oder Select Options sein:

SUBMIT rmcpamrp
  WITH matnr_gl = i_matnr
  WITH plscn    = i_tplscn
  WITH werks_gl = i_werks
  via selection-screen        
   AND RETURN .

MATNR_GL, PLSCN, WERKS_GL können hier nur Select Options sein:

SUBMIT rmcpamrp
  WITH matnr_gl IN i_matnr
  WITH plscn    IN i_tplscn
  WITH werks_gl IN i_werks
via selection-screen        
   AND RETURN

Hier aus der SAP Doku

Zusatz 4

… WITH expr_syntax1 WITH expr_syntax2 …

Wirkung

Mit diesem Zusatz werden einzelne Parameter oder Selektionskriterien des Selektionsbildes mit Werten versorgt. Parameter werden mit Einzelwerten, Selektionskriterien mit Selektionstabellen versorgt, die bereits gesetzte Werte im aufgerufenen Programm überschreiben. Die zu übergebende Selektionstabelle wird aus allen Zusätzen expr_syntax, die das gleiche Selektionskriterium sel ansprechen, zusammengesetzt. Für expr_syntax können folgende Ausdrücke angegeben werden, wobei für sel direkt der Name eines Parameters oder eines Selektionskriteriums angegeben werden muss:

  • sel {EQ|NE|CP|NP|GT|GE|LT|LE} dobj [SIGN sign]
    Übergabe eines Einzelwerts.
    Die Operatoren vor dobj entsprechen den für die Spalte OPTION von Selektionstabellen vorgesehenen Werten. Für dobj muss ein Datenobjekt angegeben werden, dessen Datentyp in den Datentyp der Selektionsbildkomponente sel konvertierbar ist. Für sign kann ein zeichenartiges Feld angegeben werden, das den Inhalt ‚I‘ oder ‚E‘ haben muss. Der Standardwert ist ‚I‘.
    Wenn sel ein Selektionskriterium ist, wird an die zu übergebende Selektionstabelle eine Zeile angehängt, wobei der angegebene Operator in die Spalte OPTION, der Inhalt von dobj in die Spalte LOW und der Inhalt von sign in die Spalte SIGN gestellt wird.
    Wenn sel ein Parameter ist, wird dieser im aufgerufenen Programm auf den Wert von dobj gesetzt. Der Operator und der Wert von sign werden nicht berücksichtigt.
  • sel [NOT] BETWEEN dobj1 AND dobj2 [SIGN sign]
    Übergabe eines Intervalls.
    In diesem Fall muss sel ein Selektionskriterium sein. Für dobj müssen Datenobjekte angegeben werden, deren Datentyp in denjenigen der Spalten LOW und HIGH des Selektionskriteriums sel konvertierbar ist. Für sign kann ein zeichenartiges Feld angegeben werden, das den Inhalt ‚I‘ oder ‚E‘ haben muss. Der Standardwert ist ‚I‘.
    An die zu übergebende Selektionstabelle wird eine Zeile angehängt. Falls NOT angegeben ist, wird in die Spalte OPTION der Wert ‚NB‘, ansonsten ‚BT‘ gestellt. Der Inhalt der Datenobjekte dobj und sign wird in die Spalten LOW, HIGH und SIGN gestellt.
  • sel IN rtab
    Übergabe einer Ranges-Tabelle.
    In diesem Fall muss sel ein Selektionskriterium sein. Für rtab muss eine Standardtabelle ohne sekundäre Tabellenschlüssel angegeben werden, welche die Struktur der Selektionstabelle des Selektionskriteriums sel hat. Eine solche Tabelle kann mit dem Zusatz RANGE OF der Anweisungen TYPES und DATA angelegt werden.
    Die Zeilen der Tabelle rtab werden an die zu übergebende Selektionstabelle angehängt.