Calling ОДС так:ТВФ UDF не возвращает те же данные, как SELECT,
SELECT
product_name,
SUM(quantity) AS SumQty,
SUM(face_value) AS SumFaceValue,
SUM(net_cost)AS SumNetCost,
SUM(face_value - net_cost) AS SumScripRebate,
organization_name
FROM getSalesSummary(@GLSCOrgId, @BeginDate, @EndDate) getSalesSummary
GROUP BY product_name, organization_name
ORDER BY product_name
урожайности:
"Chili's 1 25.00 22.75 2.25 Sample Organization 1
CVS/pharmacy 1 25.00 23.50 1.50 Sample Organization 1
Macy's 1 100.00 90.00 10.00 Sample Organization 1"
Используя логику UDF и тестирование результатов с SELECT:
SELECT
product_name,
SUM(quantity) AS SumQty,
SUM(face_value) AS SumFaceValue,
SUM(net_cost) AS SumNetCost,
SUM(face_value - net_cost) AS SumScripRebate,
organization_name
FROM @ReturnTable
GROUP BY product_name, organization_name
ORDER BY product_name
доходность:
"Chili's 4 100.00 91.00 9.00 Sample Organization 1
CVS/pharmacy 1 25.00 23.50 1.50 Sample Organization 1
Macy's 1 100.00 90.00 10.00 Sample Organization 1"
@ReturnTable является таблицей, возвращенной UDF и создается следующим образом:
INSERT INTO @ReturnTable(product_name,
unit_price,
quantity,
face_value,
net_cost,
organization_name)
(select * from @TablePartial UNION select * from @TableClosed)
тест с SELECT, и переменными возвращают правильные данные, но вызов ОДС не получает те другие 3 Перец чили записей. Я использую те же данные для параметров. Я довольно новичок в UDF, и я не уверен, почему он будет возвращать разные данные, чем то, что делает SELECT. Любые предложения и/или ответы?
может у генерировать скрипты для таблиц, данных и функции и сообщение здесь он может дать больше идеи – Thakur