首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从rpgle程序返回字符串

从rpgle程序返回字符串
EN

Stack Overflow用户
提问于 2017-06-05 07:59:32
回答 1查看 909关注 0票数 1

我想从rpgle程序返回字符串。

代码语言:javascript
复制
/free 
return 'this is simple text';
/end-free

请给我这方面的代码片段。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-05 12:51:30

程序对象必须通过参数返回值。如果要返回带有RETURN操作代码的值,则需要使用子过程。子过程可以包含在程序对象或服务程序对象中.如果要与多个程序共享子过程,则应使用服务程序。这是如何定义在服务程序中使用的子过程:

代码语言:javascript
复制
dcl-proc MyProcedure Export;
  dcl-pi *n Varchar(25);
  end-pi;

  return 'this is simple text';
end-proc;  

如果您只是在程序中定义子过程,则需要省略Export关键字。

要调用子过程,您可以使用如下所示:

代码语言:javascript
复制
dcl-s string     Varchar(25);

string = MyProcedure();

从程序返回值

如果您真的想从程序返回一个值,则必须使用如下参数来实现:

代码语言:javascript
复制
ctl-opt DftActGrp(*No) ActGrp(*Caller)
        Main(MyProgram);

dcl-proc MyProgram;
  dcl-pi *n;
    string        Varchar(25);
  end-pi;

  string = 'this is a simple string';
  return;
end-proc;

要调用该程序,您可以使用如下所示:

代码语言:javascript
复制
dcl-s string      Varchar(25);

dcl-pr MyProgram ExtPgm('MYPROGRAM');
  str          Varchar(25);
end-pr;

MyProgram(string);
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44364319

复制
相关文章

相似问题

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