# 影响范围
表单上某个字段变化时候,它能影响到的其它字段一定在其直系祖先(及该直系祖先的兄弟)、兄弟(及该兄弟的子孙)、直系子孙里。例如一个重复节中某行的一个字段发生了变化,它仅能影响相同行内的其它字段(兄弟),或者同行中的重复节表里的明细字段(兄弟的子孙),或者该重复节外的字段(直系祖先及祖先的兄弟),如果这个字段是个重复节表,那么它还能影响其下属所有行里的字段(直系子孙);但是这行中的某字段变化不能影响其它行的其它字段,因为这些字段即不是其直系祖先(及直系祖先的兄弟),也不是其直系子孙,也不是其兄弟(及兄弟的子孙)。
为便于理解影响范围,假设表单上的数据如下图所示:
图里fieldCValue1这个值可能影响到其兄弟fieldDValue2、grouAInner1;可能影响到兄弟的子孙fieldGValue1、fieldGValue2;可能影响到其直系祖先groupA;可能影响到其直系祖先的兄弟fieldA、fieldB、groupB。
图里groupAInner2可能影响到其兄弟fieldCValue2、fieldDValue2;可能影响到直系子孙fieldGValue3;可能影响到直系祖先groupA;可能影响到其直系祖先的兄弟fieldA、fieldB、groupB。
被影响字段→ 影响字段 ↓ | fieldGValue1 | fieldGValue2 | fieldGValue3 | fieldCValue1 | fieldCValue2 | fieldDValue1 | fieldDValue2 | groupAInner1 | groupAInner2 | groupA | fieldA | fieldB | groupB | fieldEValue1 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
fieldGValue1 | / | N | N | Y | N | Y | N | Y | N | Y | Y | Y | Y | N |
fieldGValue2 | N | / | N | Y | N | Y | N | Y | N | Y | Y | Y | Y | N |
fieldGValue3 | N | N | / | N | Y | N | Y | N | Y | Y | Y | Y | Y | N |
fieldCValue1 | Y | Y | N | / | N | Y | N | Y | N | Y | Y | Y | Y | N |
fieldCValue2 | N | N | Y | N | / | N | Y | N | Y | Y | Y | Y | Y | N |
fieldDValue1 | Y | Y | N | Y | N | / | N | Y | N | Y | Y | Y | Y | N |
fieldDValue2 | N | N | Y | N | Y | N | / | N | Y | Y | Y | Y | Y | N |
groupAInner1 | Y | Y | N | Y | N | Y | N | / | N | Y | Y | Y | Y | N |
groupAInner2 | N | N | Y | N | Y | N | Y | N | / | Y | Y | Y | Y | N |
groupA | Y | Y | Y | Y | Y | Y | Y | Y | Y | / | Y | Y | Y | Y |
fieldA | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | / | Y | Y | Y |
fieldB | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | / | Y | Y |
groupB | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | / | Y |
fieldEValue1 | N | N | N | N | N | N | N | N | N | Y | Y | Y | Y | / |
以上表格罗列了示例数据所有字段间的相互影响关系。