Buenas tardes,
He estado bastantes horas intentando solucionar un error al actualizar un record set. Utlilizo SQlite y ADO. Lo pondré aquà por si le pasa a más gente, ya que no lo he encontrado en el foro. El problema me daba al hacer oRs:update() cuando el campo era tipo "float" y previamente tenÃa un valor guardado con bastantes decimales, por ejemplo si haces 10/3 y lo guardas en el campo. La siguiente vez que fueras a hacer un "oRs:update" en ese campo obtenÃa este error:
Error description: Error adodb.recordset/3 DISP_E_MEMBERNOTFOUND: UPDATE
Esto me impedÃa trabajar con datos grabados con php. Lo he solucionado modificando una clase que tengo y usando directamente el execute de SQL
No sé si en las últimas versiones de TRecordSet estará solucionado.
Un saludo,
Alvaro
He estado bastantes horas intentando solucionar un error al actualizar un record set. Utlilizo SQlite y ADO. Lo pondré aquà por si le pasa a más gente, ya que no lo he encontrado en el foro. El problema me daba al hacer oRs:update() cuando el campo era tipo "float" y previamente tenÃa un valor guardado con bastantes decimales, por ejemplo si haces 10/3 y lo guardas en el campo. La siguiente vez que fueras a hacer un "oRs:update" en ese campo obtenÃa este error:
Error description: Error adodb.recordset/3 DISP_E_MEMBERNOTFOUND: UPDATE
Esto me impedÃa trabajar con datos grabados con php. Lo he solucionado modificando una clase que tengo y usando directamente el execute de SQL
local estoy := ::oRs:fields("_id"):value
...
cad:= <los campos que se necesiten actualizar separados por comas, p.e: campo1=valor1,campo2=valor2, etc .. >
....
 App():oCon:Execute("update "+::cTabla+" set "+cad+" where _id="+str(estoy)+" " )
 ::oRs:requery()
 ::oRs:moveFirst()
 ::oRs:Find( "_id = "+sc(estoy)+" ")No sé si en las últimas versiones de TRecordSet estará solucionado.
Un saludo,
Alvaro