quote:以下是引用0917在2014-12-17 10:44:23的发言:
学习了,谢谢楼主分享,但是子程序块的偏移地址是怎么回事?自己在琢磨琢磨!
LAR1 P#Bins
仅仅是 得到了Bins这个数组在多重背景FB块里的首地址,由于多重背景FB,在调用时,没有自己的单独的DB块,需要使用 调用多重背景FB块的背景DB,考虑到调用多重背景FB块的FB块有其他IN,STAT等类型数据,所以BINS在调用多重背景FB块的FB地址并不等于LAR1 P#BINS后 的AR1,在调用多重背景FB块时,AR2会自动定位到 被多重背景使用的FB块在 “父FB块”的偏移地址。
下面语句 就是干这个事的
LAR1 P##Bins;
TAR2 //新增加语句,取出“子FB块"在”父FB块“中的偏移地址
+AR1 //新增语句,加上该偏移地址,从而得到BINS在“父FB块”中的偏移地址
说的太拗口了 你可以把 被多重背景使用的FB块叫“子FB”,调用多重背景FB块的FB块 叫“父FB”吧。