Problema con AddNew y Edit con MySql
Publicado: Mié Feb 09, 2011 12:41 pm
Hola,
Accedo a un TSQLQuery de mysql con los siguientes parámetros
- nCursorLocation := adUseClient
- nCursorType := AdOpenDynamic
- nLockType := adLockOptimistic
Código:
METHOD FormInitialize( oSender ) CLASS TAbmGeneral
WaitOn( "Abriendo la tabla de "+::cText+", espere... " )
WITH OBJECT ::oSQLGeneral
:oDataSource:=AppData:cnn
:cSelect:= "SELECT "+::cCodigo+" AS codigo, "+::cNombre+" AS nombre
"+;
"FROM "+::cTable+" "+;
"ORDER BY nombre"
IF :lOpen
:Close()
ENDIF
IF !:lOpen
:lOpen:=.T.
IF !:lOpen
MSGSTOP("Error al Abrir Tabla de "+::cText, 'Error')
return .f.
ENDIF
ENDIF
END WITH
WaitOff()
::oBrw:SetFocus()
RETURN Nil
Al editar :
METHOD Editar( oSender ) CLASS TAbmGeneral
WITH OBJECT TEditGeneral():New(Self)
:ctext:='Modificar '+::cText
::oSQLGeneral:Edit()
:oCODIGO:lEditable:= .f.
:oCODIGO:lTabStop:= .f.
:oCODIGO:cPicture:= ::oBrw:aCols[1]:cPicture
:oCODIGO:nAlignment:= taRIGHT
:showmodal()
if :nModalResult==mrOK
::oSQLGeneral:Update()
else
::oSQLGeneral:Cancel()
endif
END
RETURN Nil
Tanto al añadir como al editar me muestra el :cselect correspondiente y dice
:
Set de sólo lectura, 'Edit' no permitido[#0]
En procedimiento: TABMGENERAL:EDITAR linea: 96
la linea 96 : ::oSQLGeneral:Edit()
y entro en la edicion, pero... no me deja modificar nada
Probé sin los alias, y tambien da error, probe ver el estado de :lOpen, y
esta en .T., y probe un msginfo( ::oSQLGeneral:nLockType ) antes del edit y
es 3, segun ado.ch seria correcto.
Alguna idea ?
Gracias.
Accedo a un TSQLQuery de mysql con los siguientes parámetros
- nCursorLocation := adUseClient
- nCursorType := AdOpenDynamic
- nLockType := adLockOptimistic
Código:
METHOD FormInitialize( oSender ) CLASS TAbmGeneral
WaitOn( "Abriendo la tabla de "+::cText+", espere... " )
WITH OBJECT ::oSQLGeneral
:oDataSource:=AppData:cnn
:cSelect:= "SELECT "+::cCodigo+" AS codigo, "+::cNombre+" AS nombre
"+;
"FROM "+::cTable+" "+;
"ORDER BY nombre"
IF :lOpen
:Close()
ENDIF
IF !:lOpen
:lOpen:=.T.
IF !:lOpen
MSGSTOP("Error al Abrir Tabla de "+::cText, 'Error')
return .f.
ENDIF
ENDIF
END WITH
WaitOff()
::oBrw:SetFocus()
RETURN Nil
Al editar :
METHOD Editar( oSender ) CLASS TAbmGeneral
WITH OBJECT TEditGeneral():New(Self)
:ctext:='Modificar '+::cText
::oSQLGeneral:Edit()
:oCODIGO:lEditable:= .f.
:oCODIGO:lTabStop:= .f.
:oCODIGO:cPicture:= ::oBrw:aCols[1]:cPicture
:oCODIGO:nAlignment:= taRIGHT
:showmodal()
if :nModalResult==mrOK
::oSQLGeneral:Update()
else
::oSQLGeneral:Cancel()
endif
END
RETURN Nil
Tanto al añadir como al editar me muestra el :cselect correspondiente y dice
:
Set de sólo lectura, 'Edit' no permitido[#0]
En procedimiento: TABMGENERAL:EDITAR linea: 96
la linea 96 : ::oSQLGeneral:Edit()
y entro en la edicion, pero... no me deja modificar nada
Probé sin los alias, y tambien da error, probe ver el estado de :lOpen, y
esta en .T., y probe un msginfo( ::oSQLGeneral:nLockType ) antes del edit y
es 3, segun ado.ch seria correcto.
Alguna idea ?
Gracias.