Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member
0 Kudos
2,619

Hi,

Write a java script function in your sapui5 application and put the below code for getting line chart.

function lineChartTest(){

                        var stock=sap.ui.getCore().byId("stock").getValue();

                        var exchange=sap.ui.getCore().byId("exchange").getValue();

                        var oModelChartt = new sap.ui.model.json.JSONModel();   

                        sap.ui.getCore().setModel(oModelChartt);

                        jQuery.ajax({

                                url: ' Put your XSODATA URL Here'

                                dataType: "json",

                               beforeSend: function() {

                                    $('#loader').show();        //This method will call before your request go to server.

                                 },

                                 complete: function(){     //This method would call after completion of  your request.

                                    $('#loader').hide();     //Create a div and assign a id to that div

                                 },

                                success: function(data, textStatus, jqXHR) { // callback called when data is received

                                    if (data.length == 0) {

                                        window.alert(textStatus+jqXHR);

                                    } else {

                                        oModelChartt.setData(data); // fill the received data into the JSONModel

                                    }

                                },

                                error: function(jqXHR, textStatus, errorThrown) {

                                    $('#errorMsg').show();

                                }

                            });

                            var dataset = new sap.viz.ui5.data.FlattenedDataset(

                                    {

                                        dimensions : [ {

                                            axis : 1,

                                            name : 'Year',

                                            value : "{YEAR_INT}"

                                        },

                                        {

                                            axis : 1,

                                            name : 'Week',

                                            value : "{WEEK_INT}"

                                        } ],

                                        measures : [ {

                                            name : 'PriceHigh',

                                            value : '{PRICEHIGH}'

                                        } ],

                                        data : {

                                            path : "/d/results",

                                        }

                                    });

                            var oTextView = new sap.ui.commons.TextView({      /* This Code will be using for remove Default value.You can replace                                                                                                                                                    'NO Data'  value  with your custom message. */

                                text : 'Please wait, loading data',

                                wrapping : false,

                                semanticColor: sap.ui.commons.TextViewColor.Negative,

                                textAlign:sap.ui.core.TextAlign.Center

                                });

                            var chart = new sap.viz.ui5.Line(

                                    {

                                        width : "800px",

                                        height : "400px",

                                         plotArea : {

                                                'colorPalette' : d3.scale.category20().range()

                                                },

                                        title : {

                                            visible :false,

                                            text : 'Stock Data'

                                        },

                                        dataset : dataset,

                                       noData :  oTextView   // just assign your custom message to  noData property

                                    });

                                chart.setModel(oModelChartt);

                                chart.placeAt("linechart","only");  //only property will help you to append chart with refreshed value

}

Labels in this area