Cześć,
Może to już było, jeśli tak to można usunąć
W raportach ALV OO przy wyświetlaniu TOP_OF_PAGE wstawiam tam (oprócz innych informacji) logo spółki (PGE S.A.) – utworzyłem i wstawiłem do BDS (OAER).
Ale logo jest na białym tle a tło w HTML jest takie jakie wynika z ustawień użytkownika w SAP GUI.
I wygląda to trochę słabo, w zależności od tematu kolor tła jest różny i logo wygląda jak przyklejony znaczek pocztowy:
Przekopałem internet jak zmienić na stałe tło w HTML, którego używam w TOP_OF_PAGE i nic… jakieś dyrdymały, że dla
DATA:
gd_dyndoc_id TYPE REF TO cl_dd_document.
* Create TOP-Document
CREATE OBJECT gd_dyndoc_id
EXPORTING
style = 'ALV_GRID'.
CALL METHOD gd_dyndoc_id->initialize_document
EXPORTING
background_color = cl_dd_area=>col_textarea.
background_color może przyjmować wartości stałe określone jako cl_dd_area=>col_*.
Przetestowałem wszystkie zalecane ustawienia/wartości
COL_BACKGROUND_LEVEL1
COL_BACKGROUND_LEVEL2
COL_TEXTAREA
COL_TREE_LEVEL1
COL_TREE_LEVEL2
COL_TREE_LEVEL3
COL_TREE_LEVEL4
i nic nie zmieniało się
Więc kolejna kawa + debugg i wszystko jasne, dla: style = 'ALV_GRID' mogłem zmieniać wartości do końca świata i tak SAP wstawiał co chciał.
Więc pozbyłem się: style = 'ALV_GRID' i już mogłem poszaleć :
* dla białego tła
CALL METHOD gd_dyndoc_id->initialize_document
EXPORTING
background_color = 2. <- dla koloru białego #FFFFFF
Kolor tła
-
- Posty: 605
- Rejestracja: pn lut 14, 2011 9:10 pm
- Has thanked: 439 times
- Been thanked: 278 times
Re: Kolor tła
cd.
Teraz TOP wygląda lepiej: Dołączam rozkminioną listę kodów kolorów, może kiedyś Wam przyda się.
Teraz TOP wygląda lepiej: Dołączam rozkminioną listę kodów kolorów, może kiedyś Wam przyda się.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Rafał Kisiel
Re: Kolor tła
A czy nie lepiej mieć prawidłową grafikę, z transparentnym tłem? Bo w tym momencie, dostosowujesz kolor tła, do koloru tła obrazka...
SAP ABAP Certified Developer
-
- Posty: 567
- Rejestracja: śr kwie 04, 2007 4:32 pm
- Lokalizacja: Poznań
- Has thanked: 10 times
- Been thanked: 171 times
Re: Kolor tła
Kiedyś pisałem obsługę różnych kontrolek ActiveX w ABAP tak żeby można je było wykorzystać bezpośrednio na ekranach w SAPGUI (np. slider). Wiem, że ten temat (choć pozornie prosty) należy do tej kategorii, którą developerzy określają "rzeźba w gównie"
Szacun za upór w dążeniu do rozpoznania tematu.
Szacun za upór w dążeniu do rozpoznania tematu.
Pozdrawiam,
Jacek Witczak
http://novertio.pl
Jacek Witczak
http://novertio.pl
-
- Posty: 567
- Rejestracja: śr kwie 04, 2007 4:32 pm
- Lokalizacja: Poznań
- Has thanked: 10 times
- Been thanked: 171 times
Re: Kolor tła
Ponieważ dostałem kilka zapytań o ten temat, więc publicznie go przybliżę (bardzo pobieżnie) dla zainteresowanych a na końcu wyjaśnię dlaczego w dzisiejszych realiach lepiej tego nie robić
1. trzeba dobrze znać kontrolkę ActiveX, którą chcemy wykorzystać na ekranach SAPGUI (własności, metody i zdarzenia kontrolki, jej sposób działania, itede, itepe). Pomocne tu będzie narzędzie systemu Windows o nazwie OLE Viewer (lub nowsze OLE/COM Object Viewer).
2. kontrolka Ole/ActiveX musi być zarejestrowana w systemie Windows, na którym działa SAPGUI (patrz CLSID i rejestr Windows)
3. trzeba utworzyć własną klasę dziedziczącą z CL_GUI_CONTROL
4. trzeba zredefiniować przynajmniej dwie metody: SET_REGISTERED_EVENTS oraz DISPATCH i odpowiednio je zaimplementować aby ABAP mógł "gadać" z kontrolką i jej metodami/własnościami
5. w konstruktorze naszej klasy musimy oczywiście wywołać konstruktor klasy bazowej oraz zarejestrować naszą instancję z wykorzystaniem metody CL_GUI_CFW=>SUBSCRIBE
6. w SET_REGISTERED_EVENTS musimy zarejestrować nasze własne zdarzenia (tj. kontrolki Ole/ActiveX) z wykorzytaniem metody SET_REGISTERED_EVENTS_EX
Teraz można już na ekranie utworzyć kliencki kontener (patrz klasa CL_GUI_CUSTOM_CONTAINER), ustawić go jako rodzica naszej kontrolki i używać tej kontrolki w aplikacjach ekranowych SAPGUI.
Dlaczego dzisiaj to jest już słaby temat?
I. tylko działa na ekranach SAPGUI w systemie Windows (patrz punkt 2)
II. nie działa w innych GUI (np. SAPGUI for Java) i innych systemach operacyjnych niż Windows (np. Linux)
III. nie działa na FIORI
IV. do rozwiązania są problemy takie jak np. właśnie z tłem SAPGUI (biorąc pod uwagę różne motywy SAPGUI, kolory, itd. trudno jest zgrać wizualnie naszą kontrolkę z wyglądem ekranu SAPGUI)
V. czy ktoś jeszcze dzisiaj pisze ABAPy posługujące się zwykłym DYNPRO dla SAPGUI? Zabawa z PBO, PAI, MODULE i inne tam takie nudy?
1. trzeba dobrze znać kontrolkę ActiveX, którą chcemy wykorzystać na ekranach SAPGUI (własności, metody i zdarzenia kontrolki, jej sposób działania, itede, itepe). Pomocne tu będzie narzędzie systemu Windows o nazwie OLE Viewer (lub nowsze OLE/COM Object Viewer).
2. kontrolka Ole/ActiveX musi być zarejestrowana w systemie Windows, na którym działa SAPGUI (patrz CLSID i rejestr Windows)
3. trzeba utworzyć własną klasę dziedziczącą z CL_GUI_CONTROL
4. trzeba zredefiniować przynajmniej dwie metody: SET_REGISTERED_EVENTS oraz DISPATCH i odpowiednio je zaimplementować aby ABAP mógł "gadać" z kontrolką i jej metodami/własnościami
5. w konstruktorze naszej klasy musimy oczywiście wywołać konstruktor klasy bazowej oraz zarejestrować naszą instancję z wykorzystaniem metody CL_GUI_CFW=>SUBSCRIBE
6. w SET_REGISTERED_EVENTS musimy zarejestrować nasze własne zdarzenia (tj. kontrolki Ole/ActiveX) z wykorzytaniem metody SET_REGISTERED_EVENTS_EX
Teraz można już na ekranie utworzyć kliencki kontener (patrz klasa CL_GUI_CUSTOM_CONTAINER), ustawić go jako rodzica naszej kontrolki i używać tej kontrolki w aplikacjach ekranowych SAPGUI.
Dlaczego dzisiaj to jest już słaby temat?
I. tylko działa na ekranach SAPGUI w systemie Windows (patrz punkt 2)
II. nie działa w innych GUI (np. SAPGUI for Java) i innych systemach operacyjnych niż Windows (np. Linux)
III. nie działa na FIORI
IV. do rozwiązania są problemy takie jak np. właśnie z tłem SAPGUI (biorąc pod uwagę różne motywy SAPGUI, kolory, itd. trudno jest zgrać wizualnie naszą kontrolkę z wyglądem ekranu SAPGUI)
V. czy ktoś jeszcze dzisiaj pisze ABAPy posługujące się zwykłym DYNPRO dla SAPGUI? Zabawa z PBO, PAI, MODULE i inne tam takie nudy?
Pozdrawiam,
Jacek Witczak
http://novertio.pl
Jacek Witczak
http://novertio.pl
-
- Posty: 8465
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1991 times
- Been thanked: 1501 times
Re: Kolor tła
Pisze, pisze
Moim zdaniem znacznie łatwiej napisać ekrany DYNPRO do standardowych modułów, niż na siłę robić aplikację Fiori, zwłaszcza jeśli nie ma do niej gotowego OData providera. Napisanie takowego w SEGW np. do LE-WM to jest droga przez mękę.