Zum Inhalt springen

MAJOR_TOM

Mitglieder
  • Gesamte Inhalte

    77
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von MAJOR_TOM

  1. Das Problem liegt in der Struktur der Datei. Hier sind die einzelnen Spalten der Tabelle in die du später schreiben willst, in unterschiedlichen Zeilen enthalten! Soll bedeuten: Datei Zeile 1 enthält den Wert für Spalte "ind" der Tabelle, Datei Zeile 2 enthält den Wert für Spalte "nummer" der Tabelle usw. Der Funktionsbaustein GUI_UPLOAD liest jetzt aber die Datei zeilenweise ein, und versucht die eingelesene Zeile der Zielstruktur anzupassen. Beispiel: Zeile x deiner Datei enthält folgenden Wert: "Wo liegt Rom?". GUI_UPLOAD splitted diesen String jetzt in die einzelnen Komponenten der Zielstruktur auf. Die Zeile deiner internen Tabelle enthält jetzt also IND NUMMER FRAGE Wo lie gt Rom? Schaus dir im Debugger an! Du hast jetzt zwei Möglichkeiten: Entweder du passt die Struktur deiner Datei entsprechend an, so dass sie die Werte in der Form enthält die der deiner Tabelle entspricht, oder - und das ist aufwändiger - du liest alle Zeilen der Datei in eine temporäre Tabelle die nur eine(!) Spalte besitzt, LOOPst danach über diese Tabelle, lässt einen Zähler mitlaufen anhand dessen du entscheidest welcher Spalte deiner Zieltabelle die aktuelle Zeile der temporären Tabelle entspricht und baust mit diesen Informationen deine eigentliche Zieltabelle auf.
  2. Genau darum gehts mir: Die Definitionen von itab und struc1!
  3. Was du da versuchst, kann nicht so funktionieren wie du es dir vorstellst! Habe grade nicht genug Zeit, das wie und warum auszuformulieren... Poste doch mal bitte den kompletten Quellcode, dann sollte ich es dir genauer erklären können.
  4. OPEN DATASET öffnet eine Datei auf dem Applikationsserver, nicht auf dem Frontend! Um Dateien vom Frontend zu laden / darauf zu schreiben, kannst du die Methoden der Klasse CL_GUI_FRONTEND_SERVICES, oder die Funktionsbausteine GUI_UPLOAD / GUI_DOWNLOAD nutzen. Gruß, Tom.
  5. Kleiner Tipp: SAP Online Help. Hier findest du eine ganze Menge PDFs von der SAP. Gleich der erste Link ist ein komplettes Buch über ABAP-Programmierung.
  6. Du must ein Datenelement mit Bezug auf die Domäne anlegen. Dieses Datenelement kannst du dann in deiner Tabelle verwenden.
  7. In der Anzeige der Domäne gibt es im Tab-Reiter "Definition" ein Ankreuzfeld "Lower Case". Dieses ankreuzen und schon wird zwischen Groß- und Kleinschreibung unterschieden.
  8. Kennst du help.sap.com schon? >>Klick<<
  9. Hi, Verwende den Zusatz "RESPECTING BLANKS", bzw. "SEPARATED BY space". Dann klappts mit den Leerzeichen. Genauer gesagt: "RESPECTING BLANKS" funktioniert nur mit Variablen vom Typ C, nicht für Strings. "SEPARATED BY space" funktioniert für Variablen vom Typ C und für Strings. Gruß, Tom.
  10. Chuck Norris kann eine Bombe zerlegen - und zwar in einen Kaugummi, einen Faden, ein Streichholz und MacGyver.
  11. Seit Chuck Norris schwimmen kann, ist Arielle nur noch eine Meerfrau.
  12. Chuck Norris hat bei Burger King einen McChicken bestellt. Und bekommen!
  13. Chuck Norris kann eine Funktion schreiben die parallel zur Y-Achse verläuft!
  14. *----------------------------------------------------------------------* * CLASS cl_drumherum DEFINITION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cl_drumherum DEFINITION INHERITING FROM cl_wd_uielement. PUBLIC SECTION. METHODS: set_read_only IMPORTING value TYPE abap_bool, init_object IMPORTING i_object TYPE REF TO object."cl_wd_abstract_input_field. PRIVATE SECTION. DATA: m_abstract TYPE REF TO object."cl_wd_abstract_input_field. ENDCLASS. "cl_drumherum DEFINITION *----------------------------------------------------------------------* * CLASS cl_drumherum IMPLEMENTATION *----------------------------------------------------------------------* * *----------------------------------------------------------------------* CLASS cl_drumherum IMPLEMENTATION. METHOD init_object. m_abstract = i_object. ENDMETHOD. "init_object METHOD set_read_only. DATA: method_name TYPE string VALUE 'SET_READ_ONLY'. CALL METHOD m_abstract->(method_name) EXPORTING value = value. ENDMETHOD. "set_read_only ENDCLASS. "cl_drumherum IMPLEMENTATION DATA: cl_input TYPE REF TO cl_wd_input_field, cl_dropdown TYPE REF TO cl_wd_dropdown_by_idx, cl_drum TYPE REF TO cl_drumherum. START-OF-SELECTION. cl_input = cl_wd_input_field=>new_input_field( ). cl_dropdown = cl_wd_dropdown_by_idx=>new_dropdown_by_idx( bind_texts = 'X' ). CREATE OBJECT cl_drum. CALL METHOD cl_drum->init_object( i_object = cl_input ). CALL METHOD cl_drum->set_read_only( value = 'X' ). CALL METHOD cl_drum->init_object( i_object = cl_dropdown ). CALL METHOD cl_drum->set_read_only( value = 'X' ). Ist zwar nicht streng objektorientiert, aber in ABAP sehe ich keine andere Möglichkeit, deine Anforderung zu realisieren. Mann müsste nur noch eine mögliche Exception bei CALL METHOD m_abstract->(method_name) EXPORTING value = value. abfangen.
  15. Ähm, nö? Habe es gerade mal im Debugger ausprobiert. Das Ergebnis ist sowohl mit als auch ohne CONDENSE das Gleiche. Könnte das evtl. an unterschiedlichen Releases liegen? Wir fahren hier mit ECC 6.0. EDIT: Liegt nicht am Release sondern am Befehl CONCATENATE:
  16. Hi CroQuet, implementieren die Subklassen ein gemeinsames Interface? Wenn nicht, sehe ich eigentlich keine Möglichkeit, auf die Unterscheidung zwischen [bMW], [VW] usw. zu verzichten... Handelt es sich um SAP Standardklassen? Wenn ja um welche?
  17. Hallo, das Codebeispiel ist richtig. Allerdings ist die Anweisung CONDENSE lv_dat NO-GAPS. überflüssig.
  18. So Leute, für wen von euch Joe Waschl noch kein Begriff ist, der sollte sich mal folgende Videos anschauen: Fresskunst Schön wenn man nach einem Lachanfall wieder Luft bekommt... Tom.
  19. Hi Deano, das funktioniert wie folgend beschrieben. (Bitte beachten: Diese Lösung ist von SAP nicht freigegeben, könnte also in späteren Releases nicht mehr funktionieren!) Voraussetzung damit der folgende Quellcode funktioniert: Ein Report mit einem Dynpro 0100 mit zwei Pushbuttons. Pushbutton 1: Beschriftung beliebig, Name = BTN1 Pushbutton 2: Beschriftung beliebig, Name beliebig, Funktionscode = CHG Natürlich noch den ok_code anlegen und einen pf-status, damit du das Programm auch wieder verlassen kannst REPORT ztest_dynpro. DATA: ok_code TYPE sy-ucomm, textvar TYPE char10 VALUE 'Test', change TYPE char1 VALUE space, h TYPE d020s, f LIKE d021s OCCURS 0 WITH HEADER LINE, e LIKE d022s OCCURS 0 WITH HEADER LINE, m LIKE d023s OCCURS 0 WITH HEADER LINE. MODULE status_0100 OUTPUT. SET PF-STATUS '0100'. ENDMODULE. " STATUS_0100 OUTPUT MODULE user_command_0100 INPUT. CASE ok_code. WHEN 'EXIT'. LEAVE PROGRAM. WHEN 'CHG'. PERFORM change_text. ENDCASE. ENDMODULE. " USER_COMMAND_0100 INPUT *&---------------------------------------------------------------------* *& Form change_text *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM change_text. DATA: txt TYPE char10. IF change = 'X'. change = space. txt = 'Test 1'. ELSE. change = 'X'. txt = 'Test 2'. ENDIF. IMPORT DYNPRO h f e m ID 'ZTEST_DYNPRO 0100'. * Leerzeichen beachten! ^^ LOOP AT f WHERE fnam = 'BTN1'. f-stxt = txt. MODIFY f. ENDLOOP. GENERATE DYNPRO h f e m ID 'ZTEST_DYNPRO 0100' MESSAGE sy-msgv1 LINE sy-msgv2 WORD sy-msgv3. EXPORT DYNPRO h f e m ID 'ZTEST_DYNPRO 0100'. ENDFORM. "change_text START-OF-SELECTION. CALL SCREEN '0100'. Viel Spaß beim ausprobieren... Tom.
  20. Hallo, im Buch "ABAP Objects" von Keller und Krüger, ISBN 3-89842-147-3; Galileo Press; ist ein MiniSAP dabei. Ist allerdings nicht ganz günstig: 64,90 €. Vielleicht hilfts ja was
  21. Mannomann wenn ich so was schon lese: Warst du dabei? Nein, also spar dir doch bitte diese unqualifizierten Kommentare! Ich war in Erding stationiert (übrigens in der IT!) und hatte bei weitem besseres zu tun, als zu saufen oder Playstation zu spielen (was meinst du was los ist, wenn du mit Alkoholfahne zum Dienst erscheinst?). Dort ist es wie in einer "richtigen" Arbeit, nur das jeder die gleichen Klamotten anhat! Wir leben nunmal in einem Staat in dem jeder männliche Bürger ab dem 18. Lebensjahr verpflichtet ist, einen Dienst für den Staat zu leisten. Ob das Sozialdienst, THW oder auch Bundeswehr ist, ist jedem freigestellt. Aber immer nur nehmen und niemals auch nur irgendetwas geben wollen finde ich zum k*****! Zum Thema Jobverlust: Man(n) unterliegt einem Kündigungsschutz, wenn man gerade Wehr-/ Sozialdienst leistet. *ich geh jetzt irgendwas kaputt hauen*
  22. Also, ich melde mich ja nun recht selten zu Wort, aber das Ding ist ja mal der absolute Hammer: klick kein weiterer Kommentar...

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...