過去の桐井戸端BBS (桐ver.9)
26302 結合表での絞り込みで同じ物が沢山ある場合にレコードを一つにして先頭の物と最後の物のみ取り出したい todays 2004/05/14-17:42
いつもありがとうございます。
備品管理簿もレポートを作る段階へと進みました。
そこで質問なのですが、よろしくお願いいたします。

元の表から結合表へと書き出すとして、レコードを絞り込む場合、項目[状態] が "共用中" とか、
項目[備品・借用品の別] が "備" とかでしぼるのは簡単ですが、項目[数量] が 1 ではない場合、
つまり同じ物が沢山ある場合に、レコードを一つにして、例えば項目[管理番号] については、
先頭の物と、最後の物のみ取り出すというようなことが可能でしょうか。
もちろん、最後の物の [管理番号] ための項目を結合表の方で計算項目として用意していることを前提とします。
以上、よろしくお願いいたします。
26304 Re:結合表での絞り込みについて 佐田 守弘 2004/05/14-23:00
記事番号26302へのコメント
todaysさん
例えば「椅子」が100脚あって、管理番号が21〜50の30行について、これらの行を1行に
まとめて、「管理番号:21〜50」といったデータを作り出したいという事ですね。

この複数の行を1行にまとめるのは、結合表の機能ではありません。
結合表を開いた後、その結合表を行集計する事によって類似のものをまとめて1行にします。
結合を行う事は必要な様なので、開いた結合表を行集計します。この際に、これをまとめる
ための項目として、例えば[備考]という様な項目を結合表の方で作っておきます。

[管理番号]は、整数型(数値型でも構わないが文字列型は不可)である事が前提になりますが、
[備考]の項目に、次の様な計算式を記述すれば、管理番号の最初と最後の番号を使って、
前述の様なまとめた値を作れます。
 "管理番号"+#文字列(#最小([管理番号]))+"〜"+#文字列(#最大([管理番号]))

これもこの話の前提になる事ですが、どの物品も、複数レコードあると言う前提で良いのでしょうか。
もし1件だけのものがあると、その場合でも「管理番号:1〜1」の様な表示がされます。
これが煩わしいなら、#条件選択を使って、最小値と最大値が異なる場合に、
上記の値を表示する様にすれば良いと思います。

佐田守弘(KS-00119)

26311 Re:結合表での絞り込みについて todays 2004/05/15-08:44
記事番号26304へのコメント
佐田 守弘さん、ありがとうございます。
>例えば「椅子」が100脚あって、管理番号が21〜50の30行について、これらの行を1行に
>まとめて、「管理番号:21〜50」といったデータを作り出したいという事ですね。

まさにその通りです。

>
>この複数の行を1行にまとめるのは、結合表の機能ではありません。
>結合表を開いた後、その結合表を行集計する事によって類似のものをまとめて1行にします。
>結合を行う事は必要な様なので、開いた結合表を行集計します。この際に、これをまとめる
>ための項目として、例えば[備考]という様な項目を結合表の方で作っておきます。
>

行集計を使えば良いのですね。

>[管理番号]は、整数型(数値型でも構わないが文字列型は不可)である事が前提になりますが、
>[備考]の項目に、次の様な計算式を記述すれば、管理番号の最初と最後の番号を使って、
>前述の様なまとめた値を作れます。
> "管理番号"+#文字列(#最小([管理番号]))+"〜"+#文字列(#最大([管理番号]))
>

実際は、管理番号はすでに記号化してあり、文字列となってますので、もう一工夫必要ですね。
でも、なんとかできそうです。数量を示す項目がありますのでそれを利用します。

>これもこの話の前提になる事ですが、どの物品も、複数レコードあると言う前提で良いので
>しょうか。もし1件だけのものがあると、その場合でも「管理番号:1〜1」の様な表示が
>されます。これが煩わしいなら、#条件選択を使って、最小値と最大値が異なる場合に、
>上記の値を表示する様にすれば良いと思います。
>

一個の物もありますので、ご教示の方法でやってみます。
ありがとうございました。

26355 Re:結合表での絞り込みについて todays 2004/05/18-15:01
記事番号26304へのコメント
申し訳有りません。先回教えていただいた、集計の使い方が今ひとつ良くわからないので、説明が悪かったのではと思い、
もう少し具体的にやりたいことを書かせて頂きます。
表のテーブルの項目のみ抜きだしたとして、同じ規格のものは数量の項目に反映させているとします。

品名   管理番号  数量
テーブル C-C-001   1
テーブル C-C-002   1
テーブル C-C-003   2
テーブル C-C-004   2
テーブル C-C-005   1
テーブル C-C-006   3
テーブル C-C-007   3
テーブル C-C-008   3
テーブル C-C-009   1
テーブル C-C-010   2
テーブル C-C-011   2
テーブル C-C-012   2
テーブル C-C-013   2
テーブル C-C-014   1
テーブル C-C-015   1

これを

品名   管理番号        数量
テーブル C-C-001          1
テーブル C-C-002          1
テーブル C-C-003 - C-C-004  2
テーブル C-C-005          1
テーブル C-C-006 - C-C-008  3
テーブル C-C-009          1
テーブル C-C-010 - C-C-011  2
テーブル C-C-012 - C-C-013  2
テーブル C-C-014          1
テーブル C-C-015          1

というように書き出したいわけです。
長々と書きましたが、よろしくお願いいたします。

戻る