IBM System i

IBM i, formerly known as AS/400, is a proprietary, midrange, object-based operating and application system. It includes a relational database, a menu-driven interface, support for multiple users, block-oriented terminal support and printers, and supports security, communications, and web-based application servers including Websphere, Apache and Tomcat.

Share tech news, updates, or what's on your mind.

Sign up to Post

I am submitting a program from a CLLE program with 5 variables.  Inside the receiving program, the value from the second parameter is appearing in the first; the same for third to the second and so on.

The variables are relatively long; I allowed extra space in each of them to allow for growth and/or extended values.

When I call the second program (vs. SBMJOB) the variables behave.  I know it has something to do with the fact the variables are being passed by reference but I can't find how to keep it from happening.  Any suggestions?

Thank you for any help you're able to provide.

Hi Experts,

I created a command (and CLLE program), that run a QShell command.
The return is an error (as expected) + "Press ENTER to end terminal session."
That's great because I need that :-)

Now I run the same command a second time, and the screen is shown again, with a new message, but also the old message.
I like to get of the first message (and all messages before)
How can I do that?

The QShell programcommand that is executed is:

BTW It's not the QSH screen I assume, beause, when I run QSH, the screen is blank.


We have an IBM iseries with AFP to PDF transform program. When ever we convert a spoolfile to pdf and go into the iseries navigator to check the shared PDF folder,
we are seeing a new folder being created for every spoolfile entry we convert and also a subfolder with the user name as the folder name.
(see sample attached)
is there a way that we can just have all files go to the shared PDF and stored by user?
Hi Experts,

After configuring several webservice on the iSeries (AS/400) Apache-server (using the wizzard),
I like to transfer the configuration of them to an other machine.

Is it possible to copy and paste or backup and restore this configuration info?
Hi Experts.  I have what I think is a simple question but I haven't had any success searching for the answer.

I need a program that will notify a user when another user has a record locked that they are trying to access and who is using the record.

Hi Experts,

Using the WSDL2RPG from IBM....,
I thougt that this would be the tool that solve all my Webservice problems :-)
But now I get the following errors from the compiler:

*RNF0501 20      6 Length of character item exceeds 16773104; length defaults to 16773104.  
*RNF7301 30     93 Position of subfield is greater than length of data  structure; specification ignored.          

Position (335462082-335462085) of subfield SIZE in data structure SHIPMEN... is greater than length of data structure (16773104).                                

I understand what the problem is, but I still have to create a Webservice client
So I have a big issue/challenge.
What is the way to solve this issue?
Hi Experts,

I started my first RPGLE development with a sourcefile on the IFS instead in then QRPGLESRC,
Will takes some time getting used to is, but I think that's the way to go.

Now... In the program I use :
/copy myinclfile1.rpgleinc
/copy /QIBM/ProdData/OS/WebServices/V1/client/include/Axis.rpgleinc

The first is a includefile in the same map. the second... oke I think this is clear.

When I compile to a module it will work flawless.
Now I have changes the RPGLE into SQLRPGLE , and try to crate a module with CRTSQLRPGI
The result is: unknown copymembers.

Because of the map/program structure, it's not desirable to make a /copy to a fixedpath, if must stay relative.

How can I solve that?
Hi Experts,

I would like to exchange encrypted  information (by a certificate) from an IBM I-server to a Microsoft SQL server (2016)
Can I exchange the certificate used for the encryption from IBM to MSSQL server or vice versa?

For what I have read: I can create identical certificates on a source and target MS SQL server, but I cannot export and import this certificate.\

Can anyone help, please?
Hello Experts,

I use the QWVRCSTK API (format CSTK0100) to get the caller of my Trigger (program WHOCALLS)
But if I look at the callstack, I have no idea how to figure-out what entry I need.
In the example it's #MyPgm, but it can be any program from any library including SQLRPG, DFU or SQL.

Type  Program                  Statement         Procedure         
      QCMD       QSYS                     /0519                    
      QUICMENU   QSYS                     /00C1                    
   1  QUIMNDRV   QSYS                     /0DD3                    
      QUOCPP     QPDA                     /070E                    
      QUOMAIN    QPDA                     /011E                    
   2  QUOCMD     QSYS                     /01EA                    
      #MyPgm     MyLib                           _QRNP_PEP_#01     
      #MyPgm     MyLib         72                #MyPgm               
      QSQROUTE   QSYS          16483             QSQROUTE          
      QSQRUN3    QSYS          16906             SQL_Update        
      QDBUDR     QSYS          9759              QDBUDR            
      QDBUDR     QSYS          19816             CALL_TRIGGER_PGM  
      TRGPGMR    MyLib                           _QRNP_PEP_TRGPGMR 
      TRGPGMR    MyLib         5000              TRGPGMR            
      WHOCALLS   MyLib                           _QRNP_PEP_WHOCALLS 
      WHOCALLS   MyLib         3300              WHOCALLS           
      QTEVIREF   QSYS        

Open in new window

Hi Experts,

I like to write a structured DS to an IFS-file but in the same format as you see in debug mode, so all levels, all field-names an all values.
Write to IFS is not the problem , I know how to do that.
We are trying to create two generic ID files in Domino admin for registering person docs (Registering New users) and re-certify user certificates which are expired. Current issue is we when we create a new person document with ID file and grant access to Admin server and try creating a new lotus domino account, we are unable to view list of certifiers to select.

When we try to modify recovery authorities but it fails and does not resolve the current issue, When we try to Modify certifiers and try to remove administrators its giving an error  “Cannot locate user certificate. Make sure server contains your certificate for encryption”. I also tried copying the person document of that administrator back into their directory and followed the same steps which did not help me.

Can any one help me at the earliest as its very important to us?2019-03-28-09_35_36-2019-02-10-10_46.png
I copied the Georgia font from windows to the appropriate folder on my AS/400 and am trying to use it in a *AFPDS printer file.  In the DDS I've tried identifying the font by file name georgia.ttf and by font name Georgia, but it is not printing correctly.  What am I doing wrong?
I'm looking for a simple CL command that will output a message if a job has completed successfully or not.  We have a 3rd party email client already, so I know the syntax to allow the email to go, but I don't know the command to send it if the job is successful or if it failed.  Any assistance would be appreciated.

Essentially, I want the logic to be as such...

If the job completed successfully, go to this email message, else if the job didn't complete successfully, then go to this message.  I don't want any other reaction to occur.

Hi experts,

I use LIBHTTP to call a restservice (POST)
On this moment I use :
         : %addr(myJSON:*data )       
         : %len(%trim(myJSON))        
         : '/home/user/result.dta' 
         : HTTP_TIMEOUT               
         : HTTP_USERAGENT             
         : 'application/json' );  

Open in new window

The result is written to a resultfile, I prefer to get the result in a variable in the program,
what do I have to change to accomplish that?
I could use some help with my script. I put *** where I need help making a code that would auto enter the most recent sundays date. Could you help?


REM This line calls the macro subroutine

sub subSub1_()
   autECLSession.autECLPS.SendKeys "[tab]"
   autECLSession.autECLPS.SendKeys "158"
   autECLSession.autECLPS.SendKeys "[field+]"
   autECLSession.autECLPS.SendKeys "5"
   autECLSession.autECLPS.SendKeys "[enter]"
   autECLSession.autECLPS.WaitForAttrib 10,56,"00","3c",3,10000

   autECLSession.autECLPS.WaitForCursor 10,57,10000

   ***Input the most recent sunday's date.
   autECLSession.autECLPS.SendKeys "[field+]"
   autECLSession.autECLPS.SendKeys "[field+]"
   autECLSession.autECLPS.SendKeys "580171"
end sub
I need to get guidance on proper storage of an as400. I believe it is running system 38 (or 36).

Regards, George

I have a Qlogic issue in IBM BladeCenter, Blade HS22 and LS42.

as attached picture no  device present in Fiber Channel Device.

Hi All


Hope you are well.

I need to copy a Schema from one machine to other machine,

Both machines have Db2 instance of same version (10.5)

But Schema is having data of LOB data type.

Which method is simple to copy the entire schema with structure and data.

I know ADMIN_COPY_Schema only supports on same machine and under same instance .

But db2move utility does not support LOB data type (I think).

Any inputs on this Please.

Thanks in Advance!!!!
Hi, we have two tapes to be used for daily backup. and we have scheduled jobs to run the daily backups at night. previously, we only need 1 tape but now, it asks for 2nd tape. we have a program to initialize single tape, but not for 2 tapes. can anyone helps on how to intialize more than 1 tape  for daily backup   (1 week rotation basis). 2 tape cartridges per day, 14 tapes/week. os version: v6r1. thanks.
      DCL VAR(&DAY) TYPE(*CHAR) LEN(4)                                  
      DCL VAR(&DLYVOL) TYPE(*CHAR) LEN(6)                                
      RTVSYSVAL SYSVAL(QDAYOFWEEK) RTNVAR(&DAY)                          
      CHGVAR VAR(&DLYVOL) VALUE('DLY' *CAT %SST(&DAY 2 3))              
Hi experts,

I recently discovered the "SYSTOOLS.HTTPPOSTCLOB" to consume webservices
As long as I give the right input to the WS, it works fine, but I can't figureout how to catch errors.

e.g. I send a wrong ZipCode a Zipcode-service to get an address.
If I do that in SoapUI I get the information:
{"errors": [{
   "status": "400",
   "title": "Bad Request",
   "detail": "postalcode has the wrong format. It should be: 9999XX"

Open in new window

If i do the same request with SYSTOOLS.HTTPPOSTCLOB, the response is empty (I assume null),
result : GDATA_DATA          CHAR(8000000)        NOT ADDRESSABLE

SQLCODE = -4302
SQLSTATE = '38000'

SQL Diagnostics data:
 481   'RDINAL_TOKEN_2=HTTPP00013;'
 541   'rmedURLException:no protocol:                               '
 601   '                                  

Open in new window

Hi Experts,

We are getting the error message CPF5033 during READ operation in batch program and error message says the below.
"I/O error CPF5033 was detected in file B1PBILH (C G D F)."

When I check the log it says
" Select or omit error on field B1PBILH_1.BTCAR member B1PBILH.  
 Select/omit error on member B1PBILH.                            "

"I/O error CPF5033 was detected in file B1PBILH.                          
Function check. RNX1299 unmonitored by BLR573R1A at statement 0000048100,
  instruction X'0000'.                                                    "

I have checked the record lock and object lock on the file. No locks exist.
I have checked the data for the particular record where to check the junk value. No junk value exist.
And we are getting this error randomly for different records.

Program flow:
Cl program does the OVRDBF and then opnqry on the file and we read the same file in RPGLE with out key.
and we are getting CPF5033 error while performing the read operation on the file.

Please help me to fix the issue. I have attached the screen shot for your reference.

Thanks in advance.

While do save/restore operation on *LINK in AS400,I am getting error  "File system error occurred. error number 3474
hi.  I am trying to configure mail on the iSeries or AS400.   My only ISP I have access to is verizon.  They have no SMTP servers you can use.  How can I configure the system to send out mail?  I am have other questions concerning this, but can't seem to find one if you have no access to an smtp server.
I had this question after viewing Display file Overlay problem.

I have the same problem but with window formats, three of them. Each is in its own program and display file. When program A is called from the menu, it displays its window leaving the original menu screen intact. From activity performed on that window, another program is called, program B, which also displays a window but now, everything behind it is black. This behavior continues for the next program which also displays a window and a black background eliminating everything  previously displayed up to this point.

I have a dummy format in each program with the ASSUME keyword and the one character field at 1,2 and even added the KEEP keyword but it made no difference.

I have not set row and column positions but have selected the default positioning option expecting the OS to position each screen to avoid any issues but obviously, this isn't happening.

Any suggestions?
We have an issue right now where when our cust service team runs a credit card they at times receive a handshake error. We run a IBM i AS/400 that connects to a backend called Curbstone. Here is a break down of how this works Here is what is supposed to happen.

When credit cards are run curbstone opens a connection to paymenttech.
At this point the IBM I sends along “cipher suite, decryption keys” this information is accepted by paymenttech and the transaction continues.

Here is what is happening now.
Curbstone opens a connection to paymenttech.  At this point the IBM I sends along “cipher suite, decryption keys” this information is now rejected by paymenttech the transaction fails and the handshake error pops up. I have run a trccnn on the IBM i and in wireshark. Both curbstone and paymenttech don't see any issues on their end. I did call paymenttech today and a transaction that I saw on the IBM i didn't get to them resulting in the handshake error. I don't think its an issue with our network because it isn't a constant issue. I thought perhaps there was some job running at the time of the handshake error but that doesn't seem to be an issue. This issue ramps up at between 4pm and 6pm on Fridays. Why? I can't seem to find a reason.

IBM System i

IBM i, formerly known as AS/400, is a proprietary, midrange, object-based operating and application system. It includes a relational database, a menu-driven interface, support for multiple users, block-oriented terminal support and printers, and supports security, communications, and web-based application servers including Websphere, Apache and Tomcat.

Top Experts In
IBM System i

No Top Experts for this time period. Answer questions to earn the title!