You are on page 1of 10

INTER COMPANY DEMO

AG
SSN & SSD
7/9/12

Direct Sales

SSD (Distribution SSN (Importer Company) Order from External Customer Company) Order from Internal Customer Receive Receive Create Sales Order (Direct Delivery) Function -> Direct Delivery Create Purchase Order (automatic) SO automatic generated from SSD
Packing Slip PO (automatic) Packing Slip SO (automatic) Packing Slip Sales Order

Process Flow
SSD SSN

Sales Invoice Order Packing Slip Purch Order Packing Slip


Invoice

Direct Delivery

Inter Co

Sales Order Packing Slip Invoice

The Setups

SSD
Customer

SSN
Customer End

(Dir

: SSD

Deliver) Vendor : SSN End Point Purchase Request Item Ext Code
Combination

Point Sales Order Item Ext Code


Combination

NOTE
Requirement : Synchronize data item (virtual) Synchronize item dimension between 2 company SO Approved -> Create Direct Delivery SSN will create Delivery Order Ship to SSN will create Routing

Where invoicing should be done SSN ? SSD ? (see next page)

Tukar guling (inventory movement) will be handle by SSN Modification : Direct Delivery will be created on SO Approved (WF) Item Dimension will copy to all inter-co transaction Automatic generate external code when create item combination Additional Report to show link between inter-co transaction

SSD Setup

Parameter

Inventory Virtual OK Posting Invoice Post invoice auto (so) untick

SSD Invoice Posting SSN Invoice Posting (SO) will auto posting SSDs PO Create external code for each item dimension combination create job CPTInsertEx Add coding add table inventDimCombination insert, to generate auto ext code

Questions

Can we setup for :


Virtual

item master Virtual Item combination ? Virtual External Code ?

Status

Direct Delivery on WF Generate Auto Extern Code Report Copy item dim between PO & SO interCo

Code #1
Coding untuk triger form direct dilivery Testing Event : Modified Field Stage Args A = New Args(); A.Record(SalesTable::Find(SalesTable.SalesId)); New MenuFunction(MenuItemActionStr(SalesCreateDropShifment), MenuItemType::Action)).Run(A);

Code #2
void Insert2ExtCode() { ExtCodeValueTable ; _extValueTable; if (!ExtCodeValueTable::find(this.TableId,this.RecId,'ICO')) { _extValueTable.ExtCodeRelationTableId = this.TableId; _extValueTable.ExtCodeTableTableId = 175; _extValueTable.ExtCodeId = 'ICO'; _extValueTable.ExtCodeRelationRecId = this.RecId; _extValueTable.ExtCodeValue = strfmt("%1%2%3%4",this.ItemId,this.ConfigId,this.InventSizeId,this.InventColorId); _extValueTable.ExtCodeValueAlias = strfmt("%1%2%3%4",this.ItemId,this.ConfigId,this.InventSizeId,this.InventColorId); _extValueTable.ExtCodeSubModule = extCodeSubModule::None; _extValueTable.DimensionCode = SysDimension::Department; _extValueTable.insert(); }

Call di InventDimCombination.Insert

You might also like