Hello, thank you very much for your answers. I created a macro as you show me, and it works: Sub modificacion oCon=ThisDatabaseDocument.CurrentController.ActiveConnection oStat=oCon.CreateStatement sSQL = "UPDATE ""cliente"" "& "SET ""cliente"".""saldo_actual"" =" & " ""cliente"".""saldo_actual"" + " & 1000 & " WHERE ""cliente"".""id_cliente"" =" & 1 oRes=oStat.ExecuteQuery(sSQL) End Sub Also my original macro works, but the problem is it only works if manually SETTING saldo_actual field to 0 previously. That is my macro works, now my problem is that I can not put defaults to 0 to saldo_actual field. As I had said in my previous mail, I put in value If required, I deleted all records from the cliente table and have even removed all relationships with other tables, just do not let me, I can not just save the changes made and the cursor is just saldo_actual field. Regards, Yessica 2013/2/3 Fernand Vanrie <s...@pmgroup.be>
> i opened your base document , opened to edit your cliente table, close and > run your macro > now your macro works :-) > > > Op 03/02/2013 13:38, Fernand Vanrie schreef: > > Op 02/02/2013 11:20, Yessica Brinkmann schreef: >> >>> Hello, >>> Yes, I write: SELECT cliente.saldo_actual FROM cliente WHERE id_cliente=0 >>> and it works. It say: Command executed successfully. >>> The column name is saldo_actual , so I wrote in my last version of the >>> macro, which is in my previous mail. >>> >> If its run in a query, than it must also in the macro ? >> TRYE to run a other macro with only the statement with the id and the >> value hardcoded >> >>> Regards, >>> Yessica >>> >>> 2013/2/2 Fernand Vanrie <s...@pmgroup.be> >>> >>> Op 02/02/2013 07:04, Yessica Brinkmann schreef: >>>> >>>> Hello, >>>> >>>>> I wanted to ask if I can please help with this issue. Is that really >>>>> need >>>>> to implement this functionality for my database. The macro has no >>>>> errors >>>>> but UPDATE is not performed in the customer table. I do not know if you >>>>> owe >>>>> the event in which I am putting my macro, event currently in the Mouse >>>>> button released Calculate Total button. Same should work if >>>>> saldo_actual >>>>> field for a record is empty it? >>>>> >>>>> do the sql statement works when run from elsewhere (make a query to >>>> test) >>>> >>>> I also see that all new users first make an introduction, I'm doing my >>>>> thesis on Computer Engineering and I am working Independent, as do >>>>> systems. I have more experience working on Java and XML, but I think >>>>> this >>>>> is a nice opportunity to learn Visual Basic. >>>>> My macro is now as follows: >>>>> Sub ActualizarSaldoVentas (Evento) >>>>> Dim oFrm As Object >>>>> Dim oCliente As Object >>>>> Dim oTotal As Object >>>>> Dim oCon As Object >>>>> Dim oStat As Object >>>>> Dim sSQL As String >>>>> Dim oRes As Object >>>>> Dim rs As Object >>>>> Dim sCliente as String >>>>> Dim ColIndex as Integer >>>>> 'Dim oIdPago As Object >>>>> oFrm=Evento.Source.Model.****Parent >>>>> If oFrm.hasByName("id_cliente") Then >>>>> oCliente=oFrm.getByName("id_****cliente") >>>>> Else >>>>> Print "Cannot find id_cliente" >>>>> Exit Sub >>>>> End If >>>>> rs=oFrm.createResultSet() >>>>> sCliente=rs.getString(rs.****findColumn("cod_cliente")) >>>>> oTotal=oFrm.getByName("****fmttotal") >>>>> Print sCliente >>>>> Print oTotal.getCurrentValue() >>>>> oCon=ThisDatabaseDocument.****CurrentController.****ActiveConnection >>>>> oStat=oCon.CreateStatement >>>>> sSQL = "UPDATE ""cliente"" " & "SET ""cliente"".""saldo_actual"" >>>>> =" & >>>>> " >>>>> ""cliente"".""saldo_actual"" + " & oTotal.getCurrentValue() & " WHERE >>>>> ""cliente"".""id_cliente""=" & CInt(sCliente) >>>>> oRes=oStat.ExecuteQuery(sSQL) >>>>> End Sub >>>>> Regards, >>>>> Yessica >>>>> 2013/2/1 Yessica Brinkmann <yessica.brinkm...@gmail.com> >>>>> >>>>> Hello, >>>>> >>>>>> I think maybe I should assign my macro to another event, perhaps one >>>>>> associated with the form to work, I do not know, my idea is just. >>>>>> Tempted >>>>>> now assigned to mouse button released event of a button called >>>>>> Calculate >>>>>> Total. >>>>>> regards, >>>>>> Yessica >>>>>> >>>>>> 2013/2/1 Yessica Brinkmann <yessica.brinkm...@gmail.com> >>>>>> >>>>>> Hello, >>>>>> >>>>>>> Thank you very much for the reply. Sorry, did not know that I should >>>>>>> not >>>>>>> put attachments. Now I have no errors in the macro, and I used the >>>>>>> SQL >>>>>>> UPDATE indicated. Just do not know why but UPDATE fails. So, when I >>>>>>> check >>>>>>> the table, I do not see the value of the changed field. I refreshed >>>>>>> the >>>>>>> table also but nothing. I printed the total value also to see if I >>>>>>> was >>>>>>> right and good. I do not know what is going wrong. >>>>>>> Regards, >>>>>>> Yessica >>>>>>> >>>>>>> 2013/2/1 Fernand Vanrie <s...@pmgroup.be> >>>>>>> >>>>>>> Ariel, Yessica, >>>>>>> >>>>>>>> with OObase database, table and field names are case sensitive, >>>>>>>> their >>>>>>>> is >>>>>>>> no need to quote if: tables are lowercase and fieldnames uppercase. >>>>>>>> >>>>>>>> if quotes are used, then leave the dots out of the quotes >>>>>>>> sSQL= "SELECT ""mybase"".""cliente"".""****** >>>>>>>> saldo_saldo_actual"" >>>>>>>> >>>>>>>> WHERE...................." works >>>>>>>> >>>>>>>> greetz >>>>>>>> >>>>>>>> Fernand >>>>>>>> >>>>>>>> On Thu, Jan 31, 2013 at 08:01:22PM -0300, Yessica Brinkmann >>>>>>>> wrote: >>>>>>>> >>>>>>>> Hi, thanks for your answer. >>>>>>>>> >>>>>>>>>> Now I advanced. >>>>>>>>>> I print the value of the client code correctly. >>>>>>>>>> Only now I have another error, tells me that the Customer table >>>>>>>>>> does >>>>>>>>>> not >>>>>>>>>> exist or something like this: >>>>>>>>>> Basic runtime error. There was an exception. Type: >>>>>>>>>> com.sun.star.sdbc.******SQLException. Message: Table not found in >>>>>>>>>> statement >>>>>>>>>> >>>>>>>>>> This may need to quote table and fields names: >>>>>>>>>> >>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual = >>>>>>>>> >>>>>>>>> cliente.saldo_saldo_actual + "& oTotal.getCurrentValue()& " WHERE >>>>>>>>>> cliente.id_cliente=" & CInt(sCliente) >>>>>>>>>> >>>>>>>>>> What is the name of the table? "CLIENTES" or "clientes"? >>>>>>>>>> >>>>>>>>> >>>>>>>>> Regards >>>>>>>>> >>>>>>>>> >>>>>>>>> >