AS/400 - as400 - xamp

 
Vista:

as400 - xamp

Publicado por Francisco (3 intervenciones) el 16/03/2012 15:07:48
Hola, entre a hacer mi practica y tengo un problemilla. La cosa es que estoy levantando un sistema en el xampp que debería conectrse a una as400. en el titulo de la pestaña del navegador sale el titulo del sistema que significa que ya entre, pero no llega a conectarse a la as400. los errores que me devuelve son sentencias, entonces me imagino que la estructura de la query es la que no pasa entre el xampp y as400. quien ha hecho este enlace alguna vez? si se necesitan mas datos por favor hacerlos llegar para resolver esto que ya me esta estresando.

ej de la funcion:

function rol()
{
try{
$usuario=$this->usuario();
$esquema_sig=$this->esquema(2);
$consulta=$this->db->query("select usu_id_rol from" .$esquema_sig."tbl_usuario
where usu_id=$usuario");
$fila=$consulta->row();
$rol=$fila->USU_ID_ROL;
return $rol;
}catch (Exception $e){
echo "Problemas con la sentencia de la funcion rol: " . $e->getMessage();
}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

as400 - xamp

Publicado por Francisco (3 intervenciones) el 16/03/2012 19:29:42
Quizas ni se puede hacer .... Pero no lo se.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

as400 - xamp

Publicado por jesus (5 intervenciones) el 20/03/2012 12:37:55
Accediendo por odbc normalmente defines en el la base de datos a la que accedes, que en el caso de un as400 es la libreria , en tu caso "$esquema_sig" . No creo que te funcione en un SQL a un AS400 la nomencaltura "bbdd.tabla".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

as400 - xamp

Publicado por Francisco (3 intervenciones) el 21/03/2012 12:37:44
Gracias por la ayuda, la verdad es que la nomenclatura creo que seria un error, pero como parcho esto? crees en alguna posibilidad? Se agradece.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

as400 - xamp

Publicado por ros (95 intervenciones) el 06/04/2012 09:25:08
Como veo que nadie te ayuda, te lo paso en VB.net

'Declaro variable para sentecias SQL
Public strSQL As String
Public Sentecia_SQL As Odbc.OdbcCommand
Public registros As Odbc.OdbcDataReader
Public sentencia_de_conexion As String
Public usuario As String
Public contraseña As String
Public ODBC_DNS As String

Public PU_OLEDB_CONEXION As New OleDb.OleDbConnection
Public PU_OLEDB_REGISTROS As OleDbDataReader
Public PU_OLEDB_REGISTROS1 As OleDbDataReader
Public PU_OLEDB_REGISTROS2 As OleDbDataReader
Public PU_OLEDB_REGISTROS3 As OleDbDataReader
Public PU_OLEDB_SENTENCIA_SQL As New OleDbCommand
Private PR_QRY As String
Public PU_OLEDB As Boolean = True


If PU_OLEDB = True Then



Try
PU_OLEDB_CONEXION = New OleDb.OleDbConnection
PU_OLEDB_CONEXION.ConnectionString = "Provider=IBMDA400;Data source=192.168.xxx.xxx;User Id=usuario;" & "Password=contraseña;"
PU_OLEDB_CONEXION.Open()
'######################
'Cargamos el resto de parametros
'######################
'Declaro sentecia SQL
PR_QRY = "SELECT * FROM biblioteca.fichero"
PU_OLEDB_SENTENCIA_SQL = New OleDbCommand(PR_QRY, PU_OLEDB_CONEXION)
PU_OLEDB_REGISTROS = PU_OLEDB_SENTENCIA_SQL.ExecuteReader
While PU_OLEDB_REGISTROS.Read
ListView1.Items.Add(PU_OLEDB_REGISTROS(PU_OLEDB_REGISTROS.GetOrdinal("campo0")).ToString & " " & PU_OLEDB_REGISTROS.GetString(PU_OLEDB_REGISTROS.GetOrdinal("campo1")))
End While

Catch ex As Exception
MsgBox(ex.Message)
End Try


Else


'Defino el DNS de conexion via ODBC, es el que da menos problemas
usuario = " usuario "
contraseña = "contraseña"
ODBC_DNS = "biblioteca"
Dim Conexion_ODBC As New Odbc.OdbcConnection("DSN=" & ODBC_DNS & ";UID=" & usuario & ";PWD=" & contraseña)

'Conexión con la base de datos
Conexion_ODBC.Open()

'Declaro sentecia SQL
strSQL = "SELECT * FROM biblioteca.fichero"

Sentecia_SQL = New Odbc.OdbcCommand(strSQL, Conexion_ODBC)

registros = Sentecia_SQL.ExecuteReader

While registros.Read
ListView1.Items.Add(registros.GetString(registros.GetOrdinal("campo0")) & " " & registros.GetString(registros.GetOrdinal("campo1")))
End While

strSQL = "UPDATE biblioteca.fichero SET campo1 = 'zzzzzzzzzzzzzzz' WHERE campo0=5"
Sentecia_SQL = New Odbc.OdbcCommand(strSQL, Conexion_ODBC)
registros = Sentecia_SQL.ExecuteReader

Conexion_ODBC.Close()
Conexion_ODBC.Dispose()



End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar