Instalar el iSeriesAccess en debian para acceder al AS400

Hoy les quiero dejar la instalación del iSeriesAccess en debian, en mi caso me ayudo mucho en mi experiencia en el Banco Agrícola de Venezuela y cambie el paradigma pro windows para el área bancaria donde pensaban que un loco en debian no podia trabajar en AS400.

Sin más vueltas vamos con los pasos necesarios para instalar este terminal:

Instalar los siguientes paquetes:

aptitude install unixodbc libstdc++5 alien msttcorefonts libmotif3 libxaw7 libmotif4

Luego debemos ejecutar el siguiente comando para actualizar el cache de fuentes, para que así se tomen los cambios que acabamos de hacer.

fc-cache -f -v

Ahora vamos a instalar el driver de iSeries de IBM iSeriesAccess lo transformamos a un paquete .deb con el comando »’alien»’

alien -d -c -k -v iSeriesAccess-7.1.0-1.0.i386.rpm

Instalamos el paquete usando el comando dpkg

dpkg -i iseriesaccess_7.1.0-1.0_i386.deb

Ahora creamos los siguientes enlaces simbólicos

ln -sf /opt/ibm/iSeriesAccess/lib/libcwbcore.so /usr/lib/libcwbcore.so
ln -sf /opt/ibm/iSeriesAccess/lib/libcwbrc.so /usr/lib/libcwbrc.so
ln -sf /opt/ibm/iSeriesAccess/lib/libcwbxda.so /usr/lib/libcwbxda.so
ln -sf /opt/ibm/iSeriesAccess/bin/ibm5250 /usr/bin/ibm5250
ln -sf /opt/ibm/iSeriesAccess/bin/setup5250 /usr/bin/setup5250
ln -sfn /opt/ibm/iSeriesAccess/mri/en /opt/ibm/iSeriesAccess/mri/en_US
ln -sfn /opt/ibm/iSeriesAccess/mri/zh_HK /opt/ibm/iSeriesAccess/mri/zh_TW
ln -sfn /opt/ibm/iSeriesAccess/mri/es /opt/ibm/iSeriesAccess/mri/es_VE

Importante crear este enlace simbólico:

ln -s /usr/lib/libXm.so.4 /usr/lib/libXm.so.3

Ahora para poder entrar al terminar ejecutamos el siguiente comando para acceder al 5250:

/opt/ibm/iSeriesAccess/bin/ibm5250 -LANGID es

Listo nos debería aparecer la siguiente pantalla:

Captura de pantalla de 2015-09-24 23:53:58

Yo en mi caso tengo una cuenta libre en RZKH.DE donde puedo hacer pruebas 😀

Aquí les dejo el .deb para que puedan seguir el tutorial, el mismo fue probado en debian6 y debian7

https://mega.nz/#!U4IU2aIZ

Este es el KEY

wc7ECRGCGFMEzpQEv3RARZFCsiJ7Fmy52YyX2a34Hw4

Configurar ODBC para acceder desde PHP

Instalamos los siguientes paquetes para acceder vía odbc:

aptitude install unixodbc php5-odbc

Editamos el archivo /etc/odbcinst.ini

[iSeries Access ODBC Driver]
Description = iSeries Access for Linux ODBC Driver
Driver = /opt/ibm/iSeriesAccess/lib/libcwbodbc.so
Driver64 = 
Setup = /opt/ibm/iSeriesAccess/lib/libcwbodbcs.so
Setup64 = 
UsageCount = 
CPTimeout = 
CPReuse =

Editamos el archivo /etc/odbc.ini

[iSeries Access]
Description = iSeries Access
Driver = iSeries Access ODBC Driver
System = localhost
Naming = 1
DefaultLibraries = QGPL
Database = f10f330c
ConnectionType = 2
CommitMode = 2
ExtendedDynamic = 1
DefaultPkgLibrary = QGPL
DefaultPackage = A/DEFAULT(IBM),2,0,1,0,512
AllowDataCompression = 1
MaxFieldLength = 32
BlockFetch = 1
BlockSizeKB = 128
ExtendedColInfo = 0
LibraryView = 0
AllowUnsupportedChar = 0
ForceTranslation = 0
Trace = 1
Server = AS400
Port = 23

Ejemplo en PHP

$user="username";
$pass="passwor";
$dsn = "DRIVER=iSeries Access ODBC Driver;SYSTEM=localhost;DBQ=QGPL";

$conn = odbc_connect($dsn, $user, $pass);

if ($conn == false) {
echo "No se pudo establecer la conexión a la Base de Datos...<br>";
}

$result=odbc_exec($conn,"select count(1) from SYSIBM.SQLTYPEINFO");

if($row=odbc_fetch_array($result)){
echo "Total: ".$row["00001"]."<br/>";
}

odbc_close($conn);

 

5 thoughts on “Instalar el iSeriesAccess en debian para acceder al AS400

  1. Maria Montilla

    Buenos dias Jose Luis Estevez, gracias por toda la ayuda que aportas con tu blog. Estoy tratando de Instalar el iSeriesAccess en debian para acceder al AS400. mi sistema operativo es debian 7 de 64 Bits.
    ¿Sabes si se puede instalar en esta arquitectura?

    • Hola Maria,

      Yo lo he logrado instalar solo tienes que usar el paquete de 64Bits, los pasos son básicamente los mismos.

      https://mega.nz/#!8x5iAZLb
      Este es el KEY
      !CVirnvWVah24AWWy_qYQLR-Qjpau-rk4ZtHChCv1wJU

      Si no te levanta revisa el error y me escribes, yo lo instale y tuve problemas con los fonts ya que pedía uno que no tenia instalado.

  2. Maria Montilla

    Gracias, voy a intentarlo y te estoy avisando. muchas gracias

  3. Hola Jose Luis,

    Al instalar el iSeriesAccess, en el directorio /opt/ibm/iSeriesAccess/bin64 no están los archivos (ibm5250 y setup5250) y /opt/ibm/iSeriesAccess/mri esta vacío.

    En lugar de instalarse el paquete msttcorefonts se instala el ttf-mscorefonts-installer.

    gracias por el apoyo,.

    saludos.-

    • Hola,

      En realidad el paquete de 64bits no los tiene y así no nos sirve, yo lo he resuelto instalando el paquete de 32bits en un debian7 de 64bits con estos pasos:

      dpkg –add-architecture i386
      apt-get update
      apt-get install libc6:i386

      aptitude install alien odbcinst1debian1 unixodbc libmotif3 msttcorefonts ttf-mscorefonts-installer ia32-libs

      Descargue el paquete libstdc++5_3.3.6-25_i386.deb y lo instale de la forma siguiente:

      mkdir tmp
      cp libstdc++5_3.3.6-25_i386.deb tmp/
      cd tmp
      ar vx libstdc++5_3.3.6-25_i386.deb
      tar xzf data.tar.gz
      mkdir /usr/lib32
      mv usr/lib/libstdc++.so.* /usr/lib32
      ls -la /usr/lib32/ | grep libstdc++.so.5

      Descargue el paquete libmotif3_2.3.4-5_i386.deb y lo instale de la forma siguiente:

      cd ../
      rm -r tmp/
      mkdir tmp
      cp libmotif3_2.3.4-5_i386.deb tmp/
      cd tmp
      ar vx libmotif3_2.3.4-5_i386.deb
      tar xzf data.tar.gz
      mkdir /usr/lib32
      mv usr/lib/libXm.so.3* /usr/lib32
      ls -la /usr/lib32/ | grep libXm.so.3

      alien –scripts -g iSeriesAccess-7.1.0-1.0.i386.rpm

      cd iSeriesAccess-7.1.0
      dpkg-buildpackage -b -d -ai386
      locale-gen en_US

      cd ..
      dpkg -i –force-architecture iseriesaccess_7.1.0-2_i386.deb

      aptitude install libmotif4:i386

      ln -s /usr/lib/libXm.so.4 /usr/lib/libXm.so.3

      Saludos,