Skip to content

p-forzy/jt400-pgm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jt400-pgm

NodeJS wrapper to call IBM iSeries AS/400 programs Version

This module use JT400.jar and Java bridge

Configure connection with AS/400 system

	
	const Pgm = require('jt400-pgm');
	
	let pgm = new Pgm("127.0.0.1","user","password","/QSYS.LIB/PROGRAM.LIB/PGM1.PGM");
	

Configure program call

	pgm.setParams(model,inputData)
	
	pgm.setParams([
			{ name:'textParam', type:'text', size:50, kind:'in' },
			{ name:'intParam', type:'bin4', kind:'in' },
			{ name:'decimalParam', type:'zoned', size:5, precision:2, kind:'in' },
			{ name:'decimalParam2', type:'packed', size:5, precision:2, kind:'in' },
			{ name:'nboccur', type:'bin4', kind:'out' },
			{ name:'datastruct', type:'array', size:20, kind:'out', nboccurField:'nboccur', struct: [
				{name:'param1', type:'text', size:10},
				{name:'param2', type:'text', size:12},
				{name:'param3', type:'text', size:15},
				] 
			}
		],{
			textParam:'this is a test',
			intParam:12,
			decimalParam:123.45,
			decimalParam2:678.10,
		});

Run program call

		try {
			var res=await pgm.run();
	
			console.log(res);
		} catch(err) {
			console.log(err);
		}

Full program call

	const Pgm = require('jt400-pgm');
	async function start() {
		let pgm = new Pgm("127.0.0.1","user","password","/QSYS.LIB/PROGRAM.LIB/PGM1.PGM");
		pgm.setParams([
			{ name:'textParam', type:'text', size:50, kind:'in' },
			{ name:'intParam', type:'bin4', kind:'in' },
			{ name:'decimalParam', type:'zoned', size:5, precision:2, kind:'in' },
			{ name:'decimalParam2', type:'packed', size:5, precision:2, kind:'in' },
			{ name:'nboccur', type:'bin4', kind:'out' },
			{ name:'datastruct', type:'array', size:20, kind:'out', nboccurField:'nboccur', struct: [
				{name:'param1', type:'text', size:10},
				{name:'param2', type:'text', size:12},
				{name:'param3', type:'text', size:15},
				] 
			}
		],{
			textParam:'this is a test',
			intParam:12,
			decimalParam:123.45,
			decimalParam2:678.10,
		});
		try {
			var res=await pgm.run();
	
			console.log(res);
		} catch(err) {
			console.log(err);
		}
	}
	start();

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published