0

サーバー上のスケジュールされたタスクでストアド プロシージャを実行しようとしています。ストアド プロシージャはクエリを実行し、在庫プログラムの手持在庫の合計を返します。

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".

私がどこで間違っているのかについてのアイデアはありますか?

4

1 に答える 1