标签: ibm-midrange

AS400 Spring Boot Java 连接

我在尝试连接到数据库时遇到以下异常

HikariPool-1 - Driver does not support get/set network timeout for connections. (Receiver class com.ibm.as400.access.AS400JDBCConnectionImpl does not define or inherit an implementation of the resolved method abstract setNetworkTimeout(Ljava/util/concurrent/Executor;I)V of interface java.sql.Connection.)

这是我的 pom

<dependencies>
       <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-data-jpa</artifactId>
       </dependency>
       <dependency>
           <groupId>net.sf.jt400</groupId>
           <artifactId>jt400</artifactId>
           <version>10.5</version>
       </dependency>
   </dependencies> 
Run Code Online (Sandbox Code Playgroud)

和应用程序yaml

spring.datasource:
  url: jdbc:as400://xxx/xxx
  username: xxx
  password: xxx
  driver-class-name: com.ibm.as400.access.AS400JDBCDriver
  hikari.connection-test-query: values 1
spring.jpa:
  database-platform: org.hibernate.dialect.DB2400Dialect
  hibernate.ddl-auto: none
Run Code Online (Sandbox Code Playgroud)

db2 ibm-midrange spring-boot

1
推荐指数
1
解决办法
7599
查看次数

如何查询由提交的作业在 qtemp 中创建的文件

有一个作业被提交。该作业调用一个程序,该程序在其 qtemp 中创建一个临时文件。有人可以告诉我如何在作业的 qtemp 中查询该文件吗?

rpg rpgle ibm-midrange

1
推荐指数
1
解决办法
822
查看次数

原型未在名为 RPGLE 的程序中使用,但该程序仍然有效

我有一个程序 SS150R,其中 PI 声明为

Dcl-pi SS150R;                        
pCompcd Char(4);                  
ptrncd Packed(3:0);               
pErrMsg Char(30) options(*nopass);
pSuccess Char(1) options(*nopass);
End-pi;                                 
Run Code Online (Sandbox Code Playgroud)

没有为此(PI)声明原型(PR),但该程序仍然运行良好。

我的问题是,我一直读到,如果有一个命名的 PI ,如果它不是一个命名的 PI ,则必须声明原型

dcl-pi *n ;
Parm char(1) ;
end-pi ;
Run Code Online (Sandbox Code Playgroud)

那么就不需要原型声明了。有人可以解释一下,如果我的程序 SS150R 有一个指定的 PI 并且没有 PR,但它如何仍然有效?

注意:我的程序被旧的非RPG程序调用。

rpg rpgle ibm-midrange

1
推荐指数
1
解决办法
116
查看次数

C# - 从AS/400 iSeries解码数据

我使用标准.NET OdbcConnection连接到AS/400 iSeries数据库.我可以查询这个数据库.不幸的是,有些字段似乎是编码的.如何在C#中解码这些值?我尝试过以下方法:

string text = string.Empty;
if (bytes.Length > 0)
{
    ASCIIEncoding encoder = new ASCIIEncoding();
    text = encoder.GetString(bytes);
}
return text;
Run Code Online (Sandbox Code Playgroud)

bytes变量表示需要解码的数据.不幸的是,我没有运气.我被告知如果我在Windows机器上设置ODBC数据源并检查转换选项卡中的"将二进制数据(CCSID65535)转换为文本"复选框,则数据将正确返回.但是,我想使用纯C#.有任何想法吗?我离开了吗?

谢谢!

c# ibm-midrange

0
推荐指数
1
解决办法
1816
查看次数

在AS400中,我如何转到源文件的末尾?

当我使用时STRDBG,在显示模块源中,我如何转到代码的末尾?

我所做的是使用向下翻页键,但在大型源文件中这种方法很糟糕.

ibm-midrange

0
推荐指数
1
解决办法
329
查看次数

ILE RPG程序变量值可以在调用之间保留在内存中吗?

如果我使用DFTACTGRP创建一个ILE RPG程序(*NO),我的理解是程序保留在内存中,直到激活组被销毁.如果我在关闭LR的情况下退出程序,那么下次调用时变量会重新初始化还是保持它们的值?

rpgle ibm-midrange

0
推荐指数
1
解决办法
517
查看次数

从CLLE调用RPGLE时传递压缩数字字段?

从CLLE调用RPGLE时,我应该传递打包的数字字段吗?或者将它们转换为字符传递它们并将它们转换回RPG中的数字.如果推荐前者,这是怎么做到的?

rpgle control-language ibm-midrange

0
推荐指数
1
解决办法
1860
查看次数

dealloc +%alloc()vs%realloc() - RPGLE

知道那ptr <> *null,两段代码功能相同吗?

dealloc(en) ptr;
ptr = %alloc(500);
Run Code Online (Sandbox Code Playgroud)

ptr = %realloc(ptr:500);
Run Code Online (Sandbox Code Playgroud)

pointers rpgle ibm-midrange

0
推荐指数
1
解决办法
326
查看次数

如何让RPGLE程序将SQL警告和错误写入作业日志?

好像我记得编写一个使用嵌入式SQL的RPG程序,只要发生SQL警告或错误,它就会向交互式用户作业日志写入消息.我没有明确写出来; 它默认记录.

我现在写的程序没有进行此日志记录,虽然我知道我可以引起类似警告01003和错误02000,并使用SQLState变量读取它们.

我不认为我想象这种行为.是否有我忘记设置的H spec关键字,我调用程序的方式(使用CALL交互式),我编写SELECT INTO语句的方式(静态而不是动态)?我对其他想法感到茫然.

rpgle embedded-sql db2-400 ibm-midrange

0
推荐指数
1
解决办法
121
查看次数

动态调用内部过程

有人可以解释我为什么不能使用%paddr()BIF 将内部过程的地址(存储在字符串变量中)分配给ProcPointer 吗?

我的想法是创建一个以数字为键的关联数组,以某个子过程的名称为值的关联数组。当用户在DSPF中输入数字2时,程序必须调用具有键“ 2”的过程。

据我了解,BIF %paddr()使用硬编码的过程名称或包含过程名称的字符串。但是,当给一个字符串变量时,编译器会抱怨的参数%PADDR无效。

rpgle ibm-midrange

0
推荐指数
1
解决办法
274
查看次数