Closed kadler closed 6 years ago
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
Great. You may open new issue any time should need arise. Thanks for your help and patience with Open Source.
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
I had an idea to try to make call through ODBC with C instead of PHP and that at least worked without crashing. It still doesn't return äö-characters, but that is probably something to do with our machine. So for developing purposes current solution works fine.
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
Are we done with this issue?
Aka, we have proven that Remote (laptop) calling via ODBC generally works. There are ODBC driver issues (php odbc pecl), but not seem to be db2sock problems. Aka, db2 connect ibm_db2 over DRDA (license driver), does not have same issues as ODBC (free driver)... so ... not sure what more you expect.
We have a running discussion in the 'Get Involved' issue about doing something better than remote ODBCosaurus (maybe with json REST). So, I don't think we need duplicate that discussion this issue.
Are we done with this issue?
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Still working on it, progress has just been slow on my end.
possibly out of date php, odbc,
My versions are a little bit older, but not that much.
$ php --version
PHP 7.0.22-0ubuntu0.17.04.1 (cli) (built: Aug 8 2017 22:03:30) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.22-0ubuntu0.17.04.1, Copyright (c) 1999-2017, by Zend Technologies
$ php --re odbc
Extension [ <persistent> extension #27 odbc version 7.0.22-0ubuntu0.17.04.1 ]
$ odbcinst -j
unixODBC 2.3.4
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/newuser/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
=========================== IBM-IACCESS ============================
PKG
--------------------------------------------------------------------
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
ii ibm-iaccess 1.1.0.7-1.0 amd64 IBM i Access Client Solutions
My IBM-IACCESS doesn't show nearly as much data as yours. Don't know what could be with it. It is installed from this package IBM_i_Access_Client_Solutions_-_Linux_AP_LCD8_2012_07/x86_64/ibm-iaccess-1.1.0.7-1.0.amd64.deb
.
Still this same driver and PHP works correctly with XMLSERVICE so those shouldn't be the problem.
I also returned briefly to my linux "port". It seems my Linux and IBM have different endianness so that was introducing some problems. But now 'Hello world' at least gets to the RPG program, it just won't bring back the correct result. Maybe those INOUT parameters aren't working through this either :thinking:
I am not working on anything for your Linux segfault
Yeah, this really shouldn't be that high of priority. It is really nice thing to have, it improves developing workflow, but time could also be used on something more important.
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
reminder your Linux laptop php odbc segfault
I believe db2sock project server side is working ok (db2procjr). I suggest your specific Linux machine is the problem, possibly out of date php, odbc, etc. My Linux machine is working ok both php odbc and php ibm_db2. Therefore, I am not working on anything for your Linux segfault as this seems to be your specific laptop problem.
However, I continue to add features MAY help with said assumed 'out of date' Linux php odbc laptop. You should update to minimum db2sock 1.0.9-sg9 to get these features.
Are we still working this issue? Done?
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
But I did some quick debugging. It crashes on the odbc_result() line and only when output has 'special' characters in them.
More precisely, your specific Linux machine using php odbc is crashing on odbc_result() line. On the other hand, my Linux php odbc appears to work ok (no crash).
My machine is ok (no crash).
#!bash
[adc@oc7083008330 tests_php]$ php test3000_sql400json_odbc.php ../tests_c/j0180_pgm_hamela03-ds-rpg-occurs
====================================
../tests_c/j0180_pgm_hamela03-ds-rpg-occurs
Input:
string(1435) "{"pgm":[
{"name":"HAMELA03", "lib":"DB2JSON"},
{"s": [
{"name":"Parm1", "type":"1a", "value":""},
{"name":"Parm2", "type":"18a", "value":"ä"},
{"name":"Parm3", "type":"2a", "value":""},
{"name":"Parm4", "type":"10a", "value":""},
{"name":"Arr1Count", "type":"3s0", "value":0}
]},
{"ds": [{"name":"Arr1", "dim":10},
{"s":[
{"name":"Arr1P1", "type":"7a", "value":""},
{"name":"Arr1P2", "type":"132a", "value":""},
{"name":"Arr1P3", "type":"30a", "value":""},
{"name":"Arr1P4", "type":"1s0", "value":0}
]}
]},
{"s": [
{"name":"Parm5", "type":"1a", "value":""},
{"name":"Parm6", "type":"4a", "value":""},
{"name":"Parm7", "type":"18a", "value":""},
{"name":"Parm8", "type":"100a", "value":""},
{"name":"Parm9", "type":"3s0", "value":0},
{"name":"Parm10", "type":"3s0", "value":0}
]},
{"s": {"name":"Arr2Count", "type":"5s0", "value":3}},
{"ds": [{"name":"Arr2", "dim":10},
{"s":[
{"name":"Arr2P1", "type":"1a", "value":""},
{"name":"Arr2P2", "type":"30a", "value":""},
{"name":"Arr2P3", "type":"4a", "value":""},
{"name":"Arr2P4", "type":"18a", "value":""},
{"name":"Arr2P5", "type":"100a", "value":""}
]}
]},
{"s": {"name":"Parm11", "type":"30a", "value":""}}
]}
"
string(3002) "{"script":[{"pgm":["HAMELA03","DB2JSON",
{"Parm1":{}},{"Parm2":"ä"},{"Parm3":{}},{"Parm4":{}},
{"Arr1Count":1},{"Arr1":[[
{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}
]]},
{"Parm5":{}},{"Parm6":{}},{"Parm7":{}},
{"Parm8":{}},{"Parm9":0.0},{"Parm10":0.0},
{"Arr2Count":3},{"Arr2":[[
{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},
{"Arr2P4":{}},{"Arr2P5":{}}]]},{"Parm11":"ä"}
]}]}"
success (0)
Gee Batman, perhaps Mr. Linux is our villain?? Your php odbc crash observation indicates problem with your installed version of 'something'. That is, any 'wild' character should never cause php odbc to segfault (die). Wherein, 'wild' character in this context means messed conversion of any given character. Linux php odbc should not die because of a 'goofy' character in a result set (silly odbc). Yes?
my Linux machine
Most obvious answer is you need to update your Linux php + odbc, or, perhaps Linux odbc driver (client access?).
#!bash
[adc@oc7083008330 tests_php]$ php --version
PHP 7.1.4 (cli) (built: Apr 14 2017 15:59:17) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
[adc@oc7083008330 tests_php]$ php --re odbc
Extension [ <persistent> extension #10 odbc version 7.1.4 ] {
[adc@oc7083008330 tests_php]$ odbcinst -j
unixODBC 2.2.14
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/adc/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
$ /opt/ibm/iaccess/bin/cwbmedic
$ tar xf cwbmedic-timestamp-stuff.tgz
$ gedit cwbmedic.20171108_10.37.02.out &
=========================== IBM-IACCESS ============================
PKG
--------------------------------------------------------------------
Name : ibm-iaccess Relocations: (not relocatable)
Version : 1.1.0.8 Vendor: IBM
Release : 1.0 Build Date: Wed 31 May 2017 12:38:50 PM CDT
Install Date: Tue 31 Oct 2017 02:10:56 PM CDT Build Host: lcomp09b
Group : Productivity/Databases/Clients Source RPM: ibm-iaccess-1.1.0.8-1.0.src.rpm
Size : [7584618 (bb)](https://bitbucket.org/litmis/db2sock/commits/7584618) License: IPLA
Signature : (none)
URL : http://www-03.ibm.com/systems/power/software/i/access/solutions.html
Summary : IBM i Access Client Solutions - Linux Application Package
Description :
IBM i Access Client Solutions - Linux Application Package for an enhanced ODBC driver.
For more information, see:
http://www.ibm.com/systems/power/software/i/access/solutions.html
5733-XJ1
(C) Copyright IBM Corporation 2001, 2017
All rights reserved.
Licensed Materials Property of IBM
US Government Users Restricted Rights -
Use, duplication or disclosure restricted by
GSA ADP Schedule Contract with IBM Corp.
mmm ... gets crazy from here
Sane and rational. Update Linux version(s) seems correct next step.
However, not sure what next step would be used to pacify Linux whining baby php odbc. I mean, what can we/server do about a bad character as 'conversion' occurs via natural odbc client/server DB2 clob interaction?? Aka, we/db2sock are not really doing anything on path db2projr(clob). Just a clob and a result set. How do we/server db2sock know what a bad character looks like???
I recall we added a goofy end of line delimiter for odbc result set in xmlservice (). Not sure that would fix this php odbc problem. Especially as my Linux machine is working 'as is'. Mmmm ... this is getting ugly (on your Linux machine).
server 65535???
Perhaps your whole Linux mess is your IBM i server default ccsid 65535 (hex/no convert)??? I thought you mentioned changed profile to some other ccsid, seems logical action. Well, unless iaccess odbc picking some other wild ccsid when faced with machine default ccsid 65353. I don't know enough about odbc 'hacks' in ccsid 65535 area (not sure i even want to look at odbc ccsid sausage being made ... yuck).
green screen eval (hex dump)
BTW -- Your green screen eval dumps nears useless (to my eyes). As you can see, right side character 'interpretation' of hex data, full on party of green screen influenced by job ccsid, profile ccsid, machine ccsid scope order precedence (i recall some application ccsid in mix, maybe 37). As said before, variant EBCDIC characters be one horrible thing for green screen debuggers.
#!bash
EVAL outData:x 1560
00000 C07FA283 998997A3 7F7ABAC0 7F978794 - ä"script":¬ä"pgm
00010 7F7ABA7F C8C1D4C5 D3C1F0F3 7F6B7FC4 - ":¬"HAMELA03","D
Maybe stop posting green screen evals, i can't see how this will help. That is, our last integrated fix for variant characters like 0xCO is correctly recognized as '{' in the json parser despite goof ball 'ä' we see on green screen eval. If this were not so, all the test cases would fail, not just hamela03. Aka, green screen debugger is almost useless with json due to variant EBCDIC characters (double Uf Da with a 'ä' cherry on top ... or ... is that '{' cherry on top) .
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Sorry, there has been some other things that are needed to be done.
But I did some quick debugging. It crashes on the odbc_result() line and only when output has 'special' characters in them.
This version of j0180 crashes.
j0180_pgm_hamela03-ds-rpg-occurs
Input:
string(1435) "{"pgm":[
{"name":"HAMELA03", "lib":"DB2JSON"},
{"s": [
{"name":"Parm1", "type":"1a", "value":""},
{"name":"Parm2", "type":"18a", "value":"ä"},
{"name":"Parm3", "type":"2a", "value":""},
{"name":"Parm4", "type":"10a", "value":""},
{"name":"Arr1Count", "type":"3s0", "value":0}
]},
{"ds": [{"name":"Arr1", "dim":10},
{"s":[
{"name":"Arr1P1", "type":"7a", "value":""},
{"name":"Arr1P2", "type":"132a", "value":""},
{"name":"Arr1P3", "type":"30a", "value":""},
{"name":"Arr1P4", "type":"1s0", "value":0}
]}
]},
{"s": [
{"name":"Parm5", "type":"1a", "value":""},
{"name":"Parm6", "type":"4a", "value":""},
{"name":"Parm7", "type":"18a", "value":""},
{"name":"Parm8", "type":"100a", "value":""},
{"name":"Parm9", "type":"3s0", "value":0},
{"name":"Parm10", "type":"3s0", "value":0}
]},
{"s": {"name":"Arr2Count", "type":"5s0", "value":3}},
{"ds": [{"name":"Arr2", "dim":10},
{"s":[
{"name":"Arr2P1", "type":"1a", "value":""},
{"name":"Arr2P2", "type":"30a", "value":""},
{"name":"Arr2P3", "type":"4a", "value":""},
{"name":"Arr2P4", "type":"18a", "value":""},
{"name":"Arr2P5", "type":"100a", "value":""}
]}
]},
{"s": {"name":"Parm11", "type":"30a", "value":""}}
]}
PHP Warning: odbc_prepare(): SQL error: [IBM][System i Access ODBC Driver]Extended dynamic support disabled., SQL state 01000 in SQLPrepare in test3000_sql400json_odbc.php on line 33
string(5) "DONE!"
Segmentation fault (core dumped)
If I change 'ä' to 'a', it does not crash.
j0180_pgm_hamela03-ds-rpg-occurs
Input:
string(1435) "{"pgm":[
{"name":"HAMELA03", "lib":"DB2JSON"},
{"s": [
{"name":"Parm1", "type":"1a", "value":""},
{"name":"Parm2", "type":"18a", "value":"a"},
{"name":"Parm3", "type":"2a", "value":""},
{"name":"Parm4", "type":"10a", "value":""},
{"name":"Arr1Count", "type":"3s0", "value":0}
]},
{"ds": [{"name":"Arr1", "dim":10},
{"s":[
{"name":"Arr1P1", "type":"7a", "value":""},
{"name":"Arr1P2", "type":"132a", "value":""},
{"name":"Arr1P3", "type":"30a", "value":""},
{"name":"Arr1P4", "type":"1s0", "value":0}
]}
]},
{"s": [
{"name":"Parm5", "type":"1a", "value":""},
{"name":"Parm6", "type":"4a", "value":""},
{"name":"Parm7", "type":"18a", "value":""},
{"name":"Parm8", "type":"100a", "value":""},
{"name":"Parm9", "type":"3s0", "value":0},
{"name":"Parm10", "type":"3s0", "value":0}
]},
{"s": {"name":"Arr2Count", "type":"5s0", "value":3}},
{"ds": [{"name":"Arr2", "dim":10},
{"s":[
{"name":"Arr2P1", "type":"1a", "value":""},
{"name":"Arr2P2", "type":"30a", "value":""},
{"name":"Arr2P3", "type":"4a", "value":""},
{"name":"Arr2P4", "type":"18a", "value":""},
{"name":"Arr2P5", "type":"100a", "value":""}
]}
]},
{"s": {"name":"Parm11", "type":"30a", "value":""}}
]}
PHP Warning: odbc_prepare(): SQL error: [IBM][System i Access ODBC Driver]Extended dynamic support disabled., SQL state 01000 in SQLPrepare in test3000_sql400json_odbc.php on line 33
string(5) "DONE!"
string(1556) "{"script":[{"pgm":["HAMELA03","DB2JSON",{"Parm1":{}},{"Parm2":"a"},{"Parm3":{}},{"Parm4":{}},{"Arr1Count":1},{"Arr1":[[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr
1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4
":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0
.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}],[{"Arr1P1":{}},{"Arr1P2":{}},{"Arr1P3":{}},{"Arr1P4":0.0}
]]},{"Parm5":{}},{"Parm6":{}},{"Parm7":{}},{"Parm8":{}},{"Parm9":0.0},{"Parm10":0.0},{"Arr2Count":3},{"Arr2":[[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}
],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr
2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}
],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr
2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}],[{"Arr2P1":{}},{"Arr2P2":{}},{"Arr2P3":{}},{"Arr2P4":{}},{"Arr2P5":{}}]]},{"Parm11":"a"}]}]}"
PHP Notice: Undefined variable: string in test3000_sql400json_odbc.php on line 46
success (0)
Here is some dumps from the server side.
Crash:
EVAL clob:x 1440
00000 0000059A C07F9787 947F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - ...ªä"pgm":¬.
00010 40C07F95 8194857F 7A7FC8C1 D4C5D3C1 - ä"name":"HAMELA
00020 F0F37F6B 40407F93 89827F7A 7FC4C2F2 - 03", "lib":"DB2
00030 D1E2D6D5 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - JSON"å,. ä"s"
00040 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 - : ¬. ä"na
00050 94857F7A 7FD78199 94F17F6B 407FA3A8 - me":"Parm1", "ty
00060 97857F7A 7FF1817F 6B407FA5 8193A485 - pe":"1a", "value
00070 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
00080 7F958194 857F7A7F D7819994 F27F6B40 - "name":"Parm2",
00090 7FA3A897 857F7A7F F1F8817F 6B407FA5 - "type":"18a", "v
000A0 8193A485 7F7A7F43 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":"{"å,.
000B0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 94857F7A 7FD78199 - ä"name":"Par
000C0 94F37F6B 407FA3A8 97857F7A 7FF2817F - m3", "type":"2a"
000D0 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
000E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
000F0 D7819994 F47F6B40 7FA3A897 857F7A7F - Parm4", "type":"
00100 F1F0817F 6B407FA5 8193A485 7F7A7F7F - 10a", "value":""
00110 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00120 857F7A7F C19999F1 C396A495 A37F6B40 - e":"Arr1Count",
00130 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
00140 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B - alue":0å. |å,
00150 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07F84 A27F7A40 BAC07F95 - . ä"ds": ¬ä"n
00160 8194857F 7A7FC199 99F17F6B 407F8489 - ame":"Arr1", "di
00170 947F7AF1 F0D06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - m":10å,.
00180 C07FA27F 7ABA2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ä"s":¬.
00190 404040C0 7F958194 857F7A7F C19999F1 - ä"name":"Arr1
001A0 D7F17F6B 407FA3A8 97857F7A 7FF7817F - P1", "type":"7a"
001B0 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
001C0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - ä"nam
001D0 857F7A7F C19999F1 D7F27F6B 407FA3A8 - e":"Arr1P2", "ty
001E0 97857F7A 7FF1F3F2 817F6B40 7FA58193 - pe":"132a", "val
001F0 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ue":""å,.
00200 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F 7A7FC199 - ä"name":"Ar
00210 99F1D7F3 7F6B407F A3A89785 7F7A7FF3 - r1P3", "type":"3
00220 F0817F6B 407FA581 93A4857F 7A7F7FD0 - 0a", "value":""å
00230 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ,. ä"
00240 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F1D7 F47F6B40 - name":"Arr1P4",
00250 7FA3A897 857F7A7F F1A2F07F 6B407FA5 - "type":"1s0", "v
00260 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":0å.
00270 40BBD025 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - |å. |å,.
00280 C07FA27F 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ä"s": ¬.
00290 C07F9581 94857F7A 7FD78199 94F57F6B - ä"name":"Parm5",
002A0 407FA3A8 97857F7A 7FF1817F 6B407FA5 - "type":"1a", "v
002B0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
002C0 404040C0 7F958194 857F7A7F D7819994 - ä"name":"Parm
002D0 F67F6B40 7FA3A897 857F7A7F F4817F6B - 6", "type":"4a",
002E0 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
002F0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 - ä"name":"P
00300 819994F7 7F6B407F A3A89785 7F7A7FF1 - arm7", "type":"1
00310 F8817F6B 407FA581 93A4857F 7A7F7FD0 - 8a", "value":""å
00320 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ,. ä"name
00330 7F7A7FD7 819994F8 7F6B407F A3A89785 - ":"Parm8", "type
00340 7F7A7FF1 F0F0817F 6B407FA5 8193A485 - ":"100a", "value
00350 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
00360 7F958194 857F7A7F D7819994 F97F6B40 - "name":"Parm9",
00370 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
00380 8193A485 7F7AF0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":0å,.
00390 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F1 - ä"name":"Parm1
003A0 F07F6B40 7FA3A897 857F7A7F F3A2F07F - 0", "type":"3s0"
003B0 6B407FA5 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - , "value":0å.
003C0 40BBD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07FA2 7F7A40C0 - |å,. ä"s": ä
003D0 7F958194 857F7A7F C19999F2 C396A495 - "name":"Arr2Coun
003E0 A37F6B40 7FA3A897 857F7A7F F5A2F07F - t", "type":"5s0"
003F0 6B407FA5 8193A485 7F7AF3D0 D06B2540 - , "value":3åå,.
00400 404040C0 7F84A27F 7A40BAC0 7F958194 - ä"ds": ¬ä"nam
00410 857F7A7F C19999F2 7F6B407F 8489947F - e":"Arr2", "dim"
00420 7AF1F0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - :10å,. ä"
00430 A27F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - s":¬.
00440 40C07F95 8194857F 7A7FC199 99F2D7F1 - ä"name":"Arr2P1
00450 7F6B407F A3A89785 7F7A7FF1 817F6B40 - ", "type":"1a",
00460 7FA58193 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - "value":""å,.
00470 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F - ä"name"
00480 7A7FC199 99F2D7F2 7F6B407F A3A89785 - :"Arr2P2", "type
00490 7F7A7FF3 F0817F6B 407FA581 93A4857F - ":"30a", "value"
004A0 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - :""å,.
004B0 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F2D7 - ä"name":"Arr2P
004C0 F37F6B40 7FA3A897 857F7A7F F4817F6B - 3", "type":"4a",
004D0 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
004E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ä"name
004F0 7F7A7FC1 9999F2D7 F47F6B40 7FA3A897 - ":"Arr2P4", "typ
00500 857F7A7F F1F8817F 6B407FA5 8193A485 - e":"18a", "value
00510 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ":""å,.
00520 404040C0 7F958194 857F7A7F C19999F2 - ä"name":"Arr2
00530 D7F57F6B 407FA3A8 97857F7A 7FF1F0F0 - P5", "type":"100
00540 817F6B40 7FA58193 A4857F7A 7F7FD025 - a", "value":""å.
00550 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD02540 404040BB - |å. |
00560 D06B2540 404040C0 7FA27F7A 40C07F95 - å,. ä"s": ä"n
00570 8194857F 7A7FD781 9994F1F1 7F6B407F - ame":"Parm11", "
00580 A3A89785 7F7A7FF3 F0817F6B 407FA581 - type":"30a", "va
00590 93A4857F 7A7F7FD0 D025BBD0 [25250000 (bb)](https://bitbucket.org/litmis/db2sock/commits/25250000) - lue":""åå.|å....
EVAL clobData:x 1440
00000 C07F9787 947F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07F95 - ä"pgm":¬. ä"n
00010 8194857F 7A7FC8C1 D4C5D3C1 F0F37F6B - ame":"HAMELA03",
00020 40407F93 89827F7A 7FC4C2F2 D1E2D6D5 - "lib":"DB2JSON
00030 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F 7A40BA25 - "å,. ä"s": ¬.
00040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 94857F7A - ä"name":
00050 7FD78199 94F17F6B 407FA3A8 97857F7A - "Parm1", "type":
00060 7FF1817F 6B407FA5 8193A485 7F7A7F7F - "1a", "value":""
00070 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00080 857F7A7F D7819994 F27F6B40 7FA3A897 - e":"Parm2", "typ
00090 857F7A7F F1F8817F 6B407FA5 8193A485 - e":"18a", "value
000A0 7F7A7F43 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ":"{"å,.
000B0 C07F9581 94857F7A 7FD78199 94F37F6B - ä"name":"Parm3",
000C0 407FA3A8 97857F7A 7FF2817F 6B407FA5 - "type":"2a", "v
000D0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
000E0 404040C0 7F958194 857F7A7F D7819994 - ä"name":"Parm
000F0 F47F6B40 7FA3A897 857F7A7F F1F0817F - 4", "type":"10a"
00100 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
00110 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
00120 C19999F1 C396A495 A37F6B40 7FA3A897 - Arr1Count", "typ
00130 857F7A7F F3A2F07F 6B407FA5 8193A485 - e":"3s0", "value
00140 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - ":0å. |å,.
00150 40C07F84 A27F7A40 BAC07F95 8194857F - ä"ds": ¬ä"name"
00160 7A7FC199 99F17F6B 407F8489 947F7AF1 - :"Arr1", "dim":1
00170 F0D06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - 0å,. ä"s"
00180 7ABA2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - :¬. ä
00190 7F958194 857F7A7F C19999F1 D7F17F6B - "name":"Arr1P1",
001A0 407FA3A8 97857F7A 7FF7817F 6B407FA5 - "type":"7a", "v
001B0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
001C0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
001D0 C19999F1 D7F27F6B 407FA3A8 97857F7A - Arr1P2", "type":
001E0 7FF1F3F2 817F6B40 7FA58193 A4857F7A - "132a", "value":
001F0 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ""å,.
00200 40C07F95 8194857F 7A7FC199 99F1D7F3 - ä"name":"Arr1P3
00210 7F6B407F A3A89785 7F7A7FF3 F0817F6B - ", "type":"30a",
00220 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
00230 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ä"name
00240 7F7A7FC1 9999F1D7 F47F6B40 7FA3A897 - ":"Arr1P4", "typ
00250 857F7A7F F1A2F07F 6B407FA5 8193A485 - e":"1s0", "value
00260 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40BBD025 - ":0å. |å.
00270 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - |å,. ä"s"
00280 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 - : ¬. ä"na
00290 94857F7A 7FD78199 94F57F6B 407FA3A8 - me":"Parm5", "ty
002A0 97857F7A 7FF1817F 6B407FA5 8193A485 - pe":"1a", "value
002B0 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
002C0 7F958194 857F7A7F D7819994 F67F6B40 - "name":"Parm6",
002D0 7FA3A897 857F7A7F F4817F6B 407FA581 - "type":"4a", "va
002E0 93A4857F 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - lue":""å,.
002F0 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F7 - ä"name":"Parm7
00300 7F6B407F A3A89785 7F7A7FF1 F8817F6B - ", "type":"18a",
00310 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
00320 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 - ä"name":"P
00330 819994F8 7F6B407F A3A89785 7F7A7FF1 - arm8", "type":"1
00340 F0F0817F 6B407FA5 8193A485 7F7A7F7F - 00a", "value":""
00350 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00360 857F7A7F D7819994 F97F6B40 7FA3A897 - e":"Parm9", "typ
00370 857F7A7F F3A2F07F 6B407FA5 8193A485 - e":"3s0", "value
00380 7F7AF0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ":0å,. ä"
00390 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F1 F07F6B40 - name":"Parm10",
003A0 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
003B0 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B - alue":0å. |å,
003C0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07FA2 7F7A40C0 7F958194 - . ä"s": ä"nam
003D0 857F7A7F C19999F2 C396A495 A37F6B40 - e":"Arr2Count",
003E0 7FA3A897 857F7A7F F5A2F07F 6B407FA5 - "type":"5s0", "v
003F0 8193A485 7F7AF3D0 D06B2540 404040C0 - alue":3åå,. ä
00400 7F84A27F 7A40BAC0 7F958194 857F7A7F - "ds": Š"name":"
00410 C19999F2 7F6B407F 8489947F 7AF1F0D0 - Arr2", "dim":10å
00420 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F A27F7ABA - ,. ä"s":¬
00430 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 - . ä"n
00440 8194857F 7A7FC199 99F2D7F1 7F6B407F - ame":"Arr2P1", "
00450 A3A89785 7F7A7FF1 817F6B40 7FA58193 - type":"1a", "val
00460 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ue":""å,.
00470 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F 7A7FC199 - ä"name":"Ar
00480 99F2D7F2 7F6B407F A3A89785 7F7A7FF3 - r2P2", "type":"3
00490 F0817F6B 407FA581 93A4857F 7A7F7FD0 - 0a", "value":""å
004A0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ,. ä"
004B0 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F2D7 F37F6B40 - name":"Arr2P3",
004C0 7FA3A897 857F7A7F F4817F6B 407FA581 - "type":"4a", "va
004D0 93A4857F 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - lue":""å,.
004E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 - ä"name":"A
004F0 9999F2D7 F47F6B40 7FA3A897 857F7A7F - rr2P4", "type":"
00500 F1F8817F 6B407FA5 8193A485 7F7A7F7F - 18a", "value":""
00510 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - å,. ä
00520 7F958194 857F7A7F C19999F2 D7F57F6B - "name":"Arr2P5",
00530 407FA3A8 97857F7A 7FF1F0F0 817F6B40 - "type":"100a",
00540 7FA58193 A4857F7A 7F7FD025 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - "value":""å.
00550 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD02540 404040BB D06B2540 - |å. |å,.
00560 404040C0 7FA27F7A 40C07F95 8194857F - ä"s": ä"name"
00570 7A7FD781 9994F1F1 7F6B407F A3A89785 - :"Parm11", "type
00580 7F7A7FF3 F0817F6B 407FA581 93A4857F - ":"30a", "value"
00590 7A7F7FD0 D025BBD0 [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) - :""åå.|å........
EVAL outData:x 1560
00000 C07FA283 998997A3 7F7ABAC0 7F978794 - ä"script":¬ä"pgm
00010 7F7ABA7F C8C1D4C5 D3C1F0F3 7F6B7FC4 - ":¬"HAMELA03","D
00020 C2F2D1E2 D6D57F6B C07FD781 9994F17F - B2JSON",ä"Parm1"
00030 7AC0D0D0 6BC07FD7 819994F2 7F7A7F43 - :äåå,ä"Parm2":"{
00040 7FD06BC0 7FD78199 94F37F7A C0D0D06B - "å,ä"Parm3":äåå,
00050 C07FD781 9994F47F 7AC0D0D0 6BC07FC1 - ä"Parm4":äåå,ä"A
00060 9999F1C3 96A495A3 7F7AF1D0 6BC07FC1 - rr1Count":1å,ä"A
00070 9999F17F 7ABABAC0 7FC19999 F1D7F17F - rr1":¬¬ä"Arr1P1"
00080 7AC0D0D0 6BC07FC1 9999F1D7 F27F7AC0 - :äåå,ä"Arr1P2":ä
00090 D0D06BC0 7FC19999 F1D7F37F 7AC0D0D0 - åå,ä"Arr1P3":äåå
000A0 6BC07FC1 9999F1D7 F47F7AF0 4BF0D0BB - ,ä"Arr1P4":0.0å|
000B0 6BBAC07F C19999F1 D7F17F7A C0D0D06B - ,¬ä"Arr1P1":äåå,
000C0 C07FC199 99F1D7F2 7F7AC0D0 D06BC07F - ä"Arr1P2":äåå,ä"
000D0 C19999F1 D7F37F7A C0D0D06B C07FC199 - Arr1P3":äåå,ä"Ar
000E0 99F1D7F4 7F7AF04B F0D0BB6B BAC07FC1 - r1P4":0.0å|,¬ä"A
000F0 9999F1D7 F17F7AC0 D0D06BC0 7FC19999 - rr1P1":äåå,ä"Arr
00100 F1D7F27F 7AC0D0D0 6BC07FC1 9999F1D7 - 1P2":äåå,ä"Arr1P
00110 F37F7AC0 D0D06BC0 7FC19999 F1D7F47F - 3":äåå,ä"Arr1P4"
00120 7AF04BF0 D0BB6BBA C07FC199 99F1D7F1 - :0.0å|,¬ä"Arr1P1
00130 7F7AC0D0 D06BC07F C19999F1 D7F27F7A - ":äåå,ä"Arr1P2":
00140 C0D0D06B C07FC199 99F1D7F3 7F7AC0D0 - äåå,ä"Arr1P3":äå
00150 D06BC07F C19999F1 D7F47F7A F04BF0D0 - å,ä"Arr1P4":0.0å
00160 BB6BBAC0 7FC19999 F1D7F17F 7AC0D0D0 - |,¬ä"Arr1P1":äåå
00170 6BC07FC1 9999F1D7 F27F7AC0 D0D06BC0 - ,ä"Arr1P2":äåå,ä
00180 7FC19999 F1D7F37F 7AC0D0D0 6BC07FC1 - "Arr1P3":äåå,ä"A
00190 9999F1D7 F47F7AF0 4BF0D0BB 6BBAC07F - rr1P4":0.0å|,¬ä"
001A0 C19999F1 D7F17F7A C0D0D06B C07FC199 - Arr1P1":äåå,ä"Ar
001B0 99F1D7F2 7F7AC0D0 D06BC07F C19999F1 - r1P2":äåå,ä"Arr1
001C0 D7F37F7A C0D0D06B C07FC199 99F1D7F4 - P3":äåå,ä"Arr1P4
001D0 7F7AF04B F0D0BB6B BAC07FC1 9999F1D7 - ":0.0å|,¬ä"Arr1P
001E0 F17F7AC0 D0D06BC0 7FC19999 F1D7F27F - 1":äåå,ä"Arr1P2"
001F0 7AC0D0D0 6BC07FC1 9999F1D7 F37F7AC0 - :äåå,ä"Arr1P3":ä
00200 D0D06BC0 7FC19999 F1D7F47F 7AF04BF0 - åå,ä"Arr1P4":0.0
00210 D0BB6BBA C07FC199 99F1D7F1 7F7AC0D0 - å|,¬ä"Arr1P1":äå
00220 D06BC07F C19999F1 D7F27F7A C0D0D06B - å,ä"Arr1P2":äåå,
00230 C07FC199 99F1D7F3 7F7AC0D0 D06BC07F - ä"Arr1P3":äåå,ä"
00240 C19999F1 D7F47F7A F04BF0D0 BB6BBAC0 - Arr1P4":0.0å|,¬ä
00250 7FC19999 F1D7F17F 7AC0D0D0 6BC07FC1 - "Arr1P1":äåå,ä"A
00260 9999F1D7 F27F7AC0 D0D06BC0 7FC19999 - rr1P2":äåå,ä"Arr
00270 F1D7F37F 7AC0D0D0 6BC07FC1 9999F1D7 - 1P3":äåå,ä"Arr1P
00280 F47F7AF0 4BF0D0BB 6BBAC07F C19999F1 - 4":0.0å|,¬ä"Arr1
00290 D7F17F7A C0D0D06B C07FC199 99F1D7F2 - P1":äåå,ä"Arr1P2
002A0 7F7AC0D0 D06BC07F C19999F1 D7F37F7A - ":äåå,ä"Arr1P3":
002B0 C0D0D06B C07FC199 99F1D7F4 7F7AF04B - äåå,ä"Arr1P4":0.
002C0 F0D0BBBB D06BC07F D7819994 F57F7AC0 - 0å||å,ä"Parm5":ä
002D0 D0D06BC0 7FD78199 94F67F7A C0D0D06B - åå,ä"Parm6":äåå,
002E0 C07FD781 9994F77F 7AC0D0D0 6BC07FD7 - ä"Parm7":äåå,ä"P
002F0 819994F8 7F7AC0D0 D06BC07F D7819994 - arm8":äåå,ä"Parm
00300 F97F7AF0 4BF0D06B C07FD781 9994F1F0 - 9":0.0å,ä"Parm10
00310 7F7AF04B F0D06BC0 7FC19999 F2C396A4 - ":0.0å,ä"Arr2Cou
00320 95A37F7A F3D06BC0 7FC19999 F27F7ABA - nt":3å,ä"Arr2":¬
00330 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00340 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00350 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00360 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00370 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00380 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00390 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
003A0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
003B0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
003C0 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
003D0 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
003E0 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
003F0 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00400 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00410 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00420 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
00430 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
00440 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
00450 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00460 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00470 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00480 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00490 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
004A0 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
004B0 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
004C0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
004D0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
004E0 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
004F0 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00500 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00510 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00520 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00530 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00540 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
00550 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
00560 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
00570 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00580 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00590 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
005A0 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
005B0 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
005C0 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
005D0 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
005E0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
005F0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BBBB - ,ä"Arr2P5":äåå||
00600 D06BC07F D7819994 F1F17F7A 7F437FD0 - å,ä"Parm11":"{"å
00610 BBD0BBD0 [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) ........ ........ - |å|å............
No crash:
EVAL clob:x 1440
00000 0000059A C07F9787 947F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - ...ªä"pgm":¬.
00010 40C07F95 8194857F 7A7FC8C1 D4C5D3C1 - ä"name":"HAMELA
00020 F0F37F6B 40407F93 89827F7A 7FC4C2F2 - 03", "lib":"DB2
00030 D1E2D6D5 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - JSON"å,. ä"s"
00040 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 - : ¬. ä"na
00050 94857F7A 7FD78199 94F17F6B 407FA3A8 - me":"Parm1", "ty
00060 97857F7A 7FF1817F 6B407FA5 8193A485 - pe":"1a", "value
00070 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
00080 7F958194 857F7A7F D7819994 F27F6B40 - "name":"Parm2",
00090 7FA3A897 857F7A7F F1F8817F 6B407FA5 - "type":"18a", "v
000A0 8193A485 7F7A7F81 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":"a"å,.
000B0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 94857F7A 7FD78199 - ä"name":"Par
000C0 94F37F6B 407FA3A8 97857F7A 7FF2817F - m3", "type":"2a"
000D0 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
000E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
000F0 D7819994 F47F6B40 7FA3A897 857F7A7F - Parm4", "type":"
00100 F1F0817F 6B407FA5 8193A485 7F7A7F7F - 10a", "value":""
00110 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00120 857F7A7F C19999F1 C396A495 A37F6B40 - e":"Arr1Count",
00130 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
00140 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B - alue":0å. |å,
00150 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07F84 A27F7A40 BAC07F95 - . ä"ds": ¬ä"n
00160 8194857F 7A7FC199 99F17F6B 407F8489 - ame":"Arr1", "di
00170 947F7AF1 F0D06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - m":10å,.
00180 C07FA27F 7ABA2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ä"s":¬.
00190 404040C0 7F958194 857F7A7F C19999F1 - ä"name":"Arr1
001A0 D7F17F6B 407FA3A8 97857F7A 7FF7817F - P1", "type":"7a"
001B0 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
001C0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - ä"nam
001D0 857F7A7F C19999F1 D7F27F6B 407FA3A8 - e":"Arr1P2", "ty
001E0 97857F7A 7FF1F3F2 817F6B40 7FA58193 - pe":"132a", "val
001F0 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ue":""å,.
00200 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F 7A7FC199 - ä"name":"Ar
00210 99F1D7F3 7F6B407F A3A89785 7F7A7FF3 - r1P3", "type":"3
00220 F0817F6B 407FA581 93A4857F 7A7F7FD0 - 0a", "value":""å
00230 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ,. ä"
00240 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F1D7 F47F6B40 - name":"Arr1P4",
00250 7FA3A897 857F7A7F F1A2F07F 6B407FA5 - "type":"1s0", "v
00260 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":0å.
00270 40BBD025 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - |å. |å,.
00280 C07FA27F 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ä"s": ¬.
00290 C07F9581 94857F7A 7FD78199 94F57F6B - ä"name":"Parm5",
002A0 407FA3A8 97857F7A 7FF1817F 6B407FA5 - "type":"1a", "v
002B0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
002C0 404040C0 7F958194 857F7A7F D7819994 - ä"name":"Parm
002D0 F67F6B40 7FA3A897 857F7A7F F4817F6B - 6", "type":"4a",
002E0 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
002F0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 - ä"name":"P
00300 819994F7 7F6B407F A3A89785 7F7A7FF1 - arm7", "type":"1
00310 F8817F6B 407FA581 93A4857F 7A7F7FD0 - 8a", "value":""å
00320 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ,. ä"name
00330 7F7A7FD7 819994F8 7F6B407F A3A89785 - ":"Parm8", "type
00340 7F7A7FF1 F0F0817F 6B407FA5 8193A485 - ":"100a", "value
00350 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
00360 7F958194 857F7A7F D7819994 F97F6B40 - "name":"Parm9",
00370 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
00380 8193A485 7F7AF0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":0å,.
00390 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F1 - ä"name":"Parm1
003A0 F07F6B40 7FA3A897 857F7A7F F3A2F07F - 0", "type":"3s0"
003B0 6B407FA5 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - , "value":0å.
003C0 40BBD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07FA2 7F7A40C0 - |å,. ä"s": ä
003D0 7F958194 857F7A7F C19999F2 C396A495 - "name":"Arr2Coun
003E0 A37F6B40 7FA3A897 857F7A7F F5A2F07F - t", "type":"5s0"
003F0 6B407FA5 8193A485 7F7AF3D0 D06B2540 - , "value":3åå,.
00400 404040C0 7F84A27F 7A40BAC0 7F958194 - ä"ds": ¬ä"nam
00410 857F7A7F C19999F2 7F6B407F 8489947F - e":"Arr2", "dim"
00420 7AF1F0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - :10å,. ä"
00430 A27F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - s":¬.
00440 40C07F95 8194857F 7A7FC199 99F2D7F1 - ä"name":"Arr2P1
00450 7F6B407F A3A89785 7F7A7FF1 817F6B40 - ", "type":"1a",
00460 7FA58193 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - "value":""å,.
00470 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F - ä"name"
00480 7A7FC199 99F2D7F2 7F6B407F A3A89785 - :"Arr2P2", "type
00490 7F7A7FF3 F0817F6B 407FA581 93A4857F - ":"30a", "value"
004A0 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - :""å,.
004B0 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F2D7 - ä"name":"Arr2P
004C0 F37F6B40 7FA3A897 857F7A7F F4817F6B - 3", "type":"4a",
004D0 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
004E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ä"name
004F0 7F7A7FC1 9999F2D7 F47F6B40 7FA3A897 - ":"Arr2P4", "typ
00500 857F7A7F F1F8817F 6B407FA5 8193A485 - e":"18a", "value
00510 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ":""å,.
00520 404040C0 7F958194 857F7A7F C19999F2 - ä"name":"Arr2
00530 D7F57F6B 407FA3A8 97857F7A 7FF1F0F0 - P5", "type":"100
00540 817F6B40 7FA58193 A4857F7A 7F7FD025 - a", "value":""å.
00550 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD02540 404040BB - |å. |
00560 D06B2540 404040C0 7FA27F7A 40C07F95 - å,. ä"s": ä"n
00570 8194857F 7A7FD781 9994F1F1 7F6B407F - ame":"Parm11", "
00580 A3A89785 7F7A7FF3 F0817F6B 407FA581 - type":"30a", "va
00590 93A4857F 7A7F7FD0 D025BBD0 [25250000 (bb)](https://bitbucket.org/litmis/db2sock/commits/25250000) - lue":""åå.|å....
EVAL clobData:x 1440
00000 C07F9787 947F7ABA [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07F95 - ä"pgm":¬. ä"n
00010 8194857F 7A7FC8C1 D4C5D3C1 F0F37F6B - ame":"HAMELA03",
00020 40407F93 89827F7A 7FC4C2F2 D1E2D6D5 - "lib":"DB2JSON
00030 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F 7A40BA25 - "å,. ä"s": ¬.
00040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 94857F7A - ä"name":
00050 7FD78199 94F17F6B 407FA3A8 97857F7A - "Parm1", "type":
00060 7FF1817F 6B407FA5 8193A485 7F7A7F7F - "1a", "value":""
00070 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00080 857F7A7F D7819994 F27F6B40 7FA3A897 - e":"Parm2", "typ
00090 857F7A7F F1F8817F 6B407FA5 8193A485 - e":"18a", "value
000A0 7F7A7F81 7FD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ":"a"å,.
000B0 C07F9581 94857F7A 7FD78199 94F37F6B - ä"name":"Parm3",
000C0 407FA3A8 97857F7A 7FF2817F 6B407FA5 - "type":"2a", "v
000D0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
000E0 404040C0 7F958194 857F7A7F D7819994 - ä"name":"Parm
000F0 F47F6B40 7FA3A897 857F7A7F F1F0817F - 4", "type":"10a"
00100 6B407FA5 8193A485 7F7A7F7F D06B2540 - , "value":""å,.
00110 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
00120 C19999F1 C396A495 A37F6B40 7FA3A897 - Arr1Count", "typ
00130 857F7A7F F3A2F07F 6B407FA5 8193A485 - e":"3s0", "value
00140 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) - ":0å. |å,.
00150 40C07F84 A27F7A40 BAC07F95 8194857F - ä"ds": ¬ä"name"
00160 7A7FC199 99F17F6B 407F8489 947F7AF1 - :"Arr1", "dim":1
00170 F0D06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - 0å,. ä"s"
00180 7ABA2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - :¬. ä
00190 7F958194 857F7A7F C19999F1 D7F17F6B - "name":"Arr1P1",
001A0 407FA3A8 97857F7A 7FF7817F 6B407FA5 - "type":"7a", "v
001B0 8193A485 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - alue":""å,.
001C0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 857F7A7F - ä"name":"
001D0 C19999F1 D7F27F6B 407FA3A8 97857F7A - Arr1P2", "type":
001E0 7FF1F3F2 817F6B40 7FA58193 A4857F7A - "132a", "value":
001F0 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ""å,.
00200 40C07F95 8194857F 7A7FC199 99F1D7F3 - ä"name":"Arr1P3
00210 7F6B407F A3A89785 7F7A7FF3 F0817F6B - ", "type":"30a",
00220 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
00230 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) - ä"name
00240 7F7A7FC1 9999F1D7 F47F6B40 7FA3A897 - ":"Arr1P4", "typ
00250 857F7A7F F1A2F07F 6B407FA5 8193A485 - e":"1s0", "value
00260 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40BBD025 - ":0å. |å.
00270 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD06B25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07FA27F - |å,. ä"s"
00280 7A40BA25 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) C07F9581 - : ¬. ä"na
00290 94857F7A 7FD78199 94F57F6B 407FA3A8 - me":"Parm5", "ty
002A0 97857F7A 7FF1817F 6B407FA5 8193A485 - pe":"1a", "value
002B0 7F7A7F7F D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - ":""å,. ä
002C0 7F958194 857F7A7F D7819994 F67F6B40 - "name":"Parm6",
002D0 7FA3A897 857F7A7F F4817F6B 407FA581 - "type":"4a", "va
002E0 93A4857F 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - lue":""å,.
002F0 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F7 - ä"name":"Parm7
00300 7F6B407F A3A89785 7F7A7FF1 F8817F6B - ", "type":"18a",
00310 407FA581 93A4857F 7A7F7FD0 6B254040 - "value":""å,.
00320 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 - ä"name":"P
00330 819994F8 7F6B407F A3A89785 7F7A7FF1 - arm8", "type":"1
00340 F0F0817F 6B407FA5 8193A485 7F7A7F7F - 00a", "value":""
00350 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 7F958194 - å,. ä"nam
00360 857F7A7F D7819994 F97F6B40 7FA3A897 - e":"Parm9", "typ
00370 857F7A7F F3A2F07F 6B407FA5 8193A485 - e":"3s0", "value
00380 7F7AF0D0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ":0å,. ä"
00390 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FD7 819994F1 F07F6B40 - name":"Parm10",
003A0 7FA3A897 857F7A7F F3A2F07F 6B407FA5 - "type":"3s0", "v
003B0 8193A485 7F7AF0D0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40BBD06B - alue":0å. |å,
003C0 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) 40C07FA2 7F7A40C0 7F958194 - . ä"s": ä"nam
003D0 857F7A7F C19999F2 C396A495 A37F6B40 - e":"Arr2Count",
003E0 7FA3A897 857F7A7F F5A2F07F 6B407FA5 - "type":"5s0", "v
003F0 8193A485 7F7AF3D0 D06B2540 404040C0 - alue":3åå,. ä
00400 7F84A27F 7A40BAC0 7F958194 857F7A7F - "ds": Š"name":"
00410 C19999F2 7F6B407F 8489947F 7AF1F0D0 - Arr2", "dim":10å
00420 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F A27F7ABA - ,. ä"s":¬
00430 [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 - . ä"n
00440 8194857F 7A7FC199 99F2D7F1 7F6B407F - ame":"Arr2P1", "
00450 A3A89785 7F7A7FF1 817F6B40 7FA58193 - type":"1a", "val
00460 A4857F7A 7F7FD06B [25404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/25404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - ue":""å,.
00470 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 40C07F95 8194857F 7A7FC199 - ä"name":"Ar
00480 99F2D7F2 7F6B407F A3A89785 7F7A7FF3 - r2P2", "type":"3
00490 F0817F6B 407FA581 93A4857F 7A7F7FD0 - 0a", "value":""å
004A0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F - ,. ä"
004B0 [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 9999F2D7 F37F6B40 - name":"Arr2P3",
004C0 7FA3A897 857F7A7F F4817F6B 407FA581 - "type":"4a", "va
004D0 93A4857F 7A7F7FD0 6B254040 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - lue":""å,.
004E0 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 4040C07F [95819485 (bb)](https://bitbucket.org/litmis/db2sock/commits/95819485) 7F7A7FC1 - ä"name":"A
004F0 9999F2D7 F47F6B40 7FA3A897 857F7A7F - rr2P4", "type":"
00500 F1F8817F 6B407FA5 8193A485 7F7A7F7F - 18a", "value":""
00510 D06B2540 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) 404040C0 - å,. ä
00520 7F958194 857F7A7F C19999F2 D7F57F6B - "name":"Arr2P5",
00530 407FA3A8 97857F7A 7FF1F0F0 817F6B40 - "type":"100a",
00540 7FA58193 A4857F7A 7F7FD025 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) - "value":""å.
00550 [40404040 (bb)](https://bitbucket.org/litmis/db2sock/commits/40404040) BBD02540 404040BB D06B2540 - |å. |å,.
00560 404040C0 7FA27F7A 40C07F95 8194857F - ä"s": ä"name"
00570 7A7FD781 9994F1F1 7F6B407F A3A89785 - :"Parm11", "type
00580 7F7A7FF3 F0817F6B 407FA581 93A4857F - ":"30a", "value"
00590 7A7F7FD0 D025BBD0 [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) - :""åå.|å........
EVAL outData:x 1560
00000 C07FA283 998997A3 7F7ABAC0 7F978794 - ä"script":¬ä"pgm
00010 7F7ABA7F C8C1D4C5 D3C1F0F3 7F6B7FC4 - ":¬"HAMELA03","D
00020 C2F2D1E2 D6D57F6B C07FD781 9994F17F - B2JSON",ä"Parm1"
00030 7AC0D0D0 6BC07FD7 819994F2 7F7A7F81 - :äåå,ä"Parm2":"a
00040 7FD06BC0 7FD78199 94F37F7A C0D0D06B - "å,ä"Parm3":äåå,
00050 C07FD781 9994F47F 7AC0D0D0 6BC07FC1 - ä"Parm4":äåå,ä"A
00060 9999F1C3 96A495A3 7F7AF1D0 6BC07FC1 - rr1Count":1å,ä"A
00070 9999F17F 7ABABAC0 7FC19999 F1D7F17F - rr1":¬¬ä"Arr1P1"
00080 7AC0D0D0 6BC07FC1 9999F1D7 F27F7AC0 - :äåå,ä"Arr1P2":ä
00090 D0D06BC0 7FC19999 F1D7F37F 7AC0D0D0 - åå,ä"Arr1P3":äåå
000A0 6BC07FC1 9999F1D7 F47F7AF0 4BF0D0BB - ,ä"Arr1P4":0.0å|
000B0 6BBAC07F C19999F1 D7F17F7A C0D0D06B - ,¬ä"Arr1P1":äåå,
000C0 C07FC199 99F1D7F2 7F7AC0D0 D06BC07F - ä"Arr1P2":äåå,ä"
000D0 C19999F1 D7F37F7A C0D0D06B C07FC199 - Arr1P3":äåå,ä"Ar
000E0 99F1D7F4 7F7AF04B F0D0BB6B BAC07FC1 - r1P4":0.0å|,¬ä"A
000F0 9999F1D7 F17F7AC0 D0D06BC0 7FC19999 - rr1P1":äåå,ä"Arr
00100 F1D7F27F 7AC0D0D0 6BC07FC1 9999F1D7 - 1P2":äåå,ä"Arr1P
00110 F37F7AC0 D0D06BC0 7FC19999 F1D7F47F - 3":äåå,ä"Arr1P4"
00120 7AF04BF0 D0BB6BBA C07FC199 99F1D7F1 - :0.0å|,¬ä"Arr1P1
00130 7F7AC0D0 D06BC07F C19999F1 D7F27F7A - ":äåå,ä"Arr1P2":
00140 C0D0D06B C07FC199 99F1D7F3 7F7AC0D0 - äåå,ä"Arr1P3":äå
00150 D06BC07F C19999F1 D7F47F7A F04BF0D0 - å,ä"Arr1P4":0.0å
00160 BB6BBAC0 7FC19999 F1D7F17F 7AC0D0D0 - |,¬ä"Arr1P1":äåå
00170 6BC07FC1 9999F1D7 F27F7AC0 D0D06BC0 - ,ä"Arr1P2":äåå,ä
00180 7FC19999 F1D7F37F 7AC0D0D0 6BC07FC1 - "Arr1P3":äåå,ä"A
00190 9999F1D7 F47F7AF0 4BF0D0BB 6BBAC07F - rr1P4":0.0å|,¬ä"
001A0 C19999F1 D7F17F7A C0D0D06B C07FC199 - Arr1P1":äåå,ä"Ar
001B0 99F1D7F2 7F7AC0D0 D06BC07F C19999F1 - r1P2":äåå,ä"Arr1
001C0 D7F37F7A C0D0D06B C07FC199 99F1D7F4 - P3":äåå,ä"Arr1P4
001D0 7F7AF04B F0D0BB6B BAC07FC1 9999F1D7 - ":0.0å|,¬ä"Arr1P
001E0 F17F7AC0 D0D06BC0 7FC19999 F1D7F27F - 1":äåå,ä"Arr1P2"
001F0 7AC0D0D0 6BC07FC1 9999F1D7 F37F7AC0 - :äåå,ä"Arr1P3":ä
00200 D0D06BC0 7FC19999 F1D7F47F 7AF04BF0 - åå,ä"Arr1P4":0.0
00210 D0BB6BBA C07FC199 99F1D7F1 7F7AC0D0 - å|,¬ä"Arr1P1":äå
00220 D06BC07F C19999F1 D7F27F7A C0D0D06B - å,ä"Arr1P2":äåå,
00230 C07FC199 99F1D7F3 7F7AC0D0 D06BC07F - ä"Arr1P3":äåå,ä"
00240 C19999F1 D7F47F7A F04BF0D0 BB6BBAC0 - Arr1P4":0.0å|,¬ä
00250 7FC19999 F1D7F17F 7AC0D0D0 6BC07FC1 - "Arr1P1":äåå,ä"A
00260 9999F1D7 F27F7AC0 D0D06BC0 7FC19999 - rr1P2":äåå,ä"Arr
00270 F1D7F37F 7AC0D0D0 6BC07FC1 9999F1D7 - 1P3":äåå,ä"Arr1P
00280 F47F7AF0 4BF0D0BB 6BBAC07F C19999F1 - 4":0.0å|,¬ä"Arr1
00290 D7F17F7A C0D0D06B C07FC199 99F1D7F2 - P1":äåå,ä"Arr1P2
002A0 7F7AC0D0 D06BC07F C19999F1 D7F37F7A - ":äåå,ä"Arr1P3":
002B0 C0D0D06B C07FC199 99F1D7F4 7F7AF04B - äåå,ä"Arr1P4":0.
002C0 F0D0BBBB D06BC07F D7819994 F57F7AC0 - 0å||å,ä"Parm5":ä
002D0 D0D06BC0 7FD78199 94F67F7A C0D0D06B - åå,ä"Parm6":äåå,
002E0 C07FD781 9994F77F 7AC0D0D0 6BC07FD7 - ä"Parm7":äåå,ä"P
002F0 819994F8 7F7AC0D0 D06BC07F D7819994 - arm8":äåå,ä"Parm
00300 F97F7AF0 4BF0D06B C07FD781 9994F1F0 - 9":0.0å,ä"Parm10
00310 7F7AF04B F0D06BC0 7FC19999 F2C396A4 - ":0.0å,ä"Arr2Cou
00320 95A37F7A F3D06BC0 7FC19999 F27F7ABA - nt":3å,ä"Arr2":¬
00330 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00340 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00350 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00360 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00370 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00380 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00390 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
003A0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
003B0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
003C0 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
003D0 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
003E0 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
003F0 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00400 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00410 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00420 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
00430 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
00440 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
00450 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00460 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00470 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00480 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00490 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
004A0 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
004B0 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
004C0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
004D0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
004E0 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
004F0 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00500 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
00510 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
00520 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
00530 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
00540 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
00550 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
00560 6BC07FC1 9999F2D7 F57F7AC0 D0D0BB6B - ,ä"Arr2P5":äåå|,
00570 BAC07FC1 9999F2D7 F17F7AC0 D0D06BC0 - ¬ä"Arr2P1":äåå,ä
00580 7FC19999 F2D7F27F 7AC0D0D0 6BC07FC1 - "Arr2P2":äåå,ä"A
00590 9999F2D7 F37F7AC0 D0D06BC0 7FC19999 - rr2P3":äåå,ä"Arr
005A0 F2D7F47F 7AC0D0D0 6BC07FC1 9999F2D7 - 2P4":äåå,ä"Arr2P
005B0 F57F7AC0 D0D0BB6B BAC07FC1 9999F2D7 - 5":äåå|,¬ä"Arr2P
005C0 F17F7AC0 D0D06BC0 7FC19999 F2D7F27F - 1":äåå,ä"Arr2P2"
005D0 7AC0D0D0 6BC07FC1 9999F2D7 F37F7AC0 - :äåå,ä"Arr2P3":ä
005E0 D0D06BC0 7FC19999 F2D7F47F 7AC0D0D0 - åå,ä"Arr2P4":äåå
005F0 6BC07FC1 9999F2D7 F57F7AC0 D0D0BBBB - ,ä"Arr2P5":äåå||
00600 D06BC07F D7819994 F1F17F7A 7F817FD0 - å,ä"Parm11":"a"å
00610 BBD0BBD0 [00000000 (bb)](https://bitbucket.org/litmis/db2sock/commits/00000000) ........ ........ - |å|å............
I'll examine those more throughly later, but feel free to get at them :smiley:
edit. Okay, so only difference between those two versions is that 'ä' -> 'a' char.
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
But tests j0180, j0181, j0184, j0185 fails with segfaults.
Well, we really need to get behind the segfault to understand. Again, my machine ccsid 37 is working fine remote from Linux over odbc. We have no data, and, your machine is the one failing. What do you want to do???
1) can figure this out on your own (i hope, you sound competent)?
2) do i need to be on your machine with a debugger (i want system debugger connection, not bloody green screen)?
motherhood ...
Aka, NLS sort of 'debug' collaboration is at heart of successful Open Source projects. As you can see, I am fairly open to working on this odbc side project for you. So please keep going, even when NLS gets ugly. You have a goal at end, and, may 'get' exactly what you wanted because you spent your own time helping.
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
CCSID 65535 (probably not your issue, but for completeness)
Yes it is 65535. It might affect many things so I don't think I should change it.
I released 1.0.8-sg4
That seemed not to change anything, sopen_bracket still shows as 'ä'. But if I change ccsid of the user who makes the odbc connection to 37, hello world example works. But tests j0180, j0181, j0184, j0185 fails with segfaults. Those are the tests that have many special characters so those might be the reason.
// USC2 convert job ccsid
// | ! ¬ \ ` # ~ [ ] ^ { } ¢ $ @
// 4f 5a 5f e0 79 7b a1 ba bb b0 c0 d0 4a 5b 7c
These characters seems to be converted according to this table. So 'C0' becomes 'ä'. Our system is set to finnish and somehow the characters are converted based on that.
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
EBCDIC variant characters (json bracket and brace)
I released 1.0.8-sg4
I believe fixes your json problems linux-2-ibm i over php odbc. However, USC2 fix from memory with RPG to cover both db2procj (ILE c) and db2procjr (ILE RPG). Please test/check on your machine to see if I have all ends covered. Thanks.
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Thanks for debug help.
283 and 285 could explain why things won't work.
Program: DB2PROCJR Library: DB2JSON Module: DB2PROCJR
278 277 pCopy = clob;
279 278 clobLen = myCopy.intx;
280 279 clobData = clob + 4;
281 280 for i = 1 to clobLen;
282 281 pCopy = clobData + (i - 1);
283 282 if myCopy.bytex = 'ä';
284 283 nest += 1;
285 284 elseif myCopy.bytex = 'å';
286 285 nest -= 1;
287 286 if nest = 0;
288 287 leave;
289 288 endif;
290 289 endif;
291 290 endfor;
There seems to be some charset mismatch going on (those are always fun). Which charset could make this happen? User, system or user who restored the library, or something else?
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
more debugger ...
I released 1.0.8-sg3
I also added individual pgm stop message in qsysopr ("debugpgm":"stop pgm HELLO"). This stop message occurs just before the actual user program call in db2proc(blob). Probably way too late for your current problem (see next db2procj/db2procjr).
#!json
{"pgm":[{"name":"HELLO", "lib":"DB2JSON", "debugpgm":"stop pgm HELLO"},
{"s":{"name":"char", "type":"128a", "value":"Hi there"}}
]}
However, you may want to stay with db2procj/db2procjr earlier stop ("debug":"json debug db2procjr"). This stops long before any json parsing, etc., much better chance to find something when no idea what went wrong (current problem).
#!json
{"debug":"json debug db2procjr",
"pgm":[{"name":"HELLO", "lib":"DB2JSON"},
{"s":{"name":"char", "type":"128a", "value":"Hi there"}}
]}
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Getting closer. Now that I completely emptied my DB2JSON and restored it, the programs are found.
But now I get a new error :frowning:
$ php phptest.php
Input:
string(118) "{"pgm":[{"name":"HELLO", "lib":"DB2JSON"},
{"s":{"name":"char", "type":"128a", "value":"Hi there"}}
]}"
Output:
PHP Warning: odbc_execute(): SQL error: [IBM][System i Access ODBC Driver][DB2 for i5/OS]CEE9901 - Application error. MCH1210 unmonitored by DB2PROCJR at statement [0000000158 (bb)](https://bitbucket.org/litmis/db2sock/commits/0000000158), instruction X'0000'., SQL state S1000 in SQLExecute in phptest.php on line 18
Bad execute: [IBM][System i Access ODBC Driver][DB2 for i5/OS]CEE9901 - Application error. MCH1210 unmonitored by DB2PROCJR at statement [0000000158 (bb)](https://bitbucket.org/litmis/db2sock/commits/0000000158), instruction X'0000'.
$conn = odbc_connect($dsn , $user , $password, SQL_CUR_USE_DRIVER);
if (!$conn) die("Bad connect: $dsn,$user\n");
$stmt = odbc_prepare($conn, "call DB2JSON.DB2PROCJR(?)");
if (!$stmt) die("Bad prepare: ".odbc_errormsg());
$ret=odbc_execute($stmt, array($blob));
if (!$ret) die("Bad execute: ".odbc_errormsg()."\n");
while(odbc_fetch_row($stmt)){
$result=odbc_result($stmt,1);
var_dump($result);
}
var_dump($blob);
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
PHP odbc is working from my Linux machine.
#!php
$conn = odbc_connect($database,$user,$password);
if (!$conn) die("Bad connect: $database,$user");
$stmt = odbc_prepare($conn, "call DB2JSON.DB2PROCJR(?)");
if (!$stmt) die("Bad prepare: ".odbc_errormsg());
$ret=odbc_execute($stmt,array($clob));
if (!$ret) die("Bad execute: ".odbc_errormsg());
$clobOut = "";
while(odbc_fetch_row($stmt)) {
$clobOut .= odbc_result($stmt,1);
}
$clobOut = trim($clobOut);
var_dump($clobOut);
Output (php 7.1.4 a bit old):
#!bash
$ php --version
PHP 7.1.4 (cli) (built: Apr 14 2017 15:59:17) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
[adc@oc7083008330 tests_php]$ php test0003_hello_pgm_odbc.php
Input:
string(118) "{"pgm":[{"name":"HELLO", "lib":"DB2JSON"},
{"s":{"name":"char", "type":"128a", "value":"Hi there"}}
]}"
Output:
string(63) "{"script":[{"pgm":["HELLO","DB2JSON",{"char":"Hello World"}]}]}"
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
So I tried to run these. But for some reason, when I try to connect to these it tells me it can't find DB2PROCJR or DB2PROCJ programs.
Perhaps post your ODBC code to compare to this ibm_db2 on my Linx machine that works.
#!php
$stmt = db2_prepare($conn, "call DB2JSON.DB2PROCJR(?)");
if (!$stmt) die("Bad prepare: ".db2_stmt_errormsg());
Possible you do not have *PUBLIC authority to the stored procedure (DB2PROC, etc.), or library DB2JSON.
#!bash
CHGAUT OBJ('/qsys.lib/db2json.lib') USER(*PUBLIC) DTAAUT(*RWX) OBJAUT(*ALL) SUBTREE(*ALL)
I have no idea really.
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
version 1.0.8-sg1 enables json remote db2procj (in/out) or db2procjr (result set).
So I tried to run these. But for some reason, when I try to connect to these it tells me it can't find DB2PROCJR or DB2PROCJ programs. I tried through both odbc and db2. It can find DB2PROC but not the other two.
I have restored my DB2JSON lib from the libdb400-1.0.8-sg1. I also can see the programs inside the DB2JSON lib. Any ideas what could be wrong?
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
So I haven't gotten straight Linux odbc connection to work, still something broken...
I also tried ile-toolkit-json, but as you said php odbc only supports IN parameters. So I can't get return values from it. Its weird that they do not allow specifying INOUT when c odbc interface allows it.
But if I understood correctly you can compile db2procj with CRTSQLCI and you can include EXEC SQL statements in your C program, which is crazy. But as I tried to recompile with EXEC SQL lines enabled the compilation fails. It doesn't seem to like those host variables.
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
So my hacking attempt hasn't been as easy as I had hoped. Code would need some serious refactoring to make things easier. But at least I have learned something about shared libraries and gdb.
Currently things work to a point where SQLExecute happens. It returns with an error CEE9901 - Application error. MCH3601 unmonitored by DB2PROC at statement [0000000020 (bb)](https://bitbucket.org/litmis/db2sock/commits/0000000020), instruction X'0000'.
The layout might be misaligned or something else is crapping out. But I have no idea what should be checked.
Do you have any idea what could be the problem? Or is there a way to debug the stored procedure if it ever gets that far?
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Another way, more practical, toolkit-base, need only separate 'call' (libdb400 depend) from prepare code (string-2-packed, etc.). Thereby, just use part of toolkit-base needed to create layout on Linux, and, we simply 'remotely' call db2json.db2proc(blob) ... bingo ... instant toolkit on LUW (Linux, Unix, Windows).
This sounds to me as best idea. The ODBC interface seems to mostly have same function signatures so most of the code should work. I'll see if I can hack something together.
BTW (hippie json talk) -- You will undoubtedly be all about 'big data' and 'go faster' (historical pattern), so json interface talk may result in pitch forks and long ropes for me (horrible, so on).
This will be used by developers so I'd say current performance of the json interface is acceptable. It is already a lot faster in certain cases (nested ds) as xmlservice so this should be a big improvement. But of course, more speed is never a bad thing :wink:
Original report by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
I'd like to make the connection to the database using ODBC. And actually I also want to run this whole thing on linux and windows machines.
We develop our PHP code on developers own machines. They run windows/linux and run the code on their own server. RPG calls happens through xmlservice and ODBC connection.
Currently libtkit400 depends on libdb400 and other ibm stuff. I guess those are not available on linux/windows, so compiling isn't currently happening.
Is there some way this could happen?