Data structures 如何检索PRTF中的当前行数
我必须修改一个正在打印数据的程序。 现在的任务是编写一种新的方法,在达到某一行号时如何开始新的页面。由于在spool文件的末尾打印了一些常量数据,因此不能用新的页面分隔这些数据 当前的方法是增加一个计数器。但这是非常糟糕的方式,因为当打印条形码时,我不知道这个条形码有多大(多少行)。而且,我想实现一种可以在所有程序上实现的方法,这样我就不必自己测试和获取每个条形码的大小 我知道有显示文件的数据结构告诉我光标的位置。所以-据我所知-必须有可能与PRTF和当前线路号相同 有人知道怎么做吗?Data structures 如何检索PRTF中的当前行数,data-structures,ibm-midrange,rpgle,Data Structures,Ibm Midrange,Rpgle,我必须修改一个正在打印数据的程序。 现在的任务是编写一种新的方法,在达到某一行号时如何开始新的页面。由于在spool文件的末尾打印了一些常量数据,因此不能用新的页面分隔这些数据 当前的方法是增加一个计数器。但这是非常糟糕的方式,因为当打印条形码时,我不知道这个条形码有多大(多少行)。而且,我想实现一种可以在所有程序上实现的方法,这样我就不必自己测试和获取每个条形码的大小 我知道有显示文件的数据结构告诉我光标的位置。所以-据我所知-必须有可能与PRTF和当前线路号相同 有人知道怎么做吗? 谢谢 我
谢谢 我会使用文件信息数据结构(INFDS)来获取您需要的信息
FQSYSPRT O F 132 PRINTER OFLIND(*INOF)
F INFDS(OutputFDS)
F PRTCTL(PrtCtlDS)
D*File Information Data Structure
D OutputFDS DS
D**Open Feedback Area
D ROWS 152 153I 0
D OVERFLOW 188 189I 0
D
D**Printer Feedback Area
D CUR_LINE 367 368I 0 Current line num
D CUR_PAGE 369 372I 0 Current page cnt
D*Printer Control Data Structure
D PrtCtlDS DS
D pSpacing 1 12
D pSpcBefore 1 3A
D pSpcAfter 4 6A
D pSkpBefore 7 9A
D pSkpAfter 10 12A
D pLineNbr 13 15S 0
您也可以从打印机控制数据结构(PRTCTL)中获取行号,但您通常还需要了解您的情况下的行和溢出行,这些信息只能在INFD中找到。我将使用文件信息数据结构(INFDS)获取您需要的信息
FQSYSPRT O F 132 PRINTER OFLIND(*INOF)
F INFDS(OutputFDS)
F PRTCTL(PrtCtlDS)
D*File Information Data Structure
D OutputFDS DS
D**Open Feedback Area
D ROWS 152 153I 0
D OVERFLOW 188 189I 0
D
D**Printer Feedback Area
D CUR_LINE 367 368I 0 Current line num
D CUR_PAGE 369 372I 0 Current page cnt
D*Printer Control Data Structure
D PrtCtlDS DS
D pSpacing 1 12
D pSpcBefore 1 3A
D pSpcAfter 4 6A
D pSkpBefore 7 9A
D pSkpAfter 10 12A
D pLineNbr 13 15S 0
您也可以从打印机控制数据结构(PRTCTL)中获取行号,但您通常还想知道您的情况下的行和溢出行,这只能在INFD中找到。您是否尝试查找打印机文件信息数据结构?其中有一个当前行号。但我不知道它是为AFPD还是IPDS数据流填充的。您是否尝试过查找打印机文件信息数据结构?其中有一个当前行号。但我不知道它是为AFPD还是IPDS数据流填充的。回答不错,但OP正在处理IPDS或AFPDS打印机文件,因为他正在打印条形码。正如马克在文章中评论的那样,我认为一旦你开始处理非文本数据,第#行就不准确了。回答得好,但OP正在处理IPDS或AFPDS打印机文件,因为他正在打印条形码。正如马克在文章中评论的那样,我认为一旦你开始处理非文本数据,这行就不准确了。