title: SQL Query on Microsoft Excel - Parameter Error
body: <p>I need some help while creating Power Query. I tested this on Microsoft Excel on Mac and its run perfectly. However when I run this on Windows based Microsoft Excel it give me errors like this</p>
  <p>[Microsoft][ODBC SQL Server Driver]Invalid parameter number followed by [Microsoft][ODBC SQL Server Driver]Invalid Descriptor Index.</p>
  <p>Here are the Query</p>
  <pre><code>Declare @ToDate Datetime
  Declare @Whse nvarchar(10)
  Set @FromDate = (Select min(S0.Docdate) from dbo.OINM S0 where S0.Docdate &gt;= ?)
  Set @ToDate = (Select max(S1.Docdate) from dbo.OINM s1 where S1.Docdate &lt;= ?)
  Set @Whse = (Select Max(s2.Warehouse) from dbo.OINM S2 Where S2.Warehouse = ? )
  
  Select
  @Whse as 'Warehouse',
  a.Itemcode,
  max(a.Dscription) as ItemName,
  sum(a.OpeningBalance) as OpeningBalance,
  sum(a.INq) as 'IN',
  sum(a.OUT) as OUT,
  ((sum(a.OpeningBalance) + sum(a.INq)) - Sum(a.OUT)) as Closing
  ,(Select i.InvntryUom from OITM i where i.ItemCode=a.Itemcode) as UOM
  from(
  Select
  
  N1.Warehouse,
  
  N1.Itemcode,
  
  N1.Dscription,
  
  (sum(N1.inqty)-sum(n1.outqty)) as OpeningBalance,
  
  0 as INq,
  
  0 as OUT
  
  From dbo.OINM N1
  
  Where
  
  N1.DocDate &lt; @FromDate
  
  and N1.Warehouse = @Whse
  
  Group By
  
  N1.Warehouse,N1.ItemCode,N1.Dscription
  
  Union All
  
  select
  
  N1.Warehouse,
  
  N1.Itemcode,
  
  N1.Dscription,
  
  0 as OpeningBalance,
  
  sum(N1.inqty) ,
  
  0 as OUT
  
  From dbo.OINM N1
  
  Where
  
  N1.DocDate &gt;= @FromDate and N1.DocDate &lt;= @ToDate and
  
  N1.Inqty &gt;0
  
  and N1.Warehouse = @Whse
  
  Group By
  
  N1.Warehouse,N1.ItemCode,N1.Dscription
  
  Union All
  
  select
  
  N1.Warehouse,
  
  N1.Itemcode,
  
  N1.Dscription,
  
  0 as OpeningBalance,
  
  0 ,
  
  sum(N1.outqty) as OUT
  
  From dbo.OINM N1
  
  Where
  
  N1.DocDate &gt;= @FromDate and N1.DocDate &lt;=@ToDate and
  
  N1.OutQty &gt; 0
  
  and N1.Warehouse = @Whse
  
  Group By
  
  N1.Warehouse,N1.ItemCode,N1.Dscription) a, dbo.OITM I1
  
  where
  
  a.ItemCode=I1.ItemCode
  
  Group By
  
  a.Itemcode
  
  Having sum(a.OpeningBalance) + sum(a.INq) + sum(a.OUT) &gt; 0
  
  Order By a.Itemcode
  </code></pre>