Graphs using business graphics
Hi all,
I am trying to generate graphs in webdnpro using business graphics but I want to view those graphs in Adobe. Is that possible?
What is the place where these graphs which are generated in NWDS are saved?what if I can pick the graphs geerated there and then push them into adobe somehow?
Please help me out.
Thanks and reagards,
Gaurav
Hi Gaurav,
To create business graphics dynamically, you can do like this
[if(firstTime){
//Create as many as you want
IWDBusinessGraphics bg1 = (IWDBusinessGraphics) view.createElement(IWDBusinessGraphics.class,"bg1");
// set type and other properties
bg1.setChartType(WDBusinessGraphicsType.BARS);
But this is for first time when you open the view. If you want to change the number of graphs displayed at runtime. Access the graphs runtime and set visibility
//access them again
IWDBusinessGraphics bg1_mdfy =(IWDBusinessGraphics) view.getElement("bg1");
//if you want to hide
bg1_mdfy.setVisible(WDVisibility.NONE);
regards,
Siva
Similar Messages
-
Drill down in pie chart using Business Graphics?
Hi,
I have create a pie chart using business graphics UI element. is it possible to drill down when we click on a part of pie chart?
Please let me know how can we achieve this. Thank you.
Regards,
Bharat.I got the solution. we can identify this by using the event id property.
Regards,
Bharat. -
Creating Gantt charts using Business Graphics that can be downloaded
The short version is I need the format for XML data to create a Gantt chart in a Business Graphics UI Element in order to be able to automatically email it. The long version is...
I currently have a Web Dynpro ABAP component that displays a Gantt chart using a Business Graphics UI Element based off data in various other UI elements in the view.
This works fine and the graph displays nicely, but I cannot find a way to download that straight from the Business Graphics UI Element. Having read around the forum there appears to be two options:
- Code it up myself by calling methods on the IGS API directly
- Bind the image data attribute on the element and get the data that way
Unfortunatly, we are not currently running a recent enough version (702/720) to be able to do the latter and so, unless there is another way, I need to code up the API calls myself.
So far I have got a business graphic in to an Adobe PDF form, loaded in my config data so it appears as a Gantt chart but I cannot figure out the format for the actual data that needs to be sent through in XML. Does anyone have example XML data or code to generate it that can be sent in to the call:
l_igs_ce->set_data( EXPORTING data_doc = p_ixml_doc ).
I have used the example in GRAPHICS_IGS_CE_TEST and the page http://liualex.com/archives/185 to generate the image and load the config data in but this only explains the XML format of the chart data for bar graphs.
Many thanksFound my answer,
This download: http://www.sdn.sap.com/irj/scn/downloads?rid=/library/uuid/e0a9ba90-0201-0010-d3a2-9cb376b5e181
This is the SAP Chart Designer, it contains a PDF which explains the XML format used, you can use it to manually create your own XML streams. -
Coloumn Graph with Business Graphics
Hi
1) I am using WebDynpro business graphics stacked column graph, in that i need to show Label values. I am getting my Label value but and on the top of the columns i am getting 0 number.
I want to remove the 0 number.
I set the Defaultseries format value is 0 and even i kept empty i am getting the 0 value on the top of the columns.
Please can one suggest me what property i need to set
2) I am using Lines graph. Is it possible to gives the hyperlinks on the points.If we click on the points based on the parameter it as to show other result.
How can i give the links to the lines graph points.
Please any one help on my problems.Hi Vani,
IPrivateGanttTestView.ISeriesNode seriesNode = wdContext.nodeSeries();
for (int seriesIndex = 0; seriesIndex < timeValues.length; ++seriesIndex)
IPrivateGanttTestView.ISeriesElement
seriesElement = seriesNode.createSeriesElement();
seriesNode.addElement(seriesElement);
// set series attributes (...)
IPrivateGanttTestView.IPointNode pointNode = seriesElement.nodePoint();
// loop over points
for (int pointIndex = 0; pointIndex < timeValues[seriesIndex].length;
++pointIndex)
IPrivateGanttTestView.IPointElement
pointElement = pointNode.createPointElement();
pointNode.addElement(pointElement);
pointElement.setStartValue(timeValues[seriesIndex][pointIndex][0]);
pointElement.setEndValue(timeValues[seriesIndex][pointIndex][1]);
pointElement.setCuId(pointCustomizing[seriesIndex][pointIndex]);
pointElement.setLabel(pointLabels[seriesIndex][pointIndex]);
pointElement.setToolTip("<put your the test here>");
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/84/d33481f0bd794ba9b9ef8f4b5fa73b/frameset.htm">Code Example for Displaying a Gantt Chart</a>
Regards,
Mithu -
Link for using Business Graphics or Maps in Webdynpro
Hi
I need any doc ,link material how to use Busniess Graphics ,maps in webDynpro.Its urgent please.
Thanks
HarshHi Harsh,
Here is a link to the tutorial about "Using Geo Services with Web Dynpro":
https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/9206ea90-0201-0010-fdaa-f466969d3ce2
Another tutorial for buisness graphics (not maps):
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/tutorial%20on%20using%20business%20graphics%20in%20web%20dynpro%20applications%20-%2021.htm
Hope it will help you, Adi. -
Business Graphics using BSP..
Hello Every Body,
I have to use Business Graphics in BSP..
Can anybody tell me a procedure...
how to do that ...Hi Kai,
thanks for reference...
Do u have some documents of GRAPH_BSP_TEST for a reference.
Please help me out about that BSP Application.
Actually I have to do a Business Graphics. So according to u is it a same thing.
Expecting your reply.
thanks... -
Business Graphics - Bar Chart - How to make the height extendable
Hi Experts,
I have created Business Graphics UI element for my WD application which fetches data from R/3. I am displaying
1) Cost Element in Y-axis and Cost in X-axis.
2) I have set ChartType = Bar, height = 300, width = 830
When the no of cost elements is upto 7-8, the graph is getting displayed correctly.
However when the no of cost elements increases to more than 12, the graph becomes un readable. The system displays lot of texts in Y-axis.
I want to make sure that if no of cost elements increases, the Y-axis of graph should extend.
How we can do so?
Regards,
GaryI could not got any solution of this issue. Finally I convinced the customer to display only top 10 records. Any way higher level managers won't have time to see the graphs of all data.
One way of resolving the issue is like this - create say 3 Business Graphic UI element. The height of Business Graphic UI element can be set as 300, 600, 900 etc.
For 10 records use Business Graphic UI element of height 300.
For 20 records use Business Graphic UI element of height 600.
For 30 records use Business Graphic UI element of height 900.
Use the 'Visibility' data type to hide / unhide the Business Graphic UI of different height. -
Problem with Business Graphics
Hai,
I am using Business graphics , I Used to display the simple series in a <b>coloumns</b> graph.
I want to display the total amount of the graph in top of every coloumn..
I want to display the value of the coloumn at the top of the coloumn.
i need the above graph as
3
2
1
|----
How to display the values in graph like this.....
regards,
Message was edited by: Naga Raju Meesalahai,
my context structure is like this
+ABC
series2(double)
series3(double)
series4(double)
series5(double)
series6(double)
My UIElement Structuer
+BG1
Category1
SimpleSeries2
SimpleSeries3
SimpleSeries4
SimpleSeries5
SimpleSeries6
code is like this..
IPrivateFBGAppView.IAbcNode aNode = wdContext.nodeAbc();
IPrivateBGAppView.IAbcElement elm;
elm = wdContext.createAbcElement();
elm.setCategoryText("Cat");
elm.setSeries2(32);
elm.setSeries3(23);
elm.setSeries4(45);
elm.setSeries5(32);
elm.setSeries6(18);
al.add(elm);
regards,
Message was edited by: Naga Raju Meesala -
Dynamic Values in Business Graphics Tool Tip
hi,
I am using business graphics ui element in my webdynpro application.I am able to get the graghical output correctly.I want to have tool tip in my graph so when I place the cursor on a point, the tool tip should give the corresponding value.I have used the following code
try
String[] catLabels = {
"Team 1", "\1Tomoko Akino", "\1Hans Bosch", "\1Marvin Smith",
"Team 2", "\1Jose Vega", "\1Bao Yin", "Out of office" };
String[][] pointCustomizing = {
{ "approved", "cancelled", "approvedPartTime" },
{ "approved" },
{ "approved" },
{ "sent", "approvedPartTime", "notsentPartTime", "notsent"},
{ "approved", "zSeveralEntries", "zSeveralEntries",
"zSeveralEntries", "zSeveralEntries", "zSeveralEntries",
"zSeveralEntries" },
{ "outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice" }
String[][] pointLabels = {
{ "1", "2", "2", "2", "4", "3", "3", "3", "1", "1", "2", "1",
"2", "1", "1" }
String[][][] timeValues = {
{ { "20020528", "20020606" }, { "20020606", "20020608" },
{ "20020610", "20020611" } },
{ { "20020531", "20020606" } },
{ { "20020607", "20020613" } },
{ { "20020527", "20020601" }, { "20020606", "20020607" },
{ "20020612", "20020613" }, { "20020617", "20020619"} },
{ { "20020531", "20020606" }, { "20020531", "20020601" },
{ "20020601", "20020602" }, { "20020602", "20020603" },
{ "20020603", "20020604" }, { "20020604", "20020605" },
{ "20020605", "20020606" } },
{ { "20020527", "20020528" }, { "20020528", "20020529" },
{ "20020529", "20020530" }, { "20020530", "20020531" },
{ "20020531", "20020601" }, { "20020603", "20020604" },
{ "20020604", "20020605" }, { "20020605", "20020606" },
{ "20020606", "20020607" }, { "20020607", "20020608" },
{ "20020610", "20020611" }, { "20020611", "20020612" },
{ "20020612", "20020613" }, { "20020617", "20020618" },
{ "20020618", "20020619" }}
String s[]={"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","a1","a2","a3","a4","a5","a6","a7","a8","a9","a10","a11","a12","a13","a14",};
IPrivateSBusinessGraphicsSampleView.ICategoryNode catNode = wdContext.nodeCategory();
for (int catIndex = 0; catIndex < catLabels.length; ++catIndex)
IPrivateSBusinessGraphicsSampleView.ICategoryElement catElement = catNode.createCategoryElement();
catNode.addElement(catElement);
catElement.setDescription(catLabels[catIndex]);
// loop over series
IPrivateSBusinessGraphicsSampleView.ISeriesNode seriesNode = wdContext.nodeSeries();
for (int seriesIndex = 0; seriesIndex < timeValues.length; ++seriesIndex)
IPrivateSBusinessGraphicsSampleView.ISeriesElement seriesElement = seriesNode.createSeriesElement();
seriesNode.addElement(seriesElement);
// set series attributes (...)
IPrivateSBusinessGraphicsSampleView.IPointNode pointNode = seriesElement.nodePoint();
// loop over points
for (int pointIndex = 0; pointIndex < timeValues[seriesIndex].length; ++pointIndex)
IPrivateSBusinessGraphicsSampleView.IPointElement
pointElement = pointNode.createPointElement();
pointNode.addElement(pointElement);
String ename = s[pointIndex];
wdComponentAPI.getMessageManager().reportSuccess("name:"+ename);
pointElement.setStartValue(timeValues[seriesIndex][pointIndex][0]);
pointElement.setEndValue(timeValues[seriesIndex][pointIndex][1]);
pointElement.setCuId(pointCustomizing[seriesIndex][pointIndex]);
pointElement.setLabel(pointLabels[seriesIndex][pointIndex]);
pointElement.setToolTip(ename );
catch(Exception e)
wdComponentAPI.getMessageManager().reportSuccess("exc2:"+e);
By the above code ,I am getting the tool tip with the value "a" in all locations.
But I need to have different values in the tooltip corresponding to the location.
Please Help....
Thanks in advance,
Shamilahi,
Still I did not get the dynamic tool tip..........
In wdDoInit() I have written the following code
try
String[] catLabels = { "Team 1", "\1Tomoko Akino", "\1Hans Bosch", "\1Marvin Smith",
"Team 2", "\1Jose Vega", "\1Bao Yin", "Out of office" };
String[][] pointCustomizing = {
{ "approved", "cancelled", "approvedPartTime" },
{ "approved" },
{ "approved" },
{ "sent", "approvedPartTime", "notsentPartTime", "notsent"},
{ "approved", "zSeveralEntries", "zSeveralEntries",
"zSeveralEntries", "zSeveralEntries", "zSeveralEntries",
"zSeveralEntries" },
{ "outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice", "outOfOffice",
"outOfOffice", "outOfOffice", "outOfOffice" } };
String[][] pointLabels = {{ " ", " ", " " },{ " " },{ " " },{ " ", " ", " ", " "},{ " ", " ", " ", " ", " ", " ", " " },
{ "1", "2", "2", "2", "4", "3", "3", "3", "1", "1", "2", "1", "2", "1", "1" } };
String[][][] timeValues = {{ { "20020528", "20020606" },
{ "20020606", "20020608" },
{ "20020610", "20020611" } },
{ { "20020531", "20020606" } },
{ { "20020607", "20020613" } },
{ { "20020527", "20020601" },
{ "20020606", "20020607" },
{ "20020612", "20020613" },
{ "20020617", "20020619"} },
{ { "20020531", "20020606" }, { "20020531", "20020601" },
{ "20020601", "20020602" }, { "20020602", "20020603" },
{ "20020603", "20020604" }, { "20020604", "20020605" },
{ "20020605", "20020606" } },
{ { "20020527", "20020528" }, { "20020528", "20020529" },
{ "20020529", "20020530" }, { "20020530", "20020531" },
{ "20020531", "20020601" }, { "20020603", "20020604" },
{ "20020604", "20020605" }, { "20020605", "20020606" },
{ "20020606", "20020607" }, { "20020607", "20020608" },
{ "20020610", "20020611" }, { "20020611", "20020612" },
{ "20020612", "20020613" }, { "20020617", "20020618" },
{ "20020618", "20020619" }} };
String s[]={"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","a1","a2","a3","a4","a5","a6","a7","a8","a9","a10","a11","a12","a13","a14",};
IPrivateSBusinessGraphicsSampleView.ICategoryNode catNode = wdContext.nodeCategory();
IPrivateSBusinessGraphicsSampleView.ICategoryElement catElement;
for (int catIndex = 0; catIndex < catLabels.length; ++catIndex)
catElement = catNode.createCategoryElement();
catNode.addElement(catElement);
catElement.setDescription(catLabels[catIndex]);
// loop over series
IPrivateSBusinessGraphicsSampleView.ISeriesNode seriesNode = wdContext.nodeSeries();
for (int seriesIndex = 0; seriesIndex < timeValues.length; ++seriesIndex)
IPrivateSBusinessGraphicsSampleView.ISeriesElement seriesElement = seriesNode.createSeriesElement();
seriesNode.addElement(seriesElement);
// set series attributes (...)
IPrivateSBusinessGraphicsSampleView.IPointNode pointNode = seriesElement.nodePoint();
IPrivateSBusinessGraphicsSampleView.IPointElement pointElement;
// loop over points
for (int pointIndex = 0; pointIndex < timeValues[seriesIndex].length; pointIndex++)
//IPrivateSBusinessGraphicsSampleView.IPointElement
pointElement = pointNode.createPointElement();
pointNode.addElement(pointElement);
String ename = s[pointIndex];
wdComponentAPI.getMessageManager().reportSuccess("name:"+ename);
pointElement.setStartValue(timeValues[seriesIndex][pointIndex][0]);
pointElement.setEndValue(timeValues[seriesIndex][pointIndex][1]);
pointElement.setCuId(pointCustomizing[seriesIndex][pointIndex]);
pointElement.setLabel(pointLabels[seriesIndex][pointIndex]);
pointElement.setToolTip(ename );
catch(Exception e){ wdComponentAPI.getMessageManager().reportSuccess("exc2:"+e); }
In wdDoModifyView() I have written the following code
try
IWDBusinessGraphics graph = (IWDBusinessGraphics)view.getElement("BusinessGraphics");
IWDAbstractSeries allSeries[] = graph.getSeriesList();
IWDSimpleSeries series;
wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("length : "+allSeries.length+" value:"+allSeries[0]);
for(int j=0;j<allSeries.length;j++)
series = (IWDSimpleSeries)allSeries[j];
for(int i=0;j<wdContext.nodeSeries().size();i++)
wdContext.nodeSeries().setLeadSelection(i);
series.setTooltip(series.getValue());
catch(Exception e)
wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("exc modify :"+e);
The node structure is
Root Node
>Category>Description
>Series>Point-->CuId
>Series>Point-->endvalue
>Series>Point -->Startvalue
>Series>Point -->label
>Series>Point --->Tooltip
In BusinessGraphis seriesSource-Series node ,tooltip-Series.Point.ToolTip is mapped
In Category description-Category.Description is mapped
In Series pointsource-Series.Point, tooltip-series.point.tooltip is mapped
In Point CustomisingId-eries.point.cuId.label-Series.label, tooltip-series.point.Tooltip,valuesource -series.point is mapped
In Numericvalue value-series.point.startvalue is mapped
In Numericvalue value-series.point.endvalue is mapped
When I deploy my application I am getting <b>java.lang.ClassCastException</b> Exception at the line <b>series = (IWDSimpleSeries)allSeries[j];</b>
What is reaseon?.....
Please help..............
I want to get dynamic value in the tool tip of the graph.
Thanks in advance,
Shamila, -
How can i do different colors for the category in business graphics
Hi everybody,
i have a business graphics and i need different colors for the category. my business graphics is a gantt.
for example
category1
category2
category2
and so on.
Is there a solution for this? How can i do it?
Best regards,
MarkusSorry.
In my opinion, this requirement can not be resolved.
Generally, we use Business Graphic with Category, we just follow:
DATA:lr_graph TYPE REF TO cl_wd_business_graphics.
lr_graph = cl_wd_business_graphics=>new_business_graphics(
bind_series_source = 'NODE_DYN'
chart_type = cl_wd_business_graphics=>e_chart_type-BARS
height = 340
width = 750
* BIND_TOOLTIP = 'GRAPH.TT'
id = 'GRAPH' ).
DATA: lr_bgr_cs TYPE REF TO cl_wd_category.
lr_bgr_cs = cl_wd_category=>new_category(
view = wd_this->mr_view
bind_description = 'NODE_DYN.CATEGORY').
lr_graph->set_category( lr_bgr_cs ).
If we go to SE24, to check the class "CL_WD_CATEGORY", we cannot find any method or attribute about how to manipulate the "Category Font Color"...
Maybe,any other expert can give you fantastic solution, hope. Best wishes. -
Business Graphics negative values
Hi All,
I'm using business graphics graph. I bind a node with data to the category and to the series (the same node).
The problem starts if the series has negative values - instead of showing them as is on the graph it shows their absolute values and the graph is displayed incorrectly.
Is there any way to rectify this behavior?
AviadHi Maksim Rashchynski,
Model Node --> History_Periods
Model Attribute --> MonthYear (String)
Model Attribute --> Quantity (decimal)
The business graphics I am using is the graph with the attribute 'MonthYear' bound to a category and the attribute 'Quantity' bound to a SimpleSeries.
Thanks,
Aviad -
Customizing XML File in Business Graphics does'nt work for End Users
Hi Experts,
I have created an application using business graphic UI element for displaying graphs. I have some Customizing file settings done for it using Edit Customizing for its layout. As per my requirement, it works fine for me and other Developers. But when tested by End Users, that customizing file does'nt work. It shows a default graph's layout and XML file does'nt affect its layout.
Can anybody help me with this Issue. Please reply soon.
Thanks,
RunalI resolved this issue by implementing SAP Note 1294871
Thanks,
Runal -
Refresh the Business Graphics Data on click of next page event of a table
Hi Experts,
We are using Business Graphics UI element in Web dynpro Java to display a table data.
We are limiting the graphics data to 12 table entries at a time.
Now, I just want to know how can we refresh the Business Graphics data when the user clicks on the Next Page option at the bottom of the table.
This is applicable if we have more than 12 table entries and we've restricted the visible row count to 12.
So, for more than 12 entries; when the user selects the next page, I want the next set of data to be displayed in the Business Graphics UI element.
But I am not able to get the action for the Next Page event.
Please note that we are on Netweaver 7.01.
Kindly suggest as how can we achieve this functionality.
Kind Regards,
Anuragcheck this
Web Dynpro Java Table Paging Unleashed: Optimizing Heavy Table Performance -
Business Graphics, intermixing chart types
Hi to all,
Has anyone tried to intermix chart types? Specifically, i'm trying to display a "column" type chart, but I would like to have a straight horizontal line through the chart indicating a key value or values. Any help would be greatly appreciated.
Thanks in advanceHi Michael,
follow the following link
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/web dynpro tutorial and sample applications.faq#q-20
How to use Business Graphics in Web Dynpro applications?
The following tutorial shows you step-by-step how to create a simple business graphic using Web Dynpro.
A simple business graphic is a chart consisting of a category and one or more data series. Column charts, bar charts and pie charts are typical examples of simple business graphics.
Simple business graphics differ from complex business graphics, such as scatter charts and portfolio charts.
Requirements
In order to use business graphics in your application, you must install the Internet Graphics Service (IGS) on your server environment. Furthermore, the IGS must be configured on the J2EE engine.
Code Sample
The ready-to-use project is available to download from SDN.
Corresponding Tutorial
Using Business Graphics
Hope this helped you
Regards,
RK -
How to set multiple categories in Business graphics
Hi Experts,
I want to display column chart in using Business graphics UI element. My requirement is that I need to display sets of 5 series in 4 categories. I could able to create only one category and i am not getting option to create other 3 categories.
please help me how can i achieve this. Any kind of help would be much appreciated.
Thanks
UdayThanks Maksim,
I am still confused with other terms i mentioned in the code
http://wiki.sdn.sap.com/wiki/display/WDJava/WebDynproDynamicBusiness+Graphics
what does this nodeNumber refers to
what does this * IT_FinalElement * refers to
what does this * seriseNumber* refers to
there are so many questions? looks like in the above tutorial, the person has used SeriesList instead of SimpleSeries
I am totally lost. please help with any tutorial links for each scenarios
Thanks
Uday
Maybe you are looking for
-
This is how it is: Ive been using an iPhone (and cuz I didnt have a usable CC at the time) I used my gf's account and name, pw for this iCloud. CUrrently there is so much info on it I can;t lose - contacts, pix, apps etc. Now I bought a MBA that I di
-
When Copying File to Clipboard or Taking a Snapshot and pasting into Excel the report becomes very blurry. I have no issues when looking at the pdf document online or printing but when copying the words all blend together and it is difficult to make
-
Hi, I am getting followin error org.apache.commons.digester.Digester error SEVERE: Parse Error at line 5 column 19: Document is invalid: no grammar found. org.xml.sax.SAXParseException: Document is invalid: no grammar found. at org.apache.xerces
-
Downloaded music into default location, how to redownload into correct location?
I'll keep this short: I updated the location for my music downloads, I had to reboot my machine (for other reasons). I didn't think twice about checking the download location and downloaded all my music, much to the frustration that all the music dow
-
Groove template from MIDI region inspector copy to piano roll
How do you do this? in logic 9, it just happened. In logic X, I can make as many groove templates from midi regions as I like in the inspector, but how do I get them to show up in piano roll so that I can make apply them in varying dgrees to other re