1. Problema al salir del programa ejecuto este commando y me genera este error
oCon:Execute("Commit") // Cuando ejecuta esta Instrucion genera
Error description: Error BASE/1004 Class: 'CHARACTER' has no exported method: EXECUTE
Args:
[ 1] = C Commit
2. Problema cuando ingreso un problema me funciona bien, la prueba que hago es que trato de ingresar el mismo registro para verificar si me genera error la funcion que graba es graba(oCon, oDatos,AltaCriterio,Obrow,m_tipmod,m_nombre )
cuando genera el mensaje de error que ya existe el registro se queda bloqueado, no se que me falta.
Estoy utilizando FWH 2.7 y xharbarx 0.99.71
Saludos al Forum
Code: Select all
FUNCTION MAIN()
Local oCon, oSql,oDatos,aDatos ,i, oFont, oDlg,oBrow,oDados, txSql,AltaCriterio
Local m_tipmod,m_nombre
m_tipmod := '25'
m_nombre := 'Ruben es es una prueba'
AltaCriterio := 'INSERT INTO ktipmod (tipmod,nombre) values ("'+m_tipmod+','+m_nombre+'")'
DRIVER};SERVER=localhost;DATABASE=basedatm;USER=root;PASSWORD=kate1984")
AbreConexao(@oCon,@oDatos)
AbreTabla( @oCon,@oDatos)
? STR(oDatos:RecordCount())
? STR(oDatos:Fields:Count())
oDatos:MoveFirst()
DEFINE FONT oFont NAME "Georgia" SIZE 0,-15
DEFINE DIALOG oDlg FROM 0,0 TO 550,800 PIXEL TITLE "Ado Connections My SQL"
@ 1,1 LISTBOX oBrow FIELDS oDatos:Fields("tipmod"):Value ,;
oDatos:Fields("nombre"):Value ;
HEADERS "Field 1","Field 2" SIZE 350,150 PIXEL OF oDlg
oBrow:aJustify ={.F.,.F.,.t.}
oBrow:bLogicLen = { || oDatos:RecordCount }
oBrow:bGoTop = { || oDatos:MoveFirst() }
oBrow:bGoBottom = { || oDatos:MoveLast() }
oBrow:bSkip = { | nSkip | Skipper( oDatos, nSkip ) }
oBrow:cAlias = "ARRAY"
@ 10, 4 BUTTON "Graba Registro" SIZE 160, 25 OF oDlg ACTION (graba( oCon,@oDatos,AltaCriterio,oBrow,m_tipmod,m_nombre))
ACTIVATE DIALOG oDlg
oCon:Execute("Commit") // Cuando ejecuta esta Instrucion genera ereor
Quit
RETURN NIL
FUNCTION graba(oCon, oDatos,AltaCriterio,Obrow,m_tipmod,m_nombre )
Local E
Try
oDatos:AddNew()
oDatos:Fields("tipmod"):Value:=m_tipmod
oDatos:Fields("nombre"):Value:=m_nombre
oDatos:Update()
oBrow:Refresh()
Catch e
MsgStop("Operacion: "+E:operation+" - "+"Descripcion: "+E:Description+chr(10))
Break E
End
RETURN (.t.)
FUNCTION SKIPPER( oRs, nSkip )
LOCAL nRec := oRs:AbsolutePosition
oRs:Move( nSkip )
IF oRs:EOF; oRs:MoveLast(); ENDIF
IF oRs:BOF; oRs:MoveFirst(); ENDIF
RETURN oRs:AbsolutePosition - nRec