Report - parameter name in selection screen
Hi,
I am working with a report and in that I am using a parameter for my selection screen.
Parameter : lifnr like lfa1-lifnr.
My question is: when i execute the program i see in the selection sreen 'Lifnr'. How to get a text say 'Vendor no.' instead of LIFNR in selection screen.
Thanks
Hi,
Go to the TEXT ELEMENTS of the program from the SE38 screen. Click on the SELECTION TEXTS tab, and you can give whatever desription you want for the selection screens here.
If you want the description from the data dictionary just check the check box on the right hand side.
Regards,
Ravi
Note : Please mark the helpful answers
Similar Messages
-
Problem in getting parameter value from selection screen in web dynpro abap
Hi,
I am facing problem in getting parameter value from selection screen.
Please find my code below:
DATA LT_PAR_ITEM TYPE IF_WD_SELECT_OPTIONS=>TT_SELECTION_SCREEN_ITEM.
FIELD-SYMBOLS:<FS_PAR_ITEM> LIKE LINE OF LT_PAR_ITEM,
<FS_OBJ_USAGE> TYPE REF TO data.
WD_THIS->M_HANDLER->GET_PARAMETER_FIELDS( IMPORTING ET_FIELDS = LT_PAR_ITEM ).
LOOP AT LT_PAR_ITEM ASSIGNING <FS_PAR_ITEM>.
CASE <FS_PAR_ITEM>-M_ID.
WHEN `OBJ_USAGE`.
ASSIGN <FS_PAR_ITEM>-M_VALUE->* TO <FS_OBJ_USAGE>.
[ Here, sy-subrc is 4, <FS_OBJ_USAGE> is not assigning.]
ENDCASE.
ENDLOOP.
So, can any one solve this problem.
Thanks in advance,
RadhikaHi Radhika,
Try using GET_RANGE_TABLE_OF_SEL_FIELD...
Please Refer below code..
DATA: NODE_FLIGHTS TYPE REF TO IF_WD_CONTEXT_NODE.
DATA: RT_CARRID TYPE REF TO DATA.
DATA: ISFLIGHT TYPE TABLE OF SFLIGHT.
DATA: WSFLIGHT TYPE SFLIGHT.
FIELD-SYMBOLS: <FS_CARRID> TYPE TABLE.
Retrieve the data from the select option
RT_CARRID = WD_THIS->M_HANDLER->GET_RANGE_TABLE_OF_SEL_FIELD( I_ID = 'S_CARR_ID' ).
Assign it to a field symbol
ASSIGN RT_CARRID->* TO <FS_CARRID>.
CLEAR ISFLIGHT. REFRESH ISFLIGHT.
SELECT * INTO CORRESPONDING FIELDS OF TABLE ISFLIGHT FROM SFLIGHT
WHERE CARRID IN <FS_CARRID>.
NODE_FLIGHTS = WD_CONTEXT->GET_CHILD_NODE( NAME = `FLIGHTS` ).
NODE_FLIGHTS->BIND_ELEMENTS( ISFLIGHT ).
Thanks,
Regards,
Kiran -
SUBMIT a report without showing the selection-screen
hey guys,
i want to submit a report(rep2) from my report.(rep1)
rep2 has selection-screen.(it also has ldb associated).
i am apssing all the data for selection-screen(of rep2) using an itab.
but now i dont want selection-screen of rep2 to be displayed when rep1 is executed.
how to go about?Dear Kumar,
you can use the below specified variants
SUBMIT <REPORT NAME>
1. ... USING SELECTION-SET vari
2. ... WITH p op f SIGN s
3. ... WITH p BETWEEN f1 AND f2 SIGN s
4. ... WITH p NOT BETWEEN f1 AND f2 SIGN s
5. ... WITH p IN sel
6. ... WITH SELECTION-TABLE seltab
7. ... WITH FREE SELECTIONS texpr
Eg.,
CLEAR paramtrs.
REFRESH paramtrs.
PERFORM append_selection_table USING :
'SO_NUM' 'P' 'EQ' 123456
'ITEM' 'P' 'EQ' abcdef,
'POS' 'P' 'EQ' 10.
SUBMIT <abc> WITH SELECTION-TABLE paramtrs AND RETURN.
FORM append_selection_table USING fname ftype fopre fvalue.
MOVE : fname TO paramtrs-selname,
ftype TO paramtrs-kind,
fopre TO paramtrs-option,
fvalue TO paramtrs-low.
APPEND paramtrs.
ENDFORM.
where SO_NUM, ITEM AND POS are the report abc's input selection screen. -
Report Painter - title for selection screen
Hi
I have created a report for PCA within GRR1/2 transactions. When I run the report, at the initial screen where I select the period for example, there is no title on the screen, it just comes up as ": SelectioN". However when the report runs, I actually see the name of the report.
How do I add the name to the selection screen?Hi,
I believe, the name of selection screen comes from the name of the Report Group, but I could be wrong...
Regards,
Eli -
Restrict 'Executing report in background' from selection screen
I want user to not to select option for executing report in background from Selection Screen of the program.
i.e. 'Execute Program in Background' option in 1st menu bar tab should either be disabled OR if user clicks on it then he should get error message on selection screen itself.
Thanks,
FalguniHi Falguni,
Write the code based on function code SJOB in the event AT SELECTION-SCREEN. Write the following code :
AT SELECTION-SCREEN
CASE SY-UCOMM.
WHEN 'SJOB'.
MESSAGE E000 WITH 'You cannot schedule background job'.
ENDCASE.
Thanks & Regards,
Faheem. -
Parameter on the selection screen
Hi All,
I have a check box and a parameter on the selection screen. If the checkbox is initial, the paramter shouldn't be editable but if the checkbox is ticked, the parameter should be made mandatory to be enetered with value. How can this be done ?
Thanks in advance.Hi,
Refer to the following code.In this change radiobuttons with the checkbox.
SELECTION-SCREEN BEGIN OF BLOCK B1.
parameters: p_erdat like zirpactivity-erdat modif id SC1 ,
r1 radiobutton group RAD1 user-command ABC default 'X',
r2 radiobutton group RAD1.
SELECTION-SCREEN END OF BLOCK B1.
AT SELECTION-SCREEN.
check sy-ucomm = 'ABC'.
check sy-ucomm = 'F8'.
AT SELECTION-SCREEN OUTPUT.
loop at screen.
if r1 = 'X' and screen-group1 = 'SC1' .
screen-input = 0.
ENDIF.
IF r2 = 'X'.
screen-group1 = 'SC1' .
screen-input = 1.
endif.
modify screen.
endloop.
Hope this helps.
Reward if helpful.'
Regards,
Sipra -
Can I get field name of Selection screen ?
Hi, experts.
I'd like to manage PGM's screens & fields of screens. I need to know field names of selection screen in external PGMs to manage input values of those fields.
For values, I'll use 'Dynp_values_read', but what should I use for getting field names of selection screen?
Is there any functions, classes or tables for PGM's fields of selection screen?
I've found tables&functions for this and I found D020S, D020T, D021T for PGM's screen. But I counld't see proper field names that shows on a selection screen when I excuted PGM. I guess there's a conversion routine between data that saved in repository and field name on screen.
Please let me know what should I use a function, tables or else.
Thanks.Hi
Use Read text pool syntax
READ TEXTPOOL program name
INTO T_TPOOL
LANGUAGE 'NL'.
within TB_TPOOL all select option field namees will be stored under field ID with type S
Edited by: Lavanya K on Apr 22, 2009 10:02 AM -
Report which has four selection screens called in a specific order
Hi All,
In a report, how can I call multiple selection screens predefined, and create BDC recording in the program based on the values entered in the selection screens. The selection screens are 4 in my scenario in a specific order. Please send across sample code which has the logic to call multiple selection screens and create BDC recording for sales order, delivery, PGI..Thanks
RickyIf ur option is to creat multiple screens...go for tabstrip option in ur report and record it.
selection-screen begin of screen 001 as subscreen.
selection-screen begin of block b1 with frame title text-001.
selection-screen begin of line.
selection-screen comment 2(10) text-003.
parameters:par1 type marc-matnr.
selection-screen end of line.
selection-screen end of block b1.
selection-screen end of screen 001.
selection-screen begin of screen 002 as subscreen.
selection-screen begin of block b2 with frame title text-002.
selection-screen begin of line.
selection-screen comment 2(10) text-003.
parameters:par2 type marc-matnr.
selection-screen end of line.
selection-screen end of block b2.
selection-screen end of screen 002.
selection-screen begin of tabbed block tabstrip for 10 lines.
selection-screen tab (15) tabs1 user-command t1 default screen 001.
selection-screen tab (15) tabs2 user-command t2 default screen 002.
selection-screen end of block tabstrip.
initialization.
tabs1 = 'TAB1'.
tabs2 = 'TAB2'. -
Set the parameter in the selection screen of a program from another program
Hi ALL,
I need to call the program RHALESMD from another program and the program RHALESMD takes from date as one of the input parameter.how do i set the from date from the calling program and call RHALESMD
Thanks
Bala Duvvurii got the answer
Program accessed
REPORT report1.
DATA text TYPE c LENGTH 10.
SELECTION-SCREEN BEGIN OF SCREEN 1100.
SELECT-OPTIONS: selcrit1 FOR text,
selcrit2 FOR text.
SELECTION-SCREEN END OF SCREEN 1100.
Calling program
REPORT report2.
DATA: text TYPE c LENGTH 10,
rspar_tab TYPE TABLE OF rsparams,
rspar_line LIKE LINE OF rspar_tab,
range_tab LIKE RANGE OF text,
range_line LIKE LINE OF range_tab.
rspar_line-selname = 'SELCRIT1'.
rspar_line-kind = 'S'.
rspar_line-sign = 'I'.
rspar_line-option = 'EQ'.
rspar_line-low = 'ABAP'.
APPEND rspar_line TO rspar_tab.
range_line-sign = 'E'.
range_line-option = 'EQ'.
range_line-low = 'H'.
APPEND range_line TO range_tab.
range_line-sign = 'E'.
range_line-option = 'EQ'.
range_line-low = 'K'.
APPEND range_line TO range_tab.
SUBMIT report1 USING SELECTION-SCREEN '1100'
WITH SELECTION-TABLE rspar_tab
WITH selcrit2 BETWEEN 'H' AND 'K'
WITH selcrit2 IN range_tab
AND RETURN.
Thanks
Bala Duvvuri -
How to filter by manager's name using selection screen
Hi all,
I am trying to modify the report to filter data from the report based on the manger name given in selection screen. As the manger's name was given in selection screen.. records have to come only of the employee how were working under that entered manager name.
I am unable to follow this code to modify.. where to add select criteria to filter... please make modify to my code..
I am pasting my code here, Can any one kindly help for this scenario.
TABLES: PA0001, "HR Master Record: Infotype 0001 (Org. Assignment),
PA0002,
P0000,
PA9001,
PA0007,
HRP1001, "Infotype 1001 DB Table
PA0034. "HR Master Record: Infotype 0034 (Corporate Function)
*Internal table for holding output data
DATA: IT_PA0002 LIKE PA0002 OCCURS 100 WITH HEADER LINE,
IT_PA9001 LIKE PA9001 OCCURS 100 WITH HEADER LINE,
IT_PA0007 LIKE PA0007 OCCURS 100 WITH HEADER LINE,
IT_PA0034 LIKE PA0034 OCCURS 100 WITH HEADER LINE.
DATA: IT_RET LIKE BAPIRET2,
IT_ACT LIKE BAPI_SWHACTOR OCCURS 0,
IT_STR LIKE BAPI_STRUC OCCURS 0,
IT_ORG LIKE BAPI_OBJEC OCCURS 0,
IT_POS LIKE BAPI_OBJEC OCCURS 0,
IT_SUP LIKE BAPI_OBJEC OCCURS 0,
IT_FCAT LIKE BAPI_HRAQFIELDDESCRIPTION OCCURS 0,
IT_FDAT LIKE BAPI_HRFIELDDATA OCCURS 0,
IT_ORGS TYPE STANDARD TABLE OF BAPI_OBJEC WITH HEADER LINE,
IT_POSS TYPE STANDARD TABLE OF BAPI_OBJEC WITH HEADER LINE,
IT_SUPR TYPE STANDARD TABLE OF BAPI_OBJEC WITH HEADER LINE,
V_DATE TYPE SY-DATUM,
IT_T500P LIKE T500P OCCURS 0 WITH HEADER LINE,
IT_TT500P LIKE T500P OCCURS 0 WITH HEADER LINE,
IT_T001P LIKE T001P OCCURS 0 WITH HEADER LINE .
DATA: IT_PA0001 LIKE PA0001 OCCURS 100 WITH HEADER LINE,
P_ENDDA LIKE sy-datum.
DATA: Begin of I_HRE,
pernr like pa0001-pernr, "Emp Number
nachn like pa0002-nachn, "Last Name
vorna like pa0002-vorna, "First Name
plans like BAPI_OBJEC-LONG_TEXT, "Position
div_text like pa9001-div_text,
kztim like ZKZTIM_VAUES-name,
stext like T591S-STEXT, "Corporate function text
werks like BAPI_OBJEC-LONG_TEXT,
btrtl like pa0001-btrtl,
orgeh like BAPI_OBJEC-LONG_TEXT,
kostl like pa0001-kostl,
mstbr like pa0001-mstbr, "Supervisor
End of I_HRE.
DATA: I_HR like I_HRE occurs 100 with header line.
DATA: V_PLANS LIKE PA0001-PLANS,
V_EMP LIKE PA0001-PERNR,
V_KOSTL LIKE PA0001-KOSTL,
V_SUPER LIKE BAPI_OBJEC-LONG_TEXT,
V_EMP_POS LIKE BAPI_OBJEC-LONG_TEXT,
V_SUPER_POS LIKE BAPI_OBJEC-LONG_TEXT,
V_HEADER TYPE N VALUE 1,
V_COUNTER TYPE N VALUE 1,
EMP_INDICATOR TYPE N,
V_ORGEH LIKE BAPI_OBJEC-LONG_TEXT,
V_WERKS LIKE BAPI_OBJEC-LONG_TEXT,
V_KZTIM LIKE ZKZTIM_VAUES-NAME,
V_STEXT LIKE T591S-STEXT.
DATA: v_file TYPE string, "Detail Filename
v_filerecord(1000),
f_filerecord(1000),
drive(3),
mstbr like pa0001-mstbr, "Supervisor
count type n value 0.
SELECTION-SCREEN BEGIN OF BLOCK SELECTION WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: S_PERNR FOR P0000-PERNR,
S_WERKS FOR PA0001-WERKS,
S_BTRTL FOR PA0001-BTRTL,
S_PERSG FOR PA0001-PERSG,
S_ORGEH FOR PA0001-ORGEH,
S_DIV FOR PA9001-DIV_CODE,
S_KZTIM FOR PA0007-KZTIM,
S_sname for pa0001-sname, " this is to enter name
" as manager name
S_FUNKT FOR PA0034-FUNKT.
SELECTION-SCREEN END OF BLOCK SELECTION.
SELECTION-SCREEN BEGIN OF BLOCK SELECTION1 WITH FRAME TITLE TEXT-002.
PARAMETERS: P_BEGDA LIKE SY-DATUM DEFAULT sy-datum.
* P_ENDDA LIKE SY-DATUM DEFAULT '99991231'.
SELECTION-SCREEN END OF BLOCK SELECTION1.
START-OF-SELECTION.
if P_BEGDA is initial.
p_begda = sy-datum.
endif.
if P_ENDDA is initial.
p_endda = sy-datum.
endif.
if S_PERSG is initial.
* S_PERSG-SIGN = 'I'.
* S_PERSG-OPTION = 'EQ'.
* S_PERSG-LOW = '1'.
* APPEND S_PERSG.
* S_PERSG-SIGN = 'I'.
* S_PERSG-OPTION = 'EQ'.
* S_PERSG-LOW = '6'.
* APPEND S_PERSG.
S_PERSG-SIGN = 'I'.
S_PERSG-OPTION = 'NE'.
S_PERSG-LOW = '5'.
APPEND S_PERSG.
endif.
SELECT * FROM PA0001 into IT_PA0001
WHERE PERNR IN S_PERNR
AND WERKS IN S_WERKS
AND BTRTL IN S_BTRTL
AND PERSG IN S_PERSG
AND ORGEH IN S_ORGEH
AND BEGDA LE P_BEGDA
AND ENDDA GE P_ENDDA.
APPEND IT_PA0001.
ENDSELECT.
IF not S_DIV[] is initial.
SELECT * FROM PA9001 into IT_PA9001
WHERE DIV_CODE IN S_DIV.
APPEND IT_PA9001.
ENDSELECT.
ENDIF.
IF not S_KZTIM[] is initial.
SELECT * FROM PA0007 into IT_PA0007
WHERE KZTIM IN S_KZTIM.
APPEND IT_PA0007.
ENDSELECT.
ENDIF.
IF not S_FUNKT[] is initial.
SELECT * FROM PA0034 into IT_PA0034
WHERE FUNKT IN S_FUNKT.
APPEND IT_PA0034.
ENDSELECT.
ENDIF.
SORT IT_PA0001 by SNAME.
LOOP AT IT_PA0001.
IF not S_DIV[] is initial.
READ TABLE IT_PA9001 with key pernr = IT_PA0001-PERNR.
IF sy-subrc ne 0.
continue.
ENDIF.
ENDIF.
IF not S_KZTIM[] is initial.
READ TABLE IT_PA0007 with key pernr = IT_PA0001-PERNR.
IF sy-subrc ne 0.
continue.
ENDIF.
ENDIF.
IF not S_FUNKT[] is initial.
READ TABLE IT_PA0034 with key pernr = IT_PA0001-PERNR.
IF sy-subrc ne 0.
continue.
ENDIF.
ENDIF.
V_COUNTER = 1.
V_EMP = IT_PA0001-PERNR.
V_KOSTL = IT_PA0001-KOSTL.
* WRITE: (10) V_EMP, (20) PA0002-NACHN, (20) PA0002-VORNA.
WRITE: / SY-VLINE. " Left border
WHILE V_EMP NE ''.
PERFORM GET_SUPER CHANGING V_EMP V_SUPER
V_EMP_POS.
if v_emp ne ''.
select single * into it_pa0002 from pa0002
where pernr = v_emp
and begda LE p_begda
and endda GE p_endda.
IF V_HEADER = 1.
PERFORM HEADING.
V_HEADER = 0.
ENDIF.
WRITE: (10) V_EMP, (17) IT_PA0002-NACHN
,(17) IT_PA0002-VORNA, (40) V_EMP_POS.
move v_emp to i_hr-pernr.
move IT_PA0002-NACHN to i_hr-nachn.
move IT_PA0002-VORNA to i_hr-vorna.
move V_EMP_POS to i_hr-plans.
EMP_INDICATOR = V_COUNTER.
IF V_COUNTER = 1.
select single * into it_pa9001 from pa9001
where pernr = v_emp
and begda LE p_begda
and endda GE p_endda.
select single * into it_pa0007 from pa0007
where pernr = v_emp
and begda LE p_begda
and endda GE p_endda.
PERFORM GET_KZTIM_TEXT CHANGING it_pa0007-kztim V_KZTIM.
select single * into it_pa0034 from pa0034
where pernr = v_emp
and begda LE p_begda
and endda GE p_endda.
PERFORM GET_FUNKT_TEXT CHANGING it_pa0034-funkt v_stext.
write: (8) IT_PA9001-DIV_CODE, (17) V_KZTIM,
(25) V_STEXT.
move IT_PA9001-DIV_CODE to i_hr-div_text.
move v_KZTIM to i_hr-kztim.
ENDIF.
IF V_COUNTER = 0.
WRITE: (1) '|'.
ENDIF.
IF V_COUNTER = 1.
PERFORM GET_NAMES.
WRITE: (20) V_WERKS, (5) IT_PA0001-BTRTL
,(20) V_ORGEH,(11) V_KOSTL, (3) '|'.
V_COUNTER = 0.
move V_WERKS to i_hr-werks.
move IT_PA0001-BTRTL to i_hr-btrtl.
move V_ORGEH to i_hr-orgeh.
move V_KOSTL to i_hr-kostl.
ENDIF.
clear it_pa0002.
refresh it_pa0002.
endif.
V_EMP = V_SUPER.
move V_SUPER to i_hr-mstbr.
if EMP_INDICATOR EQ 1.
append i_hr.
endif.
clear i_hr.
ENDWHILE.
NEW-LINE.
CLEAR : V_KZTIM, it_pa9001, it_PA0007.
ENDLOOP.
* Check if its a background Job
IF SY-BATCH NE SPACE.
perform write_file. "Output File
ENDIF.
ULINE.
*& Form GET_SUPER
* This subroutine takes the position number and get the position
* number that it reports to and then who is holding that position and
* then the name of the person who is holding that position in order to
* provide the supervisors name for the person in that position.
* --> p1 text
* <-- p2 text
FORM GET_SUPER CHANGING EMP_SUB EMP_SUPER
EMP_SUB_POS .
DATA: v_reporto like hrp1001-varyf value space,
v_holder like hrp1001-varyf value space,
v_filled like hrp1001-varyf value space,
v_otype like hrp1001-otype value space,
v_objid like hrp1001-objid value space.
CLEAR: v_reporto, v_holder, v_filled, v_otype, v_objid,
EMP_SUB_POS.
Select single plans
into v_plans
from pa0001
where pernr = emp_sub
and begda LE p_begda
and endda GE p_endda.
CALL FUNCTION 'BAPI_ORGUNITEXT_DATA_GET'
EXPORTING
PLVAR = '01'
OTYPE = 'S'
OBJID = v_PLANS
KEYDATE = SY-DATUM
SCENARIO = ' '
* EVALPATH = 0
EVALDEPTH = 0
IMPORTING
RETURN = IT_RET
TABLES
* ACTORTAB = IT_ACT
* STRUCTURALDATA = IT_STR
OBJECTSDATA = IT_SUP
* FIELDCATALOGUE = IT_FCAT
* FIELDDATA = IT_FDAT
IF SY-SUBRC EQ 0.
READ TABLE IT_SUP INTO IT_SUPR
WITH KEY PLAN_VERS = '01'
OBJECTTYPE = 'S'
OBJECT_ID = v_PLANS.
IF SY-SUBRC EQ 0.
MOVE IT_SUPR-LONG_TEXT TO EMP_SUB_POS.
ENDIF.
ENDIF.
Select Single varyf
into v_reporto
from hrp1001
where otype = 'S'
and objid = v_plans
and rsign = 'A'
and relat = '002'
and begda LE p_begda
and endda GE p_endda.
if sy-subrc = 0.
move v_reporto+0(1) to v_otype.
move v_reporto+2(8) to v_objid.
Select single varyf
into v_holder
from hrp1001
where otype = v_otype
and objid = v_objid
and rsign = 'A'
and relat = '008'
and begda LE p_begda
and endda GE p_endda.
if sy-subrc = 0.
move v_holder+0(1) to v_otype.
move v_holder+2(8) to v_objid.
EMP_SUPER = v_objid.
IF EMP_SUB = EMP_SUPER.
EMP_SUPER = ''.
ENDIF.
* Select single varyf
* into v_filled
* from hrp1001
* where otype = v_otype
* and objid = v_objid
* and rsign = 'A'
* and relat = '209'.
* if sy-subrc = 0.
* CLEAR: IT_RET, IT_ACT, IT_STR, IT_FCAT, IT_FDAT,
* IT_SUP, IT_SUPR.
* REFRESH: IT_POSS.
* move v_filled+0(2) to v_otype.
* move v_filled+2(8) to v_objid.
* CALL FUNCTION 'BAPI_ORGUNITEXT_DATA_GET'
* EXPORTING
* PLVAR = '01'
* OTYPE = v_otype
* OBJID = v_objid
* KEYDATE = V_DATE
* SCENARIO = ' '
** EVALPATH = 0
* EVALDEPTH = 0
* IMPORTING
* RETURN = IT_RET
* TABLES
** ACTORTAB = IT_ACT
** STRUCTURALDATA = IT_STR
* OBJECTSDATA = IT_SUP
** FIELDCATALOGUE = IT_FCAT
** FIELDDATA = IT_FDAT
* IF SY-SUBRC EQ 0.
* READ TABLE IT_SUP INTO IT_SUPR
* WITH KEY PLAN_VERS = '01'
* OBJECTTYPE = v_otype
* OBJECT_ID = v_objid.
* IF SY-SUBRC EQ 0.
* MOVE IT_SUPR-LONG_TEXT TO EMP_SUPER.
* ENDIF.
* ENDIF.
* endif.
endif.
endif.
if sy-subrc <> 0.
EMP_SUPER = ''.
endif.
ENDFORM. " GET_SUPER
*& Form HEADING
* text
* --> p1 text
* <-- p2 text
FORM HEADING .
FORMAT INTENSIFIED OFF. " Remove any INTENSIFIED
FORMAT COLOR COL_HEADING INTENSIFIED." Title color
WRITE: (10) 'Employee', (17) 'Last Name'
,(17) 'First Name', (40) 'Position'
,(8) 'Division', (17) 'Management Type'
,(25) 'Corporate Function'
,(20) 'Personnel Area', (5) 'PSA'
,(20) 'Org. Unit',(11) 'Cost Center',(3) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
,(10) 'Supervisor', (17) 'Last Name'
,(17) 'First Name', (40) 'Position', (1) '|'
ULINE . " Line below titles
NEW-LINE.
WRITE: / SY-VLINE. " Left border
FORMAT COLOR OFF.
ENDFORM. " HEADING
*& Form GET_NAMES
* text
* --> p1 text
* <-- p2 text
FORM GET_NAMES .
CLEAR: IT_RET, IT_ACT, IT_STR, IT_ORG, IT_POS, IT_FCAT, IT_FDAT,
IT_ORGS, IT_POSS, V_ORGEH, V_WERKS.
REFRESH: IT_ORGS, IT_POSS.
MOVE SY-DATUM TO V_DATE.
CALL FUNCTION 'BAPI_ORGUNITEXT_DATA_GET'
EXPORTING
PLVAR = '01'
OTYPE = 'O '
OBJID = IT_PA0001-ORGEH
KEYDATE = V_DATE
SCENARIO = ' '
* SCENARIO = 'MDT1'
* EVALPATH = '0 '
EVALDEPTH = 0
IMPORTING
RETURN = IT_RET
TABLES
* ACTORTAB = IT_ACT
* STRUCTURALDATA = IT_STR
OBJECTSDATA = IT_ORG
* FIELDCATALOGUE = IT_FCAT
* FIELDDATA = IT_FDAT
IF SY-SUBRC EQ 0.
READ TABLE IT_ORG INTO IT_ORGS
WITH KEY PLAN_VERS = '01'
OBJECTTYPE = 'O '
OBJECT_ID = IT_PA0001-ORGEH.
IF SY-SUBRC EQ 0.
MOVE IT_ORGS-LONG_TEXT TO V_ORGEH.
ENDIF.
ENDIF.
CALL FUNCTION 'HR_TMW_READ_T500P'
EXPORTING
PERSA = IT_PA0001-WERKS
IMPORTING
W500P = IT_T500P
EXCEPTIONS
NO_ENTRY_FOUND = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF SY-SUBRC EQ 0.
MOVE IT_T500P-NAME1 TO V_WERKS.
CLEAR: IT_T500P.
REFRESH: IT_T500P.
ENDIF.
* CALL FUNCTION 'HR_TMW_READ_T001P'
* EXPORTING
* PERSA = PA0001-WERKS
* BTRTL = PA0001-BTRTL
* IMPORTING
* W001P = IT_T001P
* EXCEPTIONS
* NO_ENTRY_FOUND = 1
* OTHERS = 2.
* IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
* ENDIF.
* IF SY-SUBRC EQ 0.
* MOVE IT_T001P-BTEXT TO IT_HRR05-BTRTL.
* ENDIF.
ENDFORM. " GET_NAMES
*& Form GET_KZTIM_TEXT
* text
* <--P_V_EMP text
* <--P_V_KZTIM text
FORM GET_KZTIM_TEXT CHANGING P_KZTIM_ID
P_KZTIM.
select single NAME into P_KZTIM from ZKZTIM_VAUES
where TYPE eq P_KZTIM_ID.
ENDFORM. " GET_KZTIM_TEXT
*& Form GET_FUNKT_TEXT
* text
* <--P_V_EMP text
* <--P_V_KZTIM text
FORM GET_FUNKT_TEXT CHANGING P_FUNKT_ID
P_STEXT.
select single STEXT into P_STEXT from T591S
where SPRSL eq 'EN' and
INFTY eq '0034' and
SUBTY eq P_FUNKT_ID.
ENDFORM. " GET_KZTIM_TEXT
*& Form write_file
* text
* --> p1 text
* <-- p2 text
FORM write_file .
* Checking the System ID
if sy-sysid = 'RD1'.
drive = 'D:\'.
else.
drive = 'M:\'.
endif.
* concatenate drive sy-sysid
* '\Output\Reports\HR\HR_Public\Emp_Hierarchy'
* sy-datum
* '.xls' into v_file.
concatenate drive sy-sysid
'\Output\Reports\HR\HR_Public\Emp_Hierarchy.xls'
into v_file.
OPEN DATASET v_file FOR OUTPUT in text mode encoding default.
concatenate 'Employee'
'Last Name'
'First Name'
'Position'
'Division'
'Management Type'
'Corporate Function'
'Personnel Area '
'PSA'
'Org. Unit'
'Cost Center'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
'Supervisor'
'Last Name'
'First Name'
'Position'
into v_filerecord
separated by CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB.
transfer v_filerecord to v_file. "Writing to file
clear v_filerecord.
loop at IT_PA0001.
do.
if count eq 0.
read table i_hr with key pernr = IT_PA0001-pernr.
concatenate i_hr-pernr
i_hr-nachn
i_hr-vorna
i_hr-plans
i_hr-div_text
i_hr-kztim
i_hr-stext
i_hr-werks
i_hr-btrtl
i_hr-orgeh
i_hr-kostl
into v_filerecord
separated by CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB.
mstbr = i_hr-mstbr.
count = count + 1.
else.
read table i_hr with key pernr = mstbr.
concatenate v_filerecord
i_hr-pernr
i_hr-nachn
i_hr-vorna
i_hr-plans
into f_filerecord
separated by CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB.
v_filerecord = f_filerecord.
mstbr = i_hr-mstbr.
clear i_hr.
endif.
if mstbr eq space.
exit.
endif.
enddo.
transfer v_filerecord to v_file. "Writing to file
clear: v_filerecord, f_filerecord, count.
endloop.
CLOSE DATASET v_file.
ENDFORM. " write_file
Edited by: Surender Batlanki on Feb 20, 2008 7:50 AM
Edited by: Surender Batlanki on Feb 20, 2008 7:59 AM
Edited by: Surender Batlanki on Feb 20, 2008 8:12 AM
Edited by: Surender Batlanki on Feb 20, 2008 3:16 PM
Edited by: Alvaro Tejada Galindo on Feb 20, 2008 9:26 AMHi Surender,
In the Perform GET_SUPER, you are getting manager's OBJID. Use this OBJID and from PA0001 get Manger's name.
While passing data to output table, filter that table by Manager's name and then pass output table for display.
Hope this helps u.
<REMOVED BY MODERATOR>
Regards,
Preeti
Edited by: Alvaro Tejada Galindo on Feb 20, 2008 9:26 AM -
To run a report in background in selection screen using a new button
hi friends iam new member to this site
nice to meet u all
i want to run a report in background using the selection screen of the same report and i want to keep a button in application tool bar.
after enter the values in the selection screen by clicking that button it should move to the screen which we get generally by menu option
program-->execute in background
and by entering the output device and start condition it should be scheduled in the background.
with job_open,job_submit and job_close we need variants.
for this i tried through bp_jobvariant_schedule and
bp_jobvariant_overview but with this we can run with variants only
but the user wants to enter the values in selection screen and need a button to run background
ok friends i think u understood me
please inform soon ok bye have a nice timeHi Jagadish
There are two ways for you to handle the situation.
1. Train the users to enter the values in selection screen and manually go for backgroung scheduling.
2. Use At user command and within that basing on the option selection selected, use FM:JOB_OPEN with sy-repid get the job number, submit the program with the values on the selection screen and lastly executing FM: JOB_CLOSE with the job number from JOB_OPEN and SY-REPID.
Note that you have to set 'X' for export parameter something like startimmed while calling FM: JOB_CLOSE for immediate execution. Am not on SAP to give you the exact parameter.
Hope the above info helps you.
Kind Regards
Eswar -
Input help required for parameter on the selection screen
hi all,
i have created two parameters on the selection screen.
1. deptno
2.empname
so my requirement is if i input any deptno then i should get all
the empname corresponding to that deptno in the parameter empname
ie for deptno 10 there should be f4 help for empname.
here i am pasting my code plz check where i am doing wrong--
*& Report ZTEST10
*& Developer
*& Date: &DATE
REPORT ZTEST10.
tables: zemployee1.
parameters: p_deptno like zemployee1-deptno,
p_empnam like zemployee1-empname.
Data: begin of itab occurs 0,
deptno like zemployee1-deptno,
empname like zemployee1-empname,
empno like zemployee1-empno,
end of itab.
At selection-screen on value-request for p_empnam.
select empname
from zemployee1
into corresponding fields of table itab
where deptno = p_deptno.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
retfield = 'empname'
PVALKEY = ' '
DYNPPROG = sy-repid
DYNPNR = sy-dynnr
DYNPROFIELD = 'p_empnam'
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'C'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
tables
value_tab = itab
FIELD_TAB =
RETURN_TAB =
DYNPFLD_MAPPING =
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
I will award ur efforts.
Thanks
sanjeevHi Sanjeev,
If you input any deptno and you should get all the empname corresponding then first you need to use CALL FUNCTION 'DYNP_VALUES_READ'.
EXPORTING
DYNAME = sy-repid
DYNUMB = sy-dynnr
TRANSLATE_TO_UPPER = ' '
REQUEST = 'A'
PERFORM_CONVERSION_EXITS = ' '
PERFORM_INPUT_CONVERSION = ' '
DETERMINE_LOOP_INDEX = ' '
TABLES
DYNPFIELDS = gt_dynp
declare: DATA : gt_dynp LIKE dynpread OCCURS 0.
loop at gt_dynp into wt_dynp where fieldname = 'P_SUPRID-LOW'.
lv_low = wt_dynp-fieldvalue.
endloop.
Then while selecting use this p_superid-low instead of p_deptno.
Then :
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
After this funtion module:
write:
IF sy-subrc = 0.
READ TABLE itab
INDEX 1.
'p_empnam' = return_tab-fieldval.
Declare return_tab as:
DATA: return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.
Thanks,
Shweta
ENDIF. -
How to maximise the length of the Parameter text on Selection screen
Hello,
I am putting the text in the selection screen for a Parameter.
Its text is long and it is not letting me to put the whole text in Text Symbol.
In the report
When I click on GOto--> Text Elements --> Selection Texts
I am sure there is a way we can maximise this...
ANy suggestions will be apprecaiated.
Regards,
KittuHello,
Thank you for all your response!
Here is my code :
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
PARAMETERS : BOTH RADIOBUTTON GROUP RG1,
EXICLASS RADIOBUTTON GROUP RG1.
SELECTION-SCREEN END OF BLOCK B2.
Here for Both, I need to add the selction text as 'BOTH Existing and Non-existing Classifications'
This is a parameter, can any body explain me how to do it with the Parameters.
Any suggestions will be appreciated.......
Regards,
Kittu -
Ho to disabled the parameter on the selection screen
Hi all,
I have a parameter (p_matnr) and two radiobutton b1 and b2 on the selection screen. Now what the requirement is if user selects radio button b2, the parameter should get disabled. I know it can be done by <b>loop at screen</b> and then modifying the screen but in this case start-of-seection is to be called. In my case as the user selects the radio button b2 the parameter should be appear disabled. the code which is given below will work in that case where user selects the b2 and then press F8. Bu i don't want the user to pres F8. He will only select the b2 and will find the parameter (p_matnr) disabled.
Please suggest something.
AT SELECTION-SCREEN outpu.
IF b2 = 'X'.
LOOP AT SCREEN.
IF screen-name cs 'p1' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
Thanks,
Annup.Hi,
Try this i have used this in my code
SELECTION-SCREEN BEGIN OF BLOCK b_0 WITH FRAME TITLE text-002.
SELECTION-SCREEN BEGIN OF BLOCK b_1 WITH FRAME TITLE text-000.
PARAMETERS: rb_img RADIOBUTTON GROUP rad1 user-command rad.
PARAMETERS: rb_invo RADIOBUTTON GROUP rad1.
SELECTION-SCREEN BEGIN OF BLOCK b_2 WITH FRAME TITLE text-001.
*PARAMETERS: rb_img RADIOBUTTON GROUP rad1.
PARAMETERS: p_from like bkpf-bldat modif id gr2,
p_to like bkpf-bldat modif id gr2.
SELECT-OPTIONS: s_arobj FOR toa01-ar_object modif id gr2.
SELECTION-SCREEN END OF BLOCK b_2.
SELECTION-SCREEN BEGIN OF BLOCK b_3 WITH FRAME TITLE text-001.
*PARAMETERS: rb_invo RADIOBUTTON GROUP rad1.
SELECT-OPTIONS: s_bukrs FOR bkpf-bukrs modif id gr1,
s_belnr FOR bkpf-belnr modif id gr1,
s_gjahr FOR bkpf-gjahr modif id gr1,
SELECTION-SCREEN END OF BLOCK b_3.
SELECTION-SCREEN END OF BLOCK b_0.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'GR1'. "Name field
IF rb_invo = space.
screen-active = 0.
ELSE.
screen-active = 1.
ENDIF.
MODIFY SCREEN.
ELSEIF screen-group1 = 'GR2'.
IF rb_invo = c_x.
screen-active = 0.
ELSE.
screen-active = 1.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
START-OF-SELECTION.
Thanks & Regards,
Judith. -
Report writer Authorization on selection screen
Hi All,
In transaction GR55 (to execute the report group), when the user enters the selection criteria for the report group, I want to validate the
'Profit Center group' and 'Profit center values' fields. The way it should be validated is, it should check the entry for the 'profit center group' or 'values' entered against the 'user name' in a Ztable for that user. If there is no entry in the Ztable matching that 'User name' and 'profit center group or values' , it should give an error message. I have seen that there is a user exit 'EXIT_SAPFGRWX_001' (Authorization check on initial screen).
But my problem is, in this functional module (code is shown below), the table 'I_T_SELSCREEN_PARAMS' has only one filed for both 'Profit center Group' and 'profit center values'.
1. when I enter 'Profit center group' 'ABC' in my selection criteria, I_T_SELSCREEN_PARAMS has following values.
I_T_SELSCREEN_PARAMS - selname = '%8A-PCHI'.
I_T_SELSCREEN_PARAMS-low = '01061000ABC'.
2. When I enter 'Profit Center Values' as some '3001000' to '3001020' inn the selection criteria, I_T_SELSCREEN_PARAMS has following fields,
I_T_SELSCREEN_PARAMS-selname = '%8A-PCHI'
I_T_SELSCREEN_PARAMS-low = '0002$ZSLP&8A-PCHI'.
here ZSLP is the report group name.
I don't understand how to get the values '3001000' to '30001020' into my user-exit in case 2.
Is there any other way of doing this? has anyone used this user-exit? Please help me.
Thanks,
Krishna
FUNCTION EXIT_SAPFGRWX_001.Hi Krishnakumar Ramadoss,
For your requirement to have authorization, SAP provides facility in report writer/painter to give authorization groups.
Go to GR52.
Input your report group name.
Click on Header (Cap symbol) or F5.
At this header screen , you can see a field where you can provide Authorization group.
Try this. It may help you.
As a note:
Report writer / Report painter reports are reports which are created with zero percent coding.
The SAP generated program (E.g: GP3ICYT39FHJLOYBA2025DBAE1V213) cannot be changed or modified.
The only coding that you can do in a report writer are the formula's and logic that you can write in variables of the report writer / painter.
Regards,
Subin John
Maybe you are looking for
-
Reports 9i - Printing Error on older version files
I run a report made in Reports 3.0. When opened in 9i it runs on screen correctly but I can't print the results. Plus, when running the option for HTML the reults is a blank screen in the browser. Should I convert it first to 6i? Error message is nex
-
IPod wont be recognized on windows
I am helping a Friend out that doesn't own a computer and trying to add music to his ipod classic. I had to buy a new adapter for it to hook up to the computer b/c he only had charger hook-ups, the adapter I got is a GigaWare but doesn't seem to be r
-
Upload photo to photo library problem
Hi, i have problem with uploading photo from PC via browser to photo library. Photo was taken by iphone and has in EXIF information taht was taken at 10:21 am but after uploading it show on web gallery that it was taken at 19:21. In settings i found
-
Indesign CS5 crashes when I want to print
Urgent help needed. Mac OSX 10.5.8, intel core 2 duo. Upgraded to Indesign CS5, can open project but cannot print. Once I save document and choose print, I get spinning balloon and Cs5 crashes. If it helps,print presets, define, I cannot add, change
-
How do i down grade my ipod touch 4g From a 4.3.5 to a 4.3.3