How to use ABAP Class to modify Web Query Result ??
Hi all !
We are using Web Templates to display our Query.
What I would like to do ( and seems a really important issue for our users! ) is to have a "PAGE BREAK" everytime the value of a charateristics change in the report
For Example :
-Page 1-
Division Project
A 1
2
3
-Page 2-
Division Project
B 1
2
3
and so on....
I read threads about using ABAP CLASS but no example what so ever...
We are presently under BW 3.1 but are considering upgrading to 7.0 by the end of the year so if there is a solution to my problem on either version i'd like to know.
If anyone has any information about how I can do this it would be most appreciated
Thx
JB.
Hi Yong,
Ravi is right, first check the blogs by Jocelyn, and if you still have specific questions you can ask them. I have used ABAP classes in workflow and I know Mike Pokraka tries to use classes exclusively.
Regards,
Martin
Similar Messages
-
How to use Java classes to make any query from Ldap? (any sample)
Where to find at least a brief description?
I need links,samples
Thanks in advance.Have a look at the JNDI tutorial: http://java.sun.com/products/jndi/tutorial/index.html
-
How to use abap memory in global class
Hi experts,
I want to know how to use abap memory in global class. when i try write export and import statement its showing
error is export statement does not support in object oriented concept.
Thanks
Ramesh ManoharanHi Ramesh,
Export and import statements were not allowed to use in classes. Create a global variable in public section of that class of type of export parameter.Then pass value to the global variable of class by calling that class.
by
Prasad GVK. -
ALV using ABAP Classes and Objects
Hi All,
I am trying to print the values in my internal table using ALV, using ABAP classes and objects. Here the title for columns are picked based on the title specified in the data element. I want to set the title of my columns by my own. how to achieve this ?. Please provide me a sample code if possible.
thanks & regards,
Navneeth.KHello Navneeth
The following sample report shows how to build and modify a fieldcatalog (routine <b>BUILD_FIELDCATALOG_KNB1</b>).
*& Report ZUS_SDN_ALVGRID_EVENTS
REPORT zus_sdn_alvgrid_events.
DATA:
gd_okcode TYPE ui_func,
gt_fcat TYPE lvc_t_fcat,
go_docking TYPE REF TO cl_gui_docking_container,
go_grid1 TYPE REF TO cl_gui_alv_grid.
DATA:
gt_knb1 TYPE STANDARD TABLE OF knb1.
PARAMETERS:
p_bukrs TYPE bukrs DEFAULT '2000' OBLIGATORY.
* CLASS lcl_eventhandler DEFINITION
CLASS lcl_eventhandler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
handle_hotspot_click FOR EVENT hotspot_click OF cl_gui_alv_grid
IMPORTING
e_row_id
e_column_id
es_row_no
sender.
ENDCLASS. "lcl_eventhandler DEFINITION
* CLASS lcl_eventhandler IMPLEMENTATION
CLASS lcl_eventhandler IMPLEMENTATION.
METHOD handle_hotspot_click.
* define local data
DATA:
ls_knb1 TYPE knb1,
ls_col_id TYPE lvc_s_col.
READ TABLE gt_knb1 INTO ls_knb1 INDEX e_row_id-index.
CHECK ( ls_knb1-kunnr IS NOT INITIAL ).
CASE e_column_id-fieldname.
WHEN 'KUNNR'.
SET PARAMETER ID 'KUN' FIELD ls_knb1-kunnr.
SET PARAMETER ID 'BUK' FIELD ls_knb1-bukrs.
CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
WHEN 'ERNAM'.
* SET PARAMETER ID 'USR' FIELD ls_knb1-ernam.
* NOTE: no parameter id available, yet simply show the priciple
CALL TRANSACTION 'SU01' AND SKIP FIRST SCREEN.
WHEN OTHERS.
* do nothing
ENDCASE.
* Set active cell to field BUKRS otherwise the focus is still on
* field KUNNR which will always raise event HOTSPOT_CLICK
ls_col_id-fieldname = 'BUKRS'.
CALL METHOD go_grid1->set_current_cell_via_id
EXPORTING
is_row_id = e_row_id
is_column_id = ls_col_id.
ENDMETHOD. "handle_hotspot_click
ENDCLASS. "lcl_eventhandler IMPLEMENTATION
START-OF-SELECTION.
SELECT * FROM knb1 INTO TABLE gt_knb1
WHERE bukrs = p_bukrs.
* Create docking container
CREATE OBJECT go_docking
EXPORTING
parent = cl_gui_container=>screen0
ratio = 90
EXCEPTIONS
OTHERS = 6.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Create ALV grid
CREATE OBJECT go_grid1
EXPORTING
i_parent = go_docking
EXCEPTIONS
OTHERS = 5.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Set event handler
SET HANDLER:
lcl_eventhandler=>handle_hotspot_click FOR go_grid1.
* Build fieldcatalog and set hotspot for field KUNNR
PERFORM build_fieldcatalog_knb1.
* Display data
CALL METHOD go_grid1->set_table_for_first_display
CHANGING
it_outtab = gt_knb1
it_fieldcatalog = gt_fcat
EXCEPTIONS
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* Link the docking container to the target dynpro
CALL METHOD go_docking->link
EXPORTING
repid = syst-repid
dynnr = '0100'
* CONTAINER =
EXCEPTIONS
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
* ok-code field = GD_OKCODE
CALL SCREEN '0100'.
END-OF-SELECTION.
*& Module STATUS_0100 OUTPUT
* text
MODULE status_0100 OUTPUT.
SET PF-STATUS 'STATUS_0100'.
* SET TITLEBAR 'xxx'.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
MODULE user_command_0100 INPUT.
CASE gd_okcode.
WHEN 'BACK' OR
'END' OR
'CANC'.
SET SCREEN 0. LEAVE SCREEN.
WHEN OTHERS.
ENDCASE.
CLEAR: gd_okcode.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form BUILD_FIELDCATALOG_KNB1
* text
* --> p1 text
* <-- p2 text
FORM build_fieldcatalog_knb1 .
* define local data
DATA:
ls_fcat TYPE lvc_s_fcat.
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
* I_BUFFER_ACTIVE =
i_structure_name = 'KNB1'
* I_CLIENT_NEVER_DISPLAY = 'X'
* I_BYPASSING_BUFFER =
* I_INTERNAL_TABNAME =
CHANGING
ct_fieldcat = gt_fcat
EXCEPTIONS
inconsistent_interface = 1
program_error = 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.
LOOP AT gt_fcat INTO ls_fcat
WHERE ( fieldname = 'KUNNR' OR
fieldname = 'ERNAM' ).
ls_fcat-hotspot = abap_true.
ls_fcat-scrtext_s = '<short text>'. " short text of column
ls_fcat-scrtext_m = '<medium text>'. " medium text of column
ls_fcat-scrtext_l = '<long text>'. " longtext text of column
ls_fcat-tooltip = '...'. " ALV control: Tool tip for column header
ls_fcat-coltext = '...'. " ALV control: Column heading
MODIFY gt_fcat FROM ls_fcat.
ENDLOOP.
ENDFORM. " BUILD_FIELDCATALOG_KNB1
Regards
Uwe -
I'm using netbeans and the web module template.
I'm pretty new to jsp, so please bare with me. I just want to be able to use a class in my jsp page.
I have 2 files:
WEB-INF/classes/Customer
index.jsp
in the Customer Class, i declare the package at the top:
package com.mycompany.data
public Class Customer {
in index.jsp, I want to use the Customer Class. I try like this:
<%@ page import="com.mycompany.data.*" %>
<%
Customer cust = new Customer();
%>
I keep getting an error in index.jsp on both the page directive and on the line where I declare and instantiate the Customer object.
Can someone inform me or point me to the right place to understand how to use a class in a .jsp?
ThanksIf the class Customer is in package com.mycompany.data
Then Customer.class should be a file in
web-inf/classes/com/mycompany/data/Customer.class
Apart from that it looks ok.
You might consider using a <jsp:useBean> tag instead of declaring customer in a scriptlet.
I'm very much a fan of minimum scriptlet code on a page.
Cheers,
evnafets -
Enable ABAP Class in 7x Web Template
Hi All,
We are upgrading Web Templates from 3x to 7x and we need inputs for amending Custom ABAP Class in 7x web templates. In existing 3x version there are couple of web templates which concatenate columns based on custom abap class, this option is enabled via Results_Table > Table Interface Class > Custom Class is called. But when it comes to 7x version how do we acheive enabling the custom class.
I have tried Custom Extension from Miscellaneous and enabled the Custom ABAP class but the query fails upon execution
Thanks
Abhishek Shanbhoguehi,
we're now getting the same message although that is after applying the java patch 12.
what exactly was the problem with the info-object? and what did you do to fix it? -
Hide a specific cell using ABAP classes
Hi Experts,
Is there a way to hide a specific cell using ABAP classes for reports?
MarceloHello Thomas Daly
I never saw a way to grant permission to a List, the only way I ever saw a list get its permissions is thru
the group site it resides in, the Discussion Board is the problem in this case (it has preconfigure permissions but they seem more like properties that you select the value from RadioButtons). However, ms-addnew gets rid of the Add new link but it
gets rid of the one in the Discusson Board too because Discussion Board falls in the category of List.
In other words ms-addnew in the master got rid of all of the Add new items, link etc as hoped but now
I can't add to the Discussion Board.
I am alright with a hack (I am open to any suggestions) that would work if it works but, the List's I am referring to are all "Links" in the Quick Launch so I dont know how you would be able to apply the jquery, how would you apply the
jquery to a Links in a Quick Launch?
Thank you
Shabeaut -
How To Guide on ABAP mapping (How to Use ABAP-Mapping in XI 3.0).
Hi,
I am looking for this document: How To Guide on ABAP mapping (How to Use ABAP-Mapping in XI 3.0), and not able to find it.
Can anybody please point me the location, to look for, or post the document.
Thanks,
NamadevHi Namadev Chillal ,
These r the links containing PDF docs which u r looking for:
how to create a flat file out of an IDoc-XML by means of an ABAP mapping program and the J2EE File Adapter.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/46759682-0401-0010-1791-bd1972bc0b8a
Excellent PDF Document on Mapping
http://help.sap.com/bp_bpmv130/Documentation/Operation/MappingXI30.pdf
Mapping Development with the ABAP Workbench
http://help.sap.com/saphelp_nw04/helpdata/en/10/5abb2d9df242f6a62e22e027a6c382/content.htm
ABAP Mappings
http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm -
Can somebody post link to How to Use ABAP-Mapping in XI 3.0?
Hello,
can somebody post a real link to the document How to Use ABAP-Mapping in XI 3.0. All the links to this documnet in the existing posts are not valid.
Thanks for your information
JaysonHi
Following weblog might help you.
Testing ABAP Mapping - Testing ABAP Mapping
XML DOM Processing in ABAP part I - Convert an ABAP table into XML file using SAP DOM Approach.
/people/r.eijpe/blog/2006/02/19/xml-dom-processing-in-abap-part-iiia150-xml-dom-within-sap-xi-abap-mapping
SDN TV demo to create and test ABAP mapiing - https://media.sdn.sap.com/SDNTV/main.asp?mediaId=128
How to guide for ABAP mapping.
https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01200252310000071155&
Also check these links,
http://help.sap.com/saphelp_nw04/helpdata/en/ba/e18b1a0fc14f1faf884ae50cece51b/content.htm
Testing ABAP Mapping
Using ABAP XSLT Extensions for XI Mapping
Thanks
Gaurav
Edited by: Gaurav Bhargava on Oct 9, 2008 6:27 AM -
Create Navigation path in IDT4.0 and how to use these navigation paths in Webi report
Hi All, I want to know how to create navigation path in universe? I am using IDT BO4.0 SP4 and relational connection and want to create navigation path. I would like to know how to use this navigation path in Webi report? If I create a webi report where can I see my navigation paths and how to use it. If you can give any document or link which expalins this whole process, that would be great. Thanks,
HI REMI ,
1. ANSWER TO YOUR 1st QUESTION i.e. HOW TO CREATE A NAVIGATIONAL PATH :
IN IDT 4.0 , YOU WILL FIND A NAVIGATIONAL PATH IN BOTTOM WHEN YOU WILL OPEN YOUR BUSINESS LAYER , THERE YOU CAN CLICK CUSTOM NAVIGATION PATH -> THEN CLICK AT ADD A NAVIGATIOAL PATH BUTTON->THEN GIVE NAME NAVIGATIONAL PATH NAME->THEN ADD THE OBJECTS UNDER YOUR NAVIGATIONAL PATH IN A HIERARCHICAL SEQUENCE . FOR EX : COUNTRY->STATE->CITY . AND YOUR CUSTOM NAVIGATIONAL PATH IS CREATED.
2. ANSWER TO YOUR SECOND QUESTION WHAT IS THE USE OF NAVIGATIONAL PATH IN WEBI REPORT :
NAVIGATIONAL PATH HELPS YOU TO PERFORM DRILL DOWN ON YOUR DIMENSION OBJECTS , FOR EX : LET 'S SAY YOU CREATED A NAVIGATIONAL PATH- REGION SALES : Containing COUNTRY->STATE->SALES. THIS WILL HELP YOU TO DRILL DOWN IN YOUR WEBI REPORT AS SHOWN BELOW :
COUNTRY SALES
INDIA $1000000
(after clicking INDIA you will get below structure in your Report)
STATE SALES
DELHI $600000
ANDRA-PRADESH $200000
MAHARASHTRA $200000
(after clicking MAHARASHTRA you will get below structure in your Report)
CITY SALES
MUMBAI $150000
NAGPUR $ 50000
ACTUALLY , DRILL - DOWN AS THE NAME SOUND HELP TO DRILL THE DIMENSION TILL ROOT LEVEL & SEE THE MEASURES VALUES ASSOCIATED WITH THOSE VALUES LEVELS.
1ST LEVEL WILL ALWAYS CONTAIN THE SUM OF THE MEASURE OBJECTS
CHEERS ,
KAPIL -
How to use ABAP include in SLT parameter
Hi Frzz,
Could some one guide me how to use ABAP include in SLT parameter to perform calculations.
Best Regards,
Krishna.Hi,
We can have ABAP includes within SLT advanced replicaiton settings.
Go to IUUC_REPL_CONTENT select the applicable schema configuration name.click on "Select Configuration" button.
you could see all the tables that are in replication.
select the required table and then click on "edit settings for selected tables".
in the next screen select "IUUC_***_RUL_MAP" tab . here we hve the option to insert line of code or abap include as per the requriement.
please refer the techincal manual of SLT as well for more detailed information on advanced replicaitons within SLT.
Thank you.
Shishupal -
How to use create by and modified by
how to use create by and modified by ?
when some one create row it will stamp who create
and when some one edite row it will stamp who edit row
i ever user create on and modified on
but creay by and modified by i never use it.Howard,
If you are not using JAZN you can still register created by and modified by user and date info in a "backdoor-wise" way:
1. Get the user login string by using System.getProperty("user.name")
2. Get the current datetime using java.util.Date
3. In the backing bean for the page and the action method for your submit button, set the values for the components containing the created by or updated by values to the values obtained in points 1 and 2.
Hope this is somehow useful,
AG -
How to use TableSorter class with DefaultTableModel
Hi Friends
Please tell me how to use TableSorter Class which is in the Java. Tutorials with DefaultTableModel.
i saw in a thread there it was given that we have to pass the DefaultTableModel to the TableSorter Class.
I tried to use like that. But i am getting Error Like Exception occurred during event dispatching:
I am posting the part of Code where i use the DefaultTableModel
private void displayavailablity(String selectedAuthor)
try
Vector columnNames = new Vector();
Vector data1 = new Vector();
String bname,bauthor,bcategory,bref1,bavail,bid;
int bref,mid,num;
rs = st.executeQuery("SELECT BId,BName,BAuthorName,BAuthorandPublisher,BCat FROM Books where BAuthorandPublisher='" +selectedAuthor+"'");
ResultSetMetaData md= rs.getMetaData();
int columns =md.getColumnCount();
String booktblheading[]={"NUMBER","BOOK NAME","AUTHOR","CODE","CATEGORY"};
for(int i=1; i<= booktblheading.length;i++)
columnNames.addElement(booktblheading[i-1]);
while(rs.next())
Vector row = new Vector(columns);
for(int i=1;i<=columns;i++)
row.addElement(rs.getObject(i));
data1.addElement(row);
//System.out.println("data is:"+data);
((DefaultTableModel)table.getModel()).setDataVector(data1,columnNames);
TableSorter sorter = new TableSorter((DefaultTableModel)table.getModel());
rs.close();
catch(SQLException ex)
System.out.println("ERROR IS HERE");
ex.printStackTrace();
}Please help me on this issue Otherwise Please give me some Sample coding to implement this sorting. with DefaultTableModel
Thank you for your service
Cheers
JofinI don't know about any TableSorter class, but I suppose you mean javax.swing.table.TableRowSorter.
The TableRowSorter is to be attached to the JTable, not to the data model. Here's a cut'n'paste from the last time I used it:
RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(tableModel);
myTable.setRowSorter(sorter);
And heres from the JDK1.6 documentation:
TableModel myModel = createMyTableModel();
JTable table = new JTable(myModel);
table.setRowSorter(new TableRowSorter(myModel));
Check out http://java.sun.com/javase/6/docs/api/javax/swing/table/TableRowSorter.html. I find it to be good documentation. -
Function module equivalent to SWE_EVENT_CREATE while using ABAP classes
Hi there,
I used to use SWE_CREATE_EVENT to fire the events linked to my BOR objects, in order to start certain workflows.
Now I am using ABAP classes within the WorkFlows, and the name of the classes MUST (in my case) be longer than 10 characters, and SWE_EVENT_CREATE is cutting the name so it does not work
Do you know any FM equivalent to start an event from a ABAP class (SE24) object?
I have tried to use SAP_WAPI_START_WORKFLOW, but I cannot find the way to include my object in the container. Any ideas on this point would be welcome as well
Thanks so much,
MiguelThanks for such a quick reply,
You were right. I actually did follow Jocelyn's blogs, but somehow I skipped the raising event section.
Just for information, the URL with the solution to this problem is:
/people/jocelyn.dart/blog/2006/07/27/raising-abap-oo-events-for-workflow
Have a good one -
How to use multiple classes for each form
Hi,
I have created two forms using screen painter and now i want to use different classes for these two forms .
I have declared the Sbo Connection in main class i.e. Set Application ,Connection Context() but while connecting to other classes
for executing the code for that form SAP is not connected to that class.How to use multiple classes functionality i don't able to
do that.Please provide some sample codes for that as it will be more helpful for me to understand.
Thanks & Regards,
AmitHi Amit,
In fact, its more advisable to use separate classes for every form that you use. Have one common class, say, for eg., clsMain.cs which has all the connection and connectivity to other classes, wherein, the menu event and item event of this main class, will just be calling the menu / item event of other classes.
The individual functionality of the child classes will be called from the item / menu event of the respective classes.
Item event in clsMain.cs will be as below.
private void oApplication_ItemEvent(string FormUID, ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
SAPbouiCOM.Form oForm;
BubbleEvent = true;
try
if ((pVal.FormTypeEx == "My_Form1Type") && (pVal.EventType != SAPbouiCOM.BoEventTypes.et_FORM_UNLOAD))
oForm = oApplication.Forms.GetForm("My_FormType", pVal.FormTypeCount);
NameSpace.Repots.ClsForm1.ClsForm1_ItemEvent(oApplication, oCompany, oForm, ref pVal, ref BubbleEvent);
if ((pVal.FormTypeEx == "My_Form2Type") && (pVal.EventType != SAPbouiCOM.BoEventTypes.et_FORM_UNLOAD))
oForm = oApplication.Forms.GetForm("My_FormType", pVal.FormTypeCount);
NameSpace.Repots.ClsForm1.ClsForm2_ItemEvent(oApplication, oCompany, oForm, ref pVal, ref BubbleEvent);
Now, in the individual classes, you can have their respective item events, which will be called from the main class, and the respective functionalities will occur.
Hope this helps.
Regards,
Satish.
Maybe you are looking for
-
Is it possible in KM to change "create new file" dialog?
Is it possible in KM to change "create new file" dialog (Folder -> New -> Text File...) on consecution of my own screens(I mean user inputs information, presses next button, then again inputs information and so on)? And if its possible, could you ple
-
8i and 9i on same server?
Forgive me if this has been asked before, or if this is a really stupid question. Is it possible to run both an 8i database and a 9i database on the same server? I'm thinking about trying separate Oracle homes to accomplish this, but I wanted to know
-
IW42 - Materials for Operation linked to Order, not Operation
In my current development, I'm struggling with linking materials to an operation, after IW42 has been completed. In my test data, I coded for two situations, lookup of MSEG values starting with AFRU-WABLNR or WEBLNR (via AFWI-MBLNR). While that was
-
1. Is there anyway to make what you write on the PDF with the marker tool permanent? 2. Is there a way to make it so the form can have an area for the user to upload a file?
-
Quicktime does not show controls in Safari
Is it a Safari issue or QuickTime? Any1 had the same problem? Thks, Biga