是否有JCL/MVS脚本变量中要避免的特殊字符列表

Ray*_*orm 3 printing webmethods mainframe special-characters jcl

我有一个生成随机密码的程序.这些引脚用Java生成,然后通过NATURAL程序存储在主机中.从那里开始,它们最终由批量JCL作业进行物理打印,该作业调用MVS SCRIPT来打印表单,并在其上显示引脚代码.

我之前遇到过一些特殊字符的问题,例如: |{}![]^~<>;出于某种原因,打印不正确.我也0OQ1l因OCR原因删除了.

近日,来了一个错误,我注意到与不正确打印另一个角色,..角色只有当它是失败的第一 PIN码的字符.

所以,既然我遇到了这个问题,我想我会看到是否能找到其他特殊的,NaturalMVS Script字符可能会影响我的程序操作,以便我现在可以测试它们,希望以后不会遇到这个问题或者必须回退到只使用OCR的AlphaNumeric字符.

编辑

  • Java - Web应用程序在Solaris服务器上运行Tomcat 6.x.
  • 自然 - 使用 Broker生成的类(POJO)调用自然程序.
    • 我的理解是它使用RPC进行实际通信.
    • 该程序验证一些数据,并将Pin与记录中的GUID一起存储在ADABAS中.
  • 有一个批处理作业运行以打印表单.批处理作业是用JCL编写的.
    • 我从Batch Job的维护者那里得到的理解,以及Forms的东西是用来描述表单本身以及它们如何被打印的实际语言是一种过时/不受支持的语言,称为MVS SCRIPT.
  • 脚本的Bottom部分如下所示:
//**********************************************************************
//* PRINT SORTED FORMS TO #### USING MVS SCRIPT                      
//**********************************************************************
PRINTALL EXEC PGM=DSMSPEXEC,PARM='LIST'
//* less 'interesting' lines omitted
SYSPRINT DD SYSOUT=*
PRINT1   DD SYSOUT=A, OUTPUT=*.C####,
            RECFM=VBM,LRECL=####,BLKSIZE=####     
//* less 'interesting' lines omitted
//SYSIN  DD *
  AUTH /* redacted */
  SCRIPT FROM(MYFORMS) (MESSAGE(ID TRACE) CONT -             
                        FILE(PRINT1) PROFILE(redacted) -      
                        NOSEGLIB DEVICE(PG4A) CHARS(X0A055BC))
Run Code Online (Sandbox Code Playgroud)

.C####是一个实际数字,是指向所选打印机的变量.

注意:我是一名Web程序员,我不会说大型机,JCL,MVS等.

Bru*_*tin 5

我想你会发现程序(pgm =)是DSMSPEXC而不是DSMSPEXEC.

我猜(可能是错的)我们正在谈论Script/DCF(后来成为其他平台上的IBM Bookmaster/Bookmanager).

Script/DCF基本上是基于GML的语言.它来自GML,SGML是派生的(HTMLXMLSGML语言的突出例子).

在脚本中:启动标记,.结束标签.还有一个有宏的宏.在第1栏

.* ".*" in column 1 starts a line comment
.* .fo off is Format off (like <pre> in html)
.fo off

.* Starting an ordered list
:ol.
  :li.Item in orded list
:eol.
Run Code Online (Sandbox Code Playgroud)

  Script   HTML
    :       <   - Starts tag
    .       >   - end of tag Script/DCF is generally pretty tolerant of .
    &       &   - Starts a variable
Run Code Online (Sandbox Code Playgroud)

大多数特殊字符都有变量(&gml.= :).


要担心的人物是

: - always
& - always
. - in column one or after a :.
Run Code Online (Sandbox Code Playgroud)

如果没有翻译错误,其他字符应该没问题.字符集X0A055BC(Mainframe SONORAN SANS SERIF ??)可能没有所有特殊字符.

Script/DCF标签有手册.

  • 是的,这是[`Script`](https://en.wikipedia.org/wiki/SCRIPT_(markup)) - `DSM`是所有脚本程序的前缀.对于那些不知道的人来说,Script是一个文档标记和格式化系统,它与Unix`runoff`和`troff`工具具有相同的历史根源.正如@BruceMartin所说,SGML的创建者开始使用Script并首先创建了IBM的内部"GML". (2认同)