题
COBOL编译器中的链接编辑步骤究竟是做什么的?
编译代码后,执行链接编辑步骤.我不确定这一步是做什么的.
背景资料
刚刚离开学校(3年前),我找到了一份大型机应用程序开发人员的工作.我对学校的大型机一无所知,但我的知识存在很多差距.在我的商店周围,我们有一种"黑匣子"的态度,我们不需要知道这些东西是如何运作的,它就是这样.我试图理解为什么我们需要这个链接编辑步骤,如果该程序已经成功编译.
目前在我的商店里,我们有一个标准的SYSOUT标题,显示了一堆有用的信息,例如:
对我们来说非常有用的一件事是显示当前程序正在运行的加载库.我能够使用IBM内部函数获取编译日期时间WHEN-COMPILED
,但是我无法找到任何能够让我获得loadlib的东西.
什么是正确的方法来解决这个问题?
我似乎有麻烦让屏幕阅读器阅读简单的表格.我有以下HTML:
<table alt="Account Information">
<tr>
<th scope='row'>Account Number:</th>
<td>1111 1111 1111</td>
<td>  <td/>
<th scope='row'>Reference Number:</th>
<td>XXXX XXXX XXXX</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
当屏幕阅读器点击此表时,它会显示"表.0列.0行".
我在网上尝试了很多例子并尝试使用WCAG2.0标准作为指导,但它似乎没有用.
我也尝试过不同的表格布局和结构,但仍然得到相同的结果.
我的网站的一个实践是当批处理循环开始时,我们在运行任何程序之前分配将在整个运行中使用的所有GDG的新一代.
这意味着我们现在有了在我们的流程开始之前分配超过500个文件的场景.我的任务是试图让这个大规模循环更有效率.我很想知道我应该为这些分配采取哪条路径:
多次连续多次呼叫IDCAMS是否有很多问题?
我有一种预感,将这些分解为更小的步骤可以提高整体性能,但我并没有明确的方法来测试它.我们的测试环境并不是运行指标的好地方,因为我们的工作通常在JES中以低优先级结束,因此我们会大量反弹,因此经过的时间实际上并不是实际发生的事情的良好指标,因为这些都是IDCAMS分配,无论如何,CPU统计数据总是很低.
TLDR; 有谁知道哪个更有效率,或者我怎么能找到哪个更有效?
我目前将关键凭据存储到一个文本文件中,我通过这种方式将其加载到我的COBOL程序中:
***********************
LOAD-CREDENTIALS
***********************
READ PASSFILE
DISPLAY 'USER: ' WE-USER
DISPLAY 'PASS: ' WE-PASS
Run Code Online (Sandbox Code Playgroud)
当然,真正的程序不会显示凭据,这只是一个例子.它仍然不是一个好习惯.
因此,在使用COBOL在IBM大型机中存储密码时,增强安全性的最安全方法是什么?
我目前正在研究一个在多个JCL中使用的程序.我添加了一个新文件,文件控件如下所示:
SELECT FILEA ASSIGN TO FILEA
; ORGANIZATION SEQUENTIAL
; ACCESS SEQUENTIAL
; FILE STATUS FILEA-FILESTATUS
.
Run Code Online (Sandbox Code Playgroud)
因为这个程序在多个JCL中使用,如果文件必须存在于所有JCL中,这意味着我需要在很多地方伪造文件.我的希望是只打开文件只有某些条件而不需要在任何地方伪装它.
如果我没有对文件执行打开,它是否仍然在我的JCL中有一个DD名称?
编辑:我在IBM大型机上运行.
我有一个文件,可能包含约300万条记录.在整个程序运行过程中,需要多次更新此文件的某些记录.如果我需要从此文件中提取特定记录,则以下哪项更有效: