5 返信 最新の回答 日時: Apr 3, 2012 10:36 AM ユーザー:jintakatomoz

    商品別の売上一覧を自動化する方法

    nagatuki

      タイトル

      商品別の売上一覧を自動化する方法

      フォーラムに投稿

      初めまして、ファイルメーカー初心者です。よろしくお願いします。
      商品の商品別の売上一覧を出来るだけ簡単に集計できる方法を探しています。新年度に間に合えばという感じの案件です。

       内容は、まず、あらかじめ別のソフトで、CSVデータで個人別に1つのイベントごとに注文データを出します。

       注文データの内容は

      1,4,6,6,8,9,10,100,1110,...
      2,5,5,8,8,8,12,18,20,35,235,500,.....
      3,5,5,8,8,82,102,128,200,305,1235,1300,...



      というように最初の数字は注文者番号(連番)で2つ目から商品番号、複数注文は同じ番号が連続して続き、商品番号自体は4桁程度(最大5000番位)。注文者数は一度に200人程度。1件の注文は最大100個、それ以上は複数に分かれます。

       このような条件で、商品番号XXXX番は何個売れたかという一覧と、イベントごとの上位一覧、年間を通しての上位一覧的なものを関数とスプリクトで、自動化作成できればと考えてます。

       ちなみにエクセルでやってみたのですが、自分のスキルが低いせいか、手作業が多く、時間もかかるのと、最終的に商品画像を取り込んでデータベース的なものにしたいので、ファイルメーカーでやってみたいのです。
       とはいえどこから手を付けたら良いのか、困っています。

       よろしくお願いいたします。

        • 1. Re: 商品別の売上一覧を自動化する方法
          J

          こんにちは

          まずはデータを正規化(?)したほうがよいと思います。

          たとえばですが

          1,4,6,6,8,9,10,100,1110,...

          という注文データは

          注文者1が商品番号4を1個、商品番号6を2個、商品番号8を1個、商品番号9を1個、商品番号10を1個、商品番号100を1個、商品番号1110を1個

          ということですよね(違っていたらすみません)。

          これを..

          1,4

          1,6

          1,6

          1,8

          1,9

          1,10

          1,100

          1,1110

          ...

          という感じに複数レコードにわけた方が後々やりやすいと思います。

          テーブルですが、上の注文者番号と商品番号の他に「イベント名」「日付」のフィールドをくわえて以下の5つのフィールドにします。

          イベント名:テキスト

          日付:日付

          注文者番号:数字

          商品番号:数字

          カウント:集計(カウント:商品番号)

           

          これでレイアウトをうまくt来れば商品番号xxxxは○○個うれたという一覧がつくれます。

          さてさて、データを正規化する方法ですが...別のソフトからの書き出しの形式を変更できるならその方がよいと思います。それが難しいならFilemakerに一度入れてからスクリプトでレコードに展開していく事になると思います。もう少し具体的に状況を書いていただけるとお答えできると思います。

           

          • 2. Re: 商品別の売上一覧を自動化する方法
            Shin

            書き出されたデータは、そのままで使えます。

            まず、生データをインポートするテーブルを用意します。1行が1レコードになります。

            そのテーブル内でデータを加工し、第2のテーブルへインポートします。このデータを使って,各集計が出来る様に設定すれば良いでしょう。

            http://dl.dropbox.com/u/9260632/FileMaker/FMTips/forum/forums4db3079fcc.fp7.zip

            いくつか、疑問が有ります。

             複数業にまたがった場合,注文書番号は同じ番号が来るのでしょうか。

             注文書番号と、注文者、日付等の詳細なデータは、紐づいているのでしょうか。

            • 3. Re: 商品別の売上一覧を自動化する方法
              nagatuki
               コメントありがとうございます。レスが遅くなってすいません。急に他部署の手伝いで、3月半ばまで毎日遅くまで肉体労働の日々になってしまい、
              返事が遅くなることを、あらかじめお詫びいたします。
              >Jさん。
               正規化はやはり必要な作業でしょうね。別のソフトからの書き出しは、
              ────────────────────────── ライン
                 1      2      3      4      5      6      7      8      9     10    商品番号
                                                1      2      1      1      1      2     売上枚数
              ────────────────────────── ライン
               こういうTXT形式の書き出しの形式もあるのですが、0枚がカウントされないのと、商品番号と売上枚数の区別がつかなくなりそうなので、前述の
              CSV形式を使おうと思った次第です。
               スクリプトで展開して自動化できれば、まさに願ったりかなったりです。
               具体的な状況というのは、最初の書き込みの通りで、以下実際のデータを抜粋して書き出しました。
              1,851,852,877,876,684,596,477,350,324,325,,,,,,,,,,,,,,,,,,,,,
              2,318,186,713,717,570,,,,,,,,,,,,,,,,,,,,,,,,,,
              3,678,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
              4,342,342,490,490,578,578,581,581,583,583,684,684,851,851,,,,,,,,,,,,,,,,,
              .
              .
              1 イベント1つごとに複数の注文書内容を別のソフトで入力。
              2 書き出す形式はCSV
              3 1行は1件の注文内容で100個まで記述
              4 それ以上は複数行になる
               例えばID1番の人が1から110番まで各1個注文したとするとCSVデータは
              1,1,2,3,4,5,6,7,8,9,10,~,100,
              1,101,102,103,104,105,106,107,108,109,110,
              2,...
              というようにID1は2行になります。ただ今まで1つのIDの注文で、そこまで多量の注文は今まではありませんが、ソフトの仕様がそうなっている
              ようです。
               追加条件としては、カンマは1番注文数の多い内容に合わせて、付いているようです。あと、注文はいったん締め切った後でも、注文が後々来る
              場合があるので、リレーションのような形でCSVデータが更新されると、連動して更新できるような形にしたいです。
              >Shinさん
               わざわざデータを作成していただき、ありがとうございます。
              >複数業にまたがった場合,注文書番号は同じ番号が来るのでしょうか。
               Jさんのレスにも書きましたが、101個以上の注文の場合には同じ注文書番号(ID)が来ます。
              >注文書番号と、注文者、日付等の詳細なデータは、紐づいているのでしょうか。
               今のところは、紐づいてはいません。というか、後付で付けていきたいと考えています。(注文日等で)
               アップされたデータを試したのですが(当方Pro11)、インポートテーブルでCSVデータを読み込もうとすると、CSVフィールドに1行全部は読み
              込めないようです。1行ずつコピーペーストするのでしょうか? それともやり方が悪いのでしょうか?
               もう少し詳しくご教授ください。
              • 4. Re: 商品別の売上一覧を自動化する方法
                Shin

                ちょっと言葉足らずでした。ファイルのインポートの際には、コンマを認識させない為に、タブ区切りファイルとしてインポートします。

                CSVとして認識させる方法もあります。インポートテーブルに、フィールドを101個作り、集計用のテーブルへ100回インポートを行なう方法です。フィールドを作るのが少し面倒ですが、あとはスクリプトで自動処理できます。

                • 5. Re: 商品別の売上一覧を自動化する方法
                  jintakatomoz

                  Jさんの様に正規化するのが本来でしょうが

                  CSVから取込んでからスクリプトで正規化データに変換するとか

                  CSVを取込んだデータを別ファイルのリレーションで計算させるとか

                  取込んでFileMakerのデータになれば

                  お好みの様々なデータに変化させる事が出来るので...

                  例えば、繰り返しフィールドに入れちゃうのもい〜かもね