internal order by 屠夫.docx
- 文档编号:8951590
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:12
- 大小:535.04KB
internal order by 屠夫.docx
《internal order by 屠夫.docx》由会员分享,可在线阅读,更多相关《internal order by 屠夫.docx(12页珍藏版)》请在冰豆网上搜索。
internalorderby屠夫
内部订单(InternalOrders)
我的一位某名校的财务研究生好友这样对我说,我这CO业务太复杂,我谦虚地回答,一般这时候我都是很谦虚的,谁让我是中国SAP届第一老实人呢?
就SAP笑话最多了,我回答:
难道小CO不就那些破东西,他又说,哎,兄弟,我这流程复杂呀,我又回答:
你不要吓我,象我这样上了年纪的人禁不住吓很容易得心脏病的,流程你不自己最清楚吗?
你天天呆在企业除非你吃饭后啥也不想,否则能有多复杂呢?
最后,他没办法说:
你真是太谦虚了,我有点不好意思羞涩地回答:
兄弟您明知俺一向谦虚还这样夸人家,怪不好意思的,我这不也是为后生小青年做个表率吗?
虽然我现在已经谦虚了但我一定还会再接再厉.
是这样的,我一直不大明白,你说国内的ERP怎么那么Lan,现在不是有N个国外的优秀ERP系统也没见有几人去好好宰下再借鉴参考….
唉,难道现在SAP届最近很流行蒙人吓人吗?
先是,有个坛友,每次有问题他总大呼小叫的快来人呀,急呀,再不弄要死人啦,然后又喊:
那个杀猪的屠夫快来看看呀,我这有好多好多很大的牛等你宰呀,我当真了,磨快了刀赶去,靠,好大一群蜗牛@$%&
1订单主数据
[1]激活订单管理(Tcode:
OKKP)
想使用内部订单功能,OKKP将ordermanagement激活.
[2]定义订单类型(Tcode:
KOT2|KOT2-OPA|KOT2_FUNCAREA)
内部订单做什么用的呢?
首先看一个实例是我曾工作过的两个企业会计科目都有数千个,为什么这么多呢?
比如办公费要分出各部门的费用特别是生产部门由于企业有多种产品又要按产品细分,由于当时的系统只能从科目上去区分费用,科目被设置成真正的会计科目+部门+产品,这样光办公费用就建立了多个科目,按照这种思路,出熟千个科目就很正常,倒是很难为财务部门负责记帐的会计.
内部订单做什么用的,从不同的角度看有不同的答案,从费用归集角度来看,它和成本中心等是一个成本对象(COobject).
SAP提供了多少中成本对象?
(1)Order:
注意不仅内部订单,投资订单(IM),维修订单(PM),流程装配生产订单(PP)等都可作为
成本对象,平时MTO归集生产成本不都是使用生产订单吗?
(2)Costcenter:
成本中心,和
(1)是最常使用的两种成本对象
(3)Activitytype:
作业类型,OKKP必须将AA:
Activetype选上
(4)Salesorderitem:
OKKP必须选上salesorder,这样可将费用手工记到某销售订单
(5)Project/WBSelement
(6)Costobject(Processmanufacturing)
(7)Network/Networkactivities
(8)Businessprocess
(9)Profitabilitysegment:
找寻成本对象时,PSG似乎比costcenter更优先,请看CO-PA.
(10)Realestateobject
注意:
利润分析段PSG是成本对象,但是利润中心不是.
如图2-[1]模板订单,图2-[2]显示的是订单的类型,图2-[3]给定一个默认功能范围,如果建立这种类型的order,功能范围自动带出.
关于order的类型,KOT2你能看到各种内部订单,包括流程订单,生产工单,PM的维护订单等,SAP设计时认为这些东西处理起来有很多共同之处,但你看不到采购订单和销售订单,显然SAP认为这两种订单的流程更复杂所以另设了一套逻辑.
Ordercategory作用(更多请看onlinehelp,本书的目的并不是简单翻译帮助).
1.方便编号分配,不同的订单类型可给不同的编号.
2.控制标志比如允不允许计划,分类(关于分类请看本书的使用分类系统的批次和变式BOM实例)承若管理,允不允许记收入,这点和一般的成本中心一样,比如成本中心默认不允许记收入(KS02成本中心主数据Controltab页面可修改),请看图3-[6][7]
注意订单的这几个profille:
settlementprofile,planningprofile,budgetprofile和statusprofile.
图3-[2]一般是实际订单需要结算的要配置settlementprofile.
图3-[5]表示订单的数据保存多久后才能被archive(关于archive的用法请看本书的相关实例),图3-[7]表示不允许post收入/销售抵扣要素(costelementcategory11/12),
图3-[8]使用的是自定义的statusprofile,更详细请看例1设置订单审批流程.
图3-[9]表示订单一建立就被release,如不选你有忘记release,这订单是不能用于记帐的,通常
如你想使用订单审批流程,当然这勾就不选上.
图3-[12]你可定义个printform打印订单
图3-[13]屏幕字段选择,和字段状态组一样你决定那些自段是隐藏,显示,可输还是必输.
[3]维护订单编号范围(Tcode:
KONK)
维护订单的编号范围而已.
[4]定义状态主文件(Tcode:
OK02|BS02)
如图4,定义StatusprofileZ0000002,
图4-[2]表示statusnumber,
图4-[3]是假设IO必须经过STONE审判然后是部门经理然后是总经理审批后才可用于post.
图4-[4]表示选择一个初始的状态
图4-[5]关于此SAP举了一个实例,读者可自己按F1去看,它说假设状态A的statusnumber是
30,最低的status是10,状态B的statusnumber是40,最低的statusnumber是20,这样当
状态B激活后,状态X如过它的statusnumber是10,X就被deactivite.
在本例中,假设状态REJL(statusnumber2)的最低最高status都是2,就表示订单到了
REJL时REST就被deactivate,因为REST的statusnumber是1,而REJL的最低Status
都是2.
图4-[6]状态显示的位置排序和Priority,使用了statusnumber后都是1.
图4-[7]授权码,它由BS52建立,这个是用来审判控制权限的,RINT初始状态无授权码表示任何有KO01/KO02的user都可改变它.
图4-[8]如是新建的statusprofile(非copySAPdefault的),你定义这statusprofile是为InternalOrder的,Statusprofile适合于多种类order类型,包括salesorder,如果你觉得这statusprofile设计的很酷,也可分配给Salesorder.
图4-[9]KO01/KO02你将看到的userstatus,图4是一张合成图.
更详细请看例1.设置订单审批流程
分级审批还是并行审批?
通常企业的审批流程大部分是分级审批的,假设有这样的流程,IT工程师部要求采购部购买一些办公用纸,因为金额不大,只要IT主任或经理或采购主管或经理任何一人同意就行,就可设并行审批.
如图5,在此你可不为status建立statusnumber,并可不设置初始状态(使用statusnumber必须设置一个初始的状态),同时你可设置状态显示的位置Position如图5-[1],KO01建立订单你将看到图5-[3]的状态分布,此时任何人审批就可.
[5]定义受权码(Tcode:
BS52/BS53)
[6](Tcode:
KOV2)
[7]分配状态管理给订单类型(Tcode:
同[2]
例1.设置订单审批流程
几个常用的订单状态使用的Tcode(适合各种订单包括销售订单,采购订单除外)
BS02/BS03:
建立/显示statusprofile
BS22/BS23:
系统status维护/显示
BS32/BS33:
维护transaction和status关系.
BS42/BS43:
建立显示Statusselectionschema
BS52/BS53:
建立Status对应的授权Key
BSV1-4:
似乎被禁止.
BSVX:
设置系统status限制
BSVY/BSVZ:
设置System/userstatus限制
一位好坛问:
怎么我不能将物料发送到建立的内部订单,我有个外包流程要使用内部订单归集相关费用,还有结算规则也没有看到MAT,我准备将这些费用最后结算到外包件上.
我回答他:
你女朋友要你去买缝被子的针,你想起了小学时候学过”铁棒磨成针”,你觉得邻居SHERKY那家伙特别讨厌经常乱丢垃圾睡觉不洗脚几个月不洗的破袜子晾在阳台三里外都能闻到臭味看见MM色迷迷的样子还流口水经常和你过不去,于是你偷偷将人家窗户一铁棒给拆了,还弄碎了人家几块玻璃,然后你找了快石头去磨,磨了几个月还真的成针了,然后你拿去给你gf,你说这不是瞎折腾吗?
你为什么不直接使用生产订单呢?
专门copy一个订单类型不就Ok?
好了,我的意思是你要做通过上面几个tcode去忙乎一番应该是可以的,但是你没有不要这样瞎折腾.
嘿嘿:
我这是看IO的对象分类里有INVST(投资),OCOST(间接费用),PRODT(生产)和收入类的利润分析(PROFT),我以为PRODT应该可以所以想折腾一番
这时SHERKY跑来,问:
如何使用投资订单管理一个固定资产项目?
俺气的说不出话来:
哎,以前我以为你最多也就和那个不长进的YZZY一样也就问一些社会主义初级阶段的问题拖拖社会主义后腿应该还有可改造空间,现在你居然连原始社会的问题都问出来了,什么世界?
你在invenstmentmanagement小IMG一下不就Ok?
investorder也是IO….
业务背景:
企业要求使用内部订单管理追踪项目的成本费用状况,每个内部订单必须经过审批,比如首先经过STONE审批后交给部门经理审批最后必须经过总经理审批后才能使用.
参考方案步骤:
(1)分配AuthKey(Tcode:
OK02,BS02)
如图4,建立了四个状态,
1ZINT(无AuthKey),并且是订单的默认状态.
2REST(AuthKey:
ZSTO)
3REJL(AuthKey:
ZBJL)
4RELZ(AuthKey:
ZZJL)
(2)建立角色(Tcode:
PFCG)
如图例1-1,建立一角色ZIOREL,将它赋给userSTONEF,这角色应该包含KO01/KO02/KO03权限.
图例1-2-[1]你按Manually按钮手工加上authorizationobjectB_USERSTAT(图例1-2-[2]),
在按图例1-2-[3]加上auth.KeyZSTO,因为UserSTONEF将只能审批订单状态REST.
对于部门经理和总经理,同样建立一角色(实际情况中你也可不新建角色,你找到赋予给该用户的角色手工增加授权对象B_USERSTAT就可,关于SAP的授权原理请参考权限相关实例或咨询你家basis),部门经理的授权码包括ZSTO和ZBJL,总经理则全包括ZSTO,ZBJL和ZZJL,因为后两者可改变前面的审批流程,比如总经理认为这IO必须被否决撤消,于是他可回复到任何状态.
(3)禁止状态的业务交易
如图例1-3,最简单的方法就是将RINI,REST和REJL三状态禁止FIposting(你根据你自己的业务需求增加被静止的业务交易),知道被总经理审批后状态是RELZ才允许FIposting.
(4)更深层次需求
.coding写userexit.看看这几个鸟表TJ30,JEST,JCDS如你有非常特殊(其实就是变态)的业务需求,PFCG也不想用了,那就用程序写enhancement不说了,
**Changestatusbyfunctionmodulebypassingtheinternalnumber
**retrievedabove
CALLFUNCTION'STATUS_CHANGE_EXTERN'
EXPORTING
objnr=‘’
user_status=l_estat
set_chgkz='E'
EXCEPTIONS
object_not_found=1
status_inconsistent=2
status_not_allowed=3
OTHERS=4.
IFsy-subrc<>0.
MESSAGEs001(zsdmsg)."Failedtoupdateuserstatus
ENDIF.
CALLFUNCTION'STATUS_TEXT_EDIT'
EXPORTING
client=sy-mandt
flg_user_stat='X'
objnr=‘’
only_active='X'
spras=sy-langu
IMPORTING
e_stsma=pl_status_pro
user_line=pl_old_status.
FORMget_new_estatUSINGvalue(pl_new_status)LIKEbsvx-sttxt
value(pl_status_pro)LIKEjsto-stsma
CHANGINGpl_estatLIKEjest-stat.
DATA:
l_statusLIKEtj02t-txt04.
CLEARl_status.
WRITEpl_new_statusTOl_status.
CALLFUNCTION'STATUS_TEXT_CONVERSION'
EXPORTING
language=sy-langu
mode='E'
objnr=‘’
stsma=pl_status_pro
txt04=l_status
IMPORTING
status_number=pl_estat.
ENDFORM."sub_get_new_estat
例2.使用投资订单管理固定资产项目
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- internal order by 屠夫