‎2006 Jan 28 7:38 AM
‎2006 Jan 28 7:46 AM
Hi prashanth,
1. is HIDE area is a table?
Not is not a table.
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 = 'mittal'.
WRITE : b.
HIDE a.
a = '2000'.
b = 'hello'.
WRITE 😕 b.
HIDE a.
AT LINE-SELECTION.
WRITE 😕 'hidden field a is : ' , a.
regards,
amit m.
Message was edited by: Amit Mittal
‎2006 Jan 28 7:56 AM
Hi,
i am just giving the SAP help on Hide...
HIDE f.
The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Cannot Use Constants in the HIDE Area.
Effect
The contents of f related to the current output line are stored. If this line is selected, f is filled automatically with the stored value.
The selection can be made using:
AT LINE-SELECTION
AT PFx
AT USER-COMMAND
READ LINE
You do not have to output the field with WRITE in order to be able to store its value.
The HIDE statement does not support structures that contain tables (deep structures).
System fields that are particularly useful in interactive reporting are listed in the system fields for lists documentation.
Note
You cannot save lines or components of lines of an internal table that is addressed using a field symbol to the HIDE area. (Compare the ASSIGNING addition to the READ and LOOP statements). Assign the contents of the line or component to a global variable and save this instead.
Exceptions
Non-Catchable Exceptions
Cause: The field is too long for HIDE.
Runtime Error: HIDE_FIELD_TOO_LARGE
Cause: Cannot apply HIDE to a table line or component of a table line.
Runtime Error: HIDE_ILLEGAL_ITAB_SYMBOL
Cause: HIDE is not possible in a local field.
Runtime Error: HIDE_NO_LOCAL: HIDE
Cause: HIDE is not possible on an empty page.
Runtime Error: HIDE_ON_EMPTY_PAGE
‎2006 Jan 28 7:49 AM
Hi Prashanth,
it is not a table, it is just like a work area to hide the content of the write statement.
you can use after write statement of a variable, it will hold the value of the variable
regards
vijay
‎2006 Jan 28 8:15 AM
hi vijay,
ur message is not visible cmpletely.
if it is from sap help then send me the link.
‎2006 Jan 28 8:19 AM
Hi prashanth,
1. Just type HIDE and press F1.
u will get the same help.
-
2. Now a days, HIDE concept
is not used much, bcos alv concept is there!
3. WHY HIDE IS Used :
BCOS To TRAP/DETECT USER-INTERACTION (DOUBL-CLICK)
a) Suppose a simple report displays
a basic list showing
vendor number, vendor name.
b) User-Double clicks a vendor
c) Then we want to show the details of this vendor
4. So , to DETECT, which VENDOR is CLICKED,
we can either use HIDE or
use system variable sy-lisel
which has the contents of the line
which is double clicked.
(in this case we have to PARSE/SUBSTRing
the whole line to split the vendor number)
regards
amit m.
Message was edited by: Amit Mittal
‎2006 Jan 28 8:33 AM
hi amit i have written one small program where i am getting short dump when i click on the basic list.
what happend to my code?
tables:kna1.
types: begin of ty_orders,
kunnr type kunnr,
name1 type name1,
ort01 type ort01,
land1 type land1,
vbeln type vbeln,
erdat type vbeln,
netwr type netwr,
end of ty_orders.
data: w_orders type ty_orders.
data: t_orders type standard table of ty_orders initial size 0.
****************************************************************
start-of-selection.
select kunnr
name1
ort01
land1 into corresponding fields of
table t_orders from kna1.
loop at t_orders into w_orders.
write: /5 w_orders-kunnr,
20 w_orders-name1,
55 w_orders-ort01,
75 w_orders-land1.
hide w_orders-kunnr.
endloop.
*********************************************************************
at line-selection.
case sy-lsind.
when '1'.
select vbeln
erdat
netwr into corresponding fields of
table t_orders from vbak where
kunnr = w_orders-kunnr.
loop at t_orders into w_orders.
write: /20 w_orders-vbeln,
35 w_orders-erdat,
50 w_orders-netwr.
endloop.
endcase.
*******************************************************************
top-of-page.
write:/35 'CUSTOMER MASTER DETAILS'.
uline.
write: /5 'customer no',
20 'customer name',
55 'city',
75 'country'.
uline.
************************************************************************
top-of-page during line-selection.
if sy-lsind = '1'.
write: /35 'order information list'.
uline.
write: /5 'sales document no',
30 'order date',
45 'order value'.
endif.
************************************************************************
end-of-page.
uline.
write:/ 'END OF PAGE NO :',sy-pagno.
‎2006 Jan 28 8:58 AM
Hi again,
1. Very minor mistake.
2. erdat TYPE <b>erdat</b>,
and not
erdat type vbeln,
regards,
amit m.
‎2006 Jan 28 9:41 AM
types: begin of ty_orders,
kunnr type kunnr,
name1 type name1,
ort01 type ort01,
land1 type land1,
vbeln type vbeln,
<b>erdat type erdat</b>, <=== change this
netwr type netwr,
end of ty_orders.