サーバー上のスケジュールされたタスクでストアド プロシージャを実行しようとしています。ストアド プロシージャはクエリを実行し、在庫プログラムの手持在庫の合計を返します。
sqlcmd.exe を実行するタスクをセットアップし、以下のクエリを .sql ファイルの変数として渡しました。問題は、SQL からエラーが発生しているため、正しい変数を通過していると 100% 確信が持てないことです。
以下は、手持ち在庫を計算するときにサーバーが実行するタスクです。
(@P1 int,@P2 int,@P3 bit,@P4 bit,@P5 bit)
declare @SessionID int
declare @Res int
exec @Res = stk_CompileStockOnHandOnDate
'2079-06-01',
null,
@P1,
@P2,
1,
@P3,
@P4,
@P5,
@SessionID out
select @Res Result, @SessionID SessionID
SQLCMD で表示されるエラー メッセージは次のとおりです。
Msg 1050, Level 15, State 1, Server SERVER\SQLEXPRESS, Line 1
This syntax is only allowed for parameterized queries.
Msg 137, Level 15, State 2, Server SERVER\SQLEXPRESS, Line 6
Must declare the scalar variable "@P1".
私がどこで間違っているのかについてのアイデアはありますか?