Power Builder - Urg. Stored Proc no ejecuta

   
Vista:

Urg. Stored Proc no ejecuta

Publicado por Pedro (2 intervenciones) el 11/08/2011 21:39:54
Hola a todos

tengo una consulta, estuve buscando en el foro algo similar pero no he hayado la respuesta.

tengo un store que devuelve una tabla de registros y en powerbuilder 8, ejecuto el store todo genial cuando esta conectado en el profile, pero cuando genero el ejecutable con los dll no ejecuta el store

/** en power
DECLARE usp_reporte PROCEDURE FOR dbo.usp_loadReport (:VAR_TIPO,:VAR_CONSUL,:VAR_FECHI,:VAR_FECHF) USING SQLCA;

EXECUTE usp_reporte;
FETCH usp_load_reporte INTO :IDE,:FORMU;
DO WHILE SQLCA.sqlcode = 0
f=f+1
dw_lista_rep.InsertRow(f)
dw_lista_rep.SETITEM(f,"IDENT",IDE)
dw_lista_rep.SETITEM(f,"FORMULARIO",FORMU)
FETCH usp_load_reporte INTO :IDE,:FORMU;
LOOP

CLOSE ....

cuando se ejecuta desde el desarrollo SQLCA.sqlcode me bota 0 y me muestran datos, pero cuando genero el ejecutable con los dll, el valor de SQLCA.sqlcode me sale -1, como puedo resolver esta incidencia, se los agradecere mucho, ojo si se llega a conectar a la base de datos

Saludos
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

Urg. Stored Proc no ejecuta

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 12/08/2011 21:35:43
Con qué usuario estás ejecutando en desarrollo y con cual con los ejecutables?

Cuál es el SQLCA.SQLErrText, que te genera?

Será problema de derechos de usuario?

Por qué declaras la función con 4 parámetros y le envías 2 en el FETCH?

El error te lo da desde la primera vez, no entra al ciclo?

Saludos.
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

Urg. Stored Proc no ejecuta

Publicado por Pedro (2 intervenciones) el 13/08/2011 21:55:12
Hola JeinnerH

gracias por responder, se ejecuta con el mismo usuario de configuracion ini que tengo, ya que con el mismo realice el odbc para conectarme en desarrollo. solo tengo ese problema con los store, ya que si realizo consultas con Select o insert, no tengo problemas.
derechos de usuario no creo ya que verifique.

el codigo completo es:
DECLARE usp_load_reporte PROCEDURE FOR dbo.usp_loadReport (:VAR_TIPO,:VAR_CONSUL,:VAR_FECHI,:VAR_FECHF) USING SQLCA;

EXECUTE usp_load_reporte;

FETCH usp_load_reporte INTO :IDE,:FORMU,:FECH,:INFRA,:AG,:PLACA,:TIPO,:ESTA,:MONTO,:MONTO1,:COND,:PROP,:DESP,:FECH_INS,:ESTA_UPM,:REGE,:FE_RG,:SANCIO,:NESTAD,:FPAGO;
ls_test = string(SQLCA.sqlcode)

DO WHILE SQLCA.sqlcode = 0
f=f+1
dw_lista_rep.InsertRow(f)
dw_lista_rep.SETITEM(f,"IDENT",IDE)
dw_lista_rep.SETITEM(f,"FORMULARIO",FORMU)
dw_lista_rep.setItem(f,"PLACA",PLACA)
dw_lista_rep.setItem(f,"FECHA",FECH)
dw_lista_rep.setItem(f,"INFRACCION",INFRA)
dw_lista_rep.setItem(f,"AGENTE",AG)
dw_lista_rep.setItem(f,"ESTACION",ESTA)
dw_lista_rep.setItem(f,"TIPO_VEH",TIPO)
dw_lista_rep.setItem(f,"MONTO",MONTO)
dw_lista_rep.setItem(f,"MONTO2",MONTO1)
dw_lista_rep.setItem(f,"CONDUC_NOM",COND)
dw_lista_rep.setItem(f,"PROP_NOM",PROP)
dw_lista_rep.setItem(f,"DESP_NOM",DESP)
dw_lista_rep.setItem(f,"fechinsc",FECH_INS)
dw_lista_rep.setItem(f,"ESTADO",ESTA_UPM)
dw_lista_rep.setItem(f,"nrorg",REGE)
dw_lista_rep.setItem(f,"fechrg",FE_RG)
dw_lista_rep.setItem(f,"razonnotifica",SANCIO)
dw_lista_rep.setItem(f,"estado_noti",NESTAD)
IF FPAGO = 1 THEN
dw_lista_rep.setItem(f,"PAGOS",STRING('DEPOSITO'))
END IF

FETCH usp_load_reporte INTO :IDE,:FORMU,:FECH,:INFRA,:AG,:PLACA,:TIPO,:ESTA,:MONTO,:MONTO1,:COND,:PROP,:DESP,:FECH_INS,:ESTA_UPM,:REGE,:FE_RG,:SANCIO,:NESTAD,:FPAGO;
LOOP
Close usp_load_reporte;

IF SQLCA.sqlcode=-1 THEN
messagebox("","Error")
ROLLBACK USING SQLCA;
ELSE
COMMIT USING SQLCA;
END IF

Este es cuando verifico en desarrollo todo esta ok, pero cuando lo realizo con el ejecutable no muestra error y salta al SQLCA.sqlcode=-1 , no puedo encontrar la solucion por favor ayudame.

Saludos
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

Urg. Stored Proc no ejecuta

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 16/08/2011 17:26:55
Y qué error te retorna en el SQLCA.SQLErrText

Saludos.
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

Urg. Stored Proc no ejecuta

Publicado por Pedro (44 intervenciones) el 20/08/2011 06:23:34
Hola JeinnerH

no he declarado ni he especificado el SQLCA.SQLErrText, donde deberia colocarlo?

oh alguna manera de probrar la ejecucion del estore por el ejecutable, podrias ayudarme nuevamente o alguna manera de solucionar o probrar este problema

Saludos
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

Urg. Stored Proc no ejecuta

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 22/08/2011 16:00:02
Bueno el SQLCA.SQLErrText contine el texto con la descripción del error presentado en la consulta a la base de datos inmediatamente anterior.

Es decir, si hago un INSERT y quiero saber si hubo un error, sólo pregunto por el SQLCA.SQLCode, pero si quiero saber cuál es la descripción de ese error, puedo hacer un:

Messagebox('ERROR('+String(SQLCA.SQLCode)+')', 'Se ha presentado un erro al ejecutar el INSERT~n'+ &
'ERROR INTERNO: '+SQLCA.SQLErrText)

De esta forma puedes tener una descripción que puedas entender, de lo que está pasando.

Si no sabes dónde exactamente está sucediendo el error, puedes ejecutar paso a paso el procedimiento o puedes revisar después de cada operación que accesa la base de datos, si hubo algún error y presentar el mensaje que te indico.

Saludos.
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

Urg. Stored Proc no ejecuta

Publicado por Pedro (44 intervenciones) el 29/08/2011 02:31:28
Hola JeinnerH

realice lo que me indicastes trate de ver donde es que se produce la falla. el error text que me sale es " Sintaxis incorrecta cerca de '1' ", este error me marca cuando lo coloque luego del
--------------------------------------------
EXECUTE usp_load_reporte
Messagebox('ERROR('+String(SQLCA.SQLCode)+')', 'Se ha presentado un erro al ejecutar el INSERT~n'+ &
'ERROR INTERNO: '+SQLCA.SQLErrText)
---------------------------------------------
que es lo que podria ser?, mi stored me devuelve una tabla como puedo solucionar espero tu ayuda
por favor

Saludos
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

Urg. Stored Proc no ejecuta

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 29/08/2011 19:19:15
Al parecer hay un error dentro del Store Procedure.
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

Urg. Stored Proc no ejecuta

Publicado por Pedro (44 intervenciones) el 29/08/2011 23:19:31
Hola JeinnerH

ya encontre el problema, me ayudo bastante lo del SQLErrText, al parecer no me aceptaba esta parte:
Antes
DECLARE usp_load_reporte PROCEDURE FOR dbo.usp_loadReport (:VAR_TIPO,:VAR_CONSUL,:VAR_FECHI,:VAR_FECHF) USING SQLCA;

y lo cambie de esta forma sin parentesis.

DECLARE usp_load_reporte PROCEDURE FOR dbo.usp_loadReport :VAR_TIPO,:VAR_CONSUL,:VAR_FECHI,:VAR_FECHF USING SQLCA;

es extraño pero al menos solucione el inconveniente que me generaba cuando corria en el modo de ejecutable. muchisimas graciass. por tu aporte

Saludos
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

Urg. Stored Proc no ejecuta

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 31/08/2011 16:29:23
Que bueno que lograste encontrar el problema.

Con mucho gusto.
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