1、Header and Group Conditions在前面的 Elements of the Condition Technique 之中,其中 condition type 的定义之中其实就可以决定一个 condition 是哪一种或多种的 condition type。再看一次:在 changes which can be made 之中,可以选择是 header/item condition,也可以两个都选。而在 group condition 之中的 group cond.就决定了一个 condition type 是不是一个 group condition。先看 header 和
2、item condition :之前我们提到的基本上都是 item 的 condition,也就是对应每一个 item 的condition,什么事 header condition 呢?Header condition 顾名思义是定义在 po document 的 header 的一些 condition,而且所有的 header condition 是没有 access seq.的,意味着什么,就是没有地方会存放它们相关的 condition record,没有 price determination process 为它们服务,所以没有地方可以预先定义,只能在输入 po document
3、 的时候自行输入。用 me21n 创建一张新的 po,输入一个 vendor 之后,打开 header 的详细资料,并选择 condition 那个 tab。在这里输入的只能是 header condition 了,按 f4 我们可以看到,只有少量的condition type 被定义成为了可以是一个 header condition。输入两个 header condition,RB00 10 USDHB00 180 USD在 item 之中输入一个 item,见下图。看看 item detail 的 condition tab,可以看到有些 condition 是可以修改的,有些是不能修改的
4、。能够修改的部分是从 info record 之中带过来的,属于 item condition;其中不能修改的部分除了 SKTO 现金优惠之外就是我们之前输入的两个 header condition 了,可以看到 header condition 其实也是要 apply 到每个 item 才有用的,转过来看看 header 里的 condition tab(下面的的第二张图),可以在这里修改header condition。在这里我们看到的是所有 item 的分 condition 的一个合计数目,一会我们看看多个 item 的时候我想就会很清楚。这样,接下去再增加一个新的 item,看看会是
5、什么结果(下面的的第三张图)。对比上面的第三和第四张图,可以发现几个问题:1、不同的数量产生了不同 PB00,我设置了 scale 所导致,而之前看到的 PB00也不是一个 group condition。2、两个 item 都 apply 了 header condition RB00,而且都是 usd103、两个 item 都 apply 了 header condition HB00,HB00 的 usd180 是按比例的分配到了两个 item 之中。Item 10: 118.03, item 20: 61.97 再看 header 的 condition:可以知道在 header 这里
6、显示的 value 是所有 item 的总数。Header condition 似乎还有所限制,不能输入 scale。Ides 之中的 header condition 金额分配是根据 item 的金额来按照比例分的。好像之前的 case:item 10 : 金额 1.872,03item 20 : 金额 982,97所以 HB00 的 180 这样分配:item 10 180*(1872.03/(1872.03+982.97) = 118.03item 20 180*(982.97/(1872.03+982.97) = 61.97可以通过修改 calc. Schema 的 AltCbv 可以
7、让系统根据 weight 和 volume 来分配。另外我们可以看出 RB00 和 HB00 所表现出来的不同的方式,一个是每个 item 都应用,而另一个是分配到多有的 item。这其实是由 group condition indicator 来进行控制,如果它是个 group condition 就会进行分配,而不是就会应用到所有 item。Group Condition:当然如果将 group condition indicator 勾上,自然这个就是一个 group condition 了,怎么来判断什么才是一个 group 呢?Header condition 部分上面已经提了,一下
8、分析一下 item condition 部分.两种情况,1. 在 condition type 定义了一个例程的,就是这个字段 GrpCond.routine,将使用例程来对 material 进行分组.2. 没有定义的将使用 condition record 的关键字来进行分组,比如, info record之中定义的关键字是 vendor/purchasing org/material,这样的话,在 po 之中这三个字段相同的 item 会被看成一组,general condition 之中定义的关键字是 vendor/purchasing org/plant,这样的话无论什么物料,只要是相同的 plant就会分为一组了,为什么不考虑 vendor/purchasing org? 一张 po 的这两个字段肯定是一样的。打印控制就不说了,可以在 calc. schema 之中定义。Condition group:在 info record 的维护界面上我们可以发现有个字段就叫做 condition group, 可以assign 一个最长 4 位的字符串给它。