Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Microsoft SQL: Incorrect syntax near the keyword 'exec'. Incorrect syntax near ')'.

I have a SP in Azure SQL Database, the SP runs fine in azure and into the transform (power query) window, but it's unable to load into the data model. It returns back Microsoft SQL: Incorrect syntax near the keyword 'exec'.
Incorrect syntax near ')'.

 

 

4 Replies

    • Anonymous's avatar
      Anonymous
      Not applicable

      my mistake I must have been using direct query on accident. Works fine today on import

  • eduardosa's avatar
    eduardosa
    Frequent Visitor

    I'm getting this error on calling MSSQL Stored Procedures by Power Query, when:

    1. Calling more than one transformation on parameters,
    2. Calling Stored Procedure in Direct Query mode.

     

    Both the scenarios I'm showing work on the Power Query Editor.

    The error shows when loading the data onto the PowerBI file.

     

    This seems to be a bug on the interface that calls the MSSQL code. From my point of view it should not require the work around of calling the SP by a function, as it was suggested.

     

    I've been able to call the SP without the need for the "fuction", (this code works on Import Mode), and load data into PowerBI.

     

    Sql.Database(#"Server", #"DB", [Query="EXEC [Stored_Procedure] '" & Date.ToText( RangeStart_Date , [Format="yyyy-MM-dd"] ) & "', '" & Date.ToText( RangeEnd_Date, [Format="yyyy-MM-dd"] ) & "'"])

     

     

    However when I call an extra date transformation, from DateTime -> Date, the code throughs the error: Microsoft SQL: Incorrect syntax near the keyword 'exec'. Incorrect syntax near ')'

     

    Sql.Database(#"Server", #"DB", [Query="EXEC [Stored_Procedure] '" & Date.ToText( DateTime.Date( RangeStart ) , [Format="yyyy-MM-dd"] ) & "', '" & Date.ToText( DateTime.Date( RangeEnd_Date ), [Format="yyyy-MM-dd"] ) & "'"])

     

     

    What's happening here?