PUSU 拆分后发货和开票的时间节点问题
项目做到现在业务突然说流程要变,心中顿时无数个草草草掠过。这公司业务也真是够奇葩了,一天一个样。原来流程是由PU把产品生产完后就发给SU,由SU再来决定什么时候对客户和开票。而现在马上要上线了,突然冒出来一个老大说不行,SU不管库存,所有的货都由PU发给客户。我说老兄,当时流程在sign off的时候你怎么不说话。人家给的理由是我们现在的SU还很不成熟,没有能力cover仓储,物流这些环节,所以还应该由PU来take control. 我记得这个在项目启动及做需求分析的时候强调的很清楚,是不是确定要放在SU来做。当时人家业务很坚决地说,我们就是要放在SU来做,PU只负责生产加工。其他一切都放SU。怎么办,不改不行啊,改了那就延期了呗。哎,最不喜欢做的就是这种业务压根不清楚要怎么用,还一个劲的问你们顾问要怎么弄,你们觉得如何如何?我们不是埃森哲,不是普华永道和IBM来做管理和业务咨询的。我们只是把现有的流程进行系统的落地。 难道不是这样吗?再说我们也没有能力去做5年,10年的业务规划吧。
无论怎么样,变更和延期是肯定的了。大公司嘛,对成本不care,不差钱那就随便吧。老子待一天就拿一天钱。想开了,反正在哪儿都是干。
说了这么多,下面怎么干? 如果放在PU去做,那么SU的DN还是少不了了,因为credit check要在SU上面做,所以也就是说未来的流程可能就会变成以下:
step1: SU接单,创建CSO,然后进行一系列的审批后,转IPO.
STEP2: IPO 创建保存后自动触发ISO ,ISO 不需要审批。
STEP3: PU 设计工程部门维护SO bom 和 routine.
step4: PU订单handling部门修改计划行类型,释放需求。
step5: PU 生产计划部分根据需求进行排产和MRP运算。
STEP6: PU 生产执行环节和生产订单的确认和报工;
===========================================
至此,以上的环节跟之前的流程是一致的。
STEP7: PU生产完工入库后,货物依旧在PU存放直到客户要求发货。
STEP8: SU order handling 部门依据客户要求的发货数量进行部分创建DN或者全部创建DN. 此步骤的目的不在于作为仓库发货的凭证,目的是为了进行customer credit check. 如果credit check 通过,那么进入STEP9,否则进入STEP8.1;
STEP8.1: 等待客户打预付款,或者向credit controlling 部门申请release.
STEP9: credit check approval 后,由SU order handling 部门通知PU 订单管理人员创建PU 的DN. 此DN作为仓库发货和包装的依据。
STEP10: 仓库根据PU 的 DN 进行拣配和包装,并出库。
STEP11: 由系统自动完成SU IPO的采购收货动作。
STEP12: SU order handling 部门做SU DN 的过账动作。
=================================================
至此,订单及发运环节结束。下面时发票创建的步骤,在开票的时间节点上面财务有些争议,还没有最后confirm.
STEP13: PU的billing是在PU 做完了PGI后就直接创建发票还是等到SU对客户创建发票的时候再做?这个主要是涉及到发货和开票不在当期的情况,如果都在当期,那么就不存在这个问题了。但现实情况往往是有特殊的,凡事都有个例外。
那么,如果PU在发货后直接开票,而SU等到下月再创建客户的发票。那么SU和PU的收入就不在同一期间,这个有没有问题,影不影响利润表,要的要财务顾问确认。
那么到此,该scenario就算结束了。
PUSU 拆分后发货和开票的时间节点问题的更多相关文章
- 9.为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗?
作者:中华石杉 面试题 为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗? 面试官心理分析 从这个问题开始就进行分布式系统环节了,现在出去面试分布式都成标配了,没有哪个公司不问问 ...
- 为什么要进行系统拆分?如何进行系统拆分?拆分后不用dubbo可以吗?
分布式系统,我用一句话给你解释一下,实在没时间多唠了,就是原来20万行代码的系统,现在拆分成20个小系统,每个小系统1万行代码.原本代码之间直接就是基于spring调用,现在拆分开来了,20个小系统部 ...
- Java基础-多线程编程-1.随便选择两个城市作为预选旅游目标。实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000ms以内),哪个先显示完毕,就决定去哪个城市。分别用Runnable接口和Thread类实现。
1.随便选择两个城市作为预选旅游目标.实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000ms以内),哪个先显示完毕,就决定去哪个城市.分别用Runnable接口和Thread ...
- Java中的split函数拆分后变成null的问题
对于一些特殊的情况,split拆分后并没有保留全的元素 如下例子: String x ="a,,,,,,"; String []y = x.split(",") ...
- Oracle随笔之用拆分后的列数据关联表查询
-----------------------建表------------------------- create table test(id int, plist varchar2(30)) ; c ...
- POI拆分单元格,并设置拆分后第一个cell的值为空cell的值
// 从第A7开始,拆分单元格 CellReference ref = new CellReference("A7"); //遍历sheet中的所有的合并区域 for (int i ...
- JS Window对象 计时器setInterval() 在执行时,从载入页面后每隔指定的时间执行代码。
计时器setInterval() 在执行时,从载入页面后每隔指定的时间执行代码. 语法: setInterval(代码,交互时间); 参数说明: 1. 代码:要调用的函数或要执行的代码串. 2. 交互 ...
- CSS 竖线 点 时间节点
效果如图 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- Python - 记录我开始学习Python的时间节点
记录我开始学习Python的时间节点 2019-09-22 从明天开始我要开始学习Python了,坚持学习.坚持写博客,慢慢积累. 结合实例项目,最好能把目前在做的项目用Python实现. 加油!
随机推荐
- jQuery抽奖插件 jQueryRotate
实现代码 网页中引用 <script type="text/javascript" src="js/jquery.min.js"></scri ...
- MVC模式和MVP模式的区别
MVC模式: 1. MVC的所有通信都是单向的. 2. view传送指令到controller(用户也可以直接将指令传到controller). 3. controller完成业务逻辑后要求model ...
- 使用js实现思维导图
使用js实现思维导图 demo:http://rockyren.github.io/mindmaptree/ 源码:http://github.com/RockyRen/mindmaptree/tre ...
- 枚举Enum 的常用方法
一.枚举介绍 通常定义常量方法和枚举定义常量方法区别 public class State { public static final int ON = 1; public static final ...
- fedora liveuser 切换root;su -l root
安装完Fedora 14后,默认没有启用sudo,首先应该是对sudo进行设置.sudo的作用就是使当前非root用户在使用没有权限的命令时,直接在命令前加入sudo,在输入自己当前用户的密码就可以完 ...
- webpack常用插件配置记录
github仓库:https://github.com/llcMite/webpack.git 1)html-webpack-plugin (用于模板生成html,自动引入output文件) c ...
- python-模块2
from collections import namedtuple # # 类 # p = namedtuple("Point", ["x", "y ...
- jQuery-----隔行换色/全选全不选/
隔行换色: 全选全不选: 分析: 1.页面加载 $(function(){}) 2.获取所有奇数行数 ...
- .net core WebApi Monitor实现并发同步
在.net中,还可以使用Monitor实现线程并发同步.Monitor类是纯托管且完全可移植,并且可能会在操作系统资源需求方面更加高效. Monitor的锁对象尽可能使用引用对象,如果是字符串或值对象 ...
- Problem D: 类的初体验(IV)
Description 定义一个类Data,只有一个int类型的属性和如下方法: 1. 缺省构造函数,将属性初始化为0,并输出"Data's default constructor.&q ...