You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AS/400中不重建SRCPF修改其记录长度?

AS/400 SRCPF记录长度修改方案
  • 明确说明:CHGSRCPF命令无法修改SRCPF的记录长度,因为记录长度是物理文件的核心属性,创建后无法直接在线修改。但可以通过以下步骤实现保留数据且修改记录长度的需求:

方法一:备份-重建-恢复

  1. 备份原SRCPF的所有成员:
    SAVOBJ OBJ(QRPGLESRC) LIB(DAR) DEV(*SAVF) SAVF(DAR/SAVESRC)
    
  2. 删除原SRCPF:
    DLTF FILE(DAR/QRPGLESRC)
    
  3. 创建记录长度为112的新SRCPF:
    CRTSRCPF FILE(DAR/QRPGLESRC) RCDLEN(112)
    
  4. 恢复备份的成员到新文件:
    RSTOBJ OBJ(QRPGLESRC) SAVLIB(DAR) DEV(*SAVF) SAVF(DAR/SAVESRC)
    

方法二:复制文件并修改属性(更高效)

  1. 复制原SRCPF为新文件,同时指定记录长度112:
    CRTDUPOBJ OBJ(QRPGLESRC) FROMLIB(DAR) OBJTYPE(*FILE) TOLIB(DAR) NEWOBJ(QRPGLESRC_NEW) CRTSRCPF(*YES) RCDLEN(112)
    
  2. 删除原文件:
    DLTF FILE(DAR/QRPGLESRC)
    
  3. 将新文件重命名为原文件名:
    RNMOBJ OBJ(DAR/QRPGLESRC_NEW) OBJTYPE(*FILE) NEWOBJ(QRPGLESRC)
    
  • 补充说明:复制CLLE程序后出现格式错误,是因为原SRCPF记录长度92无法容纳长度为112的源码行,导致内容截断或格式不匹配,修改记录长度后即可正常存储。

内容的提问来源于stack exchange,提问作者Dar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 20:33:15