MSDE FunClub
Microsoft Data Engine FunClub
MSDE初心者向けメーリングリスト過去ログ[196]番
 
[TOP]>[MSDE初心者向けメーリングリスト過去ログ(196番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
ストアドプロシージャの再同期について

Date: Sat, 13 Apr 2002 04:14:03 +0900
From: "岡田 晃一" <who@sub.example.jp>


はじめまして、晃一といいます。よろしくお願いします。
質問の内容ですが
ストアドプロシージャの再同期についてなんですが、テーブルの主キーが
連結主キーの時はどのように設定したらいいのでしょうか?
ストアドプロシージャは

Alter Procedure Proc_日報明細
(
 @指定番号 int
)
As SELECT [売上日報明細].日報番号, [売上日報明細].行番号,
       [売上日報明細].数量, [売上日報明細].販売価格,
       [売上日報明細].原価率, [売上日報明細].商品ID, [商品テーブル].品名,
       [商品テーブル].仕入原価
FROM  商品テーブル INNER JOIN
       売上日報明細 ON
       [商品テーブル].商品ID = [売上日報明細].商品ID
where [売上日報明細].日報番号 = @指定番号
/* set nocount on */
 return

再同期ストアドプロシージャは

Alter Procedure Resync_日報明細
 (
   @no  int,
   @no2 int
 )
As SELECT [売上日報明細].日報番号, [売上日報明細].行番号,
       [売上日報明細].数量, [売上日報明細].販売価格,
       [売上日報明細].原価率, [売上日報明細].商品ID, [商品テーブル].品名,
       [商品テーブル].仕入原価
FROM [商品テーブル] INNER JOIN
       [売上日報明細] ON
       [商品テーブル].商品ID = [売上日報明細].商品ID
where  [売上日報明細].日報番号 = @no and [売上日報明細].行番号 = no2 )

/* set nocount on */
 return

VBAでこのストアドプロシージャをサブフォームのレコードソースにして
メインフォームの日報番号のテキストボックスの値をパラメーターにして表示してい
ます。
主キーが一つ(行番号)の時は、where 売上日報明細.行番号 = @no を上記の再同期
ストアドと変えて
VBAで再同期コマンドとして指定すると、きちんと商品テーブルの内容は表示されま
す。
ところが、

Me!日報明細.Form.InputParameters = "@指定番号 int = forms![売上日報]![売上日
報番号]"

Me!日報明細.Form.ResyncCommand = "Resync_日報明細 @no = ? and @no2 = ?"

Me!日報明細.Form.UniqueTable = "売上日報明細"

Me!日報明細.Form.RecordSource = "Proc_日報明細"

Me!日報明細.Form![日報番号].ControlSource = "日報番号"
Me!日報明細.Form![行番号].ControlSource = "行番号"
Me!日報明細.Form![商品ID].ControlSource = "商品ID"
Me!日報明細.Form![数量].ControlSource = "数量"
Me!日報明細.Form![品名].ControlSource = "品名"
Me!日報明細.Form![原価率].ControlSource = "原価率"
Me!日報明細.Form![仕入原価].ControlSource = "仕入原価"
Me!日報明細.Form![販売価格].ControlSource = "販売価格"

Me.Requery

連結主キー(日報番号と行番号)にして、上記のように指定しても、商品テーブルの内
容は
表示されません。でもエラーにはならなくて、テーブルにデータも更新できます。再
同期に行番号
だけ指定しても、日報番号だけ指定しても、同じ状況です。
ながながと書いてしまいましたが、解からなくて困っています。どうぞよろしくお願
いします。





[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。