JTOpen JobList过滤多个作业名称

时间:2016-10-03 15:07:13

标签: ibm-midrange jtopen

我试图修改当前代码,以便使用SELECTION_JOB_NAME的JobList.addJobSelectionCriteria可以使用通配符 - 这可能吗?

JobList.html#SELECTION_JOB_NAME的文档表明过滤器字符串可以是"通用名称。" - 这究竟意味着什么?

我需要查询的当前作业名称可以用Java正则表达式来表示,例如" JOB.RUN | JOB.PROCESS" - 但我无法使用addJobSelectionCriteria,我试图在应用程序配置中最小化作业名称,并对JobList查询本身进行过滤。

即使我可以进行过滤后查询,处理大量作业所需的时间也是一个问题。

2 个答案:

答案 0 :(得分:2)

IBM i上的“通用名称”是一个简单的通配符,而不是注册表。

MYJOB*

会找到任何名称以MYJOB开头的作业。例如:MYJOB1,MYJOB2,MYJOBEOM。

注意:在大多数情况下,当在IBM i上提供通用名称时,通配符符号*必须在末尾。因此,您无法查找以特定模式结尾的对象。

答案 1 :(得分:2)

我没有查看[没有给出任何链接]的文档,而是查看了Qualified JOB()名称的 泛型 -name功能,在服务器上/在服务器上,通过省略Job.Number和/或Job.User的值来实现;即,Job.Name是必需的,如果这是唯一指定的值,那么将搜索具有该名称的所有作业,而不管Job.User和Job.Number限定符,搜索是特定于用户和编号的,因此这些元素是通用的。如果指定了Job.User和Job.Name,则搜索具有这些特定限定符的所有作业,而不管Job.Number;搜索通常包含指定用户名和作业名的所有作业编号。

通常,服务器上的术语通用名称表示名称前缀,*作为后缀的星号字符建议使用该名称搜索所有值-as前缀;一个或几个接口可能允许为类似目的添加星号,但通常规范的其他形式是特殊值,例如* ALL表示没有过滤,或类似的例子,令牌* ALLEXEC用于过滤只包含 EXECutable 变种的搜索内容或令牌* PGM用于过滤包含[或者如果在OMIT()规范,然后仅通过省略来过滤程序对象。合格的作业名称是非典型的,因此上述as-typical-generics在服务器上的命令的任何 JOB 参数上不允许,我记得最清楚。

2016年10月4日附录
有关服务器白话的术语通用名称的更一般[双关语]用法的参考,请参阅参数(PARM)命令的TYPE参数中的以下帮助文本,用于将参数类型定义为允许通用*规范的名称。注意:我在工具箱文档中找不到该术语的明确定义,只是参考文献,但我确实找到了一个带有Job(JOB)参数的OS命令(CMD)示例,该参数也允许相同的通用名称规范[用户名和作业名称元素],即启动数据库监视器(STRDBMON)命令:

                 Type of value (TYPE) - Help                   
     

* GENERIC
      参数值是表示
的字符串       通用名。通用名称包含一个或多个字符
      后面跟一个星号(*),必须符合
的规则       通用名称。该名称标识了一组对象       名称都以星号(*)前面的字符开头       如果未包含星号(*),则系统假定为       通用名称是完整的对象名称。