3 返信 最新の回答 日時: Jun 17, 2015 5:03 PM ユーザー:parc_box

    ポータルで別テーブル(同一ファイル)の新規レコードを作成して、シリ...

    parc_box

      タイトル

      ポータルで別テーブル(同一ファイル)の新規レコードを作成して、シリアル番号として用意した「入庫ID」が加算されない。

      フォーラムに投稿

      お世話になってます。

      今回は、ポータルとリレーションについての質問です。

      同一ファイル(倉庫管理DB)の中に、倉庫管理と入庫管理という2つのテーブルを作成。
      倉庫管理レイアウト側に作成した入庫管理テーブルにレコードを追加するポータルエリアからレコードを追加した際、シリアル番号として設定してる入庫IDが先に作成したレコードと同じ値のまま変動しないという現象が発生してます。

      以前、別会社に勤めてた時は、同じようなものを作成してて運良く(?)なんの問題も発生しなかったのですが、今回、同じような感覚で作業を進めていったら、入庫IDが同じ内容になってしまいました(当然ユニーク値に制限してるので、エラーが出る)。

      入庫管理側でシリアル番号として指定して、増分も1に設定してた筈と思い、入庫管理側で直接新規レコードを作成すると設定もその通りでしたし、こちらのテーブルから新規レコードを作成すると、きちんと入庫IDの内容は増えていました。

      以前はなんとなく使えたので、そのまま使い続けていましたが、今回は詰まってしまいました。
      何処が悪いのでしょう。

      150607_%E5%90%88%E6%88%90.jpg

        • 1. Re: ポータルで別テーブル(同一ファイル)の新規レコードを作成して、シリ...
          sago350@未来Switch

          リレーションのキーが悪いです。

          入庫管理テーブルの入庫IDは、倉庫管理の入庫IDで紐付いているので、同じ値が入るのは当たり前で正しい動作です。

          入庫管理テーブルの倉庫番号と、倉庫管理テーブルの倉庫番号でリレーションを組めばいいでしょう。
          (レコードの単位が意図したものと違うかもしれませんが・・・)

          ■ダメな理由
          入庫管理テーブルの入庫IDはシリアル値なんですが、リレーションの条件では、倉庫管理テーブルの入庫IDを使っています。
          なので、常に倉庫管理テーブルの入庫IDが入庫管理テーブルの入庫IDにコピーされている状態になります。なので、シリアル値が無効になってしまっているんです。

          • 2. Re: ポータルで別テーブル(同一ファイル)の新規レコードを作成して、シリ...
            sago350@未来Switch

            本件とはあまり関係がないのですが、PARC_boxさんの質問の仕方が素晴らしい。
            回答するにあたっての情報が十分に提供されていたので、無いピースを想像やカンで補ったりする必要がまったく無かったです。
            リレーションの状況、レイアウトでの具体的な使用方法、全てが1枚の画像で提供されていて解りやすいしストレスが無い。
            そう、下手に文章で説明するよりはこういう画像で提供してくれた方がやりやすいんですよね。

            • 3. Re: ポータルで別テーブル(同一ファイル)の新規レコードを作成して、シリ...
              parc_box

              おあああ、ありがとうございます!!!

              レコード単位の意図するもの…の点が上手く説明できませんが、こちらが狙った通りの動作をしてくれる様になりました!!
              初めての食品会社勤務で「製造日と賞味期限は初めて見るなー」と参考書見ながらの作成。自分で考える点がおろそかになってたのかもですね。
              リレーションの状況も今になって「確認カレンダー(あった方が便利かなあというノリで作ってしまったもの)」も同一ファイル内のテーブルだったと思い出し、なんとも恥ずかしい、数年後とかに見返したら赤面してしまいそうな内容です。

              ありがとうございました。

              追伸──。
              いやあ、なんと言いますか、質問繰り返す内に「この辺が足りない」って聞き返されるだろうなと……。