‎2006 Nov 19 7:47 AM
Hi friends,
I need some information about HIDE area.
1) Is there any specific memory size for HIDE memory area.
2) what are the values will be saved into HIDE memeoy area, like only the values that are followed by HIDE area or the total output list will be saved.
Sathish Reddy.
‎2006 Nov 19 7:51 AM
Hi,
<b>HIDE AREA.</b>
it makes an registery entry in the Server and it keeps on changing ,So its not possible to know the exact location of where the data is Stored.
the HIDE variable can hold up to 8192 characters length.
if the length of the variable is more than 8192 characters will go to dump showing HIDE length restrictions error
It is just like a list (used with write statement)
the difference is, its not writen on screen,
instead it is STORED in memoery. (Line by line)
Just as we use write, we use
HIDE variablename.
and the value of the variable is STORED in memory
on the particular line number.
(we can retrive its value , on that particular
line number, when we doubl-click on the line
which is displayed using write)
2. for getting the taste of it ,
use this program (just copy paste)
(it will show u hidden fileds)
(it will display 2 lines, then on double-clicking,
it will show the hidden values 1000,2000)
REPORT abc.
DATA : a(10) TYPE c.
DATA : b(10) TYPE c.
a = '1000'.
b = 'anver'.
WRITE : b.
HIDE a.
a = '2000'.
b = 'hello'.
WRITE :/ b.
HIDE a.
AT LINE-SELECTION.
WRITE :/ 'hidden field a is : ' , a.
Any way it is stored in memory and not stored in any table, as data which gets stored in Hide is only for that session and once gets cleared after exit from session....if stored in table, it will be useful in further sessions which is not possbile.
Read below info provided by SAP.
As soon as the user selects a line for which you stored HIDE fields, the system fills the variables in the program with the values stored.
You can think of the HIDE area as a table, in which the system stores the names and values of all HIDE fields for each list and line number. As soon as they are needed, the system reads the values from the table.
During list creation, this statement stores the contents of the field <f> and the current line number in the internal HIDE area. When the cursor is positioned on a line in an interactive list event, the stored value is returned to the field <f>.
I hope it helps.
rgds
Anver
if hlped pls mark points
‎2006 Nov 19 7:52 AM
there is no limit for HIDE statement...U can hide as many fields as u want using the HIDE....If u hide one field then only that field can be used in the secondary interactive list, it wont store the entire output list....but, u can hide as many fields as u can & at user command u need to put a case and write code for each & every field.
‎2006 Nov 20 6:25 AM
Hi
HIDE
The HIDE statement is one of the fundamental statements for interactive reporting.
You use the HIDE technique when creating a basic list.
It defines the information that can be passed to subsequent detail lists.
The example below presents some of the essential features of interactive reporting. The basic list contains summarized information. With the HIDE technique, it is possible to branch to more detailed information on subsequent lists.
The following program is connected to the logical database F1S.
REPORT demo_list_hide NO STANDARD PAGE HEADING.
TABLES: spfli, sbook.
DATA: num TYPE i,
dat TYPE d.
START-OF-SELECTION.
num = 0.
SET PF-STATUS 'FLIGHT'.
GET spfli.
num = num + 1.
WRITE: / spfli-carrid, spfli-connid,
spfli-cityfrom, spfli-cityto.
HIDE: spfli-carrid, spfli-connid, num.
END-OF-SELECTION.
CLEAR num.
TOP-OF-PAGE.
WRITE 'List of Flights'.
ULINE.
WRITE 'CA CONN FROM TO'.
ULINE.
TOP-OF-PAGE DURING LINE-SELECTION.
CASE sy-pfkey.
WHEN 'BOOKING'.
WRITE sy-lisel.
ULINE.
WHEN 'WIND'.
WRITE: 'Booking', sbook-bookid,
/ 'Date ', sbook-fldate.
ULINE.
ENDCASE.
AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'SELE'.
IF num NE 0.
SET PF-STATUS 'BOOKING'.
CLEAR dat.
SELECT * FROM sbook WHERE carrid = spfli-carrid
AND connid = spfli-connid.
IF sbook-fldate NE dat.
dat = sbook-fldate.
SKIP.
WRITE / sbook-fldate.
POSITION 16.
ELSE.
NEW-LINE.
POSITION 16.
ENDIF.
WRITE sbook-bookid.
HIDE: sbook-bookid, sbook-fldate, sbook-custtype,
sbook-smoker, sbook-luggweight, sbook-class.
ENDSELECT.
IF sy-subrc NE 0.
WRITE / 'No bookings for this flight'.
ENDIF.
num = 0.
CLEAR sbook-bookid.
ENDIF.
WHEN 'INFO'.
IF NOT sbook-bookid IS INITIAL.
SET PF-STATUS 'WIND'.
SET TITLEBAR 'BKI'.
WINDOW STARTING AT 30 5 ENDING AT 60 10.
WRITE: 'Customer type :', sbook-custtype,
/ 'Smoker :', sbook-smoker,
/ 'Luggage weigtht :', sbook-luggweight UNIT 'KG',
/ 'Class :', sbook-class.
ENDIF.
ENDCASE.
Regards
Swathi
‎2006 Nov 20 6:29 AM
As soon as the user selects a line for which you stored HIDE fields, the system fills the variables in the program with the values stored. It is just temporarily stored in the memory area.
You can think of the HIDE area as a table, in which the system stores the names and values of all HIDE fields for each list and line number. As soon as they are needed, the system reads the values from the table.
During list creation, this statement stores the contents of the field <f> and the current line number in the internal HIDE area. When the cursor is positioned on a line in an interactive list event, the stored value is returned to the field <f>.
I hope it helps.
Best Regards,
Vibha
*Please mark all the helpful answers