janfri hat geschrieben:Ich vermisse Reguläre Ausdrücke für die Stringverarbeitung -- müsste ja nicht mal in den Sprachumfang von ABAP aufgenommen werden, einige FuBas oder eine Klasse mit entsprechenden Methoden würden mir völlig ausreichen...
Gruß
janfri
Gibt es doch! (ab 6.40 oder 7.0)aylinselcuk hat geschrieben:dito!!janfri hat geschrieben:Ich vermisse Reguläre Ausdrücke für die Stringverarbeitung -- müsste ja nicht mal in den Sprachumfang von ABAP aufgenommen werden, einige FuBas oder eine Klasse mit entsprechenden Methoden würden mir völlig ausreichen...
Gruß
janfri
Könnte SAP ja auch gleich spezifizieren. Entweder ist sie gar nicht da, oder sie ist PROTECTED oder PRIVATE (oder es gibt eine ähnliche Methode).Syntaxfehler hat geschrieben:Die Methode "XYZ" ist unbekannt bzw. PROTECTED oder PRIVATE.
Und dabei handelt es sich um zwei verwandte Methoden:Der formale Parameter "DEFAULT_FILENAME" existiert nicht. Es gibt aber
den Parameter "DEFAULT_FILE_NAME" mit ähnlichem Namen.
Genau. Da fehlt der Knopf "Dannnimmdendochindreiteufelsnamen" direkt daneben...bliss hat geschrieben:Nur eine Kleinigkeit, aber solche und ähnliche Fehler sind nervig:
Der formale Parameter "DEFAULT_FILENAME" existiert nicht. Es gibt aber
den Parameter "DEFAULT_FILE_NAME" mit ähnlichem Namen.
Oh, da wäre ich vorsichtig. Dieser Knopf, der doch sehr nützlich ist, hat mir schon mal einen kompletten Report unwiederbringlich gelöscht. Ich habe es nicht nochmal getestet, aber so müsste man den "Bug" reproduzieren können:ewx hat geschrieben:Genau. Da fehlt der Knopf "Dannnimmdendochindreiteufelsnamen" direkt daneben...
Code: Alles auswählen.
REPORT.
PARAMETERS: p_dummy,
p_filec type text80 OBLIGATORY,
p_files type string OBLIGATORY.
Code: Alles auswählen.
select matnr maktx from makt into table $makt where....
Code: Alles auswählen.
loop at $makt assigning <gs_makt>.
...
endloop.
Code: Alles auswählen.
types:
begin of ty_makt,
matnr type matnr,
maktx type maktx,
end of ty_makt,
tt_makt type standard table of ty_makt.
data:
$makt type tt_makt.
field-symbols:
<gs_makt> type ty_makt.
Code: Alles auswählen.
data: gv_matnr type mara-matnr.
Code: Alles auswählen.
data: gv_matnr type matnr.
Oder der User hat sich verschrieben und irgendeine der im aktuellen Sichtbarkeitsbereich des SELECT liegenden Tabellen umfasst die Felder MATNR und MAKTX und hoffentlich sind das auch alles voll typisierte Tabellen wo ich das nachschauen kann.... Das wird wohl nix werdenralf.wenzel hat geschrieben:I
So, jetzt würde ich erwarten, dass ABAP weiß:
* Ah, er braucht eine interne Tabelle mit dem Namen $makt
* In dieser braucht er mindestens die Felder matnr und maktx
Naja. Bei deinem Beispiel selektierst du ja genau die Felder aus der DB-Tabelle die du dann deklariert bekommst. Und wenn da was wegfällt ist das Programm sowieso hinfällig.ralf.wenzel hat geschrieben:* es ist naheliegend, dass die Feldtypen aus der Tabelle MAKT hervorgehen
......Code: Alles auswählen.
data: gv_matnr type mara-matnr.
Suuuuuper Idee, und wenn sich die Tabelle ändert, gibts den Typen nicht mehr und der ganze Rotz dumpt mir weg. Ja, MARA-MATNR wird nie wegfallen, aber es gibt genug Tabellen im Kundennamensraum, die sich wirklich mal ändern. Also muss man da ran und ersetzen, damit das so aussieht:
Ja - da stimme ich dir voll zu.ralf.wenzel hat geschrieben:Das TYPE wird ja erkannt und in anderer Farbe dargestellt, ist es da so viel Arbeit, die entsprechen auszurichten?
Ist schon nett wenn man das macht - vor allem wenn später der Code gewartet werden soll. Du kannst natürlich auch all deine Variablen A1, A2, ... A18273 etc durchnummerieren. Aber gerade von dir hätte ich erwartet dass du demjenigen der so vorgeht das um die Öhrchen haust.ralf.wenzel hat geschrieben:wobei ich noch nie verstanden habe, warum die Eigenschaften eines Feldes aus seinem Namen hervorgehen müssen