Container ein und ausblenden

Getting started ... Alles für einen gelungenen Start.
24 Beiträge • Vorherige Seite 2 von 2 (current)
24 Beiträge Vorherige Seite 2 von 2 (current)

Re: Container ein und ausblenden

Beitrag von Studi (ForumUser / 24 / 4 / 0 ) »
Danke für eure Hilfe schon mal! Bin echt am verzweifeln gerade
so sieht mein Code aus:


CASE okcode.
DATA: visible TYPE c.

WHEN 'PB_GRAFIK'.
*aktuellen Zustand ermitteln

CALL METHOD g_container_graphics->get_visible
IMPORTING
visible = visible
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

* Wenn der Container sichtbar ist, dann ...
IF visible is INITIAL.
* ...Container auf invisible setzen
CALL METHOD g_container_graphics->set_visible
EXPORTING
visible = space
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

* Wenn der Container nicht sichtbar ist, dann ...
ELSE.
* ...Container auf visible setzen
CALL METHOD g_container_graphics->set_visible
EXPORTING
visible = 'X'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

ENDIF.
---------------------------------------------------------- und das hier war dein Code
g_container_graphics->get_visible( IMPORTING visible = visible ).
g_container_graphics->set_visible( visible = visible ).
CALL METHOD cl_gui_cfw=>flush EXCEPTIONS cntl_system_error = 1 cntl_error = 2.

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


Re: Container ein und ausblenden

Beitrag von abuma (Specialist / 102 / 36 / 14 ) »
Studi hat geschrieben:Danke für eure Hilfe schon mal! Bin echt am verzweifeln gerade
so sieht mein Code aus:


CASE okcode.
DATA: visible TYPE c.

WHEN 'PB_GRAFIK'.
*aktuellen Zustand ermitteln

CALL METHOD g_container_graphics->get_visible
IMPORTING
visible = visible
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

* Wenn der Container sichtbar ist, dann ...
IF visible is INITIAL.
* ...Container auf invisible setzen
CALL METHOD g_container_graphics->set_visible
EXPORTING
visible = space
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

* Wenn der Container nicht sichtbar ist, dann ...
ELSE.
* ...Container auf visible setzen
CALL METHOD g_container_graphics->set_visible
EXPORTING
visible = 'X'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2.

ENDIF.

---------------------------------------------------------- und das hier war dein Code
g_container_graphics->get_visible( IMPORTING visible = visible ).
g_container_graphics->set_visible( visible = visible ).
CALL METHOD cl_gui_cfw=>flush EXCEPTIONS cntl_system_error = 1 cntl_error = 2.
Also der markierte Teil kann ja schonmal raus, sonst ist´s ja doppelt.

Und was kommt danach? Du bist ja noch in der case - endcase anweisung und die wurde soweit ich das sehe noch nicht beendet.
Muss ja etwas mit dem ALV zu tun haben.

Liebe Grüße
abuma

Re: Container ein und ausblenden

Beitrag von Studi (ForumUser / 24 / 4 / 0 ) »
ja genau das gelbe ist bei mir auch auskommentiert.
Doch danach kam die Case Anweisung :D

Re: Container ein und ausblenden

Beitrag von abuma (Specialist / 102 / 36 / 14 ) »
Und was steht im PBO Module?

Re: Container ein und ausblenden

Beitrag von Studi (ForumUser / 24 / 4 / 0 ) »
*&---------------------------------------------------------------------*
*& Include ZAF_WEB_AUSWERTUNG_O01
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
SET PF-STATUS 'S100'.
SET TITLEBAR 'T100'.
ENDMODULE.

*&---------------------------------------------------------------------*
*& Module ALV OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*


MODULE alv OUTPUT.

Perform create_objects.
Perform create_fieldcatalog.
Perform AlV_Display.

ENDMODULE.
*&---------------------------------------------------------------------*
*& Module GRAFIK OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE grafik OUTPUT.

IF g_container_graphics IS INITIAL.
CREATE OBJECT g_container_graphics
EXPORTING
container_name = 'CC_GRAFIK'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
EXIT.
ENDIF.
ENDIF.



CALL METHOD go_grid->set_graphics_container
EXPORTING
i_graphics_container = g_container_graphics.




ENDMODULE.
---------------------------------------------------------------------------FORMS
FORM create_objects .

IF go_container IS INITIAL.
CREATE OBJECT go_container
EXPORTING
container_name = 'CC_ALV'.
ENDIF.
IF go_grid IS INITIAL.
CREATE OBJECT go_grid
EXPORTING
i_parent = go_container.
ENDIF.

IF event_receiver IS INITIAL.
CREATE OBJECT event_receiver.
SET HANDLER event_receiver->handle_toolbar FOR go_grid.
SET HANDLER event_receiver->handle_user_command FOR go_grid.
ENDIF.

ENDFORM.

FORM create_fieldcatalog .
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = '/sew/sce_ws_log'
CHANGING
ct_fieldcat = gt_fieldcat
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.

DATA: ls_fieldcat LIKE LINE OF gt_fieldcat.

" 6. Spalte hinzuügen, welche nicht in gt_log verfügbar ist
ls_fieldcat-fieldname = 'ANZAHL'.
ls_fieldcat-scrtext_l = 'Anzahl'.
ls_fieldcat-scrtext_m = 'Anzahl'.
ls_fieldcat-scrtext_s = 'Anzahl'.
ls_fieldcat-col_pos = 6.
APPEND ls_fieldcat TO gt_fieldcat.

ls_fieldcat-fieldname = 'WOCHE'.
ls_fieldcat-scrtext_l = 'Woche'.
ls_fieldcat-scrtext_m = 'Woche'.
ls_fieldcat-scrtext_s = 'Woche'.
ls_fieldcat-col_pos = 7.
APPEND ls_fieldcat TO gt_fieldcat.

ls_fieldcat-fieldname = 'MONAT'.
ls_fieldcat-scrtext_l = 'Monat'.
ls_fieldcat-scrtext_m = 'Monat'.
ls_fieldcat-scrtext_s = 'Monat'.
ls_fieldcat-col_pos = 8.
APPEND ls_fieldcat TO gt_fieldcat.

ls_fieldcat-fieldname = 'JAHR'.
ls_fieldcat-scrtext_l = 'Jahr'.
ls_fieldcat-scrtext_m = 'Jahr'.
ls_fieldcat-scrtext_s = 'Jahr'.
ls_fieldcat-col_pos = 9.
APPEND ls_fieldcat TO gt_fieldcat.

ENDFORM.

FORM alv_display .

*--Variante
gs_variant-report = sy-repid.

*--Layoutsicherung bestimmen
g_save = 'U'.
IF sy-uname = 'DEFUCALI'.
g_save = 'A'.
ENDIF.

*-- ALV wird standardmäßig ausgegeben
CALL METHOD go_grid->set_table_for_first_display
EXPORTING
* I_BUFFER_ACTIVE =
* I_BYPASSING_BUFFER =
* I_CONSISTENCY_CHECK =
* i_structure_name = '/sew/sce_ws_log'
IS_VARIANT = gs_variant
I_SAVE = g_save
I_DEFAULT = 'X'
* IS_LAYOUT = l_layout
* IS_PRINT =
* IT_SPECIAL_GROUPS =
* IT_TOOLBAR_EXCLUDING =
* IT_HYPERLINK =
* it_alv_graphics = lit_alv_graphics
* IT_EXCEPT_QINFO =
* IR_SALV_ADAPTER =
CHANGING
it_outtab = gt_log
it_fieldcatalog = gt_fieldcat
* IT_SORT =
* IT_FILTER =
* EXCEPTIONS
* INVALID_PARAMETER_COMBINATION = 1
* PROGRAM_ERROR = 2
* TOO_MANY_LINES = 3
* others = 4
.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.


ENDFORM.

Re: Container ein und ausblenden

Beitrag von Studi (ForumUser / 24 / 4 / 0 ) »
okay problem behoben. Es liegt an den Performs laut Debugger geht er scheinbar immer wieder ins PBO.
Noch ne Frage das mit dem Container ein und ausblenden klappt jetzt super. Nur wird die Grafik als erstes ausgeblendet. Ich möchte sie aber eingeblendet haben. Wie würde denn dein Coding dann ausehen @abuma?
Nicht wundern ich bin blutiger Anfänger.

Lg Alisa

Re: Container ein und ausblenden

Beitrag von abuma (Specialist / 102 / 36 / 14 ) »
Also ich denke da solltest du mal Debuggen und schauen warum es zu Beginn ausgeblendet wird.
Soweit ich das sehe müsste es durch dein Coding im PBO anfangs eingeblendet sein, vielleicht hast du noch irgendeine Änderung im PAI-Modul, die es sofort wieder ausblendet?

Liebe Grüße
abuma

Re: Container ein und ausblenden

Beitrag von a-dead-trousers (Top Expert / 4399 / 223 / 1182 ) »
abuma hat geschrieben:Also ich denke da solltest du mal Debuggen und schauen warum es zu Beginn ausgeblendet wird.
Soweit ich das sehe müsste es durch dein Coding im PBO anfangs eingeblendet sein, vielleicht hast du noch irgendeine Änderung im PAI-Modul, die es sofort wieder ausblendet?
Ohne jetzt das Coding durchgelesen zu haben vermute ich ein "logisches" Problem:
Wenn das Objekt erzeugt wird, ist es VISIBLE. Wenn man also sofort ein GET_VISIBLE macht und dann mit SET_VISIBLE das Gegenteil macht, wird das Objekt Anfangs nicht angezeigt. :wink:
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Container ein und ausblenden

Beitrag von abuma (Specialist / 102 / 36 / 14 ) »
a-dead-trousers hat geschrieben:
abuma hat geschrieben:Also ich denke da solltest du mal Debuggen und schauen warum es zu Beginn ausgeblendet wird.
Soweit ich das sehe müsste es durch dein Coding im PBO anfangs eingeblendet sein, vielleicht hast du noch irgendeine Änderung im PAI-Modul, die es sofort wieder ausblendet?
Ohne jetzt das Coding durchgelesen zu haben vermute ich ein "logisches" Problem:
Wenn das Objekt erzeugt wird, ist es VISIBLE. Wenn man also sofort ein GET_VISIBLE macht und dann mit SET_VISIBLE das Gegenteil macht, wird das Objekt Anfangs nicht angezeigt. :wink:
Ja genau, aber in Ihrem PAI-Modul sollte das GET/SET ja nur auf Knopfdruck funktionieren, daher muss es wohl woanders noch eine Stelle geben bei dem es nach der Erzeugung ausgeblendet wird.
Daher muss das wohl erstmal gedebuggt werden.

Liebe Grüße
abuma

Vergleichbare Themen

14
Antw.
15864
Views
PDF im Container öffnen
von Barney » 24.04.2017 10:19 • Verfasst in ABAP® Core
14
Antw.
7989
Views
Parameter in Container
von dawns » 03.12.2007 16:51 • Verfasst in ABAP Objects®
2
Antw.
3144
Views
Scrollbalken bei ALV-Container
von Barney » 12.10.2016 08:18 • Verfasst in ABAP® für Anfänger
3
Antw.
3421
Views
Docking Container im Docking Container
von GreatEMU » 25.04.2013 11:54 • Verfasst in ABAP Objects®
1
Antw.
1897
Views
Container 'wandert' mit
von sebo » 24.04.2015 11:22 • Verfasst in Dialogprogrammierung

Aktuelle Forenbeiträge

Regex in where
vor 11 Stunden von tar 8 / 270
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1555
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 205
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 445

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 11 Stunden von tar 8 / 270
Daten an Tabelle binden
Gestern von Bright4.5 3 / 1555
Programm anlegen mit Vorlage
vor 2 Tagen von DeathAndPain 2 / 205
IT0024 Qualifikationen CP-ID
vor 2 Tagen von DeathAndPain 2 / 445

Unbeantwortete Forenbeiträge

BUSOBJEKT zu CMIS PHIO ermitteln
vor 2 Tagen von snooga87 1 / 147
aRFC im OO-Kontext
letzen Monat von ralf.wenzel 1 / 3324
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9876