Can't refresh OData Feed (PWA Report)

Hello community!
I used to create reports in Project Web App. And to fetch the newest data from the projects, I would open the report -> Excel Online -> Data -> Refresh All Data
Well, it doesn't work anymore. In Excel Online it says: "External Data Refresh Failed". Then it lists all connections that couldn't be refreshed. It's all OData Feeds "Problemdata, Projectdata, etc."
Technical details says: "Fehler: ^Êrrørs íñ thè hîgh-lëvël rélãtìõñãl ëñgíñè. 99 99 99 99 99 9^ Ausnahme bei der Verwendung der verwalteten
IDbCommand-Schnittstelle: The remote server returned an error: (403) Forbidden.. ". (Errors in the high-level relational engine. Exception on using the IDbCommand interface: The remote server returned an error: (403) Forbidden)
I thought it would help if I'd setup the ODC File on my own. Maybe my defaults are corrupted? So I just created a data feed within Excel. That works! I would upload it to PWA: https://mysite.sharepoint.com/sites/pwa/PWADataConnections/
Then I included the link to the file and it says: "We can't use the data of this feed."
So there seems to be a major problem with my OData feeds within PWA. I looked the problem up in the internet, but couldn't find anything.
Thank you for helping me

Hello,
Have they ever work in PWA via Excel Web App? Have you enabled this feature:
https://support.office.com/en-gb/article/Grant-reporting-access-in-Project-Online-4f125cf5-a752-4ce6-b9e9-5a2eb6ace9e2
Paul
Paul Mather | Twitter |
http://pwmather.wordpress.com | CPS |
MVP | Downloads

Similar Messages

  • Can not refresh data int the report...

    Application on C#.
    Steps:
    1. Get Report without data from the database
    2. Change the dataconnections in report to the current user
    3. refresh data on the report (FilePath = TempFilePath)
    4. Resave report file with data
    5. Automatically open CrystalReportsViewer2008 and load the report
    Result
    On developer machine is allright, but on the user machine data isn't refreshed. Therefore CrysrtalReportsViewer2008 can't open report. It say that check the SaveDatawithReport parameter.
    In process  I found that in temp directory on user pc, didn't creates some temprorary files which creates on developer PC. Why? Help me please.
    Sorry for my English.

    There is the code of my programm
    function ParseReport is refreshed the data and change dataconnections for current user
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Data.SqlClient;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using System.Diagnostics;
    using CRApp;
    using Microsoft.Win32;
    namespace CRApp
         * u041Au043Bu0430u0441u0441 u0434u043Bu044F u0430u0432u0442u043Eu043Cu0430u0442u0438u0437u0438u0440u043Eu0432u0430u043Du043Du043Eu0433u043E u0432u0438u0437u0443u0430u043Bu044Cu043Du043Eu0433u043E u0434u043Eu0441u0442u0443u043Fu0430
         * u043A u0444u0430u0439u043Bu0430u043C u0448u0430u0431u043Bu043Eu043Du043Eu0432, u0441u0433u0435u043Du0435u0440u0438u0440u043Eu0432u0430u043Du043Du044Bu0445 u0432
         * u043Fu0440u043Eu0433u0440u0430u043Cu043Cu0435 Crystal Reports
        public partial class Export2CR_MForm : Form
            public Export2CR_MForm()
                InitializeComponent();
                Start();
            public void Start()
                LoginForm Login = new LoginForm();
                DialogResult Dres = Login.ShowDialog();
                if (Dres == DialogResult.OK)
                    if (Login.GetConStr().ToString() != "")
                        GetReportNamesFromDataBase(Login.GetConStr());
                        SetConnectionString(Login.GetConStr());
                        this.CenterToScreen();
                        Visible = true;
                        Login.Close();
                else
                    Login.Close();
                    this.CenterToScreen();
                    this.OnClosed(null);
                 * u041Fu043Eu043Bu0443u0447u0430u0435u043C u043Fu0443u0442u044C u043A u0432u0440u0435u043Cu0435u043Du043Du044Bu043C u0444u0430u0439u043Bu0430u043C
                TempFilePath = Path.GetTempPath();
             * u041Au0440u0438u0441u0442u0430u043Bu043Eu0432u0441u043Au0438u0439 u0432u044Cu044Eu0432u0435u0440u043Eu043A
            CrystalDecisions.Windows.Forms.CrystalReportViewer viewer;
             * u041Fu0443u0442u044C u043A u0432u0440u0435u043Cu0435u043Du043Du043Eu0439 u043Fu0430u043Fu043Au0435
            private string TempFilePath;
             * u041Fu0430u0440u0430u043Cu0435u0442u0440 u0437u0430u043Fu0438u0441u0438 u0432 u0440u0435u0436u0438u043Cu0435, u0442u0430u0431u043Bu0438u0446u0435 (u0438u0442u0434...)
             * u041Du0443u0436u0435u043D u0434u043Bu044F u0442u043Eu0433u043E u0447u0442u043Eu0431u044B u0432u044Bu0431u0438u0440u0430u0442u044C
             * u043Eu043Fu0435u0440u0435u0434u043Bu0451u043Du043Du044Bu0439 u0434u0430u0442u0430u0441u0435u0442, u0441u043Eu043Eu0442u0432u0435u0442u0441u0442u0432u0443u044Eu0449u0438u0439 u0432u044Bu0431u0440u0430u043Du043Du043Eu0439 u0437u0430u043Fu0438u0441u0438
            private int ObjectIDOfTemplate;
             * u0423u0441u0442u0430u043Du043Eu0432u043Au0430 u0437u043Du0430u0447u0435u043Du0438u044F ObjectIDOfTemplate
            public void SetObjectIDOfTemplate(int /*
                                                   * ObjectID u0442u043Eu0433u043E u0448u0430u0431u043Bu043Eu043Du0430,
                                                   * u043Au043Eu0442u043Eu0440u044Bu0439 u043Du0430u0434u043E u043Fu043Eu043Bu0443u0447u0438u0442u044C
                                                      EnternalObjectID)
                ObjectIDOfTemplate = EnternalObjectID;
             * u041Fu043Eu043Bu0443u0447u0438u0442u044C ObjectID u0448u0430u0431u043Bu043Eu043Du0430
             * u0441 u043Au043Eu0442u043Eu0440u044Bu043C u0440u0430u0431u043Eu0442u0430u043Bu0438 u0434u043Bu044F
             * u0438u0441u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u043Du0438u044F u0435u0433u043E u0432u043Du0435 u0431u0438u0431u043Bu0438u043Eu0442u0435u043Au0438
            public int GetObjectIDOfTemplate()
                return ObjectIDOfTemplate;
             * u041Fu0443u0442u044C u043A u0432u044Bu043Fu043Bu044Eu043Du0443u0442u043Eu043Cu0443 u0444u0430u0439u043Bu0443
            private string TemplateFilePath;
             * u0423u0441u0442u0430u043Du043Eu0432u0438u0442u044C u043Fu0443u0442u044C u043A
             * u0432u044Bu043Fu043Bu044Eu043Du0443u0442u043Eu043Cu0443 u0444u0430u0439u043Bu0443
            public void SetTemplateFilePath(string In)
                TemplateFilePath = In;
             * u041Fu043Eu043Bu0443u0447u0438u0442u044C u043Fu0443u0442u044C u043A
             * u0432u044Bu043Fu043Bu044Eu043Du0443u0442u043Eu043Cu0443 u0444u0430u0439u043Bu0443
            public string GetTemplateFilePath()
                return TemplateFilePath;
             * u0424u0443u043Du043Au0446u0438u044F u043Eu0442u043Au0440u044Bu0442u0438u044F u0444u0430u0439u043Bu0430,
             * u043Fu043Eu043Bu0443u0447u0435u043Du043Du043Eu0433u043E u0438u0437 u0431u0430u0437u044B u0438
             * u043Fu043Eu043Bu043Eu0436u0435u043Du043Du043Eu0433u043E u0432u043E u0432u0440u0435u043Cu0435u043Du043Du0443u044E u043Fu0430u043Fu043Au0443
            public int ParseReport(string FilePath)
                viewer = new CrystalDecisions.Windows.Forms.CrystalReportViewer();
                CrystalDecisions.CrystalReports.Engine.ReportDocument rd =
                    new CrystalDecisions.CrystalReports.Engine.ReportDocument();
                try
                    rd.Load(FilePath);
                    try
                        for (int i = 0; i < rd.DataSourceConnections.Count; i++)
                            rd.DataSourceConnections<i>.SetConnection(
                                GetConnectionString().GetServerName(),
                                GetConnectionString().GetDatabaseName(),
                                GetConnectionString().GetUserName(),
                                GetConnectionString().GetPassword()
                            for (int j = 0; j < rd.Database.Tables.Count; j++)
                                DataTable dataSet = new DataTable();
                                SqlConnection C = new SqlConnection(GetConnectionString().ToString());
                                string ViewName = GetDataViewName(GetConnectionString(), ParseTableName(
                                                rd.Database.Tables[j].Name));
                                SqlCommand Q = new SqlCommand("select * from " + ViewName
                                    , C);
                                Q.CommandType = CommandType.Text;
                                SqlDataAdapter adapter = new SqlDataAdapter();
                                adapter.SelectCommand = Q;
                                adapter.Fill(dataSet);
                                rd.Database.Tables[j].SetDataSource(dataSet);
                    catch (Exception e)
                        MessageBox.Show(e.Message);
                    try
                        SetTemplateFilePath(TempFilePath + "\\" + FileTreeView.SelectedNode.Text.ToString() + ".rpt");
                        rd.ReportOptions.EnableSaveDataWithReport = true;
                        viewer.ReportSource = rd;
                        viewer.RefreshReport();
                        rd.SaveAs(TemplateFilePath);
                        rd.Close();
                        return 0;
                    catch (Exception e)
                        MessageBox.Show(e.Message);
                        return -1;
                catch (Exception ex)
                    rd.ReportOptions.EnableUseDummyData = true;
                    rd.ReportOptions.EnableSaveDataWithReport = true;
                    viewer.RefreshReport();
                    rd.SaveAs(TemplateFilePath);
                    MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
                    return -1;
             * u0420u0430u0437u0431u0438u0435u043Du0438u0435 u0438u043Cu0435u043Du0438 u0442u0430u0431u043Bu0438u0446u044B
             * u0434u043Bu044F u043Fu043Eu043Bu0443u0447u0435u043Du0438u044F u043Du043Eu043Cu0435u0440u0430 u043Au043Bu0430u0441u0441u0430
            public string ParseTableName(string TableName)
    //            MessageBox.Show(TableName);
                int x = 0;
                if (TableName.Contains("Class"))
                    x = TableName.LastIndexOf("s");
                    return TableName.Remove(0,x+1);
                if(TableName.Contains("Attr"))
                    x = TableName.IndexOf("r");
    //           MessageBox.Show(x.ToString());
    //           MessageBox.Show(TableName.Remove(0, x+1));
                return TableName.Remove(0, x+1);
             * u0424u0443u043Du043Au0446u0438u044F u043Fu043Eu043Bu0443u0447u0435u043Du0438u044F u0444u0430u0439u043Bu0430 u0438u0437 u0431u0430u0437u044B
            public int ParseReportWithDataBase()
                try
                    string ConnectionString = GetConnectionString().ToString();               
                    SqlConnection C = new SqlConnection(ConnectionString);
                    C.Open();
                    string SelectString = "select P119 from "+ GetDataViewName(GetConnectionString(),"24") +" where P115='";
                    SelectString = SelectString+FileTreeView.SelectedNode.Text.ToString()+"'";
                    SqlCommand Q = new SqlCommand(SelectString, C);
                    Q.CommandType = CommandType.Text;
                    SqlDataAdapter adapter = new SqlDataAdapter();
                    adapter.SelectCommand = Q;
                    DataTable table = new DataTable();
                    adapter.Fill(table);
                    byte[] b = (byte[])table.Rows[0].ItemArray.GetValue(0);
                    FileStream fs = File.Create(TempFilePath+"\\"+FileTreeView.SelectedNode.Text.ToString()+".rpt");
                    fs.Write(b, 0, b.Length);
                    fs.Close();
                    C.Close();
                    return 0;
                catch (Exception ex)
                    MessageBox.Show(ex.Message);
                    return -1;
             * u0421u0442u0440u0443u043Au0442u0443u0440u0430, u043Eu043Fu0438u0441u044Bu0432u0430u044Eu0449u0430u044F u043Fu0430u0440u0430u043Cu0435u0442u0440u044B
             * u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F u043A u0431u0430u0437u0435 u0434u0430u043Du043Du044Bu0445,
             * u043Au0430u043A u0434u043Bu044F u0432u043Du0435u0448u043Du0435u0433u043E u0438u0441u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u043Du0438u044F
             * u0442u0430u043A u0438 u0434u043Bu044F u0432u043Du0443u0442u0440u0435u043Du043Du0435u0433u043E
            public struct ConnectionString
                 * u0418u043Cu044F u0441u0435u0440u0432u0435u0440u0430 u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                private string DataSource_Value;
                 * u041Du0430u0437u0432u0430u043Du0438u0435 u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                private string InitialCatalog_Value;
                 * u0418u043Cu044F u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u0442u0435u043Bu044F
                private string UserID_Value;
                 * u041Fu0430u0440u043Eu043Bu044C
                private string Password_Value;
                 * u041Fu0435u0440u0435u0433u0440u0443u0436u0435u043Du043Du044Bu0439 u043Au043Eu043Du0441u0442u0440u0443u043Au0442u043Eu0440
                 * u0434u043Bu044F u0440u0443u0447u043Du043Eu0439 u0438u043Du0438u0446u0438u0430u043Bu0438u0437u0430u0446u0438u0438
                 * u0441u0442u0440u043Eu043Au0438 u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F,
                 * u043Du0443u0436u0435u043D u0434u043Bu044F u0438u0441u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u043Du0438u044F u0435u0433u043E
                 * u0432 u043Eu0434u0440u0443u0433u0438u0445 u0444u043Eu0440u043Cu0430u0445
                public ConnectionString(string /*
                                                * u0418u043Cu044F u0441u0435u0440u0432u0435u0440u0430 u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                                                  InDataSource_Value,
                                        string /*
                                                * u041Du0430u0437u0432u0430u043Du0438u0435 u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                                                  InInitialCatalog_Value,
                                        string /*
                                                * u0418u043Cu044F u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u0442u0435u043Bu044F
                                                */ InUserID_Value,
                                        string /*
                                                * u041Fu0430u0440u043Eu043Bu044C
                                                */ InPassword_Value)
                    DataSource_Value = InDataSource_Value;
                    InitialCatalog_Value = InInitialCatalog_Value;
                    UserID_Value = InUserID_Value;
                    Password_Value = InPassword_Value;
                 * u041Fu043Eu043Bu0443u0447u0438u0442u044C u0438u043Cu044F u0441u0435u0440u0432u0435u0440u0430
                 * u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                public string GetServerName()
                    return DataSource_Value;
                 * u041Fu043Eu043Bu0443u0447u0438u0442u044C u043Du0430u0437u0432u0430u043Du0438u0435
                 * u0431u0430u0437u044B u0434u0430u043Du043Du044Bu0445
                public string GetDatabaseName()
                    return InitialCatalog_Value;
                 * u041Fu043Eu043Bu0443u0447u0438u0442u044C u0438u043Cu044F
                 * u0442u0435u043Au0443u0449u0435u0433u043E u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u0442u0435u043Bu044F
                public string GetUserName()
                    return UserID_Value;
                 * u041Fu043Eu043Bu0443u0447u0438u0442u044C u043Fu0430u0440u043Eu043Bu044C
                 * u0442u0435u043Au0443u0449u0435u0433u043E u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u0442u0435u043Bu044F
                public string GetPassword()
                    return Password_Value;
                 * u041Fu0435u0440u0435u0432u043Eu0434 u0441u0442u0440u0443u043Au0442u0443u0440u044B u0432 u0442u0435u043Au0441u0442u043Eu0432u044Bu0439 u0432u0438u0434
                 * u0434u043Bu044F u0438u0441u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u043Du0438u044F u043Fu0440u0438 u0441u043Eu0437u0434u0430u043Du0438u0438 u043Au043Eu043Du043Du0435u043Au0442u043Eu0440u0430
                public override string ToString()
                    return "Data Source="+DataSource_Value+";Initial Catalog="+
                        InitialCatalog_Value+";User ID="+UserID_Value+";Password="+
                        Password_Value;
             * u0424u0443u043Du043Au0446u0438u044F u043Fu043Eu043Bu0443u0447u0435u043Du0438u044F u0441u0442u0440u043Eu043Au0438 u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F u043Fu043E u0443u043Cu043Eu043Bu0447u0430u043Du0438u044E
             * u043Du0443u0436u043Du0430 u0431u044Bu043Bu0430 u0434u043Bu044F u0442u0435u0441u0442u043Eu0432
            static private string GetDefaultConnectionString()
                return "Data Source=BSRV01;Initial Catalog=Prokat_Last;User ID=sa;Password=";
             * u0412u043Du0443u0442u0440u0435u043Du043Du044Fu044F u0441u0442u0440u043Eu043Au0430 u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F
             * u043Du0435 u0434u043Eu0441u0442u0443u043Fu043Du0430 u0434u043Bu044F u0432u044Bu0437u043Eu0432u0430 u043Du0430u043Fu0440u044Fu043Cu0443u044E
            private ConnectionString localConnectionString;
             * u0423u0441u0442u0430u043Du043Eu0432u0438u0442u044C u0441u0442u0440u043Eu043Au0443 u0432u043Du0443u0442u0440u0435u043Du043Du0435u0433u043E u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F
            public void SetConnectionString(ConnectionString CS)
                this.localConnectionString = CS;
             * u041Fu043Eu043Bu0443u0447u0438u0442u044C u0441u0442u0440u043Eu043Au0443 u0432u043Du0443u0442u0440u0435u043Du043Du0435u0433u043E u043Fu043Eu0434u043Au043Bu044Eu0447u0435u043Du0438u044F
            public ConnectionString GetConnectionString()
                return this.localConnectionString;
             * u0424u0443u043Du043Au0446u0438u044F u0443u0434u0430u043Bu0435u043Du0438u044F u0432u0440u0435u043Cu0435u043Du043Du043Eu0433u043E u0444u0430u0439u043Bu0430
             * u043Fu043Eu0441u043Bu0435 u0437u0430u0432u0435u0440u0448u0435u043Du0438u044F u0432u0441u0435u0445 u043Eu043Fu0435u0440u0430u0446u0438u0439 u0441 u0448u0430u0431u043Bu043Eu043Du043Eu043C
            private void MainForm_FormClosed(object sender, FormClosedEventArgs e)
                if (FileTreeView.Nodes.Count!=0)
                    if (File.Exists(TemplateFilePath))
                        File.Delete(TemplateFilePath);
             * u041Eu0431u0440u0430u0431u043Eu0442u0447u0438u043A u0434u0432u043Eu0439u043Du043Eu0433u043E u043Au043Bu0438u043Au0430
             * u043Fu043E u0448u0430u0431u043Bu043Eu043Du0443 u0432 u0434u0435u0440u0435u0432u0435 u0444u0430u0439u043Bu043Eu0432
            public void FileTreeView_DoubleClick(object sender, EventArgs e)
                int Result = 0;
                try
                    Result = ParseReportWithDataBase();
                    if (Result == 0)
                        Result = ParseReport(TempFilePath + FileTreeView.SelectedNode.Text.ToString() + ".rpt");
                        if (Result == 0)
                            Process.Start(TemplateFilePath);
                    else
                        MessageBox.Show("u0424u0430u0439u043B u043Du0435 u043Cu043Eu0436u0435u0442 u0431u044Bu0442u044C u043Eu0442u043Au0440u044Bu0442!");
                catch (Exception ex)
                    MessageBox.Show(ex.Message);
             * u041Fu043Eu043Bu0443u0447u0435u043Du0438u0435 u0432u0441u0435u0445 u0444u0430u0439u043Bu043Eu0432 u0441 u0440u0430u0441u0448u0438u0440u0435u043Du0438u0435u043C .rpt
             * u0438u0437 u0431u0430u0437u044B u043A u043Au043Eu0442u043Eu0440u043Eu0439 u043Fu0440u0438u0441u043Eu0435u0434u0438u043Du0438u043Bu0438u0441u044C
            public void GetReportNamesFromDataBase(ConnectionString CS)
                try
                    SqlConnection C = new SqlConnection(CS.ToString());
                    SqlDataAdapter adapter = new SqlDataAdapter();
                    DataTable table = new DataTable();
                    table.Clear();
                    string sqlcom = "Select P115 from " + GetDataViewName(CS,"24") + " where P116 like '%.rpt'";
                    SqlCommand Q1 = new SqlCommand(sqlcom,C);
                    Q1.CommandType = CommandType.Text;
                    adapter.SelectCommand = Q1;
                    adapter.Fill(table);
                    FileTreeView.Nodes.Clear();
                    for (int i = 0; i < table.Rows.Count; i++)
                            FileTreeView.Nodes.Add(table.Rows<i>.ItemArray.GetValue(
                                table.Rows<i>.ItemArray.Length-1).ToString());
    //                        MessageBox.Show(table.Rows<i>.ItemArray.GetValue(0).ToString());
                    C.Close();
                catch (Exception ex)
                    MessageBox.Show(ex.Message);
             * u041Fu043Eu043Bu0443u0447u0438u0442u044C u0438u043Cu044F DataView
             * u0434u043Bu044F u0442u0435u043Au0443u0449u0435u0433u043E u043Fu043Eu043Bu044Cu0437u043Eu0432u0430u0442u0435u043Bu044F
            private string GetDataViewName(ConnectionString CS,string ClassID)
                string ViewName = "";
                SqlConnection C = new SqlConnection(CS.ToString());
                C.Open();
                SqlCommand Q = new SqlCommand("[dbo].[_SysGetClassesInfoNew1]"/*P115 from dbo.Attr24 where P116='.rpt'*/, C);
                Q.CommandType = CommandType.Text;
                SqlDataAdapter adapter = new SqlDataAdapter();
                adapter.SelectCommand = Q;
                DataTable table = new DataTable();
                adapter.Fill(table);
                for (int i = 0; i < table.Rows.Count; i++)
                    if (table.Rows<i>.ItemArray.GetValue(0).ToString() == ClassID)
                        ViewName = table.Rows<i>.ItemArray.GetValue(13).ToString();
                        // MessageBox.Show(ViewName);
                C.Close();
                return ViewName;
             * u041Eu0431u0440u0430u0431u043Eu0442u0447u0438u043A u043Au043Bu0438u043Au0430 u043Du0430 u0432u044Bu043Fu0430u0434u0430u044Eu0449u0435u043C
             * u043Cu0435u043Du044E u0432 u043Fu0443u043Du043Au0442u0435 "Delete"
            private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
                FileTreeView.SelectedNode.Remove();

  • Refresh Excel data/charts reports in sharepoint

    Hi all,
    I created an Excel report with some Pivot Charts, starting from a
    Sharepoint list data.
    The Excel is saved in a document library of the site.
    The aim is to keep Excel data/charts updated with the values of the corresponding
    list.
    When I open the Excel with Excel Online and click on "Data" - "Refresh all", I see no updates.
    Anyway, if I export the Excel on my pc and click on refresh data, I can see the updates.
    Any solutions? Thanks in advance

    You can't refresh the SharePoint List data in Excel this way. I thought you are using SharePoint server then you need to configure power pivot for your form after that you can get the Odata feed from the SharePoint list using the Odata source you can refresh
    the data in excel online.
    PowerPivot Configuration:
    http://rajeshagadi.blogspot.in/2013/07/installing-powerpivot-for-sharepoint.html
    Connect Odata feed to Excel
    http://blogs.technet.com/b/excel_services__powerpivot_for_sharepoint_support_blog/archive/2014/02/24/powerpivot-scheduled-data-refresh-from-a-sharepoint-list-using-odata-data-feed-connection-powerpivot-2012-sp1-for-sharepoint-2013.aspx
    http://www.sptechcon.com/news/sharepoint-dashboard-excel
    Ravin Singh D

  • Project Site custom list data reporting with Odata connection, BI reports in Project online 2013.

    Hi,
    Can we create an excel report with Odata feed connection which includes project site custom list data?
    Example: My Project is "ProjectTest" and it has a project site in which i created a custom list "ProjectNotes" with some new columns. I want to include these columns in my report.
    sandeep

    Hello,
    when using the SharePoint ODATA or REST APIs each list and site would have a different endpoint URL. Some example URLs are below:
    REST API:
    https://test.sharepoint.com/sites/pwa/Project01Test/_api/Web/Lists/getByTitle('ProjectNotes')/Items
    https://test.sharepoint.com/sites/pwa/Project01Test/_api/Web/Lists/getByTitle('Risks')/Items
    ODATA SVC:
    https://test.sharepoint.com/sites/pwa/Project01Test/_vti_bin/listdata.svc/Issues
    https://test.sharepoint.com/sites/pwa/Project01Test/_vti_bin/listdata.svc/ChangeRequests
    The down site is that in Excel you cant dynamically update the connection URL so would have to add all of these in manually and create the data models - I guess this is ok if you don't have many projects and don't create many new projects. In code such as
    JavaScript it is easy and you can build up the URL dynamically using variables like below:
    projSiteUrl + "/_api/Web/Lists/getByTitle('ProjectNotes')/Items"
     The options to explore to see if you have make this dynamic and get the data you want are:
    Potentially look at the search API and use that in Excel:
    http://sharepoint.stackexchange.com/questions/98159/retrieving-list-items-from-multiple-sites-via-odata-with-excel
    http://social.technet.microsoft.com/Forums/windows/en-US/727c1893-6b42-478b-afca-b32fb259a53d/retrieve-custom-lists-from-all-projects-for-excel-reports-by-using-odata?forum=sharepointgeneral
    Power Query:
    http://blog.oraylis.de/2013/05/using-dynamic-parameter-values-in-power-query-queries/
    JavaScript (put the data on a page), example:
    http://gallery.technet.microsoft.com/scriptcenter/Server-Risks-and-Issues-on-65dcbe0e
    Or bring the data down to a custom SQL database table and report of that data:
    http://nearbaseline.com/blog/2014/04/project-site-custom-list-reporting-using-ssis-odata-connector/
    Hope that helps
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

  • Issue consuming Odata feed with Power Query (not in Power BI)

    I am trying to consume an OData feed from an SSRS report using Power Query ( latest release on Excel
     2010 x32). The Report server is in my company intranet.
    In the SSRS report, I can generate an Atom service file. When I use this file in PowerPivot, I can successfully import the report data and refresh it on demand. But I
    would like to do the same thing in Power Query using the "From OData feed" feature.
    1. I have tried supplying the URI to the service file
    = OData.Feed("file:///C:/Users/Bdarbonneau/Documents/temp/Manuf_cycle_time_mapping_table.atomsvc")
    I get this error : 
    DataFormat.Error: The supplied URL must be a valid 'http:' or 'https:' URL.
    2. I tried supplying the URL that the service file contains, but without success. 
    = OData.Feed("http://myssrsserver:8080/ReportServer?%2FMANUFACTURING%2FArchive%2FManuf_cycle_time_mapping_table&amp;rs%3ACommand=Render&amp;rs%3AFormat=ATOM&amp;rc%3AItemPath=Tablix1")
    I get this error:
    DataFormat.Error: OData: The given URL neither points to an OData service or a feed
    Am I missing something, or is what I am trying to do not supported ? 
    Regards,
    Bertrand

    My Current workaround for pulling data from SSRS until the dev team have worked out the odata issue is to pull the report in as a csv file:
    Csv.Document(Web.Contents("http://Servername/ReportServer?/SummaryReport&rs:Command=Render&rs:Format=Csv")),
    I also tried pulling an excel file from SSRS with no success.
    Tried:
    Excel.Workbook(URL)
    Excel.Workbook(Web.Contents(URL))
    Excel.Workbook(File.Contents(URL))
    Excel.Workbook(File.Contents(Web.Contents(URL)))
    if anyone has had luck pulling in an excel file from SSRS i would like to know how.
    Is there a rough release date for the odata functionality?

  • Can not refresh view data in STRUST

    I am using the JSP (STRUTS) for developing my App.
    I get a list of contact. In bellow it, I make a link for each contacts.
    When i view details of one contact. On click link below.
    My pages:
    listcontact.jsp
    contactdetails.jsp
    When i request a details of contact from list contact -> View successfull.
    But when i refresh the contactdetails.jsp page. I got a message error:
    type Exception report
    message
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.7 logs.
    I have to use:
    response.setHeader("Cache-Control","no-store");
    response.setHeader("Pragma","no-cache");
    But can't refresh any way this page.
    Plase show me the way to solve it.
    Thanks
    Vu Nguyen

    hi,
    Here are codes
    listdata = new CompanyListData();
    companyList = (ArrayList) session.getAttribute("datalist_company");
    if (companyList == null)
    companyList = (ArrayList) listdata.getCompanyList(datasource);
    session.setAttribute("total", companyList.size()+ " companies");
    session.setAttribute("datalist_company", companyList);
    return (mapping.findForward("success"));
    And for details:
    if ((addressItem==null && companyName!=null)||(addressItem==null&& companyId!="0"))
    addressData = new AddressDetailData();
    addressItem = addressData.getAddressItem(datasource, companyId);
    session.setAttribute("addressDetail", addressItem);
    I got companyID by:
    String companyId = request.getParameter("companyId");
    return (mapping.findForward("success"));
    Please gest the problems that.
    Thanks,

  • Can we create purchase order through report programming?

    hi experts.....
    can we create purchase order through report programming?If yes plz give me the thread details?

    Hi,
    Use this code in a program by using a BAPI function module
    Anothe rway is using classical/ALV report using call transaction from a report for changing the PO
    loop at i_header.
        header-ref_1         = i_header-legacy.
        headerx-ref_1        = c_x.
        header-doc_type      = i_header-bsart.
        headerx-doc_type     = c_x.
        header-comp_code     = i_header-bukrs.
        headerx-comp_code    = c_x.
        header-purch_org     = i_header-ekorg.
        headerx-purch_org    = c_x.
        header-pur_group     = i_header-ekgrp.
        headerx-pur_group    = c_x.
        header-vendor        = i_header-lifnr.
        headerx-vendor       = c_x.
        concatenate i_header-bedat+4(4)
                    i_header-bedat+0(2)
                    i_header-bedat+2(2)
                    into header-doc_date.
        headerx-doc_date     = c_x.
        header-created_by    = i_header-ernam.
        headerx-created_by   = c_x.
        header-currency      = i_header-waers.
        headerx-currency     = c_x.
        concatenate i_header-kdatb+4(4)
                    i_header-kdatb+0(2)
                    i_header-kdatb+2(2)
                    into header-vper_start.
        headerx-vper_start   = c_x.
        loop at i_items where legacy = i_header-legacy.
          item-po_item            =  i_items-ebelp.
          itemx-po_item           =  i_items-ebelp.
          itemx-po_itemx          =  c_x.
          if i_header-bsart = 'NB'.
            item-material            =  i_items-ematn.
            itemx-material           =  c_x.
            schedule-quantity        =  i_items-menge * 1000.
            schedulex-quantity       =  c_x.
          else.
            item-short_text          = i_items-ematn.
            itemx-short_text         = c_x.
            item-matl_group          = '1000'.
            itemx-matl_group         = c_x.
            schedule-quantity        =  '1'.
            schedulex-quantity       =  c_x.
          endif.
          item-plant               =  i_items-werks.
          itemx-plant              =  c_x.
          schedule-po_item         = i_items-ebelp.
          schedule-sched_line      = '1'.
          schedulex-po_item        = i_items-ebelp.
          schedulex-sched_line     = '1'.
          schedulex-po_itemx       = c_x.
          schedulex-sched_linex    = c_x.
          concatenate  i_items-eildt+0(2)
                       i_items-eildt+2(2)
                       i_items-eildt+4(4)
                       into schedule-delivery_date.
          schedulex-delivery_date  =  c_x.
          item-price_unit          =  i_items-peinh * 100.
          itemx-price_unit         =  c_x.
          item-tax_code            =  i_items-mwskz.
          itemx-tax_code           =  c_x.
          item-shipping            =  i_items-evers.
          itemx-shipping           =  c_x.
          account-po_item          = i_items-ebelp.
          accountx-po_item         = i_items-ebelp.
          accountx-po_itemx        = c_x.
          if i_header-bsart = 'FO'.
            item-pckg_no  = sy-tabix.
            itemx-pckg_no = 'X'.
            limits-pckg_no        = sy-tabix.
            limits-limit          = i_items-overalllimit.
            limits-exp_value      = i_items-expectedoverall.
            posrvaccessvalues-pckg_no    = sy-tabix.
            posrvaccessvalues-line_no    = '0'.
            posrvaccessvalues-serno_line = '00'.
            posrvaccessvalues-percentage = '100.0'.
            posrvaccessvalues-serial_no  = '01'.
            account-serial_no     = '1'.
            accountx-serial_no    = '1'.
            accountx-serial_nox   = c_x.
            account-quantity  = '1'.
            accountx-quantity = c_x.
            call function 'CONVERSION_EXIT_ALPHA_INPUT'
              exporting
                input  = i_items-kostl
              importing
                output = account-costcenter.
            accountx-costcenter   = c_x.
            call function 'CONVERSION_EXIT_ALPHA_INPUT'
              exporting
                input  = i_items-sakto
              importing
                output = account-gl_account.
            accountx-gl_account   = c_x.
            item-acctasscat       = i_items-knttp.
            itemx-acctasscat      = c_x.
            item-item_cat         = i_items-epstp.
            itemx-item_cat        = c_x.
          endif.
          append:item,itemx,schedule,schedulex,account,accountx,limits,posrvaccessvalues.
          clear :item,itemx,schedule,schedulex,account,accountx,limits,posrvaccessvalues.
        endloop.
        call function 'BAPI_PO_CREATE1'
          exporting
            poheader                     = header
            poheaderx                    = headerx
    *   POADDRVENDOR                 =
    *   TESTRUN                      =
    *   MEMORY_UNCOMPLETE            =
    *   MEMORY_COMPLETE              =
    *   POEXPIMPHEADER               =
    *   POEXPIMPHEADERX              =
    *   VERSIONS                     =
    *   NO_MESSAGING                 =
    *   NO_MESSAGE_REQ               =
    *   NO_AUTHORITY                 =
    *   NO_PRICE_FROM_PO             =
            importing
            exppurchaseorder             = ponumber
    *   EXPHEADER                    =
    *   EXPPOEXPIMPHEADER            =
            tables
            return                       = return
            poitem                       = item
            poitemx                      = itemx
    *   POADDRDELIVERY               =
            poschedule                   = schedule
            poschedulex                  = schedulex
            poaccount                    = account
    *   POACCOUNTPROFITSEGMENT       =
            poaccountx                   = accountx
    *   POCONDHEADER                 =
    *   POCONDHEADERX                =
    *   POCOND                       =
    *   POCONDX                      =
            polimits                     = limits
    *   POCONTRACTLIMITS             =
    *   POSERVICES                   =
       posrvaccessvalues            = posrvaccessvalues.
    *   POSERVICESTEXT               =
    *   EXTENSIONIN                  =
    *   EXTENSIONOUT                 =
    *   POEXPIMPITEM                 =
    *   POEXPIMPITEMX                =
    *   POTEXTHEADER                 =
    *   POTEXTITEM                   =
    *   ALLVERSIONS                  =
    *   POPARTNER                    =
        if ponumber eq space.
          loop at return where type = 'E'.
            clear buffer.
            move-corresponding return to e_return.
            concatenate i_header-legacy e_return into buffer.
            transfer buffer to p2_file.
          endloop.
          move-corresponding i_header to i_eheader.
          transfer i_eheader to p3_file.
          loop at i_items where legacy = i_header-legacy.
            move-corresponding i_items to i_eitems.
            transfer i_eitems to p4_file.
          endloop.
        else.
          commit work and wait.
        endif.
        clear:ponumber,header,headerx,item,itemx,account,accountx,limits,return,schedule,schedulex,posrvaccessvalues.
        refresh:item,itemx,account,accountx,limits,return,schedule,schedulex,posrvaccessvalues.
      endloop.
      close dataset p2_file.
      close dataset p3_file.
      close dataset p4_file.
    Regards
    Krishna

  • Getting multiple error while refreshing or scheduling WebI report

    Hi BO Admin Experts ,
    Feacing  multiple errors  while refreshing or scheduling webi reports in BI4.0 CMC ,
    Please find the below errors :
    1)report schedule status failed
    2)Parameters : xxxcorp-franklinee; ATOu supply unv
    Error Message : An internal error occured while calling 'ProcessDPcmndsEx' API (Error:ERR_WIS_30270)
    3 ) Format : WebI
    Parameters : 10000000000159270
    Error Message :CORBA error while communicating with the SL service
    Could you please help me on the abive 3 issues for the WebI schedule reports
    Cheers ,
    Pradeep Gorpadu

    Hi,
    While refreshing the WEBI Reports would recommend you check the WEBI PROCESSING Server's last changed date from CMC--> Servers.
    Check when you are refreshing the reports, do you see the time stamp changed of WEBI PROCESSING servers?
    Do you keep getting this error messages for all WEBI reports? Can you re-produce this with simple e-fashion reports as well?
    After that go to the node where WEBI PROCESSING servers installed and check on the event viewer details if you see any relevant error messages.
    Regards,
    Upendra

  • Can't refresh a region after DHTML Dialog close?

    Do someone have experience with DHTML Dialog plugin?
    I can't refresh a region on a parent page after Dialog closes!
    I have created a dynamic action on a parent page, using a Close[DHTML Dialog] as a event
    Is there other way to refresh a region or an item on a page after the dialog close? Maybe with javascript?
    I need to force the page item to get a new value from the database.
    Thanks!

    I haven't used that Plugin , but from the plugin explanation it is said(as you mentioned) that you can use the Close[DHTML Dialog] event for Dynamic Actions.
    I am not sure if the event is actually triggered before the dialog is closed or immediately after. If this event has been implemented as a callback , then its probable that the event would be triggered after the dialog is closed.
    In any case, you can add a simple javascript alert code as the Dynamic Action and see if it runs fine.If that works you can add the region refresh javascript code manually as
    $('#REGION_STATIC_ID').trigger('apexrefresh')if that doesn't work, its probably due to the call happening from the dialog(before it closes) and the dialog unable to find any such element (since its attached to the dialog's parent)
    in such a case, use
    parent.$('#REGION_STATIC_ID').trigger('apexrefresh')This refresh method only works with report regions(and some LOV item types) , so for most page items you have to call some javascript that specifically fetches and sets the session value (either using ajax or new value passed from modal )
    Instead of using the plugin for the dialog, if you use the jQuety dialog API (which I guess the plugin calls internally) , then it has close event where you can add your custom code. You can find the API documentation here

  • Can't open radio feeds in itunes 10.6

    I just upgraded to itunes 10.6 and find that I can't open radio feeds. I had been having no problems until recently. Before I upgraded I had a couple of occasions of difficulty opening the link but now it is impossible. In my old version of itunes if it couldn't open the link it would indicate that I should try later. Now it just shows the horizontal barber pole and says it is refreshing the category and I can't stop the one I clicked on or start a new one. I got Jazz to open but Classic Rock and others won't open. If I try to open another category it won't stop the refreshing on the previous one.
    I work on a G5 with 10.5.8. I checked on Apple's support sight and checked my settings in preferences for firewall and it allows all incoming transmissions, so it shouldn't be a port accessibility issue.

    Well I was having the same problem with itunes 10.6 .
    Sometimes the radio feeds work and sometimes they don't. You can try reinstalling the software or downgrading to a previous version like itunes 10.5. (although the radio feeds depend on the broadcasting channel).
    Here's a link for itunes 10.5 beta for mac (71.6MB) takes ~ 30 minutes to download
    https://rapidshare.com/#!download%7C443tg%7C1934066085%7Citunes_10.5_beta__mac.d mg%7C75028%7CR~F085B3BB684042AAC315E1B3ED5CFD01

  • Query a Odata feed on UI update in Excel

    I have an Odata service which has a function named Foo() which returns me data after doing operations and also have another function foo2() which returns a different set of data.
    now i have a drop down list in excel and on selecting value one it should query the odata feed to return the dataset from foo() and on selecting the second it should return the dataset from foo2()
    How do i do this. any help would be much appreciated

    Hi,
    I think you will need to use VBA code to achieve it. As I'm not quite know how to call the Odata service function within Excel, you need to modify the VBA code.
    Anyway, if the drop down list  was created by using data validation, and located in Range A1, then you can try the VBA code below:
    Private Sub worksheet_change(ByVal target As Range)
    If target.Address = "$A$1" Then
    If Range("A1") = 1 Then
    Foo() 'call function Foo (need change)
    Else
    Foo2() 'call function Foo2
    End If
    End If
    End Sub
    Wind Zhang
    TechNet Community Support

  • Connect to web service oData feed with Power Query

    Hi,
    after the last update of Machine Learning Studio, I can't connect to the web service through oData feed.
    I imported the OData with "Other Sources" , from OData Feed, with anonymous access.
    When I try to use the Score function with parameters, I get this error:
    DataSource.Error: OData: Richiesta non riuscita: Errore del server remoto: (406) Non accettabile. (Not Acceptable)
    Am I doing something wrong?
    Thanks
    Giovanni

    Hi Ritwik,
    I tried to use a python script to test the regular REST endpoint:
    import urllib2
    import json
    data = {
    "Inputs": {
    "input1":
    "ColumnNames": ["IndexSMP", "Des_LineaProdotto", "Des_LineaCommerciale", "Des_Rgt_LineaProdotto", "Des_TipologiaProdotto", "Des_Designer", "des_GruppoPF"],
    "Values": [ [ "0", "value", "value", "value", "value", "value", "value" ], [ "0", "value", "value", "value", "value", "value", "value" ], ]
    "GlobalParameters": {
    body = str.encode(json.dumps(data))
    url = 'https://ussouthcentral.services.azureml.net/workspaces/728fb8381e964686b33402d2aed7c7ca/services/3889cc778a564a4fb9b707b07ee0a613/execute?api-version=2.0&details=true'
    api_key = 'I put here my API key :)' # Replace this with the API key for the web service
    headers = {'Content-Type':'application/json', 'Authorization':('Bearer '+ api_key)}
    req = urllib2.Request(url, body, headers)
    response = urllib2.urlopen(req)
    result = response.read()
    print(result)
    I got this:
        raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
    urllib2.HTTPError: HTTP Error 401: Unauthorized
    Could it help?
    Thanks a lot! Bye
    Giovanni

  • Unable to refresh any of the reports in Deski.

    Team,
    We are not able to refresh any of the reports in Deski.
    Error Message: Connection or SQL sentence error (DA0005)
    Error Details: Exception: DBD, ORA-24373: invalid length specified for statement state: N/A
    System Details: Windows 2003 Std SP1 & 4GB RAM, Citrix 5.0
    But the same application is working on Windows Xp environment.
    Could you please help me out to resolve the above issue.
    Also it would be great if you can share the system requirement for BO XI installation on Citrix Server Env and additional components that need to be installed.
    Thanks,
    Manikandan

    Hi Manikandan,
    Following information might help you to resolve the issue.
    Solution1:
    The individual domains in Tools > Universe > Repository and check that
    they test correctly with the "Server is Responding" message.
    If not, then
    attempt a Safe Recovery to redefine the BOMAIN.KEY.
    Note: Make sure that the
    domains all have the same connection string by enlarging the window in Tools
    > Universe > Repository. If this has been changed, then you must change it
    back, then perform a Safe Recovery or you will receive error "The Document
    Domain does not exist in the same data account, you cannot export your LOV" when
    exporting a universe.
    If you now receive "A connection required to refresh
    this document is unavailable" when running your reports, then this connection will have to be redefined and assigned to your universes before re-exporting to the
    repository. You will need to do this for each universe.
    Solution2:
    Try recreating the new connection from the scratch and test the issue.
    Solution3:
    Rename the report to the shorter length and test the issue.
    Test the same for the universe also.
    You can find the user guides and other documents at the following link.
    Link to download the useru2019s Guide:
    Please go to Http://help.sap.com
    Click on Business Objects tab
    Select the appropriate product
    You can get the PAR at the following link:
    https://websmp110.sap-ag.de/support
    Click on Sap infrastructure and then on Business objects support.
    Then on left pane click on documentation.
    Regards,
    Sarbhjeet Kaur

  • Enabling OData feed on Windows 7 or 8 (Not Windows server)

    In Power BI, to create a data source to access the on-premise database online through Power Query, I need to enable OData Feed using DirSync.
    I found that DirSync can be installed only on machines running Windows Server. Is there any way to configure it on Windows 7 or 8.1 ?
    Or is there any other way to have live connection between my data in the database and the dashboard in Power BI so the dashboards can update the data?
    Here is some screenshots of my Power BI Admin Center:
    Thanks,
    Alaeddin

    Alaeddin,
    Is this still an issue?
    Thanks!
    Ed Price, Azure & Power BI Customer Program Manager (Blog,
    Small Basic,
    Wiki Ninjas,
    Wiki)
    Answer an interesting question?
    Create a wiki article about it!

  • Can't get my feed into the store

    I keep trying to add a feed and when I do it reports back that the URL has already been submitted. I can't find the feed in the store anywhere.
    I have contact support by email twice, and when I check status it says it is closed and to email support.
    Any suggestions?
    Victor7919

    Ok, I'll give it a try.
    Presuming you already have a Dropbox account, and you have the app on your pad.
    Open the app, navigate to public folder.  Touch the upload icon at the bottom.  It will show you everything you have already uploaded.  To upload a new picture, then touch the plus sign at the top right.     You can create one or more subfolders to organize it however you want.
    Hit the plus sign again if needed, and the photo listing will show up.  Find the photos you want and mark them by touching them.  Then touch the blue word upload in the upper right.
    ( the directions assume the pad is in the landscape mode.)
    That's really all there is to it.  As I typed this I opened and uploaded a couple of pics to get the steps right.

Maybe you are looking for