2014年10月29日水曜日

iDempiere 現時点の主要マスターサンプル


現時点の主要なマスター設定

SKはコードが定義されていれば入力してもいいし、なければ空白のままにしておけば自動で連番で採番されます。
(下のビジネスパートナーグループはiDempiereの自動採番、その他は意味ごとに頭一文字に意味を持たせた番号を振っています。)

今後はこのマスターをベースに取引(トランザクション)を登録しながら必要なパラメータや動作に対して確認をしていきたいと思っています。
必要に応じて以下のマスターも追加変更あるかと思います。また、考え方が間違っているなど示唆いただければ有り難く思います。


組織 (Organization)
OrgSK
OrgNM
O001
HQ
O008
US Sales
O009
台湾工場

ビジネスパートナーグループ (Business Partner Group)
BPGroupSK
BPGroupNM
1000000
ヨドゴシ
1000001
Tier1 Customer
1000002
Tier2 Customer
1000003
Vendor
1000004
Staff

ビジネスパートナー(Business Partner)
Category
BPSK
BPNM1
BPNM2
Org
Employee
3001
佐々木
太郎
HQ

3002
西村
次郎
HQ

3003
田淵
HQ

3004
遠藤
雄一
US Sales

3005
西本
US Sales

3006
原田
一世
台湾工場

Category
BPSK
BPNM
配送先担当者
Shipment
Organization
Customer
1001
Best Boy
菊池
さやか

US Sales

1001
Best Boy
寺田
次郎

US Sales

1002
ヨドゴシ練馬店
大原
博史

HQ

1003
ヨドゴシ新宿店
戸口
一二三

HQ

1004
Amadon
伊藤
大介

US Sales

1005
ヤマデン電器
木内
かおる
ヤマデン池袋店
HQ

1005
ヤマデン電器


ヤマデン渋谷店
HQ

1006
練馬電気
江田
公子

HQ


Category
BPSK
BPNM





Organization
Vendor
2001
ホンへー
Note

OEM
*

2002
エレクティカ
志文
Camera

OEM
*

2003
ウィーストロン
Bill
Shin
Camera

OEM
*

2006
日本レンズ


Camera

Vendor
台湾工場

2007
Vendor1


Note

Vendor
台湾工場

2008
Vendor2


Desktop
CPU
Vendor
台湾工場

2009
Vendor3


Desktop
Body
Vendor
台湾工場

Material
製品カテゴリー(Product Category) & 製品 (Product)

M-Hier1SK
M-Hier1NM
M-Hier2CD
M-Hier2NM
M-Hier3CD
M-Hier3NM
MaterialCD
MaterialNM
Manifactured/Purchased
H001
Camera
H002
Portable


C001
Portable One
Purchase
H001
Camera
H002
Portable


C002
Portable Two
Purchase
H001
Camera
H003
HighEnd


C003
HighEnd A
Manifacture
H001
Camera
H003
HighEnd


C004
HighEnd B
Manifacture
H001
Camera
H004
MiddleRange

C005
MiddleRange A
Purchase
H001
Camera
H004
MiddleRange

C006
MiddleRange B
Purchase
H005
Memory
H006
SSD
H008
Class10
M001
2G class10
Purchase
H005
Memory
H006
SSD
H009
Class6
M002
2G class6
Purchase
H005
Memory
H006
SSD
H008
Class10
M003
4G Class10
Purchase
H005
Memory
H006
SSD
H008
Class10
M006
8G Class10
Purchase
H010
PC
H011
DeskTop


P001
Entry
Manifacture
H010
PC
H012
Note


P002
Entry note
Purchase

製品カテゴリーの階層は、カテゴリー登録時に親カテゴリーを指定することで作っていきます。
Menu -> Material Management -> Material Management Rules -> Product Category

カテゴリーの階層の定義方法は「親カテゴリー」を指定することで作成します。
この単純な構造により製品を分類管理したい階層数を柔軟に作成することができます。
このため、このブログの例であるカメラなどやメモリーの階層数の違いは問題なく実装できると思います。


注意:略号はそれぞれ
SK:Search Key
NM:Name/Description

2014年10月28日火曜日

iDempiere 想定業務フロー


-------------------------後日記-----------------
このときちょっと欲張りすぎて後に混乱してしまいました。
想定業務フローは一度見直してもっとシンプルなところからテストしてみることにしました。
---------------------------------------------------


製品カテゴリーで概要ワークフローにインパクトのある製品カテゴリーを想定しました。

想定業務フロー1:受注後発注 (受注先行型)
想定業務フロー2:事前発注・在庫販売 (発注先行型)
想定業務フロー3:パーツ事前発注・受注後組み立て


想定業務フロー1:受注後発注 (受注先行型)
Minotta Filmにとって非常に楽な業務フローです。
このビジネスでは基本在庫は持ちません。顧客から受注を受けてからベンダーへ発注します。在庫リスクもなく、仲介だけをしているイメージです。



想定業務フロー2:事前発注・在庫販売 (発注先行型)
あらかじめ必要数をベンダーへ発注し、Minotta Filmの倉庫に入荷します。
基本的に販売は引き当て可能在庫数を考慮しながら受注します。
今回はネガティブインベントリ(マイナス在庫)は認めないことにします。在庫がない場合はLTを顧客と相談し、OKであれば仕入れ先へ発注し、組み立てを行います。
想定業務フロー1(受注先行)との違いは、フロー1では顧客側は製品がすぐに手に入らない事を前提にしており、フロー2はすぐ手に入ることを前提にしているが、なければ相談することを想定しています。
(このフローは流れの概要を示しているので、上記想定は読みとることはできませんが、詳細化していく中で明らかにしていきたいと思います)

余談ですが、ここでは「あらかじめ必要数をベンダーへ発注する(予測)」に関しては触れません。いずれ拡張できたらと思っています。



想定業務フロー3:パーツ事前発注・受注後組み立て
基本的に想定業務フロー2と似ていますが、在庫しているパーツの組み立ては受注後となります。組み立て前が「デカップリングポイント」と想定します。


iDmpiere 想定組織、製品カテゴリー、パートナーグループ、パートナー

パートナーとかや製品などの登録の仕方だけを書こうとしていたが、やはりちと無理がありました。
多くのパラメータのどれを使用するのか、無視するのか?
また、パラメーターはどのように利用すればビジネスとして使いやすいのかなどは、まず想定するビジネスを実現するための「工夫」として「あみ出す」ものであったりするので、ここではビジネスの想定と設定を行ったり来たりしながら進みたいと思います。

というわけで、マスターとしてどんなビジネスを想定するのか(DRAFT)を考えてみます。



今回想定する商品構成から、以前このブログで作成したクライアントは破棄して新たに Minotta Film を作成することにしました。(すいません)

会社の想定としては、カメラ、メモリ、PCの製造・販売を行う会社です。
製造はDeskTop PCのパーツを仕入れて組み上げを行っています。
その他の製品について、設計は行いますが製造はOEMに依頼しています。(完成品を仕入れ)

製品カテゴリで Camera/Memory/PC 事業部をあえて製品カテゴリとして識別する形にしていますが、本来は組織で分けるべきかもしれません。
Organization として、事業の軸(縦軸)と機能の軸(横軸)を混ぜるのが良いソリューションかわからず、とりあえず製品カテゴリーで事業部を表現しておきます。(進めていくうちにメリット・デメリットが見えて来たらまた再構成します)

製品カテゴリは製品によって階層数が異なることがあると考えています。
ここでの例はMemory/SSD の階層は 他と異なり1階層深く分解されています。このように階層数がまちまちだった場合にどのような制約があるのか見ていきたいと思います。

また、上のグループで受発注特徴は後に出てくる概要ワークフローが異なって来ます。
1:事前発注・在庫販売
2:パーツ事前発注・受注後組み立て
3:受注後発注
このあたりは概要ワークフローでもう一度定義します。

次にビジネスパートナー
ここでも少し試してみようと思っていることが、、


ビジネスパートナーグループの使い方ですが、 iDempiere のサンプル(初期登録済クライアント)Gardenwordでは ビジネスパートナーグループはCustomer/Vendor/Staffとなっていました。Customer/Vendor/Staff は(基本的には)パラメタで設定・識別できると思いますので今ひとつピンときていません。
なにかしらの集計・評価単位とするためにはあらかじめ評価する単位(グループ)などの構成を決める必要があるわけですが、現時点もやもやしているのでとりあえず顧客を優先度(重要度)で分ける事と、もう一つ量販店など複数店舗のまとめる単位として使ってみようと思います。
例えば量販店でも、店舗ごとに独立性が高く、個別の店舗から発注を受けるが、支払いは本部一括であったり、あらかじめ本部が店舗への必要量は一括した発注を受けるが、配送先は各店舗であったりするケースがあると思います。
もちろんMinotta Film側として統一した構造として管理したいところですが、まず動きの特徴を把握するために混在した構造を試してみたいと思います。



2014年10月15日水曜日

品目の価格設定 その1  Price List Schema とはなんぞや?

製品の価格を設定していませんでした。
マスター登録フローは別途プロセスを明確にする必要がありますね。

とりあえずその場しのぎで価格設定。

Menu -> Material Management -> Material Management Rules -> Price List Setup

フローが出ます。

書き出してみると

1:Price List Schema
2:Price List
3:Discount Schema
4:Business Partner

の4ボックスで構成されています。
(ボックスの中の補足は省略。だって基本的に "Maintain ...."となっているだけですし。。)

登録の前に必要そうな情報を考えてみると。

価格には販売価格と購買価格があるはず、
販売や購買の価格は標準的と定義する価格と、キャンペーンなどによる特別な価格があるはず、
個別の売り買い(トランザクション)では状況に合わせて価格は変えられるはず、
標準とする価格であろうが、特定のキャンペーンの価格だろうが、個別の価格だろうが、トランザクションが発生したら、その価格は仕訳されなければならない。

要は売ったり買ったりしたら、基準となる価格がデフォルトでセットされていて、必要に応じて「ありがちな」(期間やボリュームディスカウント)価格を選んだり、個別に価格を設定できたりする。で、2重管理することなく(意識せず)仕訳処理がされる必要がありますね。

ただ、販売の時権限によってどの程度値引きしていいかとか制限も必要そうだし、 逆に購買の時は承認ワークフローの定義も必要そうですね。
本当はこの辺は想定するプロセスの詳細化をしてどのような業務となるのかをイメージ(デザイン)しなければなりませんよね。

今はちっと置いといて、何が出来そうなのかを見てみる事にします。

まずはじめに、、、
Price List Schema ってなんだ?(始めた瞬間に壁に打ち当たるとは、、)

------------------------------------------------------------------------------------------------------------------------
後日記:実際に動かしてみて動作を確認してみました。こちらも合わせて参照ください。
------------------------------------------------------------------------------------------------------------------------

日本語で起動して、画面の説明みてもいまいち、、、
"価格リストスキーマ
価格リストスキーマは、価格リストのために計算ルールを定義します。"
"Price List Schema
Price List schema defines calculation rules for price lists"
詳細を見てみると
"スキーマ詳細
取引割引価格リスト詳細です。
価格リストは、製品購入とカテゴリ割引に基づいて作成されます。 ここに記載されたパラメータは、価格リストの計算とコピーを可能にします。"
"Schema Line
Trade Discount Price List Lines
Pricelists are created based on Product Purchase and Category Discounts. The parameters listed here allow to copy and calculate price lists."


説明の下の計算式を見てみると

The Formula is
NewPrice = (Convert(BasePrice) + Surcharge) * (100-Discount) / 100;
if MinMargin <> 0 then NewPrice = Max (NewPrice, Convert(OrigLimitPrice) + MinMargin);
if MaxMargin <> 0 then NewPrice = Min (NewPrice, Convert(OrigLimitPrice) + MaxMargin);

Example: (assuming same currency)
Original Prices: List=300, Standard=250, Limit=200;
New List Price: Base=List, Surcharge=0, Discount=0, Round


もしかしたらこれは価格(定価・標準価格・限界価格)を パラメーターに従って自動的に(一斉に)変更するもの?
たとえば取引先によってとか、期間ごととか、

動きは後ほど確認するとして、とりあえず次に定義する「初期」の Price List を改訂するルールという理解で先に進みます。


Menu -> Material Management -> Material Management Rules -> Price List Schema

すでにデフォルトでなにか登録してありましたが、何か新規に作ってみます。
新規作成ボタンを押し、必須項目(赤のテキスト部分)を入力します。

仮に Winter Sales と登録してみました。

Winter Sales の価格改定について詳細を決めていきます。
下ボタンを押して、Schema List を作成します。

ここで必要な価格改定のルールを定義していきます。
この価格改定のルールを適用する取引先を入力してみます。
Business Parter のボタンをクリックして取引先を選択します。

取引先を検索するダイアログが出るのですが、私はくだらないことでちょっと悩みました。
登録済みの顧客名を検索しようとしてもリストが表示されません。

試しに仕入れ先として登録した会社名を検索するとリストに表示されます。

よく見てみると "Vendor" Yes/No を指定する項目があり、ここの初期値が Yes つまり仕入れ先となってたのが原因でした。な〜んだ。
わかってみればふ〜んってかんじです。


その後対象の製品の指定もしました。
ここでは Portable One という製品と仮定しています。


定価・標準価格・限界価格に対して、どのように価格を変えるかを定義していきます。


取引先や製品含め、この価格変更ルールを適用したい範囲を適宜指定すれば良いようです。
つまり、変更ルール適用を全取引先にするのか、特定取引先にするのか?
全品目を対象にするのか?カテゴリーを対象とするのか?個別製品を対象とするのか?
定価が対象?標準価格?限界価格?全部?

価格を定義するフローの最初にあるものの、必須ではないので取り急ぎ試してみるためには後回しでもよかったのかもしれません。

まぁ、はじめに理解しておくと後が楽ってことで、、


Surcharge というわからないものがあった。
私が知る「サーチャージ」は飛行機などで、燃料費の変動分として追加で取られるようなイメージだった、Wikiを見てみると、カードなどで支払う際の追加コストなども含まれるよう。
何に使えば良いのかまだわかっていないが、例えば緊急出荷時の追加料金計算などの算出に使えそう。。

以下 Wikiから引用

Surcharge (payment systems)

From Wikipedia, the free encyclopedia
Surcharge is an extra fee charged by card acceptant when paying with chequecredit Cardcharge Card or debit card (but not cash) to cover the cost of merchant service charge.[1] It may be prohibited by card issuers — at all (e.g. Visa and MasterCard) or when acceptant also accepts cards with prohibited surcharge. Law may force to allow or prohibit surcharge. No surcharge means that it's included in prices (even when paying with cash).