過去の桐井戸端BBS (桐ver.9)
22097 伝票レポートで集計行をグループ表示にはしたくない y-mori 2003/08/31-22:00
桐v9を使用しています。
ご指導ください。

仕事で使っている伝票を作っております。

伝票レポートです。
明細が12行あります。

この明細には出荷内容が表示されるのですが、
各品番の集計値も明細行に表示されます。

項目は
[品番][色番][色名][数量1][数量2][数量3][数量4][数量5]以上です。

[品番][色番][色名]は直前行と同じであれば非表示としたいのですが、

オブジェクトの属性ーー>印字属性ーー>グループ表示にチェックをすれば希望のようにはなるのですが。

出荷内容ではいいのですが、集計行はグループ表示になると具合がわるいのです。

そこで、表の[品番][色番][色名]に項目計算式にどのような式を書き込めばいいのか、
ご指導いただけませんか。

よろしくお願いいたします。
22098 Re:直前のデータの取扱方について 悲しげ 2003/09/01-00:42
記事番号22097へのコメント
どもっ、y-moriさん

>出荷内容ではいいのですが、集計行はグループ表示になると具合がわるいので
>す。

これだけでは、なぜどのように具合が悪いのかのイメージが湧きません。

書き方として

  希望としては○○○のようになって欲しいが、×××としかならない。

のような形で、○○○と×××の具体的レイアウトなんかを例示すると
いいんじゃないでしょうか?

22100 Re:直前のデータの取扱方について y-mori 2003/09/01-09:09
記事番号22098へのコメント
悲しげさん、ありがとうございます。

では、希望しているものを例であっぷします。
[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
KP-1   BK  ブラック    5    6   7    8   1
      B   ブルー      5    6   7    8   1
      Y   イエロー     5    6   7    8   1
KP-2   BK  ブラック    5    6   7    8   1
KP-3                5    6   7    8   1

以上のような形式にしたいのですが。

22102 Re:直前のデータの取扱方について 悲しげ 2003/09/01-12:37
記事番号22100へのコメント
「づれづれなるままに」だと見難いので、次のように書き換えました。
(ちなみに半角スペースを多用すると非プロポフォントでもずれます)

[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
KP-1   BK  ブラック    5    6   7    8   1
       B   ブルー     5    6   7    8   1
       Y   イエロー    5    6   7    8   1
KP-2   BK  ブラック    5    6   7    8   1
KP-3              5    6   7    8   1

ところで、このような展開にしたい、ってことを
>出荷内容ではいいのですが、集計行はグループ表示になると具合が
>わるいのです。
の文言から読み取ることはまず困難でしたね。(^^;)
ところで、上例で「集計行」と云うのはどこにあるのですか?(?_?)

それはさておき、こちらにあるのが類似例だと思われます?

あと、過去ログにも幾つかあったような気がします。(未検索ながら)

22103 Re:直前のデータの取扱方について うにん 2003/09/01-14:27
記事番号22102へのコメント
>ところで、上例で「集計行」と云うのはどこにあるのですか?(?_?)

つまり本当はこういうのじゃないですかね。集計が合計とは限りませんが、

>[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
>KP-1   BK  ブラック    5    6   7    8   1
>     B   ブルー     5    6   7    8   1
>     Y   イエロー    5    6   7    8   1
>KP-1              15    18   21    24   3

最後の行の[品番]が空白になって困ってる、とか。

>それはさておき、補完BBSの38にあるのが類似例だと思われます?
>http://www.fuku3.com/~habata/cgi-bin/bbs1/clip.cgi

とりあえず「集計行」の識別フラグをどこかに作っておかないと
他の明細と区別がつかないでしょう。
[品番]のとこを「KP-1 合計」にしたりでもいいですが。
あ、それやったら、自動的にグループ表示で済んでしまいますね。

22110 Re:直前のデータの取扱方について y-mori 2003/09/01-19:49
記事番号22103へのコメント
悲しげさん、うにんさんはご指導ありがとうございます。

どうも説明不足なようで、申し訳ありません。

[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
KP-1   BK  ブラック    5    6   7    8   1
       B   ブルー     5    6   7    8   1
       Y   イエロー    5    6   7    8   1

KP-1   BK          27      KP-1 B 27
KP-1    Y          27

とこんな具合です。

>最後の行の[品番]が空白になって困ってる、とか。

集計行は、同じでも、表示しないといけないのです。


22112 Re:直前のデータの取扱方について 悲しげ 2003/09/01-23:05
記事番号22110へのコメント
どもっ、y-moriさん

>[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
>KP-1   BK  ブラック    5    6   7    8   1
>     B   ブルー     5    6   7    8   1
>     Y   イエロー    5    6   7    8   1
>
>KP-1   BK  27      KP-1 B 27
>KP-1 Y 27

う〜ん、この例は以前のものよりもさらに意味不明さを増しています。(;_;)

何をどう集計しているのか、集計行はどこにあるのか?
で、この例は、希望する形なのか、希望しない形の方なのか?

もう少し具体的に説明した方がいいです。

ps
先にも書きましたが、空白は全角スペースをうまく使うことをお勧めします。その方がづれないので。
22116 Re:直前のデータの取扱方について y-mori 2003/09/02-00:11
記事番号22112へのコメント
悲しげさんは、意味不明の質問で申し訳ありません。

私の質問は、要するに直前値が同じであれば、未定義とし
同じでなければ、そのまま表示する。

この説明の方がわかりやすいと思います。が・・・・


22119 Re:直前のデータの取扱方について 佐田 守弘 2003/09/02-00:49
記事番号22116へのコメント
y-moriさん
私もこの質問の意味を考えておりますが、ますます分らなくなって来ております。
今までに論議されていない部分で、確認したい部分があります。

●項目計算式
#22097で、
>表の[品番][色番][色名]に項目計算式にどのような式を書き込めばいいのか
入力する項目ですから、項目計算式は設定しません。設定すると値を入力
できなくなりますが。

レポートで値を印刷するテキストオブジェクトに設定するというのなら分りますが。
ただしレポートの中では、#直前値が使えないので、ちょっと面倒になります。

●集計行とは
#22110で、
>[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
>KP-1   BK  ブラック    5    6   7    8   1
>     B   ブルー     5    6   7    8   1
>     Y   イエロー    5    6   7    8   1
>
>KP-1   BK  27      KP-1 B 27
>KP-1 Y 27
は、私にも良く分らない部分です。
文字がずれてしまってこうなっているのか、この様にずらして2行を1行に
したいのかも不明です。

●直前値と同じであれば印刷しない
>私の質問は、要するに直前値が同じであれば、未定義とし
>同じでなければ、そのまま表示する。
この意味は分ります。そしてそれは、簡単にはグループ表示によって行われますが、
それは既に行われている様ですね。

そして、
>集計行はグループ表示になると具合がわるいのです。
の部分です。
レポートのフッタ部に設定する集計行には、明細部のグループ表示と関係なく
項目値を表示する事はできるはずですが。
ただし、複数階層の集計を行うとき、大計に中計や小計となる項目値を表示しても意味がないので、
表示しない様な設定にするのが普通で、質問はこの事と関連しているのではないかとも思うのですが。

佐田守弘(KS-00119)
22127 Re:直前のデータの取扱方について y-mori 2003/09/02-12:46
記事番号22119へのコメント
佐田 守弘さんご指導ありがとうございます。

>y-moriさん
>私もこの質問の意味を考えておりますが、ますます分らなくなって来ております。
>今までに論議されていない部分で、確認したい部分があります。

大変わかりにくい質問・説明で申し訳ありません。

>●集計行とは
>#22110で、
>>[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
>>KP-1   BK  ブラック    5    6   7    8   1
>>     B   ブルー     5    6   7    8   1
>>     Y   イエロー    5    6   7    8   1
>>
>>KP-1   BK  27      KP-1 B 27
>>KP-1 Y 27
>は、私にも良く分らない部分です。
>文字がずれてしまってこうなっているのか、この様にずらして2行を1行に
>したいのかも不明です。

上から3行目までは明細行です。
4行目は空白行(明細行と、集計行の区別を付けるために。)
5行目6行目は集計行です。
集計行は、それぞれの品番・色番で集計し、
1行に2品番表示するようになります。

>●直前値と同じであれば印刷しない
>>私の質問は、要するに直前値が同じであれば、未定義とし
>>同じでなければ、そのまま表示する。

>この意味は分ります。そしてそれは、簡単にはグループ表示によって行われ
>ますが、それは既に行われている様ですね。

グループ表示を設定すると、明細行はいいのですが、集計行がこまるのです。
参考表示を見ていただいたらわかるように、
5行目と6行目にKP-1があります。
これは両方とも表示しないといけないのです。
よって、品番の項目には、グループ表示ができません。

>>集計行はグループ表示になると具合がわるいのです。
>の部分です。
>レポートのフッタ部に設定する集計行には、明細部のグループ表示と関係なく
>項目値を表示する事はできるはずですが。
>ただし、複数階層の集計を行うとき、大計に中計や小計となる項目値を表示
>しても意味がないので、表示しない様な設定にするのが普通で、質問はこの
>事と関連しているのではないかとも思うのですが。

レポートにはフッタ部の集計行は設定できません。
何枚もの枚数になることもありますので。

22128 Re:直前のデータの取扱方について 悲しげ 2003/09/02-14:44
記事番号22127へのコメント
どもっ、y-moriさん
やっと判りました。(^^;)

>[品番]  [色番][色名]  [数量1][数量2][数量3][数量4][数量5]
>KP-1   BK  ブラック    5    6   7    8   1
>     B   ブルー     5    6   7    8   1
>     Y   イエロー    5    6   7    8   1
>                          ←空白行1行
>KP-1   BK  27     KP-1  B  27     ←集計行モドキ
>KP-1   Y   27                 ←集計行モドキ

結論から云うと、こういうことはしない方がいいと思います。(^^;)
その理由は、データ型の問題とか、各行の横計を縦計に展開する問題とか
沢山ありますから、私なら次のようにして一丁上がりにします。(^^;)

[品番] [色番][色名] [数量1][数量2][数量3][数量4][数量5][数量計]
KP-1  BK  ブラック   5    6   7    8   1   27
      B   ブルー    5    6   7    8   1   27
      Y   イエロー   5    6   7    8   1   27

※[数量計]の項目計算式は
 #横合計([数量1],[数量5])
 または
 [数量1]+[数量2]+[数量3]+[数量4]+[数量5]

22132 Re:直前のデータの取扱方について y-mori 2003/09/02-20:31
記事番号22128へのコメント
悲しげさんどうもです。

>どもっ、y-moriさん
>やっと判りました。(^^;)

説明がへたで大変申し訳ありません。

>結論から云うと、こういうことはしない方がいいと思います。(^^;)

※私も複雑なことはしたくはないのですが。
 現在の伝票がそうなっていますので仕方ありません。
 やらなけらばいけないのです。
 うちの社長は古い人間ですので、パソコンの導入には渋い顔なんです。

 しかしみんなで、話し合って現在の伝票と同じであればいいとのことでGOになったのです。
 ですから、ヤラネバ!
 私が「できます」といったばかりに・・・・・!

 何とか配置は四苦八苦して現在の伝票と同じ用になりました。が
 あとは、この問題だけです。
 伝票に関しては・・・・!  

>その理由は、データ型の問題とか、各行の横計を縦計に展開する問題とか
>沢山ありますから、私なら次のようにして一丁上がりにします。(^^;)
>
>[品番] [色番][色名] [数量1][数量2][数量3][数量4][数量5][数量計]
>KP-1  BK  ブラック   5    6   7    8   1   27
>    B   ブルー    5    6   7    8   1   27
>    Y   イエロー   5    6   7    8   1   27

この伝票は全て文字列になっています。
よろしくお願いいたします。

22139 一種の集計値の印刷の方法 佐田 守弘 2003/09/02-23:54
記事番号22132へのコメント
y-moriさん

何となく分って来ました。
しかしその前に一言言わせて頂くと、
「OAとは、パソコン導入すればすむ話ではない」
と言う事です。パソコンの導入が目的なのではなく、本当の目的は、仕事の仕方
例えば、伝票のあり方や処理の仕組みを見直す事にあります。
伝票の改革もすべきだったのでしょうね。

質問の主旨をまとめると、
 品目毎の横集計を行う。 その横集計を横に印刷するのではなくて、
 明細行の下の段に、2データを組にして印刷する。
ですね。
ここでもう1つ確認なのですが、この2データの行が何行印刷する事になるのでしょうか。
そしてそれは常に一定なのか、可変なのかです。

前回の22119にて、「レポートのフッタ部に設定する集計行には、」と書いてしまいましたが、
これは最初の質問分の言葉に合わせたためで、レポートには集計行はありません。
集計を行うには、フッタ(ヘッダでも可能)に集計オブジェクトを作ります。

しかし、上記に言い直した主旨の集計は、縦集計ではないので、
集計オブジェクトでの集計ではできないと思います。
つまり桐の通常の集計機能ではない事を行おうとされていると思います。

これを実現するには、悲しげさんが書いたような形で、横に横集計のセルを作り、
ここで横集計するしかないでしょう。
ただし、その集計値を印刷するのではなくて、変数に代入します。
そしてフッタ部分でこの変数の値を印刷すれば良いわけです。

ここで、上記に書いた確認の、最大何行印刷するのかが関係して来ます。
一般論的に言えば、配列変数を使い、横集計のセルに、
#計算(#代入(&集計値[#明細連番],#横合計([数量1],[数量5])),"")
の様な計算式でも設定する事になるのかと思います。

佐田守弘(KS-00119)


22140 Re:一種の集計値の印刷の方法 y-mori 2003/09/03-00:17
記事番号22139へのコメント
佐田 守弘さんはどうもありがとうごいます。


>何となく分って来ました。しかしその前に一言言わせて頂くと、
>「OAとは、パソコン導入すればすむ話ではない」
>と言う事です。パソコンの導入が目的なのではなく、本当の目的は、仕事の仕方
>例えば、伝票のあり方や処理の仕組みを見直す事にあります。
>伝票の改革もすべきだったのでしょうね。

●伝票の改革はできません。
 得意先から伝票の形式を指定されているようです。
 私どもの業界は(秘)この伝票が通常伝票なのです。

>質問の主旨をまとめると、
> 品目毎の横集計を行う。 その横集計を横に印刷するのではなくて、
> 明細行の下の段に、2データを組にして印刷する。
>ですね。

●いえ質問は、「直前行のデータが同じであれば未定義にどうやってすればいいの」
 です。
 集計行などは全て完了しています。


よろしくお願いいたします。
22141 Re:一種の集計値の印刷の方法 悲しげ 2003/09/03-01:24
記事番号22140へのコメント
#22097
>オブジェクトの属性ーー>印字属性ーー>グループ表示にチェックをすれば
>希望のようにはなるのですが。
>出荷内容ではいいのですが、集計行はグループ表示になると具合がわるいのです。

#22110
>集計行は、同じでも、表示しないといけないのです。

#22127
>グループ表示を設定すると、明細行はいいのですが、集計行がこまるのです。
>参考表示を見ていただいたらわかるように、
>5行目と6行目にKP-1があります。
>これは両方とも表示しないといけないのです。
>よって、品番の項目には、グループ表示ができません。

#22140
>●いえ質問は、「直前行のデータが同じであれば未定義にどうやってすればいいの」
> です。
> 集計行などは全て完了しています。

う〜ん、こうして並べてみると、ますますもって不可解です。(^^;)

集計行は解決済みで、問題は明細部の表示なのですか?
明細部はすでにグループ表示にチェックを入れて希望どおりになっていたのではありませんか?
それとも、グループ表示にチェックは入れない(入れることができない)ってことが前提なのでしょうか?
それと、仰る「集計行」と云うのは、フッタなどの「本当の」集計行ではなく、
実は明細行なのだが、そこに集計的なデータを表示していると云うことなのでしょうか?

で、それらはさておいて、とにかく「直前行のデータが同じであれば未定義に」と云うことであれば、
大事なデータが入っている項目を実際に未定義にする訳には行きませんから、
作業用項目を使う方法を考えてみます。

1)印刷専用の項目として、仮称[品番ふう]、[数量1ふう]など
2)[flag]項目(集計的行であれば1、データ的行であれば0とする)

[品番ふう]項目の置換計算式(または項目計算式)は
  #cond([flag]=1,[品番],[品番]<>#直前値([品番],[品番]),1,"")
[数量1ふう]項目の置換計算式(または項目計算式)は
  #cond([flag]=1,[品番(?_?)],1,[数量1])

これも外したかな?(^^;)

22142 Re:一種の集計値の印刷の方法 悲しげ 2003/09/03-01:31
記事番号22141へのコメント
抜けてますね。(^^;)
×  #cond([flag]=1,[品番],[品番]<>#直前値([品番],[品番]),1,"")
○  #cond([flag]=1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")

22146 Re:一種の集計値の印刷の方法 うにん 2003/09/03-10:00
記事番号22141へのコメント
>それとも、グループ表示にチェックは入れない(入れることができない)
>ってことが前提なのでしょうか?
>それと、仰る「集計行」と云うのは、フッタなどの「本当の」集計行では
>なく、実は明細行なのだが、そこに集計的なデータを表示していると云う
>ことなのでしょうか?

そのことは一番最初に書いていましたね。
>各品番の集計値も明細行に表示されます。

つまり、「集計行」といってるのは桐の集計行とは全く無関係の話で、
たぶん、明細+空白1行+横集計した値を表示する「集計行」(2行固定?)
という(もはやデータベースでもなんでもない)表データを作ってあるのでしょう。
で、

>義に」と云うことであれば、大事なデータが入っている項目を実際に未定
>義にする訳には行きませんから、作業用項目を使う方法を考えてみます。

元データとは全然関係ない伝票に印刷するためだけのデータなので何を
やってもだいじょうぶでしょう。


22148 Re:一種の集計値の印刷の方法 y-mori 2003/09/03-10:53
記事番号22146へのコメント
うにんさんは 悲しげさん、ありがとうございます。

大変説明不足で申し訳ありません。
悲しげさんにご指導いただいた#条件設定でやってみます。

>つまり、「集計行」といってるのは桐の集計行とは全く無関係の話で、
>たぶん、明細+空白1行+横集計した値を表示する「集計行」(2行固定?)
>という(もはやデータベースでもなんでもない)表データを作ってあるのでしょう。
>で、

その通りなんです。伝票はワープロ的な感じです。

>>義に」と云うことであれば、大事なデータが入っている項目を実際に未定
>>義にする訳には行きませんから、作業用項目を使う方法を考えてみます。
>元データとは全然関係ない伝票に印刷するためだけのデータなので何を
>やってもだいじょうぶでしょう。

その通りなんです。
作業用のファイル数値のデータは文字列に変換したりしています。
ありがとうございました。

また、ご指導いただいた佐田さま、ありがとうございました。

22149 Re:一種の集計値の印刷の方法 悲しげ 2003/09/03-15:55
記事番号22148へのコメント
どもっ、y-moriさん
最後に1点だけコメントしておきます。

>悲しげさんにご指導いただいた#条件設定でやってみます。

「#条件選択」です。(^^;)

ついでに云えば、作業用のファイルに全て文字列として作り出しているのなら、
最初っから未定義値として書き出しておく方がむしろ
簡単だったりするかもしれません。どうせグループ表示機能は使わないみたいですし。

22151 Re:一種の集計値の印刷の方法 佐田 守弘 2003/09/03-21:34
記事番号22140へのコメント
y-moriさん
全コメントでも書きましたとおり、通常の集計等の手段ではできない事なので、
横集計をしながら、#代入関数(#set関数でも同じ)を使って、集計値を配列変数に代入します。
ここまではご理解頂けてますか?
前回記載したのは、数量の横集計値だけですが、全く同じ様にして、品番、色番
色名などもその行に対応する配列関数に代入して行きます。
これによって例えば&品番[2]には明細行2行目の品番の文字列が代入されるわけです。
これらを前回の式に記述すれば、例えば次の様になります。

#計算(#代入(&集計値[#明細連番],#横合計([数量1],[数量5]) \
   ,#代入(&品番[#明細連番],[品番]) \
   ,#代入(&色番[#明細連番],[色番]) \
   ,#代入(&色名[#明細連番],[色名]) \
   ,"")

これが理解されれば、
 >「いえ質問は、「直前行のデータが同じであれば未定義にどうやってすればいいの」
 >です。
はおのずと分ると思います。
例えば「集計」の2つ目であれば、1つ目の品番と同じであるかどうかを比較して、
違えば印刷する、同じなら印刷しない様な式を記述すればよいと思います。
例えば次の様になります。
 #条件選択(&品番[2]=&品番[1],&品番[2],1,"")

それとも「直前行のデータが同じであれば未定義」の意味は別の意味でしょうか。

佐田守弘(KS-00119)
22153 Re:なかなか難しい!! y-mori 2003/09/03-22:56
記事番号22141へのコメント
悲しげさんご指導いただいた件で再度質問です。

[品番1]に下記の式を一括で置換することにしました。

#条件選択([出荷区分]="明細",[品番],[品番]<>#直前値([品番],""),[品番],1,"")

ところが直前値が同じでも未定義になりません。
どこがおかしいのかわかりません。

よろしくお願いいたします。
22154 Re:なかなか難しい!! 悲しげ 2003/09/03-23:37
記事番号22153へのコメント
どもっ、y-moriさん

>[品番1]に下記の式を一括で置換することにしました。
>
>#条件選択([出荷区分]="明細",[品番],[品番]<>#直前値([品番],""),[品番],1,"")

私がイメージしていたのは、

 #条件選択([出荷区分]="集計",[品番],[品番]<>#直前値([品番],""),[品番],1,"")

の方です。つまり、集計行的データが[品番]に入っている時は、その集計行的データを持ってくる、と。
試す時間がないので、未検証ですが。

22157 Re:なかなか難しい!! y-mori 2003/09/04-10:06
記事番号22154へのコメント
悲しげさん申し訳ありません。
私の理解不足でした。

>#条件選択([出荷区分]="明細",[品番],[品番]<>#直前値([品番],""),[品番],1,"")

#条件選択([出荷区分]=1,[品番]・・・・・・・・)

出荷区分が文字列でしたが、数値にするとうまくいきました。
ご指導いただいた皆様、本当にありがとうございました。
感謝しています。

今後ともよろしくご指導ください。
22168 Re:なぜかだめでした。 y-mori 2003/09/04-21:04
記事番号22157へのコメント

一括処理に組み込みました。

置換 [品番1]=#条件選択([出荷区分]=1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")

するとうまくいかなくなりました。
[品番1]は全て表示してしまいました。

[出荷区分]は数値です。[品番1]は文字列です。

何が何だか・・・・?

この件で、肩がこり歯が浮いて、一本抜けそうです。

22173 Re:なぜかだめでした。 悲しげ 2003/09/04-21:58
記事番号22168へのコメント
どもっ、y-moriさん
「Re:なぜかだめでした。」ですか?

なぜ駄目なのかは、多分y-moriさん以外の誰にも判らないような気がします。
ものすごく特殊なケースの、ある特定のデータの結果そのようになっている
と云うことですから、この掲示板のように一般的に検討するような場でその
原因を究明していくことは、一般的に困難だろうと思います。

>置換 [品番1]=#条件選択([出荷区分]=1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")
>
>[品番1]は全て表示してしまいました。

強いて推せば、そうですね、例えば集計行的データの行以外の全ての行
(明細行的データの行)でも[出荷区分]の値が1になっているとか?



それと、前にも書いたことながら、印刷用データをどのように創出したかの
中味は全く判りませんが、それを作り出す過程で一部項目を未定義として
出力させる方が簡単だったりしませんか?
22174 Re:なぜかだめでした。 y-mori 2003/09/04-23:21
記事番号22173へのコメント
悲しげさんこんばんはです。

少々落ち込んでます。

この置換をかけたファイルは集計をして最終レポート用ファイルの一歩手前のファイルなんです。

このファイルのかなには、集計行はまったくなく、明細データしかありません。
ですから、このファイルに入ったデータに[出荷区分]に1を置換させています。
そして、繰り返しコマンドで、伝票番号ごとに抽出し、

置換 [品番1]=#条件選択([出荷区分]=1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")

この置換をかけています。

>それと、前にも書いたことながら、印刷用データをどのように創出したかの
>中味は全く判りませんが、それを作り出す過程で一部項目を未定義として出
>力させる方が簡単だったりしませんか?

最初から未定義にする方が大変だと思うのですが。
いかがでしょうか?

あ〜歯がいたい!
22175 Re:なぜかだめでした。 うにん 2003/09/04-23:47
記事番号22174へのコメント
>このファイルのかなには、集計行はまったくなく、明細データしかありません。

集計行というのはまた誤解を招きそうな表現ですが、

>ですから、このファイルに入ったデータに[出荷区分]に1を置換させています。

その意味を理解しているでしょうか?

>そして、繰り返しコマンドで、伝票番号ごとに抽出し、
>
>置換 [品番1]=#条件選択([出荷区分]=1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")
>
>この置換をかけています。

全行[出荷区分]=1になっているのに上記の式では、全行[品番]になるだけですが。

22176 Re:なぜかだめでした。 悲しげ 2003/09/05-00:51
記事番号22174へのコメント
どもっ、y-moriさん

>最初から未定義にする方が大変だと思うのですが。
>いかがでしょうか?

あ、そうでしたか。作った本人がそう仰るのなら、きっとそうなのでしょう。
私に「いかがでしょうか?」と問われても、私はその中味をまっったく知らないので答えようがありません。(^^;)

>このファイルのかなには、集計行はまったくなく、明細データしかありません。
>ですから、このファイルに入ったデータに[出荷区分]に1を置換させています。

この時点で集計行「的」データが全くなくて明細データだけなら、[出荷区分]を
「0」で置換するようなつもりで、私は当初このやり方を書きました。
(この場合、集計行的フラグ値が1、明細行的フラグ値が0または未定義)
しかしながら、なるほど、この時点でもし[出荷区分]を「1」で置換するのなら、
(明細行的フラグ値を1、集計行的フラグ値を0または未定義とするのなら)
引き続く置換計算式は次のようになるのではないでしょうか?

置換 [品番1]=#条件選択([出荷区分]<>1,[品番],[品番]<>#直前値([品番],""),[品番],1,"")


ps.
判り難いだろうから、右端を敢えて「,1,""」のように書いていますが、実は

置換 [品番1]=#条件選択([出荷区分]<>1,[品番],[品番]<>#直前値([品番],""),[品番])

でよいのです。
このように省略した場合は、必ず「それ以外は全て未定義」になりますから。

22177 Re:なぜかだめでした。 悲しげ 2003/09/05-01:14
記事番号22174へのコメント
あぅ、#22176は少々誤読も入ってましたので、別コメントを書きます。

>この置換をかけたファイルは、集計をして最終レポート用ファイルの
>一歩手前のファイルなんです。

「最初から未定義」と云うのは本当に「最初から」ではなくて(^^;)、最終局面よりも前の段階で……の含意ですから、
この「一歩手前」辺りがそれに該当しそうな気がします。
とすれば

>このファイルのかなには、集計行はまったくなく、明細データしかありません。
>ですから、このファイルに入ったデータに[出荷区分]に1を置換させています。

[出庫区分]を何らかの値で置換しておくのは、集計行モドキなのか明細行なのかの区分のためでしょうから、
この時点で集計行モドキが存在していないなら、
その区分を入れる必要はありません。
いえ、後のために必要ならば入れても構わないのですが、
その場合には、1と0を集計行モドキと明細行のどちらに当てるのかを明確に定義しておかなければなりません。
ともあれ、この時点では明細行だけであると云うことですから、
置換の計算式に集計行モドキとの区分判断は不要です。次のような感じでどうでしょう。

置換 [品番1]=#条件選択([品番]<>#直前値([品番],""),[品番],1,"")
あるいは
置換 [品番1]=#条件選択([品番]<>#直前値([品番],""),[品番])

22189 Re:なぜかだめでした。 y-mori 2003/09/05-16:42
記事番号22177へのコメント
悲しげさんありがとうございました。
うまくいきました。
説明不足で大変申し訳ありません。

>置換 [品番1]=#条件選択([品番]<>#直前値([品番],""),[品番])

これで完成しました。


戻る