闲人闲谈PS之三十六——项目状态控制

这篇具有很好参考价值的文章主要介绍了闲人闲谈PS之三十六——项目状态控制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

**惯例闲话:**最近感觉时间不够用,脑子有很多想法,但是到下笔却感觉总是下不了手,写完一段,感觉和自己想的差距很大,然后有全部删除…这难道就是传说中年纪大了,手脚不停使唤…这让闲人更加焦虑了,前篇还说立了flag,难道就要打退堂鼓——还有一种可能性,就是追求完美主义的后遗症,但愿是后者。
闲话到此为止,今天聊聊项目状态管理。

项目状态管理的应用场景

项目全生命周期管理中,项目状态是常见的管控点。常见的有,将项目分成前期、计划、执行、收尾以及竣工等状态。
项目状态的主要应用于统计分析和管控业务。统计分析很好理解,管理层需要企业当前项目的进展情况,工程企业中,总共多少项目,哪些项目处在投标阶段,哪些项目中标,哪些项目在设计阶段,哪些项目在施工阶段等等,这些都是都是影响管理层需要了解的关键的经营信息。管控业务,则相对比较细节化,对于企业中层管理者而言,是一个重要的管理措施,举例如下:

闲人闲谈PS之三十六——项目状态控制

通过上表可以看出,在不同的项目状态下,业务具有不同的管控点,大部分管控点均围绕项目的成本利润实现有关。下面就以上表为例,选取个别状态来说明SAP的状态配置和管控业务的实现过程。

相关技术配置

SAP的项目状态管理分为2大类,系统状态和用户状态。
闲人闲谈PS之三十六——项目状态控制

系统状态常见的有创建状态CRTD、下达(REL)、技术性完成(TECO)、关闭(CLSD),系统状态是SAP固有的标准配置,为各个模块通用,不可变动。可以通过事务代码BS22来查看相应的系统状态下的受控业务。举例,查看创建状态的受控范围。

闲人闲谈PS之三十六——项目状态控制闲人闲谈PS之三十六——项目状态控制

如果想改变系统状态的受控内容,如下图,则双击状态编码上I0001,对相应的业务动作上单选框上做勾选即可。但是,笔者强烈的反对这样改配置,系统状态是其他模块公用的,一改必然会影响其他模块的使用。在笔者参与过的实施项目中,曾经出现过更改系统状态造成模块之间冲突事件,比如把PS模块创建CRTD状态的控制点改为可以货物移动,那么PP模块的生产订单在CRTD状态也可以领料发货,此类类似的情况屡见不鲜,教训也是惨痛的。这就是为何禁止这样修改系统状态控制内容的原因。

闲人闲谈PS之三十六——项目状态控制
因此,PS模块实施,必然要启用用户状态功能。PS模块可以启用状态管理的有项目定义、WBS、网络三个结构对象,配置方法一样,我们以最常用的WBS为例,配置如下:

第1步: WBS状态参数文件配置
操作路径 项目系统->结构->实施结构->工作分解结构(WBS)->工作分解结构用户状态->创建状态参数文件
事务代码 OK02
配置说明 SAP经典的参数文件配置,用户状态的核心配置。配置之前,需要业务确认的文件有,状态清单,每个状态受控的业务清单。
配置内容
配置路径如下。
闲人闲谈PS之三十六——项目状态控制
选中PS000002 WBS元素状态参数文件,点击复制按钮生成ZPS0003自定义状态参数文件并保存。双击新定义的状态参数文件之后,进入主配置界面,按照蓝图确定好的状态配置。

闲人闲谈PS之三十六——项目状态控制

配置参数说明如下:
状态编号:从准备10——关闭60,编号间隔按照10。 这里有个思考,为何状态编号补按1-6这样的间隔来设置?我们在SAP中出处可见这种有别于常见自然数顺序的排序编号,如网络作业编号0010、0020,生产订单工序0010、0020……经历过蓝图流程反复变更就知道这其中奥妙。比如系统刚配置完成,用户想在准备和计划状态之间,增加一个状态投标,那问题来了如果按照1-6这样的编号规则,那么新增的投标状态自然得从7号编号,但是从实际应用排序上,应该排在1,2之间,这样便于使用,不至于引起误解。但是计算机的排序是按照编码,所以这就产生了矛盾。那么解决这个问题的方法,就是扩大编码间隔的容量,这就很简单了,用编号11即可轻松解决,这种解决方案让人拍案叫绝,这就不得不佩服SAP的设计思路。所谓大道至简,大抵如此。
状态(ID)和短文本:Z010~Z060,对每一个用户状态定义一个ID,以及描述。ID编码规则同上。状态ID会在TJ30T中保存,可作为BAPI输入参数改变WBS状态。在后续BAPI章节做详细介绍。
最低状态和最高状态:每一个当前状态可退回去最低和最高状态序号。如图配置,20计划状态,设置10,30,表示当前状态如果为20时候,可以退回到10准备状态,以及上升到30施工状态。在业务上,通常会有这样的考虑,项目状态具有连续性,不得跳序,如计划状态时候不能直接到竣工或关闭状态,同样道理,施工状态也不能直接跳回到准备状态。
闲人闲谈PS之三十六——项目状态控制

请读者思考,如果允许施工状态能直接退回到10准备状态,升级到60关闭状态,应该如何设置?
授权代码:每一个用户状态的操作授权码,当绑定授权代码之后,只有授权的用户才能去修改状态。如图配置,ZPS00001财务部门的授权,ZPS00002计划部门授权,表示对应的WBS用户状态只能由相应的授权用户来操作。
双击其中一个状态编号20计划,进入业务管控配置页面。
闲人闲谈PS之三十六——项目状态控制

点击 闲人闲谈PS之三十六——项目状态控制
进入详细的业务动作选择清单。注意这里所列的业务动作清单,是系统标准的功能,暂不支持自定义的事务功能。我们以请购和采购的控制点为例,希望能实现项目在计划Z020阶段,不能进行物资请购和采购。
在业务控制栏位下滚动查找,找到材料采购定单和材料采购申请,单选禁止,保存。

闲人闲谈PS之三十六——项目状态控制

业务事务这个栏位中有比较多的选项,除了采购申请和采购订单的控制之外,结合常见的业务控制策略的选项说明:
控制物料移动:发货,发货过账,货物移动,采购定单货物接收
控制成本记账:FI: 统计记帐FI: 记帐
控制预算调整:锁定预算,预算补充,预算
控制销售单据:建立销售订单、建立开票凭证
具体每一个事务动作的控制,可边设置边做测试。

统状态是WBS(其他业务对象也适用)必填的属性,这就意味着,每个用户状态必然会对应一个系统状态,而且是唯一。笔者的结论,应在系统状态的基础框架下设置用户状态,用户状态对应唯一的系统状态。对于系统状态对应,笔者根据经验做如下对照:

闲人闲谈PS之三十六——项目状态控制
设计用户状态的前提,需要了解系统状态的详细内容,避免出现,用户状态和系统状态的控制逻辑冲突,用户状态对系统状态一对多。

闲人闲谈PS之三十六——项目状态控制系统状态和用户状态联动。业务要求竣工和系统TECO状态联动。按下图配置,将技术实现动作的设置选中。注意这里的联动关系,区分主动和被动,系统状态主动,用户状态被动触发。

闲人闲谈PS之三十六——项目状态控制

第2步: 用户状态的授权码
操作路径 项目系统->结构->实施结构->工作分解结构(WBS)->工作分解结构用户状态->定义WBS的授权码
事务代码 BS52
配置说明 用户状态的授权操作码定义。用于控制状态的修改权限。
配置内容:
配置2个授权码,用于步骤1中状态码的修改权限。授权码可按照部门也可按照状态清单每一个都定义。如果对于管控的颗粒度不是很高,可按照部门,本例按照部门来设置。
闲人闲谈PS之三十六——项目状态控制
第3步: 状态参数文件分配给项目参数文件
操作路径 项目系统->结构->实施结构->工作分解结构(WBS)->创建项目参数文件
事务代码 OPSA
配置说明 用户状态参数文件分配给项目参数文件
配置内容
将状态参数文件分配给项目参数文件后,用户状态对项目生效。注意,更改凭证勾选,勾选后,任何修改状态的操作都会留下日志备查。否则,不会有日志保存,无法查询历史记录。切记要勾上。
闲人闲谈PS之三十六——项目状态控制

其他模块配合

闲人闲谈PS之三十六——项目状态控制

前台应用

第1步:建项目并改用户状态
操作路径
事务代码 CJ20N
操作岗位 计划管理部门
前置业务 项目前期结束,进入计划阶段
操作输出 项目和状态更改
操作内容:
创建项目1520000199,为了测试出差异,直接下达,将用户状态改为Z020 计划。
闲人闲谈PS之三十六——项目状态控制
闲人闲谈PS之三十六——项目状态控制

第2步:建采购申请的控制
操作路径
事务代码 ME51N
操作岗位 计划管理部门
前置业务 项目前期结束,进入计划阶段
操作输出 禁止建采购申请提示
操作内容:
ME51N建采购申请,系统提示:用户状态Z020(计划)是活动的。根据此状态,不允许事务’材料采购请求’。验证功能已生效。这里我们可以发现,虽然系统状态是REL,允许采购申请或采购订单,但是由于WBS启用了用户状态控制,在Z020用户状态的控制下,禁止用该WBS创建采购申请。这里可以推断,用户状态和系统状态,对业务的控制,是串联关系,必须同时满足才允许业务执行。从这个角度分析,笔者的结论是,系统状态的控制事务清单应包含用户状态控制事务,举例说明,系统状态REL控制了100种事务业务,那么REL状态下的用户状态,应在这100中事务业务中进行选取。避免出现,系统状态禁止的业务,在用户状态中可以被允许。
闲人闲谈PS之三十六——项目状态控制

测试授权码对用户权限的控制

第1步:建2个角色
操作路径
事务代码 PFCG
操作岗位 IT后台管理
前置业务 业务蓝图的权限控制策略
操作输出 角色授权
操作内容:
进入角色权限对象参数维护界面,建角色Z_PS001_F804_01(财务人员),插入权限对象B_USERSTAT。授权参数中STSMA是状态参数文件,选择自定义的ZPS00003,对象类型OBTYP则选择PRN,这里可以点开搜索帮助在列表中选择,BERSL选择授权码ZPS0001。
闲人闲谈PS之三十六——项目状态控制

再建一个角色Z_PS001_F804_02(计划人员),其他参数同上,授权码配置维护ZPS0002

闲人闲谈PS之三十六——项目状态控制
第2步:计划岗位操作
操作路径
事务代码 CJ20N
操作岗位 计划岗位
前置业务 计划人员误操作项目进入计划阶段,出现特殊情况需要将项目状态撤回到准备状态
操作输出 计划人员未授权计划状态的授权码,禁止操作提示
操作内容:
系统提示无授权
闲人闲谈PS之三十六——项目状态控制
第3步:财务岗位操作
操作路径
事务代码 CJ20N
操作岗位 计划岗位
前置业务 项目进入计划阶段,财务人员误操作状态改到施工状态
操作输出 财务人员未授权计划状态的授权码,禁止操作提示
闲人闲谈PS之三十六——项目状态控制

再测试下财务改回准备状态。

闲人闲谈PS之三十六——项目状态控制
第4步:状态联动
操作路径
事务代码 CJ20N
操作岗位 计划岗位
前置业务 项目进入竣工阶段,计划岗位做系统状态TECO
操作输出 TECO技术完成设置后,用户状态自动变成50竣工
操作内容:
实际测试中,我们在Z020计划状态做TECO,系统提示报错。这个错误信息。再一次验证了在用户状态逐级改变的策略下,系统状态变更也遵循配置规则。

闲人闲谈PS之三十六——项目状态控制
逐级更改用户状态到40 收尾。做TECO操作,用户状态变到了50 竣工状态

闲人闲谈PS之三十六——项目状态控制

小结

从这一测试过程中,我们发现,WBS系统状态REL,TECO,CLSD,通过用户状态的联动关系设置,可以对系统状态的设置起到约束的作用,从而有效解决实际应用场景中的一些管控需求,比如项目不到收尾状态不能TECO,可以用这个思路来解决问题。
需要注意的是,部分场景下,通过MRP自动跑出采购申请,则不受状态控制。这个就需要在MRP程序中做相应的增强干预。文章来源地址https://www.toymoban.com/news/detail-401619.html

到了这里,关于闲人闲谈PS之三十六——项目状态控制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 架构设计内容分享(一百三十六):Spring AI 项目简介

    目录 1、概览 2、Spring AI 的主要概念 2.1、高级的 Prompt 和 AiResponse 3、Spring AI 入门 4、Spring AI 实践 4.1、在 Spring Boot 中注入 AiClient 4.2、使用 PromptTemplate 配置查询 5、Error 处理 6、总结 Spring 通过 Spring AI 项目正式启用了 AI(人工智能)生成提示功能。本文将带你了解如何在 Spri

    2024年02月22日
    浏览(47)
  • 玩以太坊链上项目的必备技能(Constant 和 Immutable 状态变量-Solidity之旅十六)

    constant(常量) 说到 常量 这一概念,拥有现代编程经历的您,对这一词再熟悉不过了。 常量 , 常量 ,顾名思义便是变量值始终不变,这在很多面向对象程序语言中都有。 相对 Solidity 来说,它也是支持 常量 的。 假若将 状态变量(State Vriable) 声明为 constant(常量) ,而

    2024年02月02日
    浏览(49)
  • YOLOv5、v7改进之三十一:CrissCrossAttention注意力机制

     前 言: 作为当前先进的深度学习目标检测算法YOLOv7,已经集合了大量的trick,但是还是有提高和改进的空间,针对具体应用场景下的检测难点,可以不同的改进方法。此后的系列文章,将重点对YOLOv7的如何改进进行详细的介绍,目的是为了给那些搞科研的同学需要创新点或

    2024年02月10日
    浏览(51)
  • redis基础(三十六)

    安装redis、配置redis 目录 一、 概述 (一)NoSQL 1、类型 2、应用场景 (二)Redis 二、安装 (一)编译安装 (二)RPM安装 三、目录结构 四、命令解析 五、redis登录更改 1、发现问题 2、解决办法 六、数据库操作 (一)登录数据库 (二)帮助信息 1、help 命令字 2、tab补齐 (三

    2024年02月14日
    浏览(40)
  • Python工具箱系列(三十六)

    基于Docker的数据库开发环境 前文介绍了sqlite/mysql/mssql等数据库系统在ubuntu的安装与部署过程,相对是比较复杂的,需要耐心等待下载以及排除各种故障,对于开发人员来说是不太友好。在某些情况下,开发人员要测试在多个数据库环境下软件的正确性,需要部署多个数据库,

    2024年02月09日
    浏览(45)
  • vue快速入门(三十六)组件通信-子传父

    注释很详细,直接上代码 上一篇 新增内容 子传父之子组件传递方法与值 子传父之父组件接收方法与值 源码 App.vue MyTest.vue 效果演示

    2024年04月25日
    浏览(38)
  • ReactNative进阶(三十六):iPad横屏适配

    应用RN技术栈实现APP上线后,业务部门领导会上反馈未实现ipad横屏全屏展示,用户体验较差。由此,一场pad横屏全屏展示的APP调优工作由此开展。 时间紧任务重,技术实现上,考虑到存量功能代码改造工作量,RN层面对于横屏改造工作量较大,故RN层面整体实现横屏展示时间

    2024年01月25日
    浏览(42)
  • MySQL基础(三十六)其他数据库日志

    千万不要小看日志 。很多看似奇怪的问题,答案往往就藏在日志里。很多情况下,只有通过查看日志才能发现问题的原因,真正解决问题。所以,一定要学会查看日志,养成检查日志的习惯,对提升你的数据库应用开发能力至关重要。 MySQL8.0 官网日志地址:“ https://dev.mys

    2024年02月05日
    浏览(62)
  • 【实战】 九、深入React 状态管理与Redux机制(一) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(十六)

    学习内容来源:React + React Hook + TS 最佳实践-慕课网 相对原教程,我在学习开始时(2023.03)采用的是当前最新版本: 项 版本 react react-dom ^18.2.0 react-router react-router-dom ^6.11.2 antd ^4.24.8 @commitlint/cli @commitlint/config-conventional ^17.4.4 eslint-config-prettier ^8.6.0 husky ^8.0.3 lint-staged ^13.1.2 p

    2024年02月15日
    浏览(39)
  • C语言第三十六弹---文件操作(中)

    ✨ 个人主页:   熬夜学编程的小林 💗 系列专栏:   【C语言详解】   【数据结构详解】 文件操作 1、文件的顺序读写 1.1、顺序读写函数介绍 1.1.1、fgetc 与 fputc 1.1.2、fgets 与 fputs 1.1.3、fscanf 与 fprintf 1.1.4、fread 与 fwrite 1.2、对比一组函数 总结 函数名 功能 适用于 fgetc 字符输

    2024年03月11日
    浏览(90)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包