我在cics地图中有一个数字字段,长度为3.当我在字段中输入10并尝试通过存储到cobol程序中的工作存储变量来插入数据库时,它被插入为100.为什么这样发生了吗?有没有办法在开头插入它
这是我的要求.
Front(客户端)端将根据预定义条件进行搜索(例如:客户ID,帐号,名字,姓氏等).我需要从db2数据库获取与此请求相对应的数据并将其发送回它们(服务器).我们使用CICS通道和容器在客户端和服务器之间传递请求和响应.
前端需要按以下顺序排列的数据:接收日期降序,客户ID升序,帐号升序.数据以500条记录的页面提取.例如,如果来自前端的搜索请求将从db2数据库中检索50,000条记录,则我们需要在500条记录"页面"中返回此数据.对于分页概念,我们使用字段安全存款号,它是我们数据库的主键,但排序顺序不是基于此字段.
我想知道我们是否可以在CICS中使用可滚动游标逻辑来实现分页.
请注意,我不喜欢使用内部阵列冒泡排序来响应发送数据,因为它会降低性能.我喜欢通过查询逻辑来做.有什么想法吗?
示例(初始前端输入请求):
由于这是第一次请求,这个字段从前端都是零,我们需要根据保证金条件> 0从数据库中检索记录
Db2数据库:
然后前端将发送获取下一组记录的请求,其中包含:
因此,对于此详细信息,如果我根据安全存款编号> 17980查询我的数据库,则可能会再次在屏幕中列出重复记录,因为我们的数据库中的排序顺序不是基于安全存款编号
如何阻止这种逻辑?
如何从 COBOL 程序调用 Web 服务?我不知道该怎么做,任何人都可以帮助并定义步骤吗?
任何示例代码都会更加有用。
谢谢
我使用 EXEC CICS SYNCPOINT 和 EXEC CICS SYNCPOINT ROLLBACK 在发生异常终止时提交/取消对 VSAM 和 DB2 表的更新。但是,仅回滚对 DB2 表的更新,而不是在 VSAM 上回滚。我错过了什么吗?CICS 参数 RLS 设置为 RLS=NO。
我在 CICS 中有业务逻辑,我们希望用分布式系统替换地图/地图集,因此我们希望我们的 CICS 程序提供服务并拥有发送请求并接收来自正在处理的 CICS 的响应的分布式系统(以替换地图/地图集)。这是针对旧版支付应用程序的,并且是非 SSP 环境。
作为第一步,我尝试提交使用 CICS Web 服务辅助工具 (DHFLS2DS) 创建 WSDL 和 WSBIND 文件的 JCL,但我不确定要传递的执行 BPXBATCH 的参数。
//JAVAPRG1 EXEC PGM=BPXBATCH,REGION=400M,
// PARM=('SH &PATHPREF/usr/lpp/cicsts/&USSDIR/lib/wsdl/DFHLS2WS ', X
// '&JAVADIR &USSDIR &TMPDIR./&TMPFILE. &SERVICE &PATHPREF')
Run Code Online (Sandbox Code Playgroud)
有人可以帮助传递执行 CICS Web 服务助手工具所需的参数吗?
我在提交以下工作时遇到问题,有人可以提出建议吗?
错误:IEF344I KA7LS2W2 输入步骤 1 SYSUT2 - 由于数据设施系统错误 IGD17501I 尝试打开 UNIX 文件失败,
返回代码为 (00000081) 原因代码为 (0594003D),分配失败
名为 (/ka7a/KA7A.in)
杰克莱:
//KA7LS2W2 JOB (51,168),'$ACCEPT',CLASS=1,
// MSGCLASS=X,MSGLEVEL=(1,0),NOTIFY=&SYSUID,REGION=0M
// EXPORT SYMLIST=*
// JCLLIB ORDER=SYS2.CI55.SDFHINST
//STEP1 EXEC DFHLS2WS,
// JAVADIR='java/J7.0_64',PATHPREF='',TMPDIR='/ka7a',
// USSDIR='',TMPFILE=&QT.&SYSUID.&QT
//INPUT.SYSUT1 DD *
PDSLIB=//DJPN.KA7A.POC
LANG=COBOL
PGMINT=CHANNEL
PGMNAME=KZHFEN1C
REQMEM=PAYIN
RESPMEM=PAYOUT
MAPPING-LEVEL=2.2
LOGFILE=/home/websrvices/wsbind/payws.log `enter code here`
WSBIND=/home/webservices/wsbind/payws.wsbind
WSDL=/home/webservices/wsdl/payws.wsdl
/*
Run Code Online (Sandbox Code Playgroud) 我的地图中有4个字段,分别是9(6),9(3),9(3),9(3).我写了这样的验证码:
IF ROLLNUM IS NOT NUMERIC
MOVE DFHRED TO ROLLNUMC
MOVE 'INVALID DATA' TO RESMSGO
MOVE ROLLNUMI TO ROLLNUMO
PERFORM SEND-MAP THRU SEND-MAP-EXIT
PERFORM KEY-VALIDATION THRU KEY-VALIDATION-EXIT.
Run Code Online (Sandbox Code Playgroud)
但是,从Cics中将A12AK等值插入数据库时,我没有遇到任何错误.它将A替换为1,B替换为2,依此类推......为什么会发生这种情况?以及如何避免这种情况
在 z/OS 上的 CICS 中我有一些问题: