首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理- RPGLE

批处理- RPGLE
EN

Stack Overflow用户
提问于 2022-08-02 13:03:21
回答 1查看 61关注 0票数 0

我试图理解使用RPGLE和PRTF成员进行简单的批处理,下面是两者的代码,但结果如下(列打印而不是数据)--我做错了什么:

KDCSTPGM.RPGLE这是带有逻辑的rpgle成员

代码语言:javascript
复制
Dcl-f Customers Disk KEYED Usage(*Input);
Dcl-f Custlist Printer Usage(*Output) Oflind(Endofpage);


//Standalone variable declarations
Dcl-s Endofpage Ind Inz(*on);
dcl-s count packed(2:0);


// Main Procedure
Read Customers;

  
Dow Not %eof(Customers);
  If Endofpage;
    write Header;
    Endofpage = *off;
  Endif;

  count += 1;
  write Detail;
  Read Customers;

Enddo;

If Endofpage;
    write Header;
Endif;

write total;    

*inlr = *On;
Return;  

CUSTLIST.PRTF这是打印机文件

代码语言:javascript
复制
A          R HEADER
 A                                  2 55'Customer List'
 A                                  2 97DATE
 A                                  2117PAGNBR
 A                                  3  3'Customer:'
 A          R DETAIL                    SPACEB(1)
 A                                     3'Customer Number'
 A                                      SPACEB(3)
 A                                    25'Last Name '
 A                                    43'First Name'
 A                                    63'Phone'
 A                                    82'Email'
 A          R TOTAL                     SPACEB(1)
 A            CUSTONO   R              2SPACEB(4)
 A                                      REFFLD(CUSTSREC/CUSTONO MyLib/CUS-
 A                                      TOMERS)
 A            CLNAME    R             14REFFLD(CUSTSREC/CLNAME MyLib/CUST-
 A                                      OMERS)
 A            CFNAME    R             36REFFLD(CUSTSREC/CFNAME MyLib/CUST-
 A                                      OMERS)
 A            CPHONE    R             54REFFLD(CUSTSREC/CPHONE MyLib/CUST-
 A                                      OMERS)
 A            CEMAIL    R             66REFFLD(CUSTSREC/CEMAIL MyLib/CUST-
 A                                      OMERS)

 A*%%RS+<record-sequences>
 A*%%RS+ <sequence name="Custlist">
 A*%%RS+  <device type="printer" width="132" height="66" />
 A*%%RS+  <record-write record-format="HEADER" />
 A*%%RS+  <record-write record-format="DETAIL" />
 A*%%RS+  <record-write record-format="TOTAL" />
 A*%%RS+ </sequence>
 A*%%RS </record-sequences> 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-02 14:14:40

您的详细记录中没有任何数据字段,而是在总记录中.

你的PRTF应该看起来更像

代码语言:javascript
复制
 A          R HEADER                     
 A                                  2 55'Customer List'
 A                                  2 97DATE
 A                                  2117PAGNBR
 A                                  4  3'Customer Number'
 A                                  4 25'Last Name '
 A                                  4 43'First Name'
 A                                  4 63'Phone'
 A                                  4 82'Email'
 A          R DETAIL                    SPACEB(1)
 A            CUSTONO   R              2
 A                                      REFFLD(CUSTSREC/CUSTONO MyLib/CUS-
 A                                      TOMERS)
 A            CLNAME    R             14REFFLD(CUSTSREC/CLNAME MyLib/CUST-
 A                                      OMERS)
 A            CFNAME    R             36REFFLD(CUSTSREC/CFNAME MyLib/CUST-
 A                                      OMERS)
 A            CPHONE    R             54REFFLD(CUSTSREC/CPHONE MyLib/CUST-
 A                                      OMERS)
 A            CEMAIL    R             66REFFLD(CUSTSREC/CEMAIL MyLib/CUST-
 A                                      OMERS)
 A          R TOTAL                     SPACEB(2)
 A                                    10'Total Count:'
 A            COUNT            2 0    +2                          
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73208057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档