ALV Liste: Langen Text als PopUp anzeigen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
2 Beiträge • Seite 1 von 1
2 Beiträge Seite 1 von 1

ALV Liste: Langen Text als PopUp anzeigen

Beitrag von d3pr0f1 (ForumUser / 3 / 0 / 0 ) »
Hallo zusammen,

bin leider nicht der erfahrenste Programmierer. Folgendes Problem habe ich: Ich hab ein ALV erstellt. Ein Feld aus der Struktur, die dargestellt wird, ist allerdings ein STRING mit undefinierter Länge und dieses wird natürlich nicht im ALV dargestellt, wenn es zu lang ist. Ich würde gerne den Feldinhalt dann irgendwie als PopUp darstellen, wenn man einen Doppelklick auf eine Zeile ausführt.

Code: Alles auswählen.

&---------------------------------------------------------------------*
*& Report  Z_CONT_CRM
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT z_cont_crm.

DATA: lt_contacts  TYPE STANDARD TABLE OF zscmx_contacts,
      lt_documents TYPE STANDARD TABLE OF zscmx_documents,
      lv_gpart     TYPE gpart_kk,
      lv_gp        TYPE char70.

DATA go_alv TYPE REF TO cl_salv_table.
DATA go_functions TYPE REF TO cl_salv_functions_list.
DATA go_columns TYPE REF TO cl_salv_columns_table.
DATA go_display TYPE REF TO cl_salv_display_settings.

DATA 	gt_feldkatalog TYPE slis_t_fieldcat_alv.
DATA 	gs_feldkatalog LIKE LINE OF gt_feldkatalog.
DATA 	gs_layout TYPE slis_layout_alv.
DATA 	gv_repid TYPE syrepid.
DATA 	gs_aktuelle_zeile  LIKE LINE OF lt_contacts.



SELECTION-SCREEN: BEGIN OF BLOCK prog WITH FRAME TITLE text-001.
SELECT-OPTIONS s_gp FOR lv_gpart OBLIGATORY.
*APPEND s_gp.
SELECTION-SCREEN: END OF BLOCK prog.

FIELD-SYMBOLS: <fs_contacts> TYPE zscmx_contacts.

*lv_gpart = '0154571116'.

START-OF-SELECTION.

  lv_gpart = s_gp-low.

END-OF-SELECTION.

  CONCATENATE 'Kontakte' lv_gpart INTO lv_gp SEPARATED BY space.

  CASE sy-sysid.
    WHEN 'EMC'.
      CALL FUNCTION 'Z_CMX_CUSTOMER_CONTACT'
        DESTINATION 'CRDCLNT010'
*   DESTINATION 'CRECLNT010'
        EXPORTING
          iv_partner            = lv_gpart
        IMPORTING
          et_contacts           = lt_contacts
          et_documents          = lt_documents
        EXCEPTIONS
          communication_failure = 1
          system_failure        = 2.
    WHEN 'EMD'.
      CALL FUNCTION 'Z_CMX_CUSTOMER_CONTACT'
        DESTINATION 'CRDCLNT010'
*   DESTINATION 'CRECLNT010'
        EXPORTING
          iv_partner            = lv_gpart
        IMPORTING
          et_contacts           = lt_contacts
          et_documents          = lt_documents
        EXCEPTIONS
          communication_failure = 1
          system_failure        = 2.
    WHEN 'EME'.
      CALL FUNCTION 'Z_CMX_CUSTOMER_CONTACT'
*      DESTINATION 'CRDCLNT010'
        DESTINATION 'CRECLNT010'
        EXPORTING
          iv_partner            = lv_gpart
        IMPORTING
          et_contacts           = lt_contacts
          et_documents          = lt_documents
        EXCEPTIONS
          communication_failure = 1
          system_failure        = 2.
    WHEN OTHERS.
      CALL FUNCTION 'Z_CMX_CUSTOMER_CONTACT'
        DESTINATION 'CRDCLNT010'
*   DESTINATION 'CRECLNT010'
        EXPORTING
          iv_partner            = lv_gpart
        IMPORTING
          et_contacts           = lt_contacts
          et_documents          = lt_documents
        EXCEPTIONS
          communication_failure = 1
          system_failure        = 2.
  ENDCASE.



*-----------------------------------------------------------------------
* Beginn ALV-Ausgabe
*-----------------------------------------------------------------------
* Kopieren Sie diesen Block an das Endes des Verarbeitungsblocks
* des ABAP-Programms
*-----------------------------------------------------------------------
* Layout bestimmen.
  PERFORM layout_allg_build USING gs_layout.

* Daten als ALV-Liste anzeigen.
  PERFORM alv_anzeigen.

*-----------------------------------------------------------------------
* Ende ALV-Ausgabe
*-----------------------------------------------------------------------


*-----------------------------------------------------------------------
* Unterprogramm fuer Ausgabe der ALV-Liste
*-----------------------------------------------------------------------
FORM alv_anzeigen.

  gv_repid = sy-repid.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program      = gv_repid
      i_callback_user_command = 'REAKTION_AUF_DOPPELKLICK'
      i_grid_title            = lv_gp
      i_structure_name        = 'zscmx_contacts'
      is_layout               = gs_layout
    TABLES
      t_outtab                = lt_contacts.
  IF sy-subrc <> 0.
  ENDIF.
ENDFORM."alv_anzeigen.

*---------------------------------------------------------------------
* Unterprogramm fuer Layoutangaben
*---------------------------------------------------------------------

FORM layout_allg_build USING ls_layout TYPE slis_layout_alv.
  ls_layout-zebra ='X'.
  ls_layout-colwidth_optimize ='X'.
ENDFORM. "layout_allg_build.

*---------------------------------------------------------------------
* Unterprogramm fuer Reaktion auf Doppelklick
*---------------------------------------------------------------------

FORM reaktion_auf_doppelklick USING i_ucomm
    i_selfield TYPE slis_selfield.

  CASE i_ucomm.
    WHEN '&IC1'. "bei Doppelklick
      READ TABLE lt_contacts INTO gs_aktuelle_zeile
        INDEX i_selfield-tabindex.

  ENDCASE.
ENDFORM. "REAKTION_AUF_DOPPELKLICK
Ich würde gerne das Feld lt_contacts-note darstellen. Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt. Vielleicht hat jemand einen Tipp für mich. Danke!

Viele Grüße

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



Seite 1 von 1

Vergleichbare Themen

2
Antw.
2130
Views
Popup mit Text und Tabelle
von Mustafapmk0 » 01.12.2016 13:49 • Verfasst in ABAP® für Anfänger
2
Antw.
971
Views
Workarea als Popup anzeigen
von Accetron » 18.11.2020 12:57 • Verfasst in ABAP® für Anfänger
5
Antw.
6363
Views
Popup Tabellenfelder anzeigen
von Tom_Tom » 08.11.2005 10:48 • Verfasst in ABAP® für Anfänger
8
Antw.
6125
Views
POPup in Userexit anzeigen
von Eli » 08.08.2018 13:12 • Verfasst in ABAP® für Anfänger
0
Antw.
1084
Views
Verteilerliste anzeigen als POPUP SO15
von ibo » 16.12.2015 09:42 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

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.