iSeries 上 RPGLE 中的 SetMargin(HSSF Scott Klement Java)

SetMargin in RPGLE on iSeries (HSSF Scott Klement Java)

我使用 HSSF Excel-iSeries 上 Scott Klement 的工具。

我尝试在我的 Excel 文件上设置边距,以较小的边距打印我的 Excel。 但是保证金方法不在 Scott Klement HSSF 中作为 RPGLE 原型。

我的问题: 我如何在 RPGLE 中使用 setMargin 方法? 如何在 HSSF 中编写原型才能在我的 RPGLE 代码中使用它?

这是我的 RPG 需要的 Java-代码:

    sheet.setMargin ( Sheet.LeftMargin, 0.25 );
    sheet.setMargin ( Sheet.RightMargin, 0.25 );
    sheet.setMargin ( Sheet.TopMargin, 0.25 );
    sheet.setMargin ( Sheet.BottomMargin, 0.5 );

这里以 运行 横向设置页面的 RPG 代码为例

PrintOptions = SSSheet_getPrintSetup(sheet);   
SSPrintSetup_setLandscape(PrintOptions: *ON);  

HSSF 中的原型:

D SSSheet_getPrintSetup...                                        
D                 PR                  like(SSPrintSetup)          
D                                     extproc(*JAVA               
D                                     : SHEET_CLASS               
D                                     : 'getPrintSetup')          

D SSPrintSetup_setLandscape...                                       
D                 PR                  extproc(*JAVA                  
D                                     : PRINTSETUP_CLASS             
D                                     : 'setLandscape')              
D   setting                      1N   value                          

您需要查看 Java 界面

public void setMargin(short margin,
                      double size)

并构建 RPG 原型,类似这样:(我的 Java 有点生疏)

dcl-c LEFT_MARGIN   const(0);
dcl-c RIGHT_MARGIN  const(1);
dcl-c TOP_MARGIN    const(2);
dcl-c BOTTOM_MARGIN const(3);

dcl-pr SSSheet_setMargin extproc(*JAVA: SHEET_CLASS: 'setMargin');
  margin like(jshort) value;
  size   like(jdouble) value;
end-pr;

现在可以调用了

SSSheet_setMargin(LEFT_MARGIN:0.25);