Lesson 11  効能4桁別売上数量シェアベスト20の帳票を作る

 この章では効能?桁(?=2,4,6)について学習する。効能?桁とは
    効能2桁・・・商品を大きく16個のグループに分け、そのグループ名に2桁の数字をつけたもの。
    効能4桁・・・効能2桁の後ろに2桁をつけ足し、効能2桁を細かく分類したもの。
    効能6桁・・・効能4桁の後ろに2桁をつけ足し、効能4桁を細かく分類したもの。なお、効能2,4,6の内容は別紙参照。
例として効能2桁の”11医薬品”を効能4桁で細かく分類すると39個(1110〜1178)に分類できる。また、効能6桁で効能4桁をさらに細かく分類すると198個(111002〜117897)に分類できる。

 1.洗濯洗剤の売上数量シェアベスト10(mshare

 

gunzip -c  /home/practice/Mine/Data/StoreMaster1/Dat/dat.gz          |\
mcut  f=27,14                                                     |\
sort                                                                   |\ 
msum  k=1   f=2                                                  |\
mshare  k=0  f=2                                                 |\
mjoin  k=1   m=/mnt/h01/Master/SYOMF/latest/Dat/dat   f=2         |\
mcut f=1,3                                                                |\
sort  +1  -2nr                                                            |\
mbest  k=0   best=10                                                   >xxtmp

 2.10752店の効能4桁別売上数量シェアベスト20の帳票を作る(その1)

 まず、上記で説明した効能4桁を使って”1998年度10752店の効能4桁別売上数量ベスト20の帳票”を作ることにする。なお、10752店とはファルマの加盟店の店舗No.である。
 

gunzip -c /home/practice/Mine/Data/10752/Dat/dat.gz |\
mselnum field=2 range=19980101_19981231                   |\
mdelnul field=32                                        |\
mcut    field=32,14                                    |\
sort                                                         |\
msum    key=1   field=2                              |\
mshare  key=0   field=2                              |\
sort  +2 -3nr                                            |\
mbest   key=0   best=20                             |\
mnumber key=0                                         |\
mcut    field=4,1,3                                      >dat11-1
 上のバッチで使用したデータは10752店の会員だけのデータである。では関西にある店舗から10752店だけを選択したい時はどうすればいいのか。それを考慮したバッチは以下のとうりである。

 3.10752店の効能4桁別売上数量ベスト20の帳票を作る(その2)(mselstr)

 

gunzip -c  /home/public/Data/Transaction/Kansai/Dat/1998*   |\
mselnum field=2 range=19980101_19981231        |\
mselstr field=1 string=10752                              |\ 
mdelnul field=32                                                |\
mcut field=32,14                                               |\
sort                                                                 |\
msum key=1 field=2                                           |\
sort +1 -2 nr                                                    |\
mbest key=0 best=20                                         |\
mnumber key=0                                                 |\
mcut f=3,1,2                                                     >dat11-2
 10752店を選択する際、mselstrでfieldを”店コード:1”で指定し、stringで店舗No.を入力する。この場合string=10752にするといい。なお、この処理はする必要がない。というもの、ここで使用したデータ(Kansai)は膨大な量のデータがあるため、複数の人がこの処理を行うと、処理が完了するだけでかなりの時間が必要になる。また、今後処理を行うのに店舗ごとでする機会もあるということを付け加えておこう。

 dat11-1の見やすい帳票は以下のとうりである。
 
echo '1998年度10752店の効能4桁別売上数量シェアベスト20'     >xxtitle
echo 'Lesson1-11にて作成'                           >>xxtitle
date                                                >>xxtitle
echo ': 順位: 効能4桁: シェア:'                     >xxfield

gunzip -c /home/practice/Mine/Data/10752/Dat/dat.gz |\
mselnum field=2 range=19980101_19981231                   |\
mdelnul field=32                                        |\
mcut    field=32,14                                    |\
sort                                                         |\
msum    key=1   field=2                              |\
mshare  key=0   field=2                              |\
sort  +2 -3nr                                            |\
mbest   key=0   best=20                             |\
mnumber key=0                                         |\
mcut    field=4,1,3                                      |\
mlist2 field=xxfield title=xxtitle                     >dat11-3