No exist conexion nativa de SQLServer en PB 10.0!!
Publicado por JUANCA (14 intervenciones) el 27/04/2007 20:47:22
Hola amigos del foro que tal. Bueno la finalidad de esta nota es de comentarles una experiencia que tuve cuando programaba con POWER BUILDER vs 10.0. Lo que pasa es lo siguiente. Yo trabajo con una Base de Datos de SqlServer 7.0 y asimismo dicha Base de Datos cuenta con algunos procedimientos almacenados.
Entonces la aplicacion que estoy desarrollando en Power Builder version 10.0 necesitaba invocar dichos procedimientos almacenados., entonces desde PB 10.0 hacia el llamado a los store procedure de la Base de Datos, pero aparentemente no ejecutaba el store procedure mostraba un error, a pesar que los parametros enviados eran correctos, del mismo tipo, la sintaxis de la llamada era correcta, es decir, toda la sintaxis estaba OK, y ni que decir del store procedure, todos tambien estaban Ok, por que han sido ejecutados desde el Query Analyzer y todos se ejecutan bien. Es decir, ese error que tenia no era por el lado de la programacion del Store Procedure sino mas bien por el lado de Power Builder 10.0, y entonces analizando mejor el error generado, decide probar dicho store procedure en una version inferior (PB version 8.0), pero rapidamente note la diferencia en la forma de conexion que existe en PB 8.0 y en la version 10.0, me explico:
En la version de PB 10.0 para acceder a mi BD SQLServer lo hacia por ODBC, cosa que en PB 8.0 la conexion aparte de poder hacerla por ODBC tambien se puede hacer por el mismo drive nativo de SQLServer . y como tengo entendido que hacer una conexion nativa a SQLServer de nuestra aplicacion es mucho mas productivo y optima que hacerla por ODBC, decidi hacer la conexion de forma nativa por el mismo proveedor de SQLServer pero para eso tuve que regresar a PB version 8.0 ya que dicha conexion nativa en PB 10.0 no se puede hacer cosa que si ocurre en PB 8.0 (en la version 9.0 tambien se puede cnectar por el mismo proveedor de BDS), y entonces una vez hecha de nueva la conexion nativa a SQLServer en PB 8.0 arme de nuevo la llamada a mi Store Procedure desde una ventana y para mi sorpresa si ejecutaba correctamente el Store Procedure, retornando los parametros deseados, es aqui entonces donde me pude dar cuenta 2 cosas muy importantes:
1. Ratificar que es mas confiable hacer una conexion nativa desde el mismo proveedor de Base de Datos (SQl en mi caso), en comparacion a hacerlo por ODBC
Tengo una razon: Mi store procedure se ejecuta correctamente cuando hago la conexion nativa a SqlServer y en cambio cuando lo ejecutaba previo a una conexion por ODBC me arrojaba un error en un messagebox (SQLSTATE 22005 [ Microsoft ][ ODBC SQL Server Driver ] Valor de caracter no valido para especificacion cast. ) <--ese es el mensaje de error.
2. Un fastidio en que la version 10.0 de PB no tengo conexion nativa a SQLSEVER, supongo que en la 10.5 tambien haya ese inconveniente, el fastidio se genera por que en esta version la interfaz es mucho mas amigable y tambien mas robusta el power builder, en cambio en la version 8.0 se cae a cada rato, esa inestabilidad no se presenta muy frecuente en PB 10.0.
Entonces yo me pregunto por que los fabricantes de esta herramienta RAD en sus ultima versiones dejaron de lado al proveedor de drive nativo SQLServer, y siguen optando por ODBC, me supongo que esto genera mas limitaciones, yo solo quize compartir unas de las mas limitaciones que puedan ver. Agradeceria sus comentarios amigos del foro. Todas sus ideas son bienvendas.
Entonces la aplicacion que estoy desarrollando en Power Builder version 10.0 necesitaba invocar dichos procedimientos almacenados., entonces desde PB 10.0 hacia el llamado a los store procedure de la Base de Datos, pero aparentemente no ejecutaba el store procedure mostraba un error, a pesar que los parametros enviados eran correctos, del mismo tipo, la sintaxis de la llamada era correcta, es decir, toda la sintaxis estaba OK, y ni que decir del store procedure, todos tambien estaban Ok, por que han sido ejecutados desde el Query Analyzer y todos se ejecutan bien. Es decir, ese error que tenia no era por el lado de la programacion del Store Procedure sino mas bien por el lado de Power Builder 10.0, y entonces analizando mejor el error generado, decide probar dicho store procedure en una version inferior (PB version 8.0), pero rapidamente note la diferencia en la forma de conexion que existe en PB 8.0 y en la version 10.0, me explico:
En la version de PB 10.0 para acceder a mi BD SQLServer lo hacia por ODBC, cosa que en PB 8.0 la conexion aparte de poder hacerla por ODBC tambien se puede hacer por el mismo drive nativo de SQLServer . y como tengo entendido que hacer una conexion nativa a SQLServer de nuestra aplicacion es mucho mas productivo y optima que hacerla por ODBC, decidi hacer la conexion de forma nativa por el mismo proveedor de SQLServer pero para eso tuve que regresar a PB version 8.0 ya que dicha conexion nativa en PB 10.0 no se puede hacer cosa que si ocurre en PB 8.0 (en la version 9.0 tambien se puede cnectar por el mismo proveedor de BDS), y entonces una vez hecha de nueva la conexion nativa a SQLServer en PB 8.0 arme de nuevo la llamada a mi Store Procedure desde una ventana y para mi sorpresa si ejecutaba correctamente el Store Procedure, retornando los parametros deseados, es aqui entonces donde me pude dar cuenta 2 cosas muy importantes:
1. Ratificar que es mas confiable hacer una conexion nativa desde el mismo proveedor de Base de Datos (SQl en mi caso), en comparacion a hacerlo por ODBC
Tengo una razon: Mi store procedure se ejecuta correctamente cuando hago la conexion nativa a SqlServer y en cambio cuando lo ejecutaba previo a una conexion por ODBC me arrojaba un error en un messagebox (SQLSTATE 22005 [ Microsoft ][ ODBC SQL Server Driver ] Valor de caracter no valido para especificacion cast. ) <--ese es el mensaje de error.
2. Un fastidio en que la version 10.0 de PB no tengo conexion nativa a SQLSEVER, supongo que en la 10.5 tambien haya ese inconveniente, el fastidio se genera por que en esta version la interfaz es mucho mas amigable y tambien mas robusta el power builder, en cambio en la version 8.0 se cae a cada rato, esa inestabilidad no se presenta muy frecuente en PB 10.0.
Entonces yo me pregunto por que los fabricantes de esta herramienta RAD en sus ultima versiones dejaron de lado al proveedor de drive nativo SQLServer, y siguen optando por ODBC, me supongo que esto genera mas limitaciones, yo solo quize compartir unas de las mas limitaciones que puedan ver. Agradeceria sus comentarios amigos del foro. Todas sus ideas son bienvendas.
Valora esta pregunta


0