Я пытаюсь запустить переменную в SQL-команде построителя выражений для OBDC.
Выражение выглядит следующим образом:
"SELECT Date(Curdate()) AS 'Load Date',
Sum(CASE
WHEN pomstatus = 'TBR'
AND Date(portdate) < Curdate() THEN 1
ELSE 0
END) AS 'Total Removes',
Min(CASE
WHEN pomstatus = 'TBR' THEN portdate
ELSE 'N/A'
END) AS 'Oldest Removes',
Sum(CASE
WHEN pomstatus = 'TBR'
AND Date(portdate) < Curdate()
AND Date(portdate) > Subdate(Curdate(), @[User::Days] )THEN 1
ELSE 0
END) AS 'Total New Removes',
Sum(CASE
WHEN pomstatus = 'TBR'
AND acctype = 'b'
AND Date(portdate) < Curdate() THEN 1
ELSE 0
END) AS 'SOHO Removes',
Sum(CASE
WHEN pomstatus = 'C-U'
AND Date(dd) < Curdate() THEN 1
ELSE 0
END) AS 'Total Confirmed U',
Min(CASE
WHEN pomstatus = 'C-U' THEN dd
ELSE 'N/A'
END) AS 'Oldest Confirmed U',
Sum(CASE
WHEN pomstatus = 'C-U'
AND discoservice LIKE '%s%'
AND Date(dd) < Curdate()THEN 1
ELSE 0
END) AS 'Total Confirmed Satellite',
Min(CASE
WHEN pomstatus = 'C-U'
AND discoservice LIKE '%s%' THEN dd
ELSE 'N/A'
END) AS 'Oldest Confirmed Satellite',
Sum(CASE
WHEN pomstatus = 'C-U'
AND Date(dd) < Curdate()
AND Date(dd) > Subdate(Curdate(), @[User::Days] ) THEN 1
ELSE 0
END) AS 'Total New Confirmed U',
Sum(CASE
WHEN pomstatus = 'pwo' THEN 1
ELSE 0
END) AS 'Total Pending WO',
Sum(CASE
WHEN pomstatus = 'etbr' THEN 1
ELSE 0
END) AS 'Total Escalated TBR',
Sum(CASE
WHEN pomstatus = 'wtnr' THEN 1
ELSE 0
END) AS 'Total Waiting TNR'
FROM POM.mainorders
WHERE acctype <> 'c';"
Я получаю следующую ошибку:
Ошибка всплывающего окна
Я протестировал тот же сценарий, но заменил 2 переменные числом 2, и он был успешным,так что я знаю, что сам скрипт работает.Мне кажется, что переменная не проходит должным образом.
Что касается того, как я заполняю переменную, переменная заполняется из задачи выполнения SQL, показанной ниже:
ВыполнитьЗадача SQL
Выполнение задачи SQL
Результат построителя запросов