Ошибка Visual Studio на допустимом SQL - PullRequest
1 голос
/ 24 мая 2010

Я получаю досадную ошибку в Visual Studio для SQL, которая прекрасно работает.

SELECT InvoiceLines.LineID, 
       InvoiceLines.InvoiceID, 
       InvoiceLines.Text, 
       InvoiceLines.Rate, 
       InvoiceLines.Count, 
       InvoiceLines.Rate * InvoiceLines.Count AS LineTotal, 
       ((InvoiceLines.Rate * InvoiceLines.Count) * (1 + Invoices.VatRate / 100)) * (1 - CAST(Invoices.Discount AS money) * InvoiceLines.ApplyDiscount / 100) AS LineTotalIncVat, InvoiceLines.ApplyDiscount
  FROM InvoiceLines 
LEFT JOIN Invoices ON Invoices.InvoiceID = InvoiceLines.InvoiceID

То, что пытается сделать LineTotalIncVat, - это вычислить сумму для элемента счета-фактуры, добавив НДС и вычтя скидку, и да, вероятно, лучше сделать это в коде (если бы я мог)

Ошибка Visual Studio:

Произошла ошибка при разборе запроса [номер строки токена = 1, смещение строки токена = 14, ошибка токена = InvoiceLines]

Несмотря на то, что он будет проверяться и выполняться без проблем в построителе запросов ...

Ответы [ 2 ]

3 голосов
/ 24 мая 2010

Попробуйте заключить в скобки имена таблиц и столбцов, возможно, возникнут проблемы с синтаксическим анализом InvoiceLines.Count, поскольку Count - зарезервированное слово.Попробуйте [InvoiceLines].[Count].

0 голосов
/ 24 мая 2010

Решено

Удаление таблицы из набора данных и добавление ее снова с точно таким же SQL.мы должны были сделать это.

...