File Upload und BAPI

Getting started ... Alles für einen gelungenen Start.
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

File Upload und BAPI

Beitrag von robin1at (Specialist / 190 / 0 / 0 ) »
Hallo liebe Experten!

Ich habe im Moment leider folgende Probleme und hoffe daß Ihr mir helfen könnt.

Ich lese eine CSV Datei ein. Dies funktioniert leider nicht ganz richtig. Und zwar habe ich bei diesem File an der ersten Stelle den Buchungskreis der 4 Stellig ist. Der Upload liest mir aber nur die ersten 3 Stellen ein. :roll:

Sonst funktioniert der Upload richtig.

Das zweite Problem das ich habe ist das BAPI_FIXEDASSET_CHANGE.

Und zwar weis ich nicht wie ich den Return Code richtig auswerten kann bzw. ist es mir nicht klar ob das BAPI richtig arbeitet.

Im Anhang mein Coding und das File das ich einlese.

Ich hoffe Ihr könnt mir weiterhelfen.

Vielen vielen Dank im Voraus für Eure Hilfe!

Schöne Grüße

Robin

Code: Alles auswählen.

REPORT  z_anlaginv.

TABLES: anla.

DATA: companycode TYPE bapi1022_1-comp_code,
      asset TYPE bapi1022_1-assetmaino,
      subnumber TYPE bapi1022_1-assetsubno,
      timedependentdata TYPE bapi1022_feglg003,
      timedependentdatax TYPE bapi1022_feglg003x,
      inventory TYPE bapi1022_feglg011,
      inventoryx TYPE bapi1022_feglg011x.

DATA: wa_return TYPE bapiret2.

PARAMETERS: p_datei(40) TYPE c.

DATA: BEGIN OF itab_anlaginv OCCURS 10,
        bukrs LIKE anla-bukrs,
        anhaupt LIKE anla-anln1,
        anunter LIKE anla-anln2,
        feldname(60),
        feldwert(60),
     END OF itab_anlaginv.

TYPES: BEGIN OF t_file,
        line(255) TYPE c,
       END OF t_file.
DATA: gt_file TYPE TABLE OF t_file,
      gw_file TYPE t_file.

DATA: wa_anlaginv LIKE LINE OF itab_anlaginv.

DATA: upload TYPE string.

FIELD-SYMBOLS <fs> TYPE ANY.

START-OF-SELECTION.
*###################

  upload = p_datei.

  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      filename                = upload
      filetype                = 'ASC'
    TABLES
      data_tab                = gt_file
    EXCEPTIONS
      file_open_error         = 1
      file_read_error         = 2
      no_batch                = 3
      gui_refuse_filetransfer = 4
      invalid_type            = 5
      no_authority            = 6
      unknown_error           = 7
      bad_data_format         = 8
      header_not_allowed      = 9
      separator_not_allowed   = 10
      header_too_long         = 11
      unknown_dp_error        = 12
      access_denied           = 13
      dp_out_of_memory        = 14
      disk_full               = 15
      dp_timeout              = 16
      OTHERS                  = 17.

  IF sy-subrc <> 0.
    MESSAGE i040(/sapdmc/lsmw_glo_010).
*   Fehler beim Upload der Datei
  ENDIF.

  LOOP AT gt_file INTO gw_file.

    SPLIT gw_file AT ';' INTO itab_anlaginv-bukrs
                              itab_anlaginv-anhaupt
                              itab_anlaginv-anunter
                              itab_anlaginv-feldname
                              itab_anlaginv-feldwert.

    APPEND itab_anlaginv.

  ENDLOOP.

  SORT itab_anlaginv BY bukrs anhaupt anunter.

  LOOP AT itab_anlaginv INTO wa_anlaginv.

    AT NEW anunter.

      CLEAR timedependentdata.
      CLEAR timedependentdatax.
      CLEAR inventory.
      CLEAR inventoryx.

    ENDAT.

    ASSIGN (wa_anlaginv-feldname) TO <fs>.
    <fs> = wa_anlaginv-feldwert.

    AT END OF anunter.

      CALL FUNCTION 'BAPI_FIXEDASSET_CHANGE'
        EXPORTING
          companycode        = companycode
          asset              = asset
          subnumber          = subnumber
          inventory          = inventory
          inventoryx         = inventoryx
          timedependentdata  = timedependentdata
          timedependentdatax = timedependentdatax
        IMPORTING
          return             = wa_return.

      IF wa_return IS INITIAL.
        MESSAGE i409(merep_00).
*   Erfolgreich gesichert
      ENDIF.

      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

    ENDAT.

  ENDLOOP.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von robin1at (Specialist / 190 / 0 / 0 ) »
Hallo liebe Helfer!

Das mit dem Return Code habe ich schon hereausgefunden.

Nur leider habe ich immer noch das Problem mit dem File einlesen.

Ich verwende nun die Klasse cl_gui_frontend_services=>gui_upload.

Doch das Problem habe ich leider immer noch.

Hoffe Ihr könnt mir helfen.

Danke

Robin

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
robin1at hat geschrieben:Nur leider habe ich immer noch das Problem mit dem File einlesen.
Hoffe Ihr könnt mir helfen.
Schau dir das File doch mal genau an (mit einem Editor nicht mit Excel)
Es werden genau die ersten 4 Zeichen einer Zeile beim Split in itab_anlaginv-bukrs gestellt. Ob das die richtigen sind kannst du dir im Debbuger anschauen.

Als Tip du musst noch zwei Zeilen in den Code einstellen:

Code: Alles auswählen.

  TRANSLATE gw_file USING '" '.
  CONDENSE gw_file.
Wo und warum mußt du diesmal selber raus finden.

PS: das BAPI kann nicht funktionieren, da es nur mit leeren Parametern aufgerufen wird.
Du mußt:
companycode
asset
subnumber
inventory
inventoryx
timedependentdata
timedependentdatax
irgendwann auch mal füllen!
Gruß Hendrik

Beitrag von robin1at (Specialist / 190 / 0 / 0 ) »
Hallo Hendrik!

Danke für Deine Hilfe!

Habe die Fehler schon gefunden und ausgebessert!

Vielen Dank und schöne Grüße

Robin

Seite 1 von 1

Vergleichbare Themen

4
Antw.
3575
Views
Excel File Upload
von robin1at » 10.04.2006 09:17 • Verfasst in ABAP® für Anfänger
3
Antw.
16404
Views
URL File-Server Internet File Download /Delet cl_http_client
von Luigi91 » 04.10.2016 08:28 • Verfasst in ABAP Objects®
1
Antw.
2904
Views
per BAPI-Control über Visual Basic ein BAPI aufrufen
von Kaiwalker » 25.07.2005 15:22 • Verfasst in ABAP® Core
1
Antw.
1748
Views
CSV File
von robin1at » 11.04.2006 18:20 • Verfasst in ABAP® für Anfänger
3
Antw.
3644
Views
jar file mit JCO
von Gast » 31.01.2005 16:03 • Verfasst in Java & SAP®

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Regex in where
vor einer Stunde von edwin 1 / 33
Programm anlegen mit Vorlage
vor 6 Stunden von DeathAndPain 2 / 87
IT0024 Qualifikationen CP-ID
vor 6 Stunden von DeathAndPain 2 / 329
BUSOBJEKT zu CMIS PHIO ermitteln
vor 8 Stunden von snooga87 1 / 61

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor einer Stunde von edwin 1 / 33
Programm anlegen mit Vorlage
vor 6 Stunden von DeathAndPain 2 / 87
IT0024 Qualifikationen CP-ID
vor 6 Stunden von DeathAndPain 2 / 329
BUSOBJEKT zu CMIS PHIO ermitteln
vor 8 Stunden von snooga87 1 / 61

Unbeantwortete Forenbeiträge

Regex in where
vor einer Stunde von edwin 1 / 33
BUSOBJEKT zu CMIS PHIO ermitteln
vor 8 Stunden von snooga87 1 / 61
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3241