Я пытаюсь изменить существующий вид с новым кодом:Запрос в виде не может быть сохранен
with cte1 as (
SELECT dbo.T_ActionTicketLog.ID, dbo.T_ActionTicketLog.ActionTicketID, dbo.T_Action.Artist, dbo.T_ActionTickets.ActionDate, dbo.T_ActionSeatsType.SeatType,
dbo.T_ActionPlaceSeats.Seats, dbo.T_ActionTickets.RowNumber, dbo.T_ActionTickets.SeatNumber, dbo.T_ActionTickets.Price, dbo.T_TicketStatus.Name AS Status,
dbo.T_Users.UserName, dbo.T_OrderTicket.OrderID, T_Users_1.UserName AS SalerName, dbo.T_Fiscal.DocNum, dbo.T_FiscalType.Name AS DocType,
dbo.T_ActionTicketLog.TicketOrderID, dbo.T_ActionTicketLog.StatusID, dbo.T_ActionTicketLog.UserID, dbo.T_ActionTicketLog.SalerID, dbo.T_ActionTicketLog.FiscalID,
dbo.T_ActionTicketLog.BarCode, dbo.T_ActionTicketLog.ReservDate, dbo.T_ActionTicketLog.Created, dbo.T_ActionTicketLog.Comments,
CASE WHEN StatusID IN (3, 10) THEN 1 ELSE 0 END
* ROW_NUMBER() OVER (PARTITION BY T_ActionTicketLog.ActionTicketID, T_ActionTicketLog.StatusID ORDER BY T_ActionTicketLog.Created) AS rn
FROM dbo.T_Users AS T_Users_1 RIGHT OUTER JOIN
dbo.T_ActionPlaceSeats INNER JOIN
dbo.T_ActionTicketLog INNER JOIN
dbo.T_TicketStatus ON dbo.T_ActionTicketLog.StatusID = dbo.T_TicketStatus.ID INNER JOIN
dbo.T_Action INNER JOIN
dbo.T_ActionTickets ON dbo.T_Action.ID = dbo.T_ActionTickets.ActionID INNER JOIN
dbo.T_ActionSeatsSubType ON dbo.T_ActionTickets.ActionSeatsSubTypeID = dbo.T_ActionSeatsSubType.ID ON
dbo.T_ActionTicketLog.ActionTicketID = dbo.T_ActionTickets.ID INNER JOIN
dbo.T_ActionSeatsType ON dbo.T_ActionSeatsSubType.SeatsTypeID = dbo.T_ActionSeatsType.ID ON
dbo.T_ActionPlaceSeats.ID = dbo.T_ActionSeatsType.SeatsID LEFT OUTER JOIN
dbo.T_Users ON dbo.T_ActionTicketLog.UserID = dbo.T_Users.ID ON T_Users_1.ID = dbo.T_ActionTicketLog.SalerID LEFT OUTER JOIN
dbo.T_FiscalType INNER JOIN
dbo.T_Fiscal ON dbo.T_FiscalType.ID = dbo.T_Fiscal.FiscalTypeID ON dbo.T_ActionTicketLog.FiscalID = dbo.T_Fiscal.ID LEFT OUTER JOIN
dbo.T_OrderTicket ON dbo.T_ActionTicketLog.TicketOrderID = dbo.T_OrderTicket.ID
),
cte2 as (
SELECT ActionTicketID, OrderTicketID, Created, TicketBarCode,
ROW_NUMBER() OVER (PARTITION BY ActionTicketID ORDER BY Created) AS rn
FROM T_TicketPrint
)
SELECT cte1.*, oa.TicketBarCode
FROM cte1
OUTER APPLY (
SELECT * FROM cte2
WHERE cte1.ActionTicketID = cte2.ActionTicketID AND cte1.TicketOrderID = cte2.OrderTicketID AND cte1.rn = cte2.rn
) oa
order by dbo.func_ConvertToInt(cte1.SeatNumber), cte1.ActionTicketID, cte1.Created
Когда я пытаюсь сохранить его, эта ошибка возникает: «Поручения пункта является недействительными в представлениях, встроенных функциях, производных таблицах, подзапросах и общих табличных выражениях, если также не указаны TOP, OFFSET или FOR XML. "
Что случилось с запросом?
Я замечаю у вас есть ',' в самом начале, что намеренно? – maam27
Попробуйте избавиться от начальной точки с запятой. – SouravA
Было намеренно. Но, когда я удаляю его, ошибка все еще существует. – tesicg