HTMLB-Table View - Filter

BusinessServerPages; Erstellung von Webapplikationen.

HTMLB-Table View - Filter

Postby Chris247 » Mon May 05, 2003 2:53 pm

Hi,

ich habe mal wieder ein Problem mit dem Filtern Im TableView.
Für mein TableView habe ich das Attribut Filter = 'SERVER' gesetzt, da
für das Attribut = 'Application' der Quelltext der SAP fehlt... :evil:

Im TableView habe ich eine Spalte mit Buttons. Für diese
Spalte sollte der Filter ausgegraut oder als Nicht-Eingabefeld dargestellt werden...

In den tableViewColumn Attributen kann man das Attribut disableFilter setzen, nur bringt das überhaupt nichts...


Danke für jeden Tip!

Grüße
Chris247
..
..
 
Posts: 43
Joined: Wed Mar 26, 2003 11:34 am

Postby Walter4536 » Tue May 06, 2003 10:51 am

Hi,

die SAP hat den Code für 'APPLICATION' nicht vergessen, denn wenn Du bei filter diesen Wert setzt, dann heißt das, dass Du Dich selbst (deine Applikation) um das Filtern kümmert.

Am einfachsten ist es, wie Du ja auch schon eingestellt hast, filter auf 'SERVER' zu setzen, denn dann wird Dir das abgenommen. Wie Du das implementieren kannst siehst Du in der Web-Applikation 'HTMLB_SAMPLES'. ->default starten und dann tableView auswählen. Wenn Du 'filter' auf SERVER setzt, wird direkt unter der Header-Zeile eine weitere Zeile mit Eingabefeldern eingeblendet. Dort kannst Du Filterwerte eingeben. Das Filtern führt dann htmlb für Dich aus.
Hoffe das hilft Dir weiter.

Gruß,
Steff
Walter4536
...
...
 
Posts: 315
Joined: Mon Dec 02, 2002 12:09 pm

Postby Chris247 » Tue May 06, 2003 11:59 am

Hi Steff,

danke für Deine Antwort!

Ich habe das Attribut schon einmal auf 'APPLICATION' gesetzt und dann
das ganze debuggt...ich wollte dabei sehen, wie ich die Spalte, die ich gefiltert habe abgreifen kann. Dabei hatte ich keinen Erfolg,
denn die Attribute, die man dazu benötigt sind alle Protected.
:shock:

Jetzt mein eigentliches Problem:
Ich habe das Attribut auf 'SERVER' gesetzt.
In meinem TableView befindet sich u.a. eine Spalte mit Buttons (zur Bearbeitung eines TableView Datensatzes).
Für diese Spalte soll kein Filtern möglich sein, denn die Spalte enthält ja keine Datensätze!
Bei den TableViewColumn Attributen gibt es das Attribut 'disableFilter'.
Aber selbst wenn ich dieses setze, kann ich die Spalte filtern...

Gruß,
Andi
Chris247
..
..
 
Posts: 43
Joined: Wed Mar 26, 2003 11:34 am

Postby Walter4536 » Tue May 06, 2003 4:28 pm

Hi Andi,

wie hast Du denn disableFilter gesetzt? Vielleicht liegt es ja daran, dass es nicht funktioniert. Das Problem bei dem ganzen ist nämlich, dass wenn Du das Attribut auf 'SERVER' setzt, das komplette Eventhandling quasi im Hintergrund (für Dich unsichtbar) passiert. Daher scheint disableFilter die einzige Möglichkeit zu sein. Ansonsten müsste man das Attribut auf 'APPLICATION' setzen und das Filtern selbst übernehmen. Dazu muss der onFilter-event gesetzt werden und das ganze kann dann im OnInputProcessing in etwa so ausgewertet werden:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.   if event is not initial AND event->name = 'tableView' AND event->id = 'sflight1'.
  2.     me->eventType = event->event_type.
  3.     me->param0 = event->server_event.
  4.     me->param0Title = 'Event'.
  5.     data filter type string.
  6.     filter = CL_HTMLB_EVENT_TABLEVIEW=>CO_FILTER.
  7.     if event->server_event eq filter.
  8.       clear filter.
  9.       value = request->get_form_field( 'sflight1-filter_1' ).
  10.       if value is not initial.
  11.         concatenate filter 'CARRID[' value '] ' into filter.
  12.       endif.
  13.  
GeSHi ©

(siehe Beispiel htmlb_examples).
Dann kann der Filter ausgewertet werden und die entsprechende itab aufgebaut werden bzw. eben nur bestimmt Spalten gefiltert werden.
Ich würde aber auf jeden Fall nochmals disableFilter="true" bzw. disableFilter="X" probieren.

Gruß,
Steff
Walter4536
...
...
 
Posts: 315
Joined: Mon Dec 02, 2002 12:09 pm

Postby Chris247 » Thu May 08, 2003 9:30 am

Hallo Steff,

danke für Deine Antwort!
Wenn ich dazukomme, werde ich das Filtern mit dem Attribut 'APPLICATION' ausprobieren...wäre dann halt unnötiger
Programmieraufwand 8)

Ich habe ja 'SERVER' gesetzt und auch schon zum hundertsten mal
disableFilter="true" bzw. disableFilter="X" gesetzt, habe aber keinen Erfolg... :?


Gruß,
Andi
Chris247
..
..
 
Posts: 43
Joined: Wed Mar 26, 2003 11:34 am


Return to BSP + BHTML

Who is online

Users browsing this forum: No registered users and 3 guests