Lotus Approach - problema con navegadores RST

 
Vista:

problema con navegadores RST

Publicado por para manolo (97 intervenciones) el 02/06/2009 22:21:58
Saludos Manolo.
Te comento que ultimamente se me producen cualquiera de los dos errores q menciono mas adelante.

Se me estan dando dos errores al correr un SQL:

1- (nombre de ventana) approach.exe - Error de Aplicacion
La instruccion en "0x003dca69" hace referencia a la memoria en 0x02969000". La memoria no se puede "read"

(dos botones) aceptar, cancelar

2- (nombre de ventana) Approach - [lasttaller.apr:entEqTaller]: approach.exe - Error de Aplicacion
La instruccion en "0x040c2030" hace referencia a la memoria en 0x001bb000". La memoria no se puede "written"

(dos botones) aceptar, cancelar

Estos errores se presentan cuando intento ejecutar la rutina que abajo he colocado. Debo aclarar que de cinco registros que intento ingresar dos fallan. Especifica mente cuando quiero mover el puntero de SQL a otra pocicion. (normalmente lo mando al final) Por lo que determino es que el SQL tiene algun tipo de problema con el XP SP3. Quisiera saber si conoces como se soluciona este problema.

Sub CreaNewGestion
Dim Path As String
Dim File As String
'------------------
CD = Chr(34) '--------- Comillas dobles para formar sentencias SQL
Path = CurrentDocument.Path '------ Via al documento
' Path ="c: egisared"
File = "LLTC01.DBF" '------ Nombre de archivo
mAnnio_Actual = Year(Today())
'----------------------- Inicializar variables
Set CON = New Connection
Set QRY = New Query
Set RST = New ResultSet
CON.ConnectTo("dBASE IV")
Set QRY.Connection = CON
QRY.TableName = Path + File
Set RST.Query = QRY

Table = Path + File

'------------ Ahora formamos la sentencia SQL. Sólo funciona la sentencia SELECT
'------------ no proebes con ninguna otra sentencia SQL, sólo va la SELECT.
QRY.SQL = "SELECT * FROM " & CD & Path & File & CD & " WHERE PERIODO ='" & mAnnio_Actual & "' ORDER BY cod_lla"
Set RST.Query = QRY
RST.Execute
NumRecords = RST.NumRows
ActualReg = RST.CurrentRow

' OJO MANOLO
RST.LastRow '<<<<<<<<<<<<============ AQUI ME PRODUCE EL ERROR
' lo cambie x cualquier navegador y el resultado fue el mismo
ActualReg = RST.CurrentRow

' Messagebox "El último número es:" & RST.GetValue("cod_lla")
NewGestion = RST.GetValue("cod_lla")
NewGestion=Right(Str( Val(NewGestion) + 100001),5)
'Messagebox "El último número es:" & NewGestion
CurrentView.Body.COD_LLA.ReadOnly = False
'CurrentView.Body.COD_LLA.Text=Right(Str( Val(NewGestion) + 100001),5)
CurrentView.Body.COD_LLA.Text = NewGestion
Messagebox "El Número de Gestion es:" & CurrentView.Body.COD_LLA.Text
CurrentView.Body.COD_LLA.ReadOnly = True
CurrentWindow.Refresh
'=================== fin de la secuencia
End Sub
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

RE:problema con navegadores RST

Publicado por Manolo (140 intervenciones) el 03/06/2009 08:46:48
Hola:
Ya había visto el post anterior, pero no sabía que decirte. En la secuencia no hay nada extraño, por lo que no es ningún "error" de la programación. Más bien me inclino por algún "problema" del Approach con los objetos en determinadas circunstancias (vete tú a saber cuáles). Se me han dado casos como el que tú comentas alguna que otra vez. ¿Cual es el origen?. No lo sé. ¿Solución?, ir cambiando aquí y allá, hasta que el error cesa. No es una solución científica... pero, a falta de otra mejor...
Guarda una copia del APR, tal y como está.
Lo primero sería eliminar el objeto en el que está esa secuencia de instrucciones. Seleccionas todo el texto del script, y lo copias (copy). Eliminas el objeto (botón, campo, ...). Creas un nuevo objeto. Le pones el mismo nombre que tenía (si es que lo necesitas), y en la propiedad en la que tenías el script, pegas de nuevo la secuencia de instrucciones. Si continúa sin funcionar.
Continuaría con ésta técnica, pero ahora, eliminando grupos de objetos, hasta que el script funcione. Cuando tengas identificado que grupo es, ir buscando que objeto es el culplable, eliminarlo, y crearlo de nuevo. Te parecerá una tontería, pero no pierdes nada probando. Alguna de éstas dos cosas debería de dar resultado. Si no es así, a ver que más se nos ocurre. Ya me contarás. Suerte.

Un saludo.

Manolo
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