仅用于关键性弹性域.在弹性域窗口弹出之前,从block.field拷贝非NULL值到由指定的弹性域qulifier或者分段号指定的分段。类似地,如果你指定值为ALL,那么COPY属性将拷贝一系列非空值,一系列分段值的连接(以及分段的隔离符)从block.field到所有的分段。比如,如果你有一个三段的弹性域,block.field值为001.ABC.05,COPY会把001放到第一个分段,ABC到第二个分段,并且05到第三个分段。 你要拷贝的分段的值必须是对于那个分段有效的值。拷贝的值会覆盖掉使用关键性弹性域分段form为分段设置的默认值。尽管如此,速记弹性域分录的值会覆盖COPY属性的值。并且COPY属性不会拷贝NULL值来覆盖已存在(默认)值。但是,如果你拷贝的值对于那个分段来说不是一个有效的值,它就会像使用NULL值覆盖了默认值:无效值覆盖了默认值,但是你的弹性域会擦掉拷贝的值,因为它是无效的。所以你应该确保你要拷贝的字段包含有效的值。 当弹性域窗口关闭时,弹性域会自动拷贝由指定的弹性域qualifier或者分段编号所代表的分段的值到block.field。同样,如果你指定值为ALL,你的弹性域会自动拷贝弹性域所有分段的连接值到block.field. 你可以指定一个或者多个COPY参数值,并由 隔离。稍后拷贝值会覆盖前面的拷贝值。比如,假设你有一个字段,它记录了连接的弹性域的值,叫做Concatenated_field,并且它的值为01-ABC-680.你还有一个字段,Value_field,它保存了一个字符串的值,并且你想拷贝它到你的第二个分段,它的值为XYZ.你可以指定: COPY=>’block.Concatenated_fieldnALL block.Vale_fieldn2’ 注意 分隔了不同的参数值。 当用户打开弹性域窗口时,Oracle Application Object Library会按顺序执行两次拷贝,用户会在窗口中看到下面的值: 01 XYZ 680 弹性域窗口关闭之后,弹性域会分别拷贝值01-XYZ-680和XYZ回到上面两个字段。注意在这种情况下,XYZ会覆盖掉ABC值。
|