我有一个日历表,我想获取今天的计划项目并复制记录,保留大部分数据并对某些字段进行一些更改,效果很好。
问题在于调用存储过程。我需要在不同的表中创建另一条记录并返回范围标识 ID。
sp inserts 从 Update 中获取插入的数据并使用它来创建新记录,然后返回范围标识。
我尝试使用一个函数,但它不喜欢插入。我如何在这个语句中调用这个 sp?
UPDATE calendar_tbl
SET WO=0
OUTPUT
inserted.startDate,
dateadd(ss, 0, inserted.startDate),
inserted.text,
inserted.color,
inserted.tColor,
dbo.funcEpoch(inserted.startDate),
'',
inserted.id,
exec dbo.sp_create @AccountNumber,inserted.CompanyID ,inserted.LocationID, inserted.text,inserted.startDate, dateadd(ss, 0, inserted.startDate), inserted.UserID,'',
inserted.UserID,
inserted.LocationID,
inserted.CompanyID,
inserted.AccountNumber,
0
INTO
calendar_tbl(
startDate,
endDate,
text,
color,
tColor,
evLength,
rtype,
PID,
WOID,
UserID,
LocationID,
CompanyID,
AccountNumber,
WOorSchedule)
WHERE
(SELECT CONVERT(VARCHAR, startDate, 101)) = (SELECT CONVERT(VARCHAR, getdate(), 101)) AND
accountNumber = @AccountNumber