How to highlight rows in the following code.
Hi,
I am using the following logic to display 2 lists at a time.
I want to highlight the last 2 rows of both the lists that I am displaying.how to do it.
Kindly help.
TYPE-POOLS : slis.
TABLES : mara,
makt.
SELECT-OPTIONS : mat FOR mara-matnr.
DATA : BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
matkl LIKE mara-matkl,
mtart LIKE mara-mtart,
END OF itab.
DATA : BEGIN OF itab1 OCCURS 0,
mtart LIKE mara-mtart,
count TYPE i,
END OF itab1.
DATA : BEGIN OF itab1_col OCCURS 0,
mtart LIKE mara-mtart,
count TYPE i,
END OF itab1_col.
DATA : t_fcat1 TYPE slis_t_fieldcat_alv,
t_fcat2 TYPE slis_t_fieldcat_alv,
wa_fcat TYPE slis_fieldcat_alv,
t_eve TYPE slis_t_event,
wa_eve TYPE slis_alv_event,
t_layout TYPE slis_layout_alv.
DATA : v_repid LIKE sy-repid,
t_mat LIKE mara-matnr.
DEFINE create_fcat.
clear wa_fcat.
wa_fcat-fieldname = &1.
wa_fcat-seltext_l = &2.
wa_fcat-outputlen = &3.
append wa_fcat to t_fcat1.
END-OF-DEFINITION.
START-OF-SELECTION.
PERFORM get_data.
PERFORM dis_data.
*& Form get_data
text
FORM get_data.
SELECT amatnr bmaktx amtart amatkl INTO CORRESPONDING FIELDS OF TABLE itab
FROM mara AS a INNER JOIN makt AS b ON
amatnr = bmatnr
WHERE a~matnr IN mat.
LOOP AT itab.
itab1-mtart = itab-mtart.
itab1-count = 1.
APPEND itab1.
ENDLOOP.
SORT itab1 BY mtart.
LOOP AT itab1.
MOVE-CORRESPONDING itab1 TO itab1_col.
COLLECT itab1_col.
ENDLOOP.
ENDFORM. "get_data
*& Form dis_data
text
FORM dis_data.
v_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
i_callback_program = v_repid.
REFRESH t_fcat1.
CLEAR t_fcat1.
REFRESH t_eve.
wa_eve-name = 'TOP_OF_PAGE'.
wa_eve-form = 'TOP_OF_PAGE1'.
APPEND wa_eve TO t_eve.
create_fcat:
'MATNR' 'Material' '10',
'MAKTX' 'Material Description' '40',
'MTART' 'Type' '10',
'MATKL' 'Group' '10'.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = t_layout
it_fieldcat = t_fcat1
i_tabname = 'ITAB'
it_events = t_eve
TABLES
t_outtab = itab.
REFRESH t_fcat1.
CLEAR t_fcat1.
REFRESH t_eve.
wa_eve-name = 'TOP_OF_PAGE'.
wa_eve-form = 'TOP_OF_PAGE2'.
APPEND wa_eve TO t_eve.
create_fcat:
'MTART' 'Type' '10',
'COUNT' 'Total' '5'.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = t_layout
it_fieldcat = t_fcat1
i_tabname = 'ITAB1_COL'
it_events = t_eve
TABLES
t_outtab = itab1_col.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'.
ENDFORM. "dis_data
*& Form top_of_page1
text
FORM top_of_page1.
FORMAT COLOR COL_POSITIVE.
WRITE:/ 'First Block'.
FORMAT COLOR OFF.
ENDFORM. "top_of_page
*& Form top_of_page2
text
FORM top_of_page2.
FORMAT COLOR COL_NEGATIVE.
WRITE /5 'Second Block'.
FORMAT COLOR OFF.
ENDFORM. "top_of_page
Hi Renu,
U Can use this FORM
FORM TOP_OF_PAGE.
FORMAT FRAMES ON INTENSIFIED ON COLOR = 7.
WRITE : / 'SOURCE SYSTEM INFORMATION'.
FORMAT FRAMES OFF INTENSIFIED OFF COLOR OFF.
FORMAT FRAMES ON INTENSIFIED ON COLOR = 2.
WRITE : / 'User Name : ', sy-uname.
WRITE : / 'System ID : ', sy-sysid.
WRITE : / 'Client : ', sy-mandt.
WRITE : / 'System Date: ', sy-datum.
WRITE : / 'System Time: ', sy-uzeit.
FORMAT FRAMES OFF INTENSIFIED OFF COLOR OFF.
ENDFORM. "TOP_OF_PAGE
U can make changes accordingly
Rohit G
Similar Messages
-
How to display rectangles with the following code in a JPanel?
I am trying to make a bunch of random rectangles appear inside a JPanel on a GUI form. Im not sire how to display the form and panel with random rectangles. I have in my package the MyRectangle class, a blank JForm class called RectGUI and the class for the panel RectGUIPanel. The following code is from my panel and it should create random rectangles okay but how do I display them inside of a Panel on my RectGUI form? Thanks for the assistance.
//Declare variables
private int x;
private int y;
private int width;
private int height;
private Color color;
Random rand = new Random();
public class RectanglePanel extends JPanel
public void displayRectangles()
// Declare an arraylist of MyRectangles
ArrayList<MyRectangle> myArray = new ArrayList<MyRectangle>();
int maxNumber = 300;
// Declare Frame and Panel
JFrame frame = new JFrame();
Container pane = frame.getContentPane();
RectanglePanel rect = new RectanglePanel();
// Set Frame attributes
frame.setSize(700, 500);
frame.setLocation(100,100);
frame.setAlwaysOnTop(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle(" Rectangle Program");
frame.setVisible(true);
for (int i = 0; i < maxNumber; i++)
MyRectangle rec = createRandomRec();
myArray.add(rec);
rect.repaint();
public MyRectangle createRandomRec()
x = rand.nextInt();
y = rand.nextInt();
width = rand.nextInt();
height = rand.nextInt();
color = new Color(rand.nextInt(256), rand.nextInt(256), rand.nextInt(256));
return new MyRectangle(x, y , width, height, color);
}I am trying to make a bunch of random rectangles appear inside a JPanel on a GUI form. Im not sire how to display the form and panel with random rectangles. I have in my package the MyRectangle class, a blank JForm class called RectGUI and the class for the panel RectGUIPanel. The following code is from my panel and it should create random rectangles okay but how do I display them inside of a Panel on my RectGUI form? Thanks for the assistance.
//Declare variables
private int x;
private int y;
private int width;
private int height;
private Color color;
Random rand = new Random();
public class RectanglePanel extends JPanel
public void displayRectangles()
// Declare an arraylist of MyRectangles
ArrayList<MyRectangle> myArray = new ArrayList<MyRectangle>();
int maxNumber = 300;
// Declare Frame and Panel
JFrame frame = new JFrame();
Container pane = frame.getContentPane();
RectanglePanel rect = new RectanglePanel();
// Set Frame attributes
frame.setSize(700, 500);
frame.setLocation(100,100);
frame.setAlwaysOnTop(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle(" Rectangle Program");
frame.setVisible(true);
for (int i = 0; i < maxNumber; i++)
MyRectangle rec = createRandomRec();
myArray.add(rec);
rect.repaint();
public MyRectangle createRandomRec()
x = rand.nextInt();
y = rand.nextInt();
width = rand.nextInt();
height = rand.nextInt();
color = new Color(rand.nextInt(256), rand.nextInt(256), rand.nextInt(256));
return new MyRectangle(x, y , width, height, color);
} -
How to interrupt an funtion call and continue the followed code?
for example, the code:
public class A{
public static void main(String[] args){
int i = 0;
method1();
system.out.println("exit");
public void method1(){
int j = 0;
while(true){
j +=1;
there is a error in method1(), so the call the method1( ) in main() will make an error.
how can i interrupt this funtion call and continue the followed code?in actually, I can not control the method1(), that's
an remote object function.
So I can not add exception in methoes().Then in your main method catch whatever "Error" your method1 is throwing. -
How to select rows in the inner JTable rendered in an outer JTable cell
I have wrriten the following code for creating cell specific renderer - JTable rendered in a cell of a JTable.
table=new JTable(data,columnNames)
public TableCellRenderer getCellRenderer(int row, int column)
if ((row == 0) && (column == 0))
return new ColorRenderer();
else if((row == 1) && (column == 0))
return new ColorRenderer1();
else
return super.getCellRenderer(row, column);
ColorRenderer and ColorRenderer1 are two inner classes, which implement TableCellRenderer to draw inner JTable on the outer JTable cell, having 2 rows and 1 column each.
Now what is happening the above code keeps executing continously, that is the classes are being initialised continously, inner JTables are rendered (drawn) continously, and this makes the application slow after some time. It throws java.lang.OutOfMemoryException.
WHY IS IT SO??? I can't understand where's the bug..
Any advice please???
Moreover i want selections in inner tables and not on outer table, how can this be possible.
I am working on this since a long time but have not yet found a way out...With your help i have overcome the problem of continous repeatition.
The major problem which I am facing is, in selecting rows in the inner rendered JTables.
I have added listener on outer JTable which select rows on the outer JTable, hence the complete inner JTable which being treated as a row, gets selected.
The thing is i need to select the rows of inner rendered JTables,not the outer JTable.
How to go about it??
I have even added listener to inner rendered JTables, but only first row of every table gets selected.
Please help....
Thanks in advance. -
How to highlight text in the iCloud web app
Hi,
My computer recently broke so I had to use my mom's windows computer to do my homework. I had to use the iCloud web app Pages to do my homework. My assignment requires to be able to highlight stuff so does anyone know how to highlight text in the iCloud web apps?You can do this easily by using a "modify class" parameter in your web template.
Following methods are of your interest to change char/KF headers.
CAPTION_CELL changes formats/values of characteristic headers
STRUCTURE_CELL changes formats/values of key figure headers
Hope it helps.
Hari Immadi
http://immadi.com
SEM BW Analyst -
Do we need to put the following code in the web-xml for the project to run
Hi^^^,
actually I have created a project in Eclipse WTP and I am running it from remote server. Its giving me 404 error when I tried to run it.
I know 404 error is generally due to some error in deployment descriptor.
I am going through this tutorial for creating project in eclipse WTP
this says that I need to include the following code in web-xml. Please look at the quotes below
"Web modules in J2EE has a deployment descriptor where you configure the web application and its components. This deployment descriptors is called the web.xml. According to the J2EE specification, it must be located in the WEB-INF folder. web.xml must have definitions for the Servlet and the Servlet URI mapping. Enter the following lines into web.xml:"
"Listing 2. Deployment Descriptor web.xml"
<servlet>
<servlet-name>Snoop Servlet</servlet-name>
<servlet-class>org.eclipse.wtp.tutorial.SnoopServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Snoop Servlet</servlet-name>
<url-pattern>/snoop/*</url-pattern>
</servlet-mapping>
My question is, it is necessary to include the above lines between <servlet> and </servlet-mapping> in web-xml
thanks and regards,
Prashantpksingh79 wrote:
actually I have created a project in Eclipse WTP and I am running it from remote server. Its giving me 404 error when I tried to run it.
I know 404 error is generally due to some error in deployment descriptor. what's the url you've put.
<servlet>
<servlet-name>Snoop Servlet</servlet-name>
<servlet-class>org.eclipse.wtp.tutorial.SnoopServlet</servlet-class>
</servlet> Every Servlet has to have a <servlet></Servlet> tag in the web.xml
the <servlet-name>is for the naming the servlet and the <servlet-calss>is for class file of the servlet in your case the .class file is to be in the package of tutorial,if it's not then how the container will no where the calss file is
<servlet-mapping>
<servlet-name>Snoop Servlet</servlet-name>
<url-pattern>/snoop/*</url-pattern>
</servlet-mapping>You type something in your url likk http://localhost:8080/webappname (Tomcat server),so for url mapping instead of typing the entire class file name ,you just enough have to type what you've put in the <url-mapping> tag and it has to be inside of <servlet-mapping>
I think the problem is in <url-pattern> change it like /snoop<url-pattern>
My question is, it is necessary to include the above lines between <servlet> and ></servlet->mapping> in web.xmlSo now you think whether you need something inside <servlet>and </servlet-mapping> -
In Report Builder 3.0, I have the following custom code entered:
Public Function SafeDivide(Numerator as String, Denominator as String) as String
Try
If Numerator = “” or Denominator = “” then
Return “-“
End if
If Numerator = “-“ or Denominator = “-“ then
Return “-“
End If
If CDbl(Numerator) =0 or CDbl(Denominator) = 0 then
Return “-“
End if
If IsNothing(Numerator) or IsNothing(Denominator) then
Return "-"
End if
Return Val( ( (CDbl(Numerator) / CDbl(Denominator) )*100 ) )
Catch
Return "-"
End Try
End Function
I call the custom code in the cell with the following equation:
=Code.SafeDivide(sum(Fields!TY_UNITS.Value)-sum(Fields!LY_UNITS.Value),sum(Fields!LY_UNITS.Value))
I have the format for the cell set to 0.00%, but it’s not being followed.
I want the result to be formatted as a Percentage, but instead I get values like:
-78.9473684210
80
300
-100
I have the format for the cell set to 0.00%, but it’s not being followed.
How do I do use the custom code and format for a percentage with 2 decimals?Hi AngP,
After testing the issue in my local environment, I can reproduce it. Based on my research, I find this issue is caused by the type of Units_VAR_Percentage cell is string, while the type of CDbl(Parameters!Var_Threshold.Value) is double, so they cannot be
compared.
To fix this issue, we can add a hidden column (Textbox91) next to the Units_VAR_Percentage column, and type =(sum(Fields!TY_UNITS.Value)-sum(Fields!LY_UNITS.Value)) /sum(Fields!LY_UNITS.Value) as the expression. Then use the expression below to control the
BackgroundColor:
=iif(iif(reportitems!Units_VAR_Percentage.Value=CStr(format(reportitems!Textbox91.Value,"0.00%")),reportitems!Textbox91.Value,0)>CDbl(Parameters!Var_Threshold.Value),"Yellow","PaleTurquoise")
If there are any other questions, please feel free to ask.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
Need help with the following code (Want an input popup with numeric pad)
Hello,
I put the following code in an event :
import javax.swing.JOptionPane;
value = javax.swing.JOptionPane.showInputDialog("Price", "");
try {
Double newPrice = new Double(value);
line.setPriceTax(newPrice);
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(null, "Not valid number: " + value, "Error", JOptionPane.PLAIN_MESSAGE);
But this only gives an input popup screen and then i have to use a keyboard instead of my touchscreen to give the input,
i would rather like it to be a popup input screen with a numeric pad attached.
Is this possible, and how??
Thanks in advance.
Jeroenhii,
set321go wrote
make your own. Create a custom OptionPane and add --->
// global def.
private final JLabel amountLabel = new JLabel(" Input Trades Amount : ");
private JFormattedTextField amountTextField;
private double amount = 0.00;
private NumberFormat amountFormat;
// in panel class add --->
amountFormat = NumberFormat.getNumberInstance();
amountFormat.setMinimumFractionDigits(2);
amountFormat.setMaximumFractionDigits(2);
amountFormat.setRoundingMode(RoundingMode.HALF_EVEN);
amountLabel.setFont(new Font("Serif", Font.BOLD, 16));
amountLabel.setForeground(KopikSalesTest.textColor);
amounTextField = new JFormattedTextField(amountFormat);
amountTextField.setValue(0.00);
amountTextField.setFont(new Font("Serif", Font.BOLD, 20));
amountTextField.setForeground(Color.someColor);
amountTextField.setBackground(Color.someColor);
amountTextField.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
amountTextField.requestFocus();
amountTextField.setText(amountTextField.getText());
amountTextField.selectAll();
public void focusLost(FocusEvent e) {
//on exit
somePanel.add(amountLabel);
somePanel.add(amountTextField); ... kopik -
Need explanation of the following code
HI All,
I need your help on explanation of the following code :
what I don't understand is how it route the request (all the benefit of the replace statement )
If the input is /scarr/LH/SPFLI/402
how he know to route it and
what is the benefit for using the wild card and the concatenate CONCATENATE '^' lv_verif_pattern '$'
Edited by: James Herb on Apr 13, 2010 9:53 AM
Edited by: James Herb on Apr 13, 2010 9:53 AMDATA: lt_routing_tab TYPE z_resource_routing_tab,
CONSTANTS: param_wildcard TYPE string VALUE '([^/])*'.
FIELD-SYMBOLS: <ls_routing> LIKE LINE OF lt_routing_tab.
CALL METHOD get_routing
RECEIVING
rt_routing_tab = lt_routing_tab.
LOOP AT lt_routing_tab ASSIGNING <ls_routing>.
* replace all parameters placeholders by regex
lv_verif_pattern = <ls_routing>-url_info.
lv_signature = <ls_routing>-url_info.
REPLACE ALL OCCURRENCES OF REGEX '\{([A-Z]*[_]*[a-z]*[0-9]*)*\}'
IN lv_verif_pattern WITH param_wildcard.
CONCATENATE '^' lv_verif_pattern '$' INTO lv_verif_pattern.
* check if pattern matches current entry
FIND ALL OCCURRENCES OF REGEX lv_verif_pattern
IN url_info MATCH COUNT lv_count.
* pattern matched
IF lv_count > 0.
* get controller class name
lv_controller_name = <ls_routing>-handler_class.
ls_class-clsname = lv_controller_name.
* check if class exists
* class found
IF sy-subrc = 0.
* create controller
CREATE OBJECT eo_controller TYPE (lv_controller_name).
* create parameter table
SHIFT lv_verif_pattern RIGHT DELETING TRAILING '$'.
SHIFT lv_verif_pattern LEFT DELETING LEADING ' ^'.
SPLIT lv_verif_pattern AT param_wildcard INTO TABLE lt_url_parts.
lv_url_info = url_info.
LOOP AT lt_url_parts INTO lv_url_part.
SHIFT lv_signature LEFT DELETING LEADING lv_url_part.
SHIFT lv_signature LEFT DELETING LEADING '{'.
SHIFT lv_url_info LEFT DELETING LEADING lv_url_part.
Edited by: James Herb on Apr 13, 2010 9:56 AM -
How to read and save the following XML-Doc?
Hi all,
I have a XML-Document:
<root>
<employees>
<emp1>
<ename>Test1</ename>
<empno>1</empno>
<sal/>
<ord>
<item>1</item>
</ord>
</emp1>
<emp2>
<ename>Test2</ename>
<empno>2</empno>
<sal>1000</sal>
<comm>200</comm>
<ord>
<item>3</item>
</ord>
</emp2>
</employees>
</root>
This should I save in the databse table:
CREATE TABLE XML_DOC
ID NUMBER(38),
FATHERTAG NUMBER(38),
TAGNAME VARCHAR2(250),
TAGCONT VARCHAR2(4000)
And tha data should be saved in the following format:
=======================================
| ID | FATHERTAG | TAGNAME | TAGCONT|
| 1 | | root | |
| 2 | 1 | EMPLOYEES | |
| 3 | 2 | EMP1 | |
| 4 | 3 | ENAME | Test1 |
| 5 | 3 | EMPNO | 1 |
| 6 | 3 | SAL | |
| 7 | 3 | ORD | |
| 8 | 7 | ITEM | 1 |
| 9 | 2 | EMP2 | |
Has anyone any Idea how to realize it?
RegardsLeonid,
Why don't you just store the xml document in the database as an xmltype? You could then build a view over the object-relational table to pull the data out into the format you want.
The following code Example is from one of my favorite DBA's Johnathan Gennick and can be found at this link.
http://www.oracle.com/technology/oramag/oracle/03-jan/o13xml.html
CREATE VIEW cd_master (Title, Artist, Website, Description) AS
SELECT extractValue(value(x),'/CD/Title'),
extractValue(value(x),'/CD/Artist'),
extractValue(value(x),'/CD/Website'),
extractValue(value(x),'/CD/Description')
FROM CD331_TAB x; -
Pls help me in write a join for the following code.
can any one give me optimized code for the posted query..
DATA :BEGIN OF BAPITABLE OCCURS 1,
EDITELEM LIKE TOJTB-EDITELEM,
FUNCTION LIKE SBAPIS-FUNCTION,
SHORTTEXT LIKE TFTIT-STEXT,
END OF BAPITABLE.
SELECT EDITELEM INTO (BAPITABLE-EDITELEM)
FROM TOJTB
WHERE APPLIC = APPLICATIONCODE
AND MODELONLY = 'R'
and ACTIVE = 'X'.
SELECT FUNCTION INTO (BAPITABLE-FUNCTION)
FROM SBAPIS
WHERE OBJECT = JEDITELEM.
SELECT STEXT INTO (BAPITABLE-SHORTTEXT)
FROM TFTIT
WHERE SPRAS = 'EN' AND FUNCNAME = BAPITABLE-FUNCTION.
APPEND BAPITABLE.
ENDSELECT.
ENDSELECT.
ENDSELECT.
waiting for ur replies....
RESHALIHi
i'm giving you a sample code please change according to your requiirement.
I've taken required fields from 3 different tables and put them in one internal table.
please see the following code.
types : begin of ty_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
vbeln type vbap-vbeln,
erdat type vbak-erdat,
end of ty_kna1.
data : it_kna1 type table of ty_kna1,
wa_kna1 type ty_kna1.
data : it_fieldcat type slis_t_fieldcat_alv,
wa_fieldcat type slis_fieldcat_alv.
start-of-selection.
select kkunnr kname1 v1erdat v2vbeln
into corresponding fields of table it_kna1
from ( ( kna1 as k
inner join vbak as v1 on kkunnr = v1kunnr )
inner join vbap as v2 on v1vbeln = v2vbeln )
up to 100 rows.
Reward if helpful
Regards
Lakshman -
Need help in modifing the following code to display required output
Hi this is the code which i am going to displayoutput here i used FM VRM_SET_VALUES for getting dropdown box when i used it my output race field is not getting any values and blank space is getting displayed
what i want is just i need to display the output according to the selection screen
and the other fields in the selection screen except 'p_gender' are also giving problem when i am keeping where condition to link selection screen
can any one please help me in getting the required output according to selection by modifing the following code
TABLES: pernr,t5u13,cskt , t001p,t500p, t501t,t503t,t513s,t527x,t529t,t530t, t5uaa.
TYPE-POOLS: slis, vrm.
INFOTYPES: 0000, "Actions
0001, "Org Assignment
0002, "Personal Data
0006, "Address
0008, "Basic Pay
0041, "Date Specifications
0077. "Additional Personal Data
CONSTANTS: gc_x TYPE c VALUE 'X',
g_w(1) TYPE c VALUE 'W',
g_h(1) TYPE c VALUE 'H',
g_af(2) TYPE c VALUE 'AF',
g_ai(2) TYPE c VALUE 'AI',
g_01(2) TYPE c VALUE 'R1',
g_02(2) TYPE c VALUE 'R2',
g_03(2) TYPE c VALUE 'R3',
g_05(2) TYPE c VALUE 'R5'.
TYPES : BEGIN OF t_roster,
pernr TYPE p0001-pernr,
ssn TYPE p0002-perid,
first_name TYPE p0002-vorna,
last_name TYPE p0002-nachn,
city TYPE t500p-ort01,
state TYPE t500p-regio,
zipcode TYPE t500p-pstlz,
hire_date(10) TYPE c,
lhire_date(10) TYPE c,
serv_date(10) TYPE c,
eg TYPE p0001-persg,
eg_desc TYPE t501t-ptext,
esg TYPE p0001-persk,
esg_desc TYPE t503t-ptext,
race TYPE p0077-rac01,
*** TYPE p0002-gesch,
job_grade TYPE p0008-trfgr,
job_level TYPE p0008-trfst,
grade_entry_date(10) TYPE c,
job_title TYPE p0001-plans,
title(30) TYPE c,
job_code TYPE p0001-stell,
job_code_desc TYPE t513s-stltx,
job_entry_date(10) TYPE c,
annual_sal TYPE p0008-ansal,
hrly_rate TYPE p0008-bet01,
org_unit TYPE p0001-orgeh,
orgtx(40) TYPE c,
cost_cntr TYPE p0001-kostl,
ltext(40) TYPE c,
personal_area TYPE p0001-werks,
personal_area_desc TYPE t500p-name1,
supervisor(30) TYPE c,
flsa TYPE t5u13-exmpt,
ee01 TYPE t5u13-eeoct,
job_grp TYPE p0001-stell,
aap_code TYPE t5u13-aapct,
aap_code_desc TYPE t5uaa-ltext,
dob TYPE p0002-gbdat,
psa TYPE p0001-btrtl,
psa_desc TYPE t001p-btext,
unionl TYPE p0001-btrtl,
unionc TYPE p0001-btrtl,
END OF t_roster.
DATA : gi_roster TYPE STANDARD TABLE OF t_roster, gi_objec TYPE STANDARD TABLE OF objec,
gi_hrp1000 TYPE STANDARD TABLE OF hrp1000,
gi_cskt TYPE STANDARD TABLE OF cskt,
gi_t001p TYPE STANDARD TABLE OF t001p,
gi_t500p TYPE STANDARD TABLE OF t500p,
gi_t501t TYPE STANDARD TABLE OF t501t,
gi_t503t TYPE STANDARD TABLE OF t503t,
gi_t513s TYPE STANDARD TABLE OF t513s,
gi_t527x TYPE STANDARD TABLE OF t527x,
gi_t529t TYPE STANDARD TABLE OF t529t,
gi_t530t TYPE STANDARD TABLE OF t530t,
gi_t5u13 TYPE STANDARD TABLE OF t5u13,
gi_t5uaa TYPE STANDARD TABLE OF t5uaa.
DATA : gs_roster TYPE t_roster,
gs_objec TYPE objec,
gs_hrp1000 TYPE hrp1000,
gs_cskt TYPE cskt,
gs_t001p TYPE t001p,
gs_t500p TYPE t500p,
gs_t501t TYPE t501t,
gs_t503t TYPE t503t,
gs_t513s TYPE t513s,
gs_t527x TYPE t527x,
gs_t529t TYPE t529t,
gs_t530t TYPE t530t,
gs_t5u13 TYPE t5u13,
gs_t5uaa TYPE t5uaa.
DATA : gv_ltext(40) TYPE c,
gv_ltext1(40) TYPE c,
gv_age(3) TYPE c,
gv_butxt(40) TYPE c,
gv_eeoc(10) TYPE c,
gv_prevdate TYPE datum.
DATA: gi_fieldcat TYPE slis_t_fieldcat_alv,
gs_fieldcat TYPE slis_fieldcat_alv,
i_top_of_page TYPE slis_t_listheader,
g_repid TYPE sy-repid,
g_save,
gs_layout TYPE slis_layout_alv,
gt_events TYPE slis_t_event,
gs_variant LIKE disvariant,
gi_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
DATA: name TYPE vrm_id,
list TYPE vrm_values,
value LIKE LINE OF list.
SELECTION-SCREEN BEGIN OF BLOCK b1
WITH FRAME TITLE text-x02.
PARAMETERS : p_race(10) AS LISTBOX VISIBLE LENGTH 30,
p_gender TYPE p0002-gesch,
p_eeoc TYPE t5u13-eeoct,
p_aap TYPE t5u13-aapct.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN OUTPUT.
REFRESH list.
name = 'P_RACE'.
value-key = 'R1'.
value-text = 'American Indian or Alaskan Native'.
APPEND value TO list.
CLEAR value.
value-key = 'R2'.
value-text = 'Asian'.
APPEND value TO list.
CLEAR value.
value-key = 'R3'.
value-text = 'Black or African American'.
APPEND value TO list.
CLEAR value.
value-key = 'R5'.
value-text = 'White'.
APPEND value TO list.
CLEAR value.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = name
values = list
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
INITIALIZATION.
g_repid = sy-repid.
PERFORM layout_init USING gs_layout.
PERFORM eventtab_build USING gt_events[].
gs_variant-report = g_repid.
g_save = 'A'.
START-OF-SELECTION.
GET pernr.
PERFORM roster_aap.
END-OF-SELECTION.
PERFORM fetch_roster_text.
PERFORM output_roster_display.
*& Form ROSTER_AAP
text
--> p1 text
<-- p2 text
FORM roster_aap .
PERFORM infty_rost_0001.
PERFORM infty_rost_0002.
PERFORM infty_rost_0008.
PERFORM infty_rost_0041.
PERFORM infty_rost_0077.
PERFORM supervisor_rost.
PERFORM append_rost_recs.
ENDFORM. " ROSTER_AAP
*& Form INFTY_ROST_0001
text
FORM infty_rost_0001 .
rp_provide_from_last p0001 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
gs_roster-pernr = p0001-pernr.
gs_roster-eg = p0001-persg.
READ TABLE gi_t501t INTO gs_t501t WITH KEY persg = p0001-persg.
IF sy-subrc <> 0.
APPEND gs_t501t TO gi_t501t.
CLEAR gs_t501t.
ENDIF.
gs_roster-esg = p0001-persk.
READ TABLE gi_t503t INTO gs_t503t WITH KEY persk = p0001-persk.
IF sy-subrc <> 0.
APPEND gs_t503t TO gi_t503t.
CLEAR gs_t503t.
ENDIF.
gs_roster-job_title = p0001-plans.
READ TABLE gi_hrp1000 INTO gs_hrp1000 WITH KEY objid = p0001-plans.
IF sy-subrc <> 0.
APPEND gs_hrp1000 TO gi_hrp1000.
CLEAR gs_hrp1000.
ENDIF.
gs_roster-job_code = p0001-stell.
READ TABLE gi_t513s INTO gs_t513s WITH KEY stell = p0001-stell.
IF sy-subrc <> 0.
APPEND gs_t513s TO gi_t513s.
CLEAR gs_t513s.
ENDIF.
gs_roster-org_unit = p0001-orgeh.
READ TABLE gi_t527x INTO gs_t527x WITH KEY orgeh = p0001-orgeh.
IF sy-subrc <> 0.
APPEND gs_t527x TO gi_t527x.
CLEAR gs_t527x.
ENDIF.
gs_roster-cost_cntr = p0001-kostl.
READ TABLE gi_cskt INTO gs_cskt WITH KEY kostl = p0001-kostl.
IF sy-subrc <> 0.
APPEND gs_cskt TO gi_cskt.
CLEAR gs_cskt.
ENDIF.
gs_roster-personal_area = p0001-werks.
READ TABLE gi_t500p INTO gs_t500p WITH KEY persa = p0001-werks.
IF sy-subrc <> 0.
APPEND gs_t500p TO gi_t500p.
CLEAR gs_t500p.
ENDIF.
gs_roster-job_grp = p0001-stell.
READ TABLE gi_t5u13 INTO gs_t5u13 WITH KEY stell = p0001-stell.
IF sy-subrc <> 0.
APPEND gs_t5u13 TO gi_t5u13.
CLEAR gs_t5u13.
ENDIF.
READ TABLE gi_t5uaa INTO gs_t5uaa WITH KEY aapct = gs_roster-aap_code.
IF sy-subrc <> 0.
APPEND gs_t5uaa TO gi_t5uaa.
CLEAR gs_t5uaa.
ENDIF.
gs_roster-psa = p0001-btrtl.
READ TABLE gi_t001p INTO gs_t001p WITH KEY btrtl = p0001-btrtl.
IF sy-subrc <> 0.
APPEND gs_t001p TO gi_t001p.
CLEAR gs_t001p.
ENDIF.
gs_roster-unionl = p0001-btrtl.
gs_roster-unionc = p0001-btrtl.
ENDIF.
ENDFORM. " INFTY_ROST_0001
*& Form INFTY_ROST_0002
text
FORM infty_rost_0002 .
rp_provide_from_last p0002 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
IF p_gender IS NOT INITIAL AND p_gender NE p0002-gesch.
REJECT.
ENDIF.
gs_roster-ssn = p0002-perid.
gs_roster-first_name = p0002-vorna.
gs_roster-last_name = p0002-nachn.
gs_roster-*** = p0002-gesch.
gs_roster-dob = p0002-gbdat.
ENDIF.
ENDFORM. " INFTY_ROST_0002
*& Form INFTY_ROST_0008
text
FORM infty_rost_0008 .
DATA: lv_wage TYPE lgart,
lv_amount TYPE pad_amt7s.
rp_provide_from_last p0008 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
gs_roster-annual_sal = p0008-ansal.
DO 40 TIMES VARYING lv_wage FROM p0008-lga01
NEXT p0008-lga02
VARYING lv_amount FROM p0008-bet01
NEXT p0008-bet02.
IF lv_wage = '0101'.
gs_roster-hrly_rate = lv_amount.
EXIT.
ENDIF.
ENDDO.
gs_roster-job_grade = p0008-trfgr.
gs_roster-job_level = p0008-trfst.
ENDIF.
ENDFORM. " INFTY_ROST_0008
*& Form INFTY_ROST_0041
text
FORM infty_rost_0041 .
DATA : l_date TYPE datum,
l_hdate TYPE datum,
l_sdate TYPE datum.
rp_provide_from_last p0041 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
CLEAR : l_date,
l_hdate,
l_sdate.
*--Last Hire Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U1'
P_DATKN =
IMPORTING
p_date = l_date
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_date IS INITIAL.
CONCATENATE
l_date4(2) l_date6(2) l_date+0(4)
INTO gs_roster-hire_date
SEPARATED BY '/'.
ENDIF.
ENDIF.
*--Last Hire Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U2'
P_DATKN =
IMPORTING
p_date = l_hdate
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_hdate IS INITIAL.
CONCATENATE
l_hdate4(2) l_hdate6(2) l_hdate+0(4)
INTO gs_roster-lhire_date
SEPARATED BY '/'.
ENDIF.
*--Service Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U4'
P_DATKN =
IMPORTING
p_date = l_sdate
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_sdate IS INITIAL.
CONCATENATE
l_sdate4(2) l_sdate6(2) l_sdate+0(4)
INTO gs_roster-serv_date
SEPARATED BY '/'.
ENDIF.
ENDFORM. " INFTY_ROST_0041
*& Form INFTY_ROST_0077
text
FORM infty_rost_0077 .
DATA: lv_race TYPE races.
rp_provide_from_last p0077 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
IF NOT p_race IS INITIAL AND p_race NE lv_race.
REJECT.
ENDIF.
DO 10 TIMES VARYING lv_race FROM p0077-rac01
NEXT p0077-rac02.
IF lv_race NE space.
IF lv_race EQ g_01.
gs_roster-race = g_ai.
ELSEIF lv_race EQ g_02.
gs_roster-race = g_h.
ELSEIF lv_race EQ g_03.
gs_roster-race = g_af.
ELSEIF lv_race EQ g_05.
gs_roster-race = g_w.
ENDIF.
ENDIF.
ENDDO.
ENDIF.
ENDFORM. " INFTY_ROST_0077
*& Form SUPERVISOR_ROST
text
FORM supervisor_rost .
REFRESH gi_objec.
IF NOT p0001-orgeh IS INITIAL.
CALL FUNCTION 'HRCM_ORGUNIT_MANAGER_GET'
EXPORTING
plvar = '01'
otype = 'O'
objid = p0001-orgeh
begda = pn-begda
endda = pn-endda
PATH_ID = ' '
TABLES
manager_info_table = gi_objec
EXCEPTIONS
path_error = 1
root_error = 2
nothing_found = 3
OTHERS = 4
IF sy-subrc <> 0.
ENDIF.
SORT gi_objec DESCENDING BY endda.
READ TABLE gi_objec INTO gs_objec INDEX 1.
IF sy-subrc = 0.
gs_roster-supervisor = gs_objec-stext.
CLEAR gs_objec.
ENDIF.
ENDIF.
ENDFORM. " SUPERVISOR_ROST
*& Form APPEND_ROST_RECS
text
FORM append_rost_recs .
IF NOT gs_roster-pernr IS INITIAL.
APPEND gs_roster TO gi_roster.
CLEAR gs_roster.
ENDIF.
ENDFORM. " APPEND_ROST_RECS
*& Form FETCH_ROSTER_TEXT
text
FORM fetch_roster_text .
IF p_eeoc IS NOT INITIAL AND p_eeoc NE t5u13-eeoct.
REJECT.
ENDIF.
IF NOT gi_roster IS INITIAL.
SELECT orgeh orgtx FROM t527x
INTO CORRESPONDING FIELDS OF TABLE gi_t527x
WHERE sprsl = sy-langu AND
endda = '99991231'.
SELECT persa ort01 regio pstlz name1
FROM t500p
INTO CORRESPONDING FIELDS OF TABLE gi_t500p.
SELECT persg ptext
FROM t501t
INTO CORRESPONDING FIELDS OF TABLE gi_t501t
WHERE sprsl = sy-langu.
SELECT persk ptext
FROM t503t
INTO CORRESPONDING FIELDS OF TABLE gi_t503t
WHERE sprsl = sy-langu.
SELECT stell stltx FROM t513s
INTO CORRESPONDING FIELDS OF TABLE gi_t513s
WHERE sprsl = sy-langu AND
endda = '99991231'.
SELECT otype plvar objid stext
FROM hrp1000 INTO
CORRESPONDING FIELDS OF TABLE gi_hrp1000
for all entries in gi_roster
WHERE plvar = '01'
AND otype = 'S'.
and objid = gi_roster-job_title.
SELECT stell eeoct exmpt aapct
FROM t5u13
INTO CORRESPONDING FIELDS OF TABLE gi_t5u13.
for all entries in gi_t5u13
WHERE stell = gi_t5u13-stell
AND eeoct = p_eeoc
AND aapct = p_aap.
SELECT aapct eeoct ltext
FROM t5uaa
INTO CORRESPONDING FIELDS OF TABLE gi_t5uaa.
FOR ALL ENTRIES IN gi_roster
WHERE aapct = gi_roster-aap_code
and eeoct = gi_roster-ee01.
SELECT kostl ltext
FROM cskt
INTO CORRESPONDING FIELDS OF TABLE gi_cskt
FOR ALL ENTRIES IN gi_roster
WHERE kostl = gi_roster-cost_cntr
WHERE spras = sy-langu.
SELECT btrtl btext
FROM t001p
INTO CORRESPONDING FIELDS OF TABLE gi_t001p.
FOR ALL ENTRIES IN gi_roster
WHERE btrtl = gi_roster-psa.
ENDIF.
LOOP AT gi_roster INTO gs_roster.
CLEAR :gs_hrp1000,gs_t5u13,gs_t500p,gs_t501t,gs_t503t,gs_t5uaa,gs_cskt,gs_t001p,gs_t513s, gs_t527x,gs_t529t,gs_t530t.
READ TABLE gi_t501t INTO gs_t501t WITH KEY persg = gs_roster-eg.
IF sy-subrc = 0.
gs_roster-eg_desc = gs_t501t-ptext.
ENDIF.
READ TABLE gi_t503t INTO gs_t503t WITH KEY persk = gs_roster-esg.
IF sy-subrc = 0.
gs_roster-esg_desc = gs_t503t-ptext.
ENDIF.
READ TABLE gi_t513s INTO gs_t513s
WITH KEY stell = gs_roster-job_code.
IF sy-subrc = 0.
gs_roster-job_code_desc = gs_t513s-stltx.
ENDIF.
READ TABLE gi_t527x INTO gs_t527x
WITH KEY orgeh = gs_roster-org_unit.
IF sy-subrc = 0.
gs_roster-orgtx = gs_t527x-orgtx.
ENDIF.
READ TABLE gi_hrp1000 INTO gs_hrp1000 WITH KEY objid = gs_roster-job_title.
IF sy-subrc = 0.
gs_roster-title = gs_hrp1000-stext.
ENDIF.
READ TABLE gi_cskt INTO gs_cskt
WITH KEY kostl = gs_roster-cost_cntr.
IF sy-subrc = 0.
gs_roster-ltext = gs_cskt-ltext.
ENDIF.
READ TABLE gi_t5u13 INTO gs_t5u13 WITH KEY stell = gs_roster-job_code.
IF sy-subrc = 0.
gs_roster-ee01 = gs_t5u13-eeoct.
gs_roster-flsa = gs_t5u13-exmpt.
gs_roster-aap_code = gs_t5u13-aapct.
ENDIF.
READ TABLE gi_t500p INTO gs_t500p WITH KEY persa = gs_roster-personal_area.
IF sy-subrc = 0.
gs_roster-city = gs_t500p-ort01.
gs_roster-state = gs_t500p-regio.
gs_roster-zipcode = gs_t500p-pstlz.
gs_roster-personal_area_desc = gs_t500p-name1.
ENDIF.
READ TABLE gi_t001p INTO gs_t001p WITH KEY btrtl = gs_roster-psa.
IF sy-subrc = 0.
gs_roster-psa_desc = gs_t001p-btext.
ENDIF.
READ TABLE gi_t5uaa INTO gs_t5uaa WITH KEY aapct = gs_roster-aap_code eeoct = gs_roster-ee01.
IF sy-subrc = 0.
gs_roster-aap_code_desc = gs_t5uaa-ltext.
ENDIF.
MODIFY gi_roster FROM gs_roster .
ENDLOOP.
ENDFORM. " FETCH_ROSTER_TEXT
*& Form OUTPUT_ROSTER_DISPLAY
text
FORM output_roster_display .
PERFORM build_roster_fieldcatalog.
PERFORM comment_roster_build CHANGING i_top_of_page[].
PERFORM display_roster_alv_report.
ENDFORM. " OUTPUT_ROSTER_DISPLAY
*& Form LAYOUT_INIT
text
FORM layout_init USING rs_layout TYPE slis_layout_alv.
rs_layout-detail_popup = 'X'.
rs_layout-zebra = 'X'.
rs_layout-colwidth_optimize = 'X'.
ENDFORM. " LAYOUT_INIT
*& Form EVENTTAB_BUILD
text
FORM eventtab_build USING rt_events TYPE slis_t_event.
*"Registration of events to happen during list display
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = rt_events.
READ TABLE rt_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE gi_top_of_page TO ls_event-form.
APPEND ls_event TO rt_events.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
*& Form top_of_page
text
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = i_top_of_page.
ENDFORM. "TOP_OF_PAGE
*& Form BUILD_ROSTER_FIELDCATALOG
text
FORM build_roster_fieldcatalog .
gs_fieldcat-fieldname = 'PERNR'.
gs_fieldcat-seltext_m = 'Employee Number'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SSN'.
gs_fieldcat-seltext_m = 'SSN Number'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'FIRST_NAME'.
gs_fieldcat-seltext_m = 'First Name'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LAST_NAME'.
gs_fieldcat-seltext_m = 'Last Name'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'CITY'.
gs_fieldcat-seltext_m = 'City'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'STATE'.
gs_fieldcat-seltext_m = 'State'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ZIPCODE'.
gs_fieldcat-seltext_m = 'Zip Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'HIRE_DATE'.
gs_fieldcat-seltext_m = 'Hire Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LHIRE_DATE'.
gs_fieldcat-seltext_m = 'Last Hire Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SERV_DATE'.
gs_fieldcat-seltext_m = 'Service Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EG'.
gs_fieldcat-seltext_m = 'Eg'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EG_DESC'.
gs_fieldcat-seltext_m = 'Eg Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ESG'.
gs_fieldcat-seltext_m = 'Esg'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ESG_DESC'.
gs_fieldcat-seltext_m = 'Eg Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'RACE'.
gs_fieldcat-seltext_m = 'Race'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = '***'.
gs_fieldcat-seltext_m = '***'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_GRADE'.
gs_fieldcat-seltext_m = 'Job Grade'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_LEVEL'.
gs_fieldcat-seltext_m = 'Job Level'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'GRADE_ENTRY_DATE'.
gs_fieldcat-seltext_l = 'Grade Entry Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_TITLE'.
gs_fieldcat-seltext_l = 'Job Title'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat..
gs_fieldcat-fieldname = 'TITLE'.
gs_fieldcat-seltext_l = 'Job Title Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_CODE'.
gs_fieldcat-seltext_l = 'Job Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_CODE_DESC'.
gs_fieldcat-seltext_l = 'Job Code Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_ENTRY_DATE'.
gs_fieldcat-seltext_l = 'Job Entry Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ANNUAL_SAL'.
gs_fieldcat-seltext_l = 'Annual Salary'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'HRLY_RATE'.
gs_fieldcat-seltext_l = 'Hourly Rate'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ORG_UNIT'.
gs_fieldcat-seltext_l = 'Org Unit'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ORGTX'.
gs_fieldcat-seltext_l = 'Org Text'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'COST_CNTR'.
gs_fieldcat-seltext_l = 'Cost Center'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LTEXT'.
gs_fieldcat-seltext_l = 'Cost Center Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PERSONAL_AREA'.
gs_fieldcat-seltext_l = 'Personal Area'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PERSONAL_AREA_DESC'.
gs_fieldcat-seltext_l = 'Personal Area Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SUPERVISOR'.
gs_fieldcat-seltext_l = 'Supervisor'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'FLSA'.
gs_fieldcat-seltext_l = 'FLSA'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EE01'.
gs_fieldcat-seltext_l = 'EE01'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_GRP'.
gs_fieldcat-seltext_l = 'Job Group'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'AAP_CODE'.
gs_fieldcat-seltext_l = 'AAP Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'AAP_CODE_DESC'.
gs_fieldcat-seltext_l = 'AAP Code Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'DOB'.
gs_fieldcat-seltext_l = 'Date of Birth'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PSA'.
gs_fieldcat-seltext_l = 'Personal Sub Area'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PSA_DESC'.
gs_fieldcat-seltext_l = 'Personal Sub Area Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'UNIONL'.
gs_fieldcat-seltext_l = 'Union Local'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'UNIONC'.
gs_fieldcat-seltext_l = 'Union Classfication'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
ENDFORM. " BUILD_ROSTER_FIELDCATALOG
*& Form COMMENT_ROSTER_BUILD
text
FORM comment_roster_build CHANGING top_of_page TYPE
slis_t_listheader.
DATA: ls_line TYPE slis_listheader,
l_startdate(10) TYPE c,
l_enddate(10) TYPE c,
l_final_start(22) TYPE c,
l_final_end(22) TYPE c.
CONCATENATE pn-begda4(2)'/'pn-begda6(2)'/'pn-begda+0(4)
INTO l_startdate.
CONCATENATE pn-endda4(2)'/'pn-endda6(2)'/'pn-endda+0(4)
INTO l_enddate.
CONCATENATE 'Start Date:' l_startdate INTO l_final_start.
CONCATENATE 'End Date :' l_enddate INTO l_final_end.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = 'AAP-EEOC Roster Report Data '. "Max len = 60
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-info = l_final_start.
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-info = l_final_end.
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ENDFORM. " COMMENT_ROSTER_BUILD
*& Form DISPLAY_ROSTER_ALV_REPORT
text
FORM display_roster_alv_report .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
is_layout = gs_layout
it_fieldcat = gi_fieldcat
i_save = g_save
is_variant = gs_variant
it_events = gt_events[]
TABLES
t_outtab = gi_roster
EXCEPTIONS
program_error = 1
OTHERS = 2
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " DISPLAY_ROSTER_ALV_REPORT
Regards
sachinhi there,
i want to fetch data from all the fields i ahve given here .It will be a join statement.
the important thing is I need all the values of vbeln in leftside
as output. -
More:Could u pls complete the following code by adding a class constructor?
Thank you for your concern about my post. Actually it is an exercise in book "Thinking in Java, 2nd edition, Revision 12" chapter 8. The exercise is described as below:
Create a class with an inner class that has a nondefault constructor. Create a second class with an inner class that inherits from the first inner class.
And I make some changes for the above exercise requiring the class which encloses the first inner class has a nondefault constructor.
There is something related to this topic in chapter 8 picked out for reference as below:
Inheriting from inner classes
Because the inner class constructor must attach to a reference of the enclosing class object, things are slightly complicated when you inherit from an inner class. The problem is that the �secret?reference to the enclosing class object must be initialized, and yet in the derived class there�s no longer a default object to attach to. The answer is to use a syntax provided to make the association explicit:
//: c08:InheritInner.java
// Inheriting an inner class.
class WithInner {
class Inner {}
public class InheritInner
extends WithInner.Inner {
//! InheritInner() {} // Won't compile
InheritInner(WithInner wi) {
wi.super();
public static void main(String[] args) {
WithInner wi = new WithInner();
InheritInner ii = new InheritInner(wi);
} ///:~
You can see that InheritInner is extending only the inner class, not the outer one. But when it comes time to create a constructor, the default one is no good and you can�t just pass a reference to an enclosing object. In addition, you must use the syntax
enclosingClassReference.super();
inside the constructor. This provides the necessary reference and the program will then compile.
My previous post is shown below, could you help me out?
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//Could you please help me complete the following code by generating
// the Test class constructor to ensure error free compilation? Please
// keep the constructor simple just to fulfill its basic functionality
// and leave the uncommented part untouched.
class Outer {
Outer (int i) {
System.out.println("Outer is " + i);
class Inner {
int i;
Inner (int i) {
this.i = i;
void prt () {
System.out.println("Inner is " + i);
public class Test extends Outer.Inner {
// Test Constructor
// is implemented
// here.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Test(Outer o, int i) {
o.super(i);
}Note that this doesn't quite answer the question from Thinking In Java, since your Test class is not an inner class (though there is no difference to the constructor requirements if you do make it an inner class). -
What's wrong with the following code?
What's wrong with the following code?
Circle cir1;
double rad = cir1.radiusThe circle Object was never instantiated.
In other words, you have set a declaring of a Circle, but it has not been created in memory yet.
You will create it using the " = new Circle( PARAMETERS_HERE ); "
Or some other method that returns a circle. -
Hi
If anyone can let me know why there is a problem with the following code. I get the following errors:
')' or ',' expectedSorry I did add in but it did not post....Anyway code below the erroe line are in bold. Line: 22,23 & 24.
function scaleMovieClip(movieclip, seconds, startAtX, endAtX, startAtY, endAtY, trans)
new mx.transitions.Tween(movieclip, "_yscale", trans, startAtY, endAtY, seconds, true);
var _loc2 = new mx.transitions.Tween(movieclip, "_xscale", trans, startAtX, endAtX, seconds, true);
} // End of the function
function setPage()
btnN = ["b" + prod];
page = btnN;
pageT.text = page;
ptest.text = mypage;
var mcTween = new mx.transitions.Tween(main, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1.000000E-001, true);
mcTween.onMotionFinished = function (ev)
main.gotoAndStop(page);
var _loc1 = new mx.transitions.Tween(main, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 3, true);
for (i = 0; i < prodArray.length; i++)
bNum = i + 1;
eval("["b" + bNum]")._xscale = 100;
eval("["b" + bNum]")._yscale = 100;
eval("["b" + bNum]").enabled = true;
} // end of for
eval("[page]").swapDepths(_root.getNextHighestDepth());
quote1.removeMovieClip();
eval("[page]").enabled = false;
eval("[page]")._xscale = 120;
eval("[page]")._yscale = 120;
} // End of the function
stop();
prodArray = new Array("CFL Change-Over", "Showerheads", "Insulation", "Solar PV", "Solar Hot Water", "Tank to Toilet", "Heat Pumps", "Misc Hot Water");
b1.onRollOver = b2.onRollOver = b3.onRollOver = b4.onRollOver = b5.onRollOver = b6.onRollOver = b7.onRollOver = b8.onRollOver = function ()
scaleMovieClip(this, 1, 100, 120, 100, 120, mx.transitions.easing.Strong.easeOut);
attachMovie("quote", "quote1", _root.getNextHighestDepth());
quote1._x = -300;
quote1._x = _xmouse + 10;
quote1._y = _ymouse + 35;
trace (_xmouse);
if (_xmouse <= 130)
quote1.gotoAndStop(2);
quote1._x = _xmouse;
quote1._y = _ymouse + 35;
} // end if
if (_xmouse >= 790)
quote1.gotoAndStop(3);
quote1._x = _xmouse + 10;
quote1._y = _ymouse + 35;
} // end if
quote1.startDrag(lockcenter);
btnN = this._name;
item = btnN.substr(btnN.length - 1, btnN.length) - 1;
myMsg = prodArray[item];
quote1.msg = myMsg;
b1.onRollOut = b2.onRollOut = b3.onRollOut = b4.onRollOut = b5.onRollOut = b6.onRollOut = b7.onRollOut = b8.onRollOut = function ()
scaleMovieClip(this, 1, 120, 100, 120, 100, mx.transitions.easing.Strong.easeOut);
quote1.removeMovieClip();
b1.onRelease = b2.onRelease = b3.onRelease = b4.onRelease = b5.onRelease = b6.onRelease = b7.onRelease = b8.onRelease = function ()
btnN = this._name;
item = btnN.substr(btnN.length - 1, btnN.length) - 1;
page = btnN;
var mcTween = new mx.transitions.Tween(main, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1.000000E-001, true);
mcTween.onMotionFinished = function (ev)
main.gotoAndStop(page);
var _loc1 = new mx.transitions.Tween(main, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 3, true);
for (i = 0; i < prodArray.length; i++)
bNum = i + 1;
eval("["b" + bNum]")._xscale = 100;
eval("["b" + bNum]")._yscale = 100;
eval("["b" + bNum]").enabled = true;
} // end of for
this.swapDepths(_root.getNextHighestDepth());
quote1.removeMovieClip();
this.enabled = false;
this._xscale = 120;
this._yscale = 120;
if (prod != "" || prod != null)
prodTxt.text = prod;
setPage();
} // end if
Maybe you are looking for
-
How to execute KISR for multiple cycles in one step?
CO Experts, I have a business reqirement to reverse the previous month assessments into the next period. I am planning to use KISR, but I could not find any way to execute KISR for multiple cycles, similar to the RKGALKSU5 program ? Is there any prog
-
I had iTunes on previous computer, can't find my libraries now I have re-downloaded for new computer, does this mean I have lost all my music content? My wedding music was on there, and i had paid loads to download stuff. I assumed it was all saved s
-
Install Failing when attempted to Add a new Management Server into SCSM Management Group
Hello Experts I am adding a additional MS into my current SCSM 2012 sp1 MANAGEMENT Group. But its failing with the below error message .One thing is little wiered here is ...that the wizard fails with the message that the UPGARDE FAILED , but I am n
-
Combining two messages into one
Hello, I have a mapping issue, I have a business process in which I have to combine two messages into one. To do so, I have defined a message mapping in which there are two source message types, and one target message type. When testing the message m
-
Hi there , we got some issues, that tftpdnld and xmodem command is not showing in Rommon mode . ReadOnly ROMMON version is: System Bootstrap, Version 12.3(4r)T1, RELEASE SOFTWARE (fc1) TAC Support: http://www.cisco.com/tac Copyright (c) 2003 by cisc