Image aus DB-Tabelle in WDA anzeigen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

ABAP Web Dynpro, BusinessServerPages; Erstellung von Webapplikationen.
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Image aus DB-Tabelle in WDA anzeigen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hallo Experten,

ich versuche gerade eine Bilddatei (JPG), die über die Dienste zum Objekt angehangen wurde in meiner WDA anzeigen zu lassen.
Dazu hole ich mir erst über den FuBa "SO_DOCUMENT_READ_API1" die Datentabelle. Anschließend fasse ich diese Tabelle als einen xstring zusammen und lasse daraus mit dem FuBa "RSFO_XSTRING TO MIME" meinen xstring als mime erstellen. Abschließend nutze ich diese Tabelle um mittels FuBa "DP_CREATE_URL" eine bild-URL ausgeben zu lassen. Diese url binde ich dann an den Context und das UI-Element Image hat dann die URL als Source angelegt bekommen.
Die FuBa's laufen scheinbar ohne Fehler durch, denn ich bekomme auch eine Bild-URL. Allerdings sehe ich in meiner WDA nichts. nicht mal das berühmte Kreuz für eine nicht anzeigbare Datei.
Hatte schonmal jemand das gleiche Problem? Oder weiß jemand woran das liegt und wie man es behebt? Ich hoffe auf eure Hilfe, da ich mit googlen und lesen einfach nicht weiterkomme. habe schon soviel probiert und nichts scheint zu funktionieren.
Gruß,
der Matze

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


Re: Image aus DB-Tabelle in WDA anzeigen

Beitrag von Tobias85 (ForumUser / 34 / 3 / 1 ) »
ich habe das mit nem HTTP-Response realisiert, wenn du nen XString sollte das auch funktionieren.
Das Problem hierbei ist aber, dass die URL nach ner Zeit verfällt und das Bild nicht mehr angezeigt wird bzw das berühmte Kreuz sehe

Code: Alles auswählen.

*Create the cached response object that we will insert our content into
    CREATE OBJECT cached_response
      TYPE
        cl_http_response
      EXPORTING
        add_c_msg        = 1.

****set the data and the headers

    CONCATENATE 'image/' wd_comp_controller->gv_file_format INTO lv_file_format. "erstellte Bild-URL

    cached_response->set_data( lv_content ). "XSTRING
    cached_response->set_header_field( name  = if_http_header_fields=>content_type
                                        value = lv_file_format ).
    cached_response->set_status( code = 200 reason = 'OK' ).
    cached_response->server_cache_expire_rel( expires_rel = 300 ).

Re: Image aus DB-Tabelle in WDA anzeigen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hallo Tobias,

an welcher Stelle müsste ich das in meiner Logik einbinden?
Und was steht in der gv_file_format?
Und was muss in content_type stehen?
Gruß,
der Matze

Re: Image aus DB-Tabelle in WDA anzeigen

Beitrag von Tobias85 (ForumUser / 34 / 3 / 1 ) »
1. eigentlich direkt nachdem du deinen XString "gebastelt" hast. Erstellst du den aus Binärdaten?

2. gv_file_format ist einfach ein GUID (Globally Unique Identifier), da ich mir damit auch meine IDs der Link-To-Action kennzeichne.

3. bei content_type habe ich nicht weiter angegeben.

Re: Image aus DB-Tabelle in WDA anzeigen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hallo Tobias,

irgendwie komme ich nicht weiter.
ich bekomme mit SO_DOCUMENT_READ_API1 eine raw-tabelle, die ich als XString bastel. Nutze ich schon diesen xstring? Denn mit RSFO_XSTRING TO MIME bekomme ich den xstring als mime-xstring (wenn ich das richtig verstanden habe).
Die Sache mit dem GUID habe ich auch irgendwie noch nicht verstanden, wozu ich das brauche...
Hast du vllt. einen quellcode für mich, um mir das etwas anschaulicher zu erläutern?!
Gruß,
der Matze

Re: Image aus DB-Tabelle in WDA anzeigen

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hi, also ich habe jetzt dann doch verstanden wo meine Fehler waren.

ich habe nun den ersten xstring an meine View übergeben und lasse dort eine http-response erstellen und binde dann die URL an das Image-UI-Element.

Für die, die es interessiert: folgender Code erstellt die URL, welche an die Source des UI-Elementes gebunden werden muss:

Code: Alles auswählen.

        DATA:url TYPE string,
        guid TYPE guid_32,
        cached_response TYPE REF TO if_http_response.

        CREATE OBJECT cached_response
          TYPE
            cl_http_response
          EXPORTING
            add_c_msg        = 1.

* set image to mime
        cached_response->set_data( lv_xstring ).
        cached_response->set_header_field(
        name = if_http_header_fields=>content_type
        value = 'image/pjpeg' ).

        cached_response->set_status( code = 200 reason = 'OK' ).
        cached_response->server_cache_expire_rel( expires_rel =
        180 ).

        CALL FUNCTION 'GUID_CREATE'
          IMPORTING
            ev_guid_32 = guid.

        cl_wd_utilities=>construct_wd_url( EXPORTING
        application_name = 'YRS_TEST1' "Webdynpro application name
        IMPORTING out_local_url = url ).

        CONCATENATE url '/' guid sy-uzeit INTO url.
        cl_http_server=>server_cache_upload(
        url = url
        response = cached_response ).
Gruß,
der Matze

Seite 1 von 1

Vergleichbare Themen

0
Antw.
4380
Views
17
Antw.
8481
Views
TV Image
von Seguro » 24.01.2006 10:20 • Verfasst in Web-Dynpro, BSP + BHTML
4
Antw.
932
Views
Tabelle anzeigen mit FuBa?
von Nion » 31.03.2023 08:51 • Verfasst in ABAP® für Anfänger
14
Antw.
7054
Views
PDF in einer Tabelle anzeigen
von sebo » 29.03.2012 11:36 • Verfasst in ABAP® Core
1
Antw.
3178
Views
Image Source für Button zur Laufzeit festlegen
von Dyrdek » 06.04.2016 14:07 • Verfasst in Web-Dynpro, BSP + BHTML

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Aktuelle Forenbeiträge

Mahnung erstellen
vor 10 Minuten von wreichelt 2 / 10
Absprung VA02 Position
vor 2 Stunden von gs3rr4 3 / 27
OPD Druck im SPOOL
vor 3 Stunden von Manfred K. 1 / 14
Hilfe zum FB MATERIAL_MAINTAIN_DARK
Gestern von black_adept gelöst 8 / 1804

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

Mahnung erstellen
vor 10 Minuten von wreichelt 2 / 10
Absprung VA02 Position
vor 2 Stunden von gs3rr4 3 / 27
OPD Druck im SPOOL
vor 3 Stunden von Manfred K. 1 / 14
Hilfe zum FB MATERIAL_MAINTAIN_DARK
Gestern von black_adept gelöst 8 / 1804

Unbeantwortete Forenbeiträge

OPD Druck im SPOOL
vor 3 Stunden von Manfred K. 1 / 14
Export von Spools in XLSX
vor 5 Tagen von abapamateur 1 / 388
Feldberechnung ME32K
vor einer Woche von ZF_SAPler 1 / 992
MS-Word als Editor
letzen Monat von tekko 1 / 4490