You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Yessica Brinkmann <ye...@gmail.com> on 2013/01/30 10:56:40 UTC

Error in macro.

Hello,
I have a database of business management. I have a customer table that has
a field saldo_actual.
On the other hand, I have a sales form, in which I have a total field, and
a button Calculate Total.
I want to make a macro that when clicking on the Calculate Total button to
add the total saldo_actual field.
I assigned the macro to the button event: Mouse button released. Then I
write my macro:
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 sCliente as String
oFrm=Evento.Source.Model.Parent
oCliente=oFrm.getByName("cod_cliente")
sCliente=oCliente.getCurrentValue()
oTotal=oFrm.getByName("total")
oCon=ThisDatabaseDocument.CurrentController.ActiveConnection
oStat=oCon.CreateStatement
sSQL="UPDATE cliente SET cliente.saldo_actual = cliente.saldo_saldo_actual
+ "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
oCliente.getCurrentValue()
oRes=oStat.ExecuteQuery(sSQL)
End Sub
Clicking on the button Calculate total, I get the following error:
BASIC runtime error. There was an exception.
Type: com.sun.star.container.NoSuchElementException Message:
I would appreciate very much a help please.
regards,
Yessica

Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
Yessica ,

hard to sea, but the error must open the basic ID and higlight the place 
off the error,

"container.NoSuchElementException" >> probably a typo in the name of one 
of the fieldnames ?
called by the "getbyname"

hope it helps

Fernand


> Hello,
> I have a database of business management. I have a customer table that has
> a field saldo_actual.
> On the other hand, I have a sales form, in which I have a total field, and
> a button Calculate Total.
> I want to make a macro that when clicking on the Calculate Total button to
> add the total saldo_actual field.
> I assigned the macro to the button event: Mouse button released. Then I
> write my macro:
> 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 sCliente as String
> oFrm=Evento.Source.Model.Parent
> oCliente=oFrm.getByName("cod_cliente")
> sCliente=oCliente.getCurrentValue()
> oTotal=oFrm.getByName("total")
> oCon=ThisDatabaseDocument.CurrentController.ActiveConnection
> oStat=oCon.CreateStatement
> sSQL="UPDATE cliente SET cliente.saldo_actual = cliente.saldo_saldo_actual
> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
> oCliente.getCurrentValue()
> oRes=oStat.ExecuteQuery(sSQL)
> End Sub
> Clicking on the button Calculate total, I get the following error:
> BASIC runtime error. There was an exception.
> Type: com.sun.star.container.NoSuchElementException Message:
> I would appreciate very much a help please.
> regards,
> Yessica
>


Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
  Yessica

nono , just check if the name of your controls are identical to what you 
call with "getbyname" (check uppercase, lower....)

greetz

Fernand
> Hello,
> I think I can do this with string functions Left and Split but I do not
> know which is the separator for the ComboBox, for separating the code from
> the name.
> Much appreciate an answer please.
> regards,
> Yessica
>
> 2013/1/30 Yessica Brinkmann <ye...@gmail.com>
>
>> Hello,
>> Thank you for the answers!
>> When I replaced the lines containing "getByName" for something as
>> indicated prints a message saying: "Can not find cod_cliente". I think this
>> is because it is a field cod_cliente type drop-down list box and i should
>> get the id of the customer through a cut chain or something, but I really
>> do not know how to do this in OO Basic. Can you help a little with this
>> please? I clarify that my formal education rather relied on the C and Java.
>> regards,
>> Yessica
>>
>>
>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>
>>> Which line gives the error?
>>>
>>> If you change all lines containing "getByName" with something like
>>>
>>> If oFrm.hasByName("cod_cliente") Then
>>>    oCliente=oFrm.getByName("cod_**cliente")
>>> Else
>>>    Print "Cannot find cod_cliente"
>>>    Exit Sub
>>> End If
>>>
>>> What happens?
>>>
>>>
>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>
>>>> Hello,
>>>> I have a database of business management. I have a customer table that
>>>> has
>>>> a field saldo_actual.
>>>> On the other hand, I have a sales form, in which I have a total field,
>>>> and
>>>> a button Calculate Total.
>>>> I want to make a macro that when clicking on the Calculate Total button
>>>> to
>>>> add the total saldo_actual field.
>>>> I assigned the macro to the button event: Mouse button released. Then I
>>>> write my macro:
>>>> 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 sCliente as String
>>>> oFrm=Evento.Source.Model.**Parent
>>>> oCliente=oFrm.getByName("cod_**cliente")
>>>> sCliente=oCliente.**getCurrentValue()
>>>> oTotal=oFrm.getByName("total")
>>>> oCon=ThisDatabaseDocument.**CurrentController.**ActiveConnection
>>>> oStat=oCon.CreateStatement
>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>> cliente.saldo_saldo_actual
>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>> oCliente.getCurrentValue()
>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>> End Sub
>>>> Clicking on the button Calculate total, I get the following error:
>>>> BASIC runtime error. There was an exception.
>>>> Type: com.sun.star.container.**NoSuchElementException Message:
>>>> I would appreciate very much a help please.
>>>> regards,
>>>> Yessica
>>>>
>>>>
>>> --
>>> Andrew Pitonyak
>>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>> Info:  http://www.pitonyak.org/oo.php
>>>
>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
I think I can do this with string functions Left and Split but I do not
know which is the separator for the ComboBox, for separating the code from
the name.
Much appreciate an answer please.
regards,
Yessica

2013/1/30 Yessica Brinkmann <ye...@gmail.com>

> Hello,
> Thank you for the answers!
> When I replaced the lines containing "getByName" for something as
> indicated prints a message saying: "Can not find cod_cliente". I think this
> is because it is a field cod_cliente type drop-down list box and i should
> get the id of the customer through a cut chain or something, but I really
> do not know how to do this in OO Basic. Can you help a little with this
> please? I clarify that my formal education rather relied on the C and Java.
> regards,
> Yessica
>
>
> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>
>> Which line gives the error?
>>
>> If you change all lines containing "getByName" with something like
>>
>> If oFrm.hasByName("cod_cliente") Then
>>   oCliente=oFrm.getByName("cod_**cliente")
>> Else
>>   Print "Cannot find cod_cliente"
>>   Exit Sub
>> End If
>>
>> What happens?
>>
>>
>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>
>>> Hello,
>>> I have a database of business management. I have a customer table that
>>> has
>>> a field saldo_actual.
>>> On the other hand, I have a sales form, in which I have a total field,
>>> and
>>> a button Calculate Total.
>>> I want to make a macro that when clicking on the Calculate Total button
>>> to
>>> add the total saldo_actual field.
>>> I assigned the macro to the button event: Mouse button released. Then I
>>> write my macro:
>>> 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 sCliente as String
>>> oFrm=Evento.Source.Model.**Parent
>>> oCliente=oFrm.getByName("cod_**cliente")
>>> sCliente=oCliente.**getCurrentValue()
>>> oTotal=oFrm.getByName("total")
>>> oCon=ThisDatabaseDocument.**CurrentController.**ActiveConnection
>>> oStat=oCon.CreateStatement
>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>> cliente.saldo_saldo_actual
>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>> oCliente.getCurrentValue()
>>> oRes=oStat.ExecuteQuery(sSQL)
>>> End Sub
>>> Clicking on the button Calculate total, I get the following error:
>>> BASIC runtime error. There was an exception.
>>> Type: com.sun.star.container.**NoSuchElementException Message:
>>> I would appreciate very much a help please.
>>> regards,
>>> Yessica
>>>
>>>
>> --
>> Andrew Pitonyak
>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>> Info:  http://www.pitonyak.org/oo.php
>>
>>
>

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you very much for all the help! And for all the patience! My macro
works! I had an installer of Open Office 3.4.0 and wonder but that version
without any problems I could modify the default saldo_actual field from the
Customer table.
Regards,
Yessica

2013/2/3 Ariel Constenla-Haile <ar...@apache.org>

> Hi Yessica,
>
> On Sun, Feb 03, 2013 at 02:31:49PM -0300, Yessica Brinkmann wrote:
> > Hello, sorry, I totally understand what you're saying and just tried to
> do
> > so. As I had said in my previous mail, when I try to change the default
> > saldo_actual field in the editing area of the Customer table, do not let
> me
> > Base.
> > You tell me:
> >
> > - Edit the table "customer": right click on the "customer" table, select
> >    "Edit" from the context menu. Edit the field "saldo_actual", in
> >    "Default value" enter 0. Save the Table Design.
> >
> > I've done that several times and does not allow me Base save the table,
> and
> > then the cursor is positioned right on the field saldo_actual.
> > We tried to do several things to see if it allowed me to make that
> change,
> > such as:
> >
> > As much as I put in value If required, I deleted all records from the
> > customer table and Have even removed all relationships with Other tables,
> > just do not let me, I can not just save the change made and the cursor is
> > just saldo_actual field.
> >
> > I do not know if I have a problem with my version of Open Office or what
> is
> > happening ... I am using Open Office 3.3.0
>
> I don't have a 3.3.0 right now to test, but with 3.4.1 I could make it
> work. If you don't want to update, you can try using an external
> database, like MySQL or PostgreSQL (if your project is for a real
> business management system, using an embedded database isn't a good idea
> anyway, at some point you'll see the need to switch to an external
> database).
>
>
> Regards
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
Hi Yessica,

On Sun, Feb 03, 2013 at 02:31:49PM -0300, Yessica Brinkmann wrote:
> Hello, sorry, I totally understand what you're saying and just tried to do
> so. As I had said in my previous mail, when I try to change the default
> saldo_actual field in the editing area of the Customer table, do not let me
> Base.
> You tell me:
> 
> - Edit the table "customer": right click on the "customer" table, select
>    "Edit" from the context menu. Edit the field "saldo_actual", in
>    "Default value" enter 0. Save the Table Design.
> 
> I've done that several times and does not allow me Base save the table, and
> then the cursor is positioned right on the field saldo_actual.
> We tried to do several things to see if it allowed me to make that change,
> such as:
> 
> As much as I put in value If required, I deleted all records from the
> customer table and Have even removed all relationships with Other tables,
> just do not let me, I can not just save the change made and the cursor is
> just saldo_actual field.
> 
> I do not know if I have a problem with my version of Open Office or what is
> happening ... I am using Open Office 3.3.0

I don't have a 3.3.0 right now to test, but with 3.4.1 I could make it
work. If you don't want to update, you can try using an external
database, like MySQL or PostgreSQL (if your project is for a real
business management system, using an embedded database isn't a good idea
anyway, at some point you'll see the need to switch to an external
database).


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello, sorry, I totally understand what you're saying and just tried to do
so. As I had said in my previous mail, when I try to change the default
saldo_actual field in the editing area of the Customer table, do not let me
Base.
You tell me:

- Edit the table "customer": right click on the "customer" table, select
   "Edit" from the context menu. Edit the field "saldo_actual", in
   "Default value" enter 0. Save the Table Design.

I've done that several times and does not allow me Base save the table, and
then the cursor is positioned right on the field saldo_actual.
We tried to do several things to see if it allowed me to make that change,
such as:

As much as I put in value If required, I deleted all records from the
customer table and Have even removed all relationships with Other tables,
just do not let me, I can not just save the change made and the cursor is
just saldo_actual field.

I do not know if I have a problem with my version of Open Office or what is
happening ... I am using Open Office 3.3.0
regards,
Yessica


2013/2/3 Ariel Constenla-Haile <ar...@apache.org>

> Hi Yessica,
>
> On Sun, Feb 03, 2013 at 02:58:58AM -0300, Yessica Brinkmann wrote:
> > Hello,
> > Excuse me please if I do a silly question. But the truth is that I could
> > not change the default value of saldo_actual field from the cliente
> table.
> > As much as 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. It seems very strange that there must be
> something
> > I'm not understanding.
> > Much appreciate an answer,
>
> I did it using the User Interface, though I guess that could also
> perform some SQL statements. In the user interface:
>
> - Edit the table "cliente": right click on the "cliente" table, select
>   "Edit" from the context menu. Edit the field "saldo_actual", in
>   "Default value" enter 0. Save the Table Design.
>
> - Open the table "cliente": if you put the cursor on the last row, in
>   order to insert a new record, you'll see that now saldo_actual is set
>   to 0 automatically. For all the existing records (in the sample DB
>   AURORA and OTRO CLIENTE) you will have to set it manually (or you can
>   execute a SQL statement).
>
> - Open the form: your macro works now
>
>
> Regards
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
Hi Yessica,

On Sun, Feb 03, 2013 at 02:58:58AM -0300, Yessica Brinkmann wrote:
> Hello,
> Excuse me please if I do a silly question. But the truth is that I could
> not change the default value of saldo_actual field from the cliente table.
> As much as 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. It seems very strange that there must be something
> I'm not understanding.
> Much appreciate an answer,

I did it using the User Interface, though I guess that could also
perform some SQL statements. In the user interface:

- Edit the table "cliente": right click on the "cliente" table, select
  "Edit" from the context menu. Edit the field "saldo_actual", in
  "Default value" enter 0. Save the Table Design.

- Open the table "cliente": if you put the cursor on the last row, in
  order to insert a new record, you'll see that now saldo_actual is set
  to 0 automatically. For all the existing records (in the sample DB
  AURORA and OTRO CLIENTE) you will have to set it manually (or you can
  execute a SQL statement).

- Open the form: your macro works now


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Excuse me please if I do a silly question. But the truth is that I could
not change the default value of saldo_actual field from the cliente table.
As much as 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. It seems very strange that there must be something
I'm not understanding.
Much appreciate an answer,
regards,
Yessica Brinkmann

2013/2/3 Ariel Constenla-Haile <ar...@apache.org>

> On Sat, Feb 02, 2013 at 11:39:23PM -0300, Yessica Brinkmann wrote:
> > Thank you for the answer! I put my database on mediafire, the link is as
> > follows:
> > http://www.mediafire.com/?bhzhr0zzkcz1iue
> > The macro that I have problem is associated with the button Calcular
> Total
> > on  Ventas form.
>
> On a first quick look, your table "cliente" needs a default value of
> 0 in the field "saldo_actual", otherwise it will fail in the UPDATE
> statement when it is incremented.
>
>
> Regards
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
On Sat, Feb 02, 2013 at 11:39:23PM -0300, Yessica Brinkmann wrote:
> Thank you for the answer! I put my database on mediafire, the link is as
> follows:
> http://www.mediafire.com/?bhzhr0zzkcz1iue
> The macro that I have problem is associated with the button Calcular Total
> on  Ventas form.

On a first quick look, your table "cliente" needs a default value of
0 in the field "saldo_actual", otherwise it will fail in the UPDATE
statement when it is incremented.


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Thank you for the answer! I put my database on mediafire, the link is as
follows:
http://www.mediafire.com/?bhzhr0zzkcz1iue
The macro that I have problem is associated with the button Calcular Total
on  Ventas form.
Regards,
Yessica

2013/2/2 Ariel Constenla-Haile <ar...@apache.org>

> Hi Yessica,
>
> On Sat, Feb 02, 2013 at 03:04:14AM -0300, Yessica Brinkmann wrote:
> > 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
>
> This doesn't sound like the proper event. But by only seeing a code
> snippet it is hard to guess. Can you create an ODB with the forms and
> tables (with dummy content, if the information is confidential) and
> upload it some cloud service so that we can take a look at it?
>
>
> Regards
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
Hi Yessica,

On Sat, Feb 02, 2013 at 03:04:14AM -0300, Yessica Brinkmann wrote:
> 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

This doesn't sound like the proper event. But by only seeing a code
snippet it is hard to guess. Can you create an ODB with the forms and
tables (with dummy content, if the information is confidential) and
upload it some cloud service so that we can take a look at it?


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
  Yessica ,

its a property off the cliente fields table, put 0 for default
> 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 <so...@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 <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
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 <so...@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 <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@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 <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>>>>
>>>>>>>>


Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
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 <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>>>
>>>>>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
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.
Regards,
Yessica

2013/2/2 Fernand Vanrie <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>>
>>>>>>
>>>>>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@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 <ye...@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 <ye...@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 <so...@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
>>>>>
>>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
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?
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 <ye...@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 <ye...@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 <so...@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
>>>>
>>>
>>>
>>
>

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@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 <ye...@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 <so...@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
>>>
>>
>>
>

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@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 <so...@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
>>
>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@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


Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
Hi Yessica,

On Fri, Feb 01, 2013 at 09:54:31AM -0300, Yessica Brinkmann wrote:
> Hello, thank you very much for the reply. The table name is cliente, as
> shown in the print screen attached to my previous mail. 

attachments are stripped in this mailing list.

> Actually I tried already to put quotes in many ways to the table names
> and columns but never works for me.

I assume it's "clientes" in lowercase. If you don't quote the
identifiers, they are sent to the database in uppercase, hence you get
the error that the table doesn't exist.

Your SQL statement should be something like


sSQL = "UPDATE ""cliente"" " &_
    "SET ""cliente"".""saldo_actual"" =" &_
    " ""cliente"".""saldo_saldo_actual"" + " &_
    oTotal.getCurrentValue() &_
    " WHERE ""cliente"".""id_cliente""=" &_
    CInt(sCliente)


Assuming that identifiers are quoted with ". 


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello, thank you very much for the reply. The table name is cliente, as
shown in the print screen attached to my previous mail. Actually I tried
already to put quotes in many ways to the table names and columns but never
works for me.
Regards,
Yessica

2013/2/1 Ariel Constenla-Haile <ar...@apache.org>

> 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
> --
> Ariel Constenla-Haile
> La Plata, Argentina
>

Re: Error in macro.

Posted by Ariel Constenla-Haile <ar...@apache.org>.
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
-- 
Ariel Constenla-Haile
La Plata, Argentina

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you very much for your answer!
I have a customer table in my database. Deputy print screen the list of
tables in my database.
I do not know if I'll be wrong but I think the problem is in the quotes, in
the way that I am using. Actually I tried to modify the quotes of different
ways but none worked for me. I had different errors, in such a case he said
no saldo_actual column was, or at least recognized the table already.
Also in my macro had cliente.saldo_saldo_actual, but I already corrected
the error continues.
Regards,
Yessica

2013/2/1 Fernand Vanrie <so...@pmgroup.be>

> On 1/02/2013 0:01, 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
>> [UPDATE cliente]
>>
> there is no table "cliente" in the database were you are connected to in
> your case
>
> ThisDatabaseDocument
>
>  Then I write my macro as it is now:
>> 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
>> 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
>>     oCon=ThisDatabaseDocument.**CurrentController.**ActiveConnection
>>             oStat=oCon.CreateStatement
>>     sSQL="UPDATE cliente SET cliente.saldo_actual =
>> cliente.saldo_saldo_actual + "& oTotal.getCurrentValue()& " WHERE
>> cliente.id_cliente=" & CInt(sCliente)
>>     oRes=oStat.ExecuteQuery(sSQL)
>> End Sub
>> Regards,
>> Yessica
>>
>> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>>
>>  On 31/01/2013 13:33, Yessica Brinkmann wrote:
>>>
>>>  Hello,
>>>>
>>>> Thank you very much for your answer. Sorry but I do not understand the
>>>> truth indicated.
>>>> What I want to do in my macro, as you can see in my first mail is an SQL
>>>> UPDATE.
>>>>
>>>>  ok
>>>
>>> you have a form, you fill this for with data comming from a "select"
>>> statement ,
>>>
>>> the user change some data in the form
>>>
>>> then you do a "update" using  THE (id) comming from the first "select"
>>> who
>>> is still available in the Resultset
>>>
>>> for GETTING the id you do
>>>
>>>   oRes.getstring(oRes.****findcolumn("customer_id"))
>>>
>>> for the changed data:
>>>
>>> Total= oFrm.getByName("fmttotal").****VALUE
>>>
>>>
>>>   I can not find the client code for the name either, if that's what you
>>>
>>>> suggest because this name is not necessarily unique, only the customer
>>>> id
>>>> is unique.
>>>> regards,
>>>> Yessica
>>>>
>>>> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>>>>
>>>>   Yessica,
>>>>
>>>>>    Hello,
>>>>>
>>>>>  Yes, my controls now have the same name as the one I use to call the
>>>>>> macro.
>>>>>> Initially that was my mistake but I spent those mistakes. Now my
>>>>>> problem
>>>>>> is
>>>>>> that I describe in my previous mail, on the subject of the combo box
>>>>>> and
>>>>>> customer_id and name.
>>>>>> There is a key value associated with my combo box.
>>>>>> On the Data tab of the Properties List, Contents List, I have the
>>>>>> following
>>>>>> SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>>>
>>>>>>   ok, your select end up in a Resultset in your code the object oRes
>>>>>>
>>>>> your data are in oRes and you call a value like (supposed there is
>>>>> only 1
>>>>> line in oRes)
>>>>>    oRes.Next (line 1)
>>>>>    oRes.getstring(oRes.******findcolumn("customer_id"))
>>>>>
>>>>>
>>>>>   My problem is that I do not know how to get the customer_id from the
>>>>>
>>>>>> combo
>>>>>> box in the macro to do the update in the customers table, since using
>>>>>> the
>>>>>> function getByName, I get the name of the client.
>>>>>> Regards,
>>>>>> Yessica
>>>>>>
>>>>>> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>>>>>>
>>>>>>    Hello,
>>>>>>
>>>>>>  Thank you very much for your answer!
>>>>>>> There is a key value associated with my combo box.
>>>>>>> On the Data tab of the Properties List, Contents List, I have the
>>>>>>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>>>> My problem is that I do not know how to get the customer_id from the
>>>>>>> combo
>>>>>>> box in the macro to do the update in the customers table, since using
>>>>>>> the
>>>>>>> function getByName, I get the name of the client.
>>>>>>> Regards,
>>>>>>> Yessica
>>>>>>>
>>>>>>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>
>>>>>>>    Hopefully someone more in the know than I will answer, but, it is
>>>>>>> not
>>>>>>>
>>>>>>>  clear to me that I have sufficient information to answer your
>>>>>>>> question.
>>>>>>>>
>>>>>>>> I assume that your combo box is NOT multi-valued (don't even know if
>>>>>>>> that
>>>>>>>> is supported.... I have not looked at these in a very long time).
>>>>>>>>
>>>>>>>> is there something that ties your combo-box to some key value?
>>>>>>>>
>>>>>>>>
>>>>>>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>>>>>>
>>>>>>>>    Hello,
>>>>>>>>
>>>>>>>>  Thank you very much for your answer! Now I understand what you're
>>>>>>>>> saying.
>>>>>>>>> I changed my macro, now looks like this:
>>>>>>>>> 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 sCliente as String
>>>>>>>>> '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
>>>>>>>>> sCliente=oCliente.********getCurrentValue()
>>>>>>>>> oTotal=oFrm.getByName("********fmttotal")
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Print sCliente
>>>>>>>>> End Sub
>>>>>>>>>
>>>>>>>>> They were wrong names form controls.
>>>>>>>>> The problem now is that when I write  Print sCliente, it prints the
>>>>>>>>> name
>>>>>>>>> of
>>>>>>>>> the client (because it is a combo box) and not the id of the
>>>>>>>>> customer,
>>>>>>>>> which is what I need to do my update. How I can do to get the
>>>>>>>>> client
>>>>>>>>> id?
>>>>>>>>> Can search by customer name obtained but this can be repeated, only
>>>>>>>>> the
>>>>>>>>> ID
>>>>>>>>> is unique.
>>>>>>>>> Much appreciate a response.
>>>>>>>>> regards,
>>>>>>>>> Yessica
>>>>>>>>>
>>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>>
>>>>>>>>>     I think that AndrewBase.odt provides a routine that can find a
>>>>>>>>> control
>>>>>>>>>
>>>>>>>>>   from its name.... It is not efficient, but it works.
>>>>>>>>>
>>>>>>>>>> To get things by name, you must know where they live. You have
>>>>>>>>>> named
>>>>>>>>>> forms
>>>>>>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>>>>>>> something like that) to see the heirarchy.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>>>>>>
>>>>>>>>>>     Hello,
>>>>>>>>>>
>>>>>>>>>>   Thank you for the answers!
>>>>>>>>>>
>>>>>>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>>>>>>> indicated
>>>>>>>>>>> prints a message saying: "Can not find cod_cliente". I think this
>>>>>>>>>>> is
>>>>>>>>>>> because it is a field cod_cliente type drop-down list box and i
>>>>>>>>>>> should
>>>>>>>>>>> get
>>>>>>>>>>> the id of the customer through a cut chain or something, but I
>>>>>>>>>>> really
>>>>>>>>>>> do
>>>>>>>>>>> not know how to do this in OO Basic. Can you help a little with
>>>>>>>>>>> this
>>>>>>>>>>> please? I clarify that my formal education rather relied on the C
>>>>>>>>>>> and
>>>>>>>>>>> Java.
>>>>>>>>>>> regards,
>>>>>>>>>>> Yessica
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>>>>
>>>>>>>>>>>      Which line gives the error?
>>>>>>>>>>>
>>>>>>>>>>>    If you change all lines containing "getByName" with something
>>>>>>>>>>> like
>>>>>>>>>>>
>>>>>>>>>>>  If oFrm.hasByName("cod_cliente") Then
>>>>>>>>>>>>        oCliente=oFrm.getByName("cod_************cliente")
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Else
>>>>>>>>>>>>        Print "Cannot find cod_cliente"
>>>>>>>>>>>>        Exit Sub
>>>>>>>>>>>> End If
>>>>>>>>>>>>
>>>>>>>>>>>> What happens?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>      Hello,
>>>>>>>>>>>>
>>>>>>>>>>>>    I have a database of business management. I have a customer
>>>>>>>>>>>> table
>>>>>>>>>>>>
>>>>>>>>>>>>  that
>>>>>>>>>>>>> has
>>>>>>>>>>>>> a field saldo_actual.
>>>>>>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>>>>>>> field,
>>>>>>>>>>>>> and
>>>>>>>>>>>>> a button Calculate Total.
>>>>>>>>>>>>> I want to make a macro that when clicking on the Calculate
>>>>>>>>>>>>> Total
>>>>>>>>>>>>> button
>>>>>>>>>>>>> to
>>>>>>>>>>>>> add the total saldo_actual field.
>>>>>>>>>>>>> I assigned the macro to the button event: Mouse button
>>>>>>>>>>>>> released.
>>>>>>>>>>>>> Then I
>>>>>>>>>>>>> write my macro:
>>>>>>>>>>>>> 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 sCliente as String
>>>>>>>>>>>>> oFrm=Evento.Source.Model.************Parent
>>>>>>>>>>>>> oCliente=oFrm.getByName("cod_************cliente")
>>>>>>>>>>>>> sCliente=oCliente.************getCurrentValue()
>>>>>>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>>>>>>> oCon=ThisDatabaseDocument.************CurrentController.******
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> ActiveConnection
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>>>>>>> oCliente.getCurrentValue()
>>>>>>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>>>>>>> End Sub
>>>>>>>>>>>>> Clicking on the button Calculate total, I get the following
>>>>>>>>>>>>> error:
>>>>>>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>>>>>>> Type: com.sun.star.container.*********
>>>>>>>>>>>>> ***NoSuchElementException
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Message:
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> I would appreciate very much a help please.
>>>>>>>>>>>>> regards,
>>>>>>>>>>>>> Yessica
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>      --
>>>>>>>>>>>>>
>>>>>>>>>>>>>    Andrew Pitonyak
>>>>>>>>>>>>>
>>>>>>>>>>>>>  My Macro Document: http://www.pitonyak.org/**********<http://www.pitonyak.org/********>
>>>>>>>>>>>> **AndrewMacro.odt<http://www.**pitonyak.org/**********
>>>>>>>>>>>> AndrewMacro.odt<http://www.pitonyak.org/********AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/**********AndrewMacro.odt<http://pitonyak.org/********AndrewMacro.odt>
>>>>>>>>>>>> <http://**www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.**odt<http://pitonyak.org/******AndrewMacro.**odt>
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.****odt<http://pitonyak.org/****AndrewMacro.**odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.**odt>
>>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.odt<http://pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> **>
>>>>>>>>>>>>
>>>>>>>>>>>> **>
>>>>>>>>>>>>
>>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> **>
>>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> **>
>>>>>>>>>>>> **>
>>>>>>>>>>>> **>
>>>>>>>>>>>> **>
>>>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.odt<http://pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> **>
>>>>>>>>>>>> **>
>>>>>>>>>>>> <http://**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> **>
>>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>>> >
>>>>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>     --
>>>>>>>>>>>>
>>>>>>>>>>>>   Andrew Pitonyak
>>>>>>>>>>>>
>>>>>>>>>>> My Macro Document: http://www.pitonyak.org/********
>>>>>>>>>> **AndrewMacro.odt<http://www.pitonyak.org/********AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.**odt>
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>> **>
>>>>>>>>>> **>
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>    --
>>>>>>>>>>
>>>>>>>>>>  Andrew Pitonyak
>>>>>>>>>
>>>>>>>> My Macro Document: http://www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>> **>
>>>>>>>> **>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
On 1/02/2013 0:01, 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
> [UPDATE cliente]
there is no table "cliente" in the database were you are connected to in 
your case

ThisDatabaseDocument

> Then I write my macro as it is now:
> 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
> 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
>     oCon=ThisDatabaseDocument.CurrentController.ActiveConnection
>             oStat=oCon.CreateStatement
>     sSQL="UPDATE cliente SET cliente.saldo_actual =
> cliente.saldo_saldo_actual + "& oTotal.getCurrentValue()& " WHERE
> cliente.id_cliente=" & CInt(sCliente)
>     oRes=oStat.ExecuteQuery(sSQL)
> End Sub
> Regards,
> Yessica
>
> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>
>> On 31/01/2013 13:33, Yessica Brinkmann wrote:
>>
>>> Hello,
>>>
>>> Thank you very much for your answer. Sorry but I do not understand the
>>> truth indicated.
>>> What I want to do in my macro, as you can see in my first mail is an SQL
>>> UPDATE.
>>>
>> ok
>>
>> you have a form, you fill this for with data comming from a "select"
>> statement ,
>>
>> the user change some data in the form
>>
>> then you do a "update" using  THE (id) comming from the first "select" who
>> is still available in the Resultset
>>
>> for GETTING the id you do
>>
>>   oRes.getstring(oRes.**findcolumn("customer_id"))
>>
>> for the changed data:
>>
>> Total= oFrm.getByName("fmttotal").**VALUE
>>
>>   I can not find the client code for the name either, if that's what you
>>> suggest because this name is not necessarily unique, only the customer id
>>> is unique.
>>> regards,
>>> Yessica
>>>
>>> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>>>
>>>   Yessica,
>>>>    Hello,
>>>>
>>>>> Yes, my controls now have the same name as the one I use to call the
>>>>> macro.
>>>>> Initially that was my mistake but I spent those mistakes. Now my problem
>>>>> is
>>>>> that I describe in my previous mail, on the subject of the combo box and
>>>>> customer_id and name.
>>>>> There is a key value associated with my combo box.
>>>>> On the Data tab of the Properties List, Contents List, I have the
>>>>> following
>>>>> SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>>
>>>>>   ok, your select end up in a Resultset in your code the object oRes
>>>> your data are in oRes and you call a value like (supposed there is only 1
>>>> line in oRes)
>>>>    oRes.Next (line 1)
>>>>    oRes.getstring(oRes.****findcolumn("customer_id"))
>>>>
>>>>   My problem is that I do not know how to get the customer_id from the
>>>>> combo
>>>>> box in the macro to do the update in the customers table, since using
>>>>> the
>>>>> function getByName, I get the name of the client.
>>>>> Regards,
>>>>> Yessica
>>>>>
>>>>> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>>>>>
>>>>>    Hello,
>>>>>
>>>>>> Thank you very much for your answer!
>>>>>> There is a key value associated with my combo box.
>>>>>> On the Data tab of the Properties List, Contents List, I have the
>>>>>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>>> My problem is that I do not know how to get the customer_id from the
>>>>>> combo
>>>>>> box in the macro to do the update in the customers table, since using
>>>>>> the
>>>>>> function getByName, I get the name of the client.
>>>>>> Regards,
>>>>>> Yessica
>>>>>>
>>>>>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>
>>>>>>    Hopefully someone more in the know than I will answer, but, it is not
>>>>>>
>>>>>>> clear to me that I have sufficient information to answer your
>>>>>>> question.
>>>>>>>
>>>>>>> I assume that your combo box is NOT multi-valued (don't even know if
>>>>>>> that
>>>>>>> is supported.... I have not looked at these in a very long time).
>>>>>>>
>>>>>>> is there something that ties your combo-box to some key value?
>>>>>>>
>>>>>>>
>>>>>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>>>>>
>>>>>>>    Hello,
>>>>>>>
>>>>>>>> Thank you very much for your answer! Now I understand what you're
>>>>>>>> saying.
>>>>>>>> I changed my macro, now looks like this:
>>>>>>>> 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 sCliente as String
>>>>>>>> '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
>>>>>>>> sCliente=oCliente.******getCurrentValue()
>>>>>>>> oTotal=oFrm.getByName("******fmttotal")
>>>>>>>>
>>>>>>>>
>>>>>>>> Print sCliente
>>>>>>>> End Sub
>>>>>>>>
>>>>>>>> They were wrong names form controls.
>>>>>>>> The problem now is that when I write  Print sCliente, it prints the
>>>>>>>> name
>>>>>>>> of
>>>>>>>> the client (because it is a combo box) and not the id of the
>>>>>>>> customer,
>>>>>>>> which is what I need to do my update. How I can do to get the client
>>>>>>>> id?
>>>>>>>> Can search by customer name obtained but this can be repeated, only
>>>>>>>> the
>>>>>>>> ID
>>>>>>>> is unique.
>>>>>>>> Much appreciate a response.
>>>>>>>> regards,
>>>>>>>> Yessica
>>>>>>>>
>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>
>>>>>>>>     I think that AndrewBase.odt provides a routine that can find a
>>>>>>>> control
>>>>>>>>
>>>>>>>>   from its name.... It is not efficient, but it works.
>>>>>>>>> To get things by name, you must know where they live. You have named
>>>>>>>>> forms
>>>>>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>>>>>> something like that) to see the heirarchy.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>>>>>
>>>>>>>>>     Hello,
>>>>>>>>>
>>>>>>>>>   Thank you for the answers!
>>>>>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>>>>>> indicated
>>>>>>>>>> prints a message saying: "Can not find cod_cliente". I think this
>>>>>>>>>> is
>>>>>>>>>> because it is a field cod_cliente type drop-down list box and i
>>>>>>>>>> should
>>>>>>>>>> get
>>>>>>>>>> the id of the customer through a cut chain or something, but I
>>>>>>>>>> really
>>>>>>>>>> do
>>>>>>>>>> not know how to do this in OO Basic. Can you help a little with
>>>>>>>>>> this
>>>>>>>>>> please? I clarify that my formal education rather relied on the C
>>>>>>>>>> and
>>>>>>>>>> Java.
>>>>>>>>>> regards,
>>>>>>>>>> Yessica
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>>>
>>>>>>>>>>      Which line gives the error?
>>>>>>>>>>
>>>>>>>>>>    If you change all lines containing "getByName" with something
>>>>>>>>>> like
>>>>>>>>>>
>>>>>>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>>>>>>        oCliente=oFrm.getByName("cod_**********cliente")
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Else
>>>>>>>>>>>        Print "Cannot find cod_cliente"
>>>>>>>>>>>        Exit Sub
>>>>>>>>>>> End If
>>>>>>>>>>>
>>>>>>>>>>> What happens?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>>>>>
>>>>>>>>>>>      Hello,
>>>>>>>>>>>
>>>>>>>>>>>    I have a database of business management. I have a customer
>>>>>>>>>>> table
>>>>>>>>>>>
>>>>>>>>>>>> that
>>>>>>>>>>>> has
>>>>>>>>>>>> a field saldo_actual.
>>>>>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>>>>>> field,
>>>>>>>>>>>> and
>>>>>>>>>>>> a button Calculate Total.
>>>>>>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>>>>>>> button
>>>>>>>>>>>> to
>>>>>>>>>>>> add the total saldo_actual field.
>>>>>>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>>>>>>> Then I
>>>>>>>>>>>> write my macro:
>>>>>>>>>>>> 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 sCliente as String
>>>>>>>>>>>> oFrm=Evento.Source.Model.**********Parent
>>>>>>>>>>>> oCliente=oFrm.getByName("cod_**********cliente")
>>>>>>>>>>>> sCliente=oCliente.**********getCurrentValue()
>>>>>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>>>>>> oCon=ThisDatabaseDocument.**********CurrentController.******
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ActiveConnection
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>>>>>> oCliente.getCurrentValue()
>>>>>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>>>>>> End Sub
>>>>>>>>>>>> Clicking on the button Calculate total, I get the following
>>>>>>>>>>>> error:
>>>>>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>>>>>> Type: com.sun.star.container.**********NoSuchElementException
>>>>>>>>>>>>
>>>>>>>>>>>> Message:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> I would appreciate very much a help please.
>>>>>>>>>>>> regards,
>>>>>>>>>>>> Yessica
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>      --
>>>>>>>>>>>>
>>>>>>>>>>>>    Andrew Pitonyak
>>>>>>>>>>>>
>>>>>>>>>>> My Macro Document: http://www.pitonyak.org/********
>>>>>>>>>>> **AndrewMacro.odt<http://www.pitonyak.org/********AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.**odt>
>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>> **>
>>>>>>>>>>>
>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>> **>
>>>>>>>>>>> **>
>>>>>>>>>>> **>
>>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>> **>
>>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>     --
>>>>>>>>>>>
>>>>>>>>>>>   Andrew Pitonyak
>>>>>>>>> My Macro Document: http://www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> **>
>>>>>>>>> **>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>    --
>>>>>>>>>
>>>>>>>> Andrew Pitonyak
>>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>> **>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
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
[UPDATE cliente]
Then I write my macro as it is now:
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
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
   oCon=ThisDatabaseDocument.CurrentController.ActiveConnection
           oStat=oCon.CreateStatement
   sSQL="UPDATE cliente SET cliente.saldo_actual =
cliente.saldo_saldo_actual + "& oTotal.getCurrentValue()& " WHERE
cliente.id_cliente=" & CInt(sCliente)
   oRes=oStat.ExecuteQuery(sSQL)
End Sub
Regards,
Yessica

2013/1/31 Fernand Vanrie <so...@pmgroup.be>

> On 31/01/2013 13:33, Yessica Brinkmann wrote:
>
>> Hello,
>>
>> Thank you very much for your answer. Sorry but I do not understand the
>> truth indicated.
>> What I want to do in my macro, as you can see in my first mail is an SQL
>> UPDATE.
>>
> ok
>
> you have a form, you fill this for with data comming from a "select"
> statement ,
>
> the user change some data in the form
>
> then you do a "update" using  THE (id) comming from the first "select" who
> is still available in the Resultset
>
> for GETTING the id you do
>
>  oRes.getstring(oRes.**findcolumn("customer_id"))
>
> for the changed data:
>
> Total= oFrm.getByName("fmttotal").**VALUE
>
>  I can not find the client code for the name either, if that's what you
>> suggest because this name is not necessarily unique, only the customer id
>> is unique.
>> regards,
>> Yessica
>>
>> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>>
>>  Yessica,
>>>
>>>   Hello,
>>>
>>>> Yes, my controls now have the same name as the one I use to call the
>>>> macro.
>>>> Initially that was my mistake but I spent those mistakes. Now my problem
>>>> is
>>>> that I describe in my previous mail, on the subject of the combo box and
>>>> customer_id and name.
>>>> There is a key value associated with my combo box.
>>>> On the Data tab of the Properties List, Contents List, I have the
>>>> following
>>>> SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>
>>>>  ok, your select end up in a Resultset in your code the object oRes
>>>
>>> your data are in oRes and you call a value like (supposed there is only 1
>>> line in oRes)
>>>   oRes.Next (line 1)
>>>   oRes.getstring(oRes.****findcolumn("customer_id"))
>>>
>>>  My problem is that I do not know how to get the customer_id from the
>>>> combo
>>>> box in the macro to do the update in the customers table, since using
>>>> the
>>>> function getByName, I get the name of the client.
>>>> Regards,
>>>> Yessica
>>>>
>>>> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>>>>
>>>>   Hello,
>>>>
>>>>> Thank you very much for your answer!
>>>>> There is a key value associated with my combo box.
>>>>> On the Data tab of the Properties List, Contents List, I have the
>>>>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>>> My problem is that I do not know how to get the customer_id from the
>>>>> combo
>>>>> box in the macro to do the update in the customers table, since using
>>>>> the
>>>>> function getByName, I get the name of the client.
>>>>> Regards,
>>>>> Yessica
>>>>>
>>>>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>
>>>>>   Hopefully someone more in the know than I will answer, but, it is not
>>>>>
>>>>>> clear to me that I have sufficient information to answer your
>>>>>> question.
>>>>>>
>>>>>> I assume that your combo box is NOT multi-valued (don't even know if
>>>>>> that
>>>>>> is supported.... I have not looked at these in a very long time).
>>>>>>
>>>>>> is there something that ties your combo-box to some key value?
>>>>>>
>>>>>>
>>>>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>>>>
>>>>>>   Hello,
>>>>>>
>>>>>>> Thank you very much for your answer! Now I understand what you're
>>>>>>> saying.
>>>>>>> I changed my macro, now looks like this:
>>>>>>> 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 sCliente as String
>>>>>>> '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
>>>>>>> sCliente=oCliente.******getCurrentValue()
>>>>>>> oTotal=oFrm.getByName("******fmttotal")
>>>>>>>
>>>>>>>
>>>>>>> Print sCliente
>>>>>>> End Sub
>>>>>>>
>>>>>>> They were wrong names form controls.
>>>>>>> The problem now is that when I write  Print sCliente, it prints the
>>>>>>> name
>>>>>>> of
>>>>>>> the client (because it is a combo box) and not the id of the
>>>>>>> customer,
>>>>>>> which is what I need to do my update. How I can do to get the client
>>>>>>> id?
>>>>>>> Can search by customer name obtained but this can be repeated, only
>>>>>>> the
>>>>>>> ID
>>>>>>> is unique.
>>>>>>> Much appreciate a response.
>>>>>>> regards,
>>>>>>> Yessica
>>>>>>>
>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>
>>>>>>>    I think that AndrewBase.odt provides a routine that can find a
>>>>>>> control
>>>>>>>
>>>>>>>  from its name.... It is not efficient, but it works.
>>>>>>>>
>>>>>>>> To get things by name, you must know where they live. You have named
>>>>>>>> forms
>>>>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>>>>> something like that) to see the heirarchy.
>>>>>>>>
>>>>>>>>
>>>>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>>>>
>>>>>>>>    Hello,
>>>>>>>>
>>>>>>>>  Thank you for the answers!
>>>>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>>>>> indicated
>>>>>>>>> prints a message saying: "Can not find cod_cliente". I think this
>>>>>>>>> is
>>>>>>>>> because it is a field cod_cliente type drop-down list box and i
>>>>>>>>> should
>>>>>>>>> get
>>>>>>>>> the id of the customer through a cut chain or something, but I
>>>>>>>>> really
>>>>>>>>> do
>>>>>>>>> not know how to do this in OO Basic. Can you help a little with
>>>>>>>>> this
>>>>>>>>> please? I clarify that my formal education rather relied on the C
>>>>>>>>> and
>>>>>>>>> Java.
>>>>>>>>> regards,
>>>>>>>>> Yessica
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>>
>>>>>>>>>     Which line gives the error?
>>>>>>>>>
>>>>>>>>>   If you change all lines containing "getByName" with something
>>>>>>>>> like
>>>>>>>>>
>>>>>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>>>>>       oCliente=oFrm.getByName("cod_**********cliente")
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Else
>>>>>>>>>>       Print "Cannot find cod_cliente"
>>>>>>>>>>       Exit Sub
>>>>>>>>>> End If
>>>>>>>>>>
>>>>>>>>>> What happens?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>>>>
>>>>>>>>>>     Hello,
>>>>>>>>>>
>>>>>>>>>>   I have a database of business management. I have a customer
>>>>>>>>>> table
>>>>>>>>>>
>>>>>>>>>>> that
>>>>>>>>>>> has
>>>>>>>>>>> a field saldo_actual.
>>>>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>>>>> field,
>>>>>>>>>>> and
>>>>>>>>>>> a button Calculate Total.
>>>>>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>>>>>> button
>>>>>>>>>>> to
>>>>>>>>>>> add the total saldo_actual field.
>>>>>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>>>>>> Then I
>>>>>>>>>>> write my macro:
>>>>>>>>>>> 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 sCliente as String
>>>>>>>>>>> oFrm=Evento.Source.Model.**********Parent
>>>>>>>>>>> oCliente=oFrm.getByName("cod_**********cliente")
>>>>>>>>>>> sCliente=oCliente.**********getCurrentValue()
>>>>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>>>>> oCon=ThisDatabaseDocument.**********CurrentController.******
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ActiveConnection
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>>>>> oCliente.getCurrentValue()
>>>>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>>>>> End Sub
>>>>>>>>>>> Clicking on the button Calculate total, I get the following
>>>>>>>>>>> error:
>>>>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>>>>> Type: com.sun.star.container.**********NoSuchElementException
>>>>>>>>>>>
>>>>>>>>>>> Message:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I would appreciate very much a help please.
>>>>>>>>>>> regards,
>>>>>>>>>>> Yessica
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>     --
>>>>>>>>>>>
>>>>>>>>>>>   Andrew Pitonyak
>>>>>>>>>>>
>>>>>>>>>> My Macro Document: http://www.pitonyak.org/********
>>>>>>>>>> **AndrewMacro.odt<http://www.pitonyak.org/********AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.**odt<http://pitonyak.org/****AndrewMacro.**odt>
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>>
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>> **>
>>>>>>>>>> **>
>>>>>>>>>> <http://www.**pitonyak.org/******AndrewMacro.odt<http://pitonyak.org/****AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> **>
>>>>>>>>>> <http://**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>>
>>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>>> >
>>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>    --
>>>>>>>>>>
>>>>>>>>>>  Andrew Pitonyak
>>>>>>>>>
>>>>>>>> My Macro Document: http://www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>> **>
>>>>>>>> **>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>   --
>>>>>>>>
>>>>>>> Andrew Pitonyak
>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>> **>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>> >
>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
On 31/01/2013 13:33, Yessica Brinkmann wrote:
> Hello,
> Thank you very much for your answer. Sorry but I do not understand the
> truth indicated.
> What I want to do in my macro, as you can see in my first mail is an SQL
> UPDATE.
ok

you have a form, you fill this for with data comming from a "select" 
statement ,

the user change some data in the form

then you do a "update" using  THE (id) comming from the first "select" 
who is still available in the Resultset

for GETTING the id you do

  oRes.getstring(oRes.findcolumn("customer_id"))

for the changed data:

Total= oFrm.getByName("fmttotal").VALUE

> I can not find the client code for the name either, if that's what you
> suggest because this name is not necessarily unique, only the customer id
> is unique.
> regards,
> Yessica
>
> 2013/1/31 Fernand Vanrie <so...@pmgroup.be>
>
>> Yessica,
>>
>>   Hello,
>>> Yes, my controls now have the same name as the one I use to call the
>>> macro.
>>> Initially that was my mistake but I spent those mistakes. Now my problem
>>> is
>>> that I describe in my previous mail, on the subject of the combo box and
>>> customer_id and name.
>>> There is a key value associated with my combo box.
>>> On the Data tab of the Properties List, Contents List, I have the
>>> following
>>> SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>
>> ok, your select end up in a Resultset in your code the object oRes
>>
>> your data are in oRes and you call a value like (supposed there is only 1
>> line in oRes)
>>   oRes.Next (line 1)
>>   oRes.getstring(oRes.**findcolumn("customer_id"))
>>
>>> My problem is that I do not know how to get the customer_id from the combo
>>> box in the macro to do the update in the customers table, since using the
>>> function getByName, I get the name of the client.
>>> Regards,
>>> Yessica
>>>
>>> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>>>
>>>   Hello,
>>>> Thank you very much for your answer!
>>>> There is a key value associated with my combo box.
>>>> On the Data tab of the Properties List, Contents List, I have the
>>>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>>>> My problem is that I do not know how to get the customer_id from the
>>>> combo
>>>> box in the macro to do the update in the customers table, since using the
>>>> function getByName, I get the name of the client.
>>>> Regards,
>>>> Yessica
>>>>
>>>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>
>>>>   Hopefully someone more in the know than I will answer, but, it is not
>>>>> clear to me that I have sufficient information to answer your question.
>>>>>
>>>>> I assume that your combo box is NOT multi-valued (don't even know if
>>>>> that
>>>>> is supported.... I have not looked at these in a very long time).
>>>>>
>>>>> is there something that ties your combo-box to some key value?
>>>>>
>>>>>
>>>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>>>
>>>>>   Hello,
>>>>>> Thank you very much for your answer! Now I understand what you're
>>>>>> saying.
>>>>>> I changed my macro, now looks like this:
>>>>>> 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 sCliente as String
>>>>>> '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
>>>>>> sCliente=oCliente.****getCurrentValue()
>>>>>> oTotal=oFrm.getByName("****fmttotal")
>>>>>>
>>>>>> Print sCliente
>>>>>> End Sub
>>>>>>
>>>>>> They were wrong names form controls.
>>>>>> The problem now is that when I write  Print sCliente, it prints the
>>>>>> name
>>>>>> of
>>>>>> the client (because it is a combo box) and not the id of the customer,
>>>>>> which is what I need to do my update. How I can do to get the client
>>>>>> id?
>>>>>> Can search by customer name obtained but this can be repeated, only the
>>>>>> ID
>>>>>> is unique.
>>>>>> Much appreciate a response.
>>>>>> regards,
>>>>>> Yessica
>>>>>>
>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>
>>>>>>    I think that AndrewBase.odt provides a routine that can find a
>>>>>> control
>>>>>>
>>>>>>> from its name.... It is not efficient, but it works.
>>>>>>>
>>>>>>> To get things by name, you must know where they live. You have named
>>>>>>> forms
>>>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>>>> something like that) to see the heirarchy.
>>>>>>>
>>>>>>>
>>>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>>>
>>>>>>>    Hello,
>>>>>>>
>>>>>>>> Thank you for the answers!
>>>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>>>> indicated
>>>>>>>> prints a message saying: "Can not find cod_cliente". I think this is
>>>>>>>> because it is a field cod_cliente type drop-down list box and i
>>>>>>>> should
>>>>>>>> get
>>>>>>>> the id of the customer through a cut chain or something, but I really
>>>>>>>> do
>>>>>>>> not know how to do this in OO Basic. Can you help a little with this
>>>>>>>> please? I clarify that my formal education rather relied on the C and
>>>>>>>> Java.
>>>>>>>> regards,
>>>>>>>> Yessica
>>>>>>>>
>>>>>>>>
>>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>>
>>>>>>>>     Which line gives the error?
>>>>>>>>
>>>>>>>>   If you change all lines containing "getByName" with something like
>>>>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>>>>       oCliente=oFrm.getByName("cod_********cliente")
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Else
>>>>>>>>>       Print "Cannot find cod_cliente"
>>>>>>>>>       Exit Sub
>>>>>>>>> End If
>>>>>>>>>
>>>>>>>>> What happens?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>>>
>>>>>>>>>     Hello,
>>>>>>>>>
>>>>>>>>>   I have a database of business management. I have a customer table
>>>>>>>>>> that
>>>>>>>>>> has
>>>>>>>>>> a field saldo_actual.
>>>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>>>> field,
>>>>>>>>>> and
>>>>>>>>>> a button Calculate Total.
>>>>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>>>>> button
>>>>>>>>>> to
>>>>>>>>>> add the total saldo_actual field.
>>>>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>>>>> Then I
>>>>>>>>>> write my macro:
>>>>>>>>>> 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 sCliente as String
>>>>>>>>>> oFrm=Evento.Source.Model.********Parent
>>>>>>>>>> oCliente=oFrm.getByName("cod_********cliente")
>>>>>>>>>> sCliente=oCliente.********getCurrentValue()
>>>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>>>> oCon=ThisDatabaseDocument.********CurrentController.******
>>>>>>>>>>
>>>>>>>>>> ActiveConnection
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>>>> oCliente.getCurrentValue()
>>>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>>>> End Sub
>>>>>>>>>> Clicking on the button Calculate total, I get the following error:
>>>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>>>> Type: com.sun.star.container.********NoSuchElementException
>>>>>>>>>> Message:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I would appreciate very much a help please.
>>>>>>>>>> regards,
>>>>>>>>>> Yessica
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>     --
>>>>>>>>>>
>>>>>>>>>>   Andrew Pitonyak
>>>>>>>>> My Macro Document: http://www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> **>
>>>>>>>>> **>
>>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>    --
>>>>>>>>>
>>>>>>>> Andrew Pitonyak
>>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>> **>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>   --
>>>>> Andrew Pitonyak
>>>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>
>>>>>
>>>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you very much for your answer. Sorry but I do not understand the
truth indicated.
What I want to do in my macro, as you can see in my first mail is an SQL
UPDATE.
I can not find the client code for the name either, if that's what you
suggest because this name is not necessarily unique, only the customer id
is unique.
regards,
Yessica

2013/1/31 Fernand Vanrie <so...@pmgroup.be>

> Yessica,
>
>  Hello,
>> Yes, my controls now have the same name as the one I use to call the
>> macro.
>> Initially that was my mistake but I spent those mistakes. Now my problem
>> is
>> that I describe in my previous mail, on the subject of the combo box and
>> customer_id and name.
>> There is a key value associated with my combo box.
>> On the Data tab of the Properties List, Contents List, I have the
>> following
>> SQL statement: SELECT "name", "customer_id" FROM "customer"
>>
> ok, your select end up in a Resultset in your code the object oRes
>
> your data are in oRes and you call a value like (supposed there is only 1
> line in oRes)
>  oRes.Next (line 1)
>  oRes.getstring(oRes.**findcolumn("customer_id"))
>
>> My problem is that I do not know how to get the customer_id from the combo
>> box in the macro to do the update in the customers table, since using the
>> function getByName, I get the name of the client.
>> Regards,
>> Yessica
>>
>> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>>
>>  Hello,
>>> Thank you very much for your answer!
>>> There is a key value associated with my combo box.
>>> On the Data tab of the Properties List, Contents List, I have the
>>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>>> My problem is that I do not know how to get the customer_id from the
>>> combo
>>> box in the macro to do the update in the customers table, since using the
>>> function getByName, I get the name of the client.
>>> Regards,
>>> Yessica
>>>
>>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>
>>>  Hopefully someone more in the know than I will answer, but, it is not
>>>> clear to me that I have sufficient information to answer your question.
>>>>
>>>> I assume that your combo box is NOT multi-valued (don't even know if
>>>> that
>>>> is supported.... I have not looked at these in a very long time).
>>>>
>>>> is there something that ties your combo-box to some key value?
>>>>
>>>>
>>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>>
>>>>  Hello,
>>>>> Thank you very much for your answer! Now I understand what you're
>>>>> saying.
>>>>> I changed my macro, now looks like this:
>>>>> 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 sCliente as String
>>>>> '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
>>>>> sCliente=oCliente.****getCurrentValue()
>>>>> oTotal=oFrm.getByName("****fmttotal")
>>>>>
>>>>> Print sCliente
>>>>> End Sub
>>>>>
>>>>> They were wrong names form controls.
>>>>> The problem now is that when I write  Print sCliente, it prints the
>>>>> name
>>>>> of
>>>>> the client (because it is a combo box) and not the id of the customer,
>>>>> which is what I need to do my update. How I can do to get the client
>>>>> id?
>>>>> Can search by customer name obtained but this can be repeated, only the
>>>>> ID
>>>>> is unique.
>>>>> Much appreciate a response.
>>>>> regards,
>>>>> Yessica
>>>>>
>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>
>>>>>   I think that AndrewBase.odt provides a routine that can find a
>>>>> control
>>>>>
>>>>>> from its name.... It is not efficient, but it works.
>>>>>>
>>>>>> To get things by name, you must know where they live. You have named
>>>>>> forms
>>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>>> something like that) to see the heirarchy.
>>>>>>
>>>>>>
>>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>>
>>>>>>   Hello,
>>>>>>
>>>>>>> Thank you for the answers!
>>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>>> indicated
>>>>>>> prints a message saying: "Can not find cod_cliente". I think this is
>>>>>>> because it is a field cod_cliente type drop-down list box and i
>>>>>>> should
>>>>>>> get
>>>>>>> the id of the customer through a cut chain or something, but I really
>>>>>>> do
>>>>>>> not know how to do this in OO Basic. Can you help a little with this
>>>>>>> please? I clarify that my formal education rather relied on the C and
>>>>>>> Java.
>>>>>>> regards,
>>>>>>> Yessica
>>>>>>>
>>>>>>>
>>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>>
>>>>>>>    Which line gives the error?
>>>>>>>
>>>>>>>  If you change all lines containing "getByName" with something like
>>>>>>>>
>>>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>>>      oCliente=oFrm.getByName("cod_********cliente")
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Else
>>>>>>>>      Print "Cannot find cod_cliente"
>>>>>>>>      Exit Sub
>>>>>>>> End If
>>>>>>>>
>>>>>>>> What happens?
>>>>>>>>
>>>>>>>>
>>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>>
>>>>>>>>    Hello,
>>>>>>>>
>>>>>>>>  I have a database of business management. I have a customer table
>>>>>>>>> that
>>>>>>>>> has
>>>>>>>>> a field saldo_actual.
>>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>>> field,
>>>>>>>>> and
>>>>>>>>> a button Calculate Total.
>>>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>>>> button
>>>>>>>>> to
>>>>>>>>> add the total saldo_actual field.
>>>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>>>> Then I
>>>>>>>>> write my macro:
>>>>>>>>> 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 sCliente as String
>>>>>>>>> oFrm=Evento.Source.Model.********Parent
>>>>>>>>> oCliente=oFrm.getByName("cod_********cliente")
>>>>>>>>> sCliente=oCliente.********getCurrentValue()
>>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>>> oCon=ThisDatabaseDocument.********CurrentController.******
>>>>>>>>>
>>>>>>>>> ActiveConnection
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>>> oCliente.getCurrentValue()
>>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>>> End Sub
>>>>>>>>> Clicking on the button Calculate total, I get the following error:
>>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>>> Type: com.sun.star.container.********NoSuchElementException
>>>>>>>>> Message:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I would appreciate very much a help please.
>>>>>>>>> regards,
>>>>>>>>> Yessica
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>    --
>>>>>>>>>
>>>>>>>>>  Andrew Pitonyak
>>>>>>>> My Macro Document: http://www.pitonyak.org/********AndrewMacro.odt<http://www.pitonyak.org/******AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.**odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>>> **>
>>>>>>>> **>
>>>>>>>> <http://www.**pitonyak.org/****AndrewMacro.odt<http://pitonyak.org/**AndrewMacro.odt>
>>>>>>>> <http://**pitonyak.org/AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>>
>>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>>> >
>>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>   --
>>>>>>>>
>>>>>>> Andrew Pitonyak
>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>> **>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>> >
>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>
>>>>>>
>>>>>>
>>>>>>  --
>>>> Andrew Pitonyak
>>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>> >
>>>> Info:  http://www.pitonyak.org/oo.php
>>>>
>>>>
>>>>
>

Re: Error in macro.

Posted by Fernand Vanrie <so...@pmgroup.be>.
Yessica,
> Hello,
> Yes, my controls now have the same name as the one I use to call the macro.
> Initially that was my mistake but I spent those mistakes. Now my problem is
> that I describe in my previous mail, on the subject of the combo box and
> customer_id and name.
> There is a key value associated with my combo box.
> On the Data tab of the Properties List, Contents List, I have the following
> SQL statement: SELECT "name", "customer_id" FROM "customer"
ok, your select end up in a Resultset in your code the object oRes

your data are in oRes and you call a value like (supposed there is only 
1 line in oRes)
  oRes.Next (line 1)
  oRes.getstring(oRes.findcolumn("customer_id"))
> My problem is that I do not know how to get the customer_id from the combo
> box in the macro to do the update in the customers table, since using the
> function getByName, I get the name of the client.
> Regards,
> Yessica
>
> 2013/1/31 Yessica Brinkmann <ye...@gmail.com>
>
>> Hello,
>> Thank you very much for your answer!
>> There is a key value associated with my combo box.
>> On the Data tab of the Properties List, Contents List, I have the
>> following SQL statement: SELECT "name", "customer_id" FROM "customer"
>> My problem is that I do not know how to get the customer_id from the combo
>> box in the macro to do the update in the customers table, since using the
>> function getByName, I get the name of the client.
>> Regards,
>> Yessica
>>
>> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>
>>> Hopefully someone more in the know than I will answer, but, it is not
>>> clear to me that I have sufficient information to answer your question.
>>>
>>> I assume that your combo box is NOT multi-valued (don't even know if that
>>> is supported.... I have not looked at these in a very long time).
>>>
>>> is there something that ties your combo-box to some key value?
>>>
>>>
>>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>>
>>>> Hello,
>>>> Thank you very much for your answer! Now I understand what you're saying.
>>>> I changed my macro, now looks like this:
>>>> 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 sCliente as String
>>>> '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
>>>> sCliente=oCliente.**getCurrentValue()
>>>> oTotal=oFrm.getByName("**fmttotal")
>>>> Print sCliente
>>>> End Sub
>>>>
>>>> They were wrong names form controls.
>>>> The problem now is that when I write  Print sCliente, it prints the name
>>>> of
>>>> the client (because it is a combo box) and not the id of the customer,
>>>> which is what I need to do my update. How I can do to get the client id?
>>>> Can search by customer name obtained but this can be repeated, only the
>>>> ID
>>>> is unique.
>>>> Much appreciate a response.
>>>> regards,
>>>> Yessica
>>>>
>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>
>>>>   I think that AndrewBase.odt provides a routine that can find a control
>>>>> from its name.... It is not efficient, but it works.
>>>>>
>>>>> To get things by name, you must know where they live. You have named
>>>>> forms
>>>>> and controls, so, I think that you can use the Forms navigator (or
>>>>> something like that) to see the heirarchy.
>>>>>
>>>>>
>>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>>
>>>>>   Hello,
>>>>>> Thank you for the answers!
>>>>>> When I replaced the lines containing "getByName" for something as
>>>>>> indicated
>>>>>> prints a message saying: "Can not find cod_cliente". I think this is
>>>>>> because it is a field cod_cliente type drop-down list box and i should
>>>>>> get
>>>>>> the id of the customer through a cut chain or something, but I really
>>>>>> do
>>>>>> not know how to do this in OO Basic. Can you help a little with this
>>>>>> please? I clarify that my formal education rather relied on the C and
>>>>>> Java.
>>>>>> regards,
>>>>>> Yessica
>>>>>>
>>>>>>
>>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>>
>>>>>>    Which line gives the error?
>>>>>>
>>>>>>> If you change all lines containing "getByName" with something like
>>>>>>>
>>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>>      oCliente=oFrm.getByName("cod_******cliente")
>>>>>>>
>>>>>>>
>>>>>>> Else
>>>>>>>      Print "Cannot find cod_cliente"
>>>>>>>      Exit Sub
>>>>>>> End If
>>>>>>>
>>>>>>> What happens?
>>>>>>>
>>>>>>>
>>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>>
>>>>>>>    Hello,
>>>>>>>
>>>>>>>> I have a database of business management. I have a customer table
>>>>>>>> that
>>>>>>>> has
>>>>>>>> a field saldo_actual.
>>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>>> field,
>>>>>>>> and
>>>>>>>> a button Calculate Total.
>>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>>> button
>>>>>>>> to
>>>>>>>> add the total saldo_actual field.
>>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>>> Then I
>>>>>>>> write my macro:
>>>>>>>> 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 sCliente as String
>>>>>>>> oFrm=Evento.Source.Model.******Parent
>>>>>>>> oCliente=oFrm.getByName("cod_******cliente")
>>>>>>>> sCliente=oCliente.******getCurrentValue()
>>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>>> oCon=ThisDatabaseDocument.******CurrentController.******
>>>>>>>> ActiveConnection
>>>>>>>>
>>>>>>>>
>>>>>>>> oStat=oCon.CreateStatement
>>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>>> cliente.saldo_saldo_actual
>>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>>> oCliente.getCurrentValue()
>>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>>> End Sub
>>>>>>>> Clicking on the button Calculate total, I get the following error:
>>>>>>>> BASIC runtime error. There was an exception.
>>>>>>>> Type: com.sun.star.container.******NoSuchElementException Message:
>>>>>>>>
>>>>>>>>
>>>>>>>> I would appreciate very much a help please.
>>>>>>>> regards,
>>>>>>>> Yessica
>>>>>>>>
>>>>>>>>
>>>>>>>>    --
>>>>>>>>
>>>>>>> Andrew Pitonyak
>>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>>> **>
>>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>   --
>>>>> Andrew Pitonyak
>>>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>
>>>>>
>>>>>
>>> --
>>> Andrew Pitonyak
>>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>> Info:  http://www.pitonyak.org/oo.php
>>>
>>>


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Yes, my controls now have the same name as the one I use to call the macro.
Initially that was my mistake but I spent those mistakes. Now my problem is
that I describe in my previous mail, on the subject of the combo box and
customer_id and name.
There is a key value associated with my combo box.
On the Data tab of the Properties List, Contents List, I have the following
SQL statement: SELECT "name", "customer_id" FROM "customer"
My problem is that I do not know how to get the customer_id from the combo
box in the macro to do the update in the customers table, since using the
function getByName, I get the name of the client.
Regards,
Yessica

2013/1/31 Yessica Brinkmann <ye...@gmail.com>

> Hello,
> Thank you very much for your answer!
> There is a key value associated with my combo box.
> On the Data tab of the Properties List, Contents List, I have the
> following SQL statement: SELECT "name", "customer_id" FROM "customer"
> My problem is that I do not know how to get the customer_id from the combo
> box in the macro to do the update in the customers table, since using the
> function getByName, I get the name of the client.
> Regards,
> Yessica
>
> 2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>
>
>>
>> Hopefully someone more in the know than I will answer, but, it is not
>> clear to me that I have sufficient information to answer your question.
>>
>> I assume that your combo box is NOT multi-valued (don't even know if that
>> is supported.... I have not looked at these in a very long time).
>>
>> is there something that ties your combo-box to some key value?
>>
>>
>> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>>
>>> Hello,
>>> Thank you very much for your answer! Now I understand what you're saying.
>>> I changed my macro, now looks like this:
>>> 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 sCliente as String
>>> '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
>>> sCliente=oCliente.**getCurrentValue()
>>> oTotal=oFrm.getByName("**fmttotal")
>>> Print sCliente
>>> End Sub
>>>
>>> They were wrong names form controls.
>>> The problem now is that when I write  Print sCliente, it prints the name
>>> of
>>> the client (because it is a combo box) and not the id of the customer,
>>> which is what I need to do my update. How I can do to get the client id?
>>> Can search by customer name obtained but this can be repeated, only the
>>> ID
>>> is unique.
>>> Much appreciate a response.
>>> regards,
>>> Yessica
>>>
>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>
>>>  I think that AndrewBase.odt provides a routine that can find a control
>>>> from its name.... It is not efficient, but it works.
>>>>
>>>> To get things by name, you must know where they live. You have named
>>>> forms
>>>> and controls, so, I think that you can use the Forms navigator (or
>>>> something like that) to see the heirarchy.
>>>>
>>>>
>>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>>
>>>>  Hello,
>>>>>
>>>>> Thank you for the answers!
>>>>> When I replaced the lines containing "getByName" for something as
>>>>> indicated
>>>>> prints a message saying: "Can not find cod_cliente". I think this is
>>>>> because it is a field cod_cliente type drop-down list box and i should
>>>>> get
>>>>> the id of the customer through a cut chain or something, but I really
>>>>> do
>>>>> not know how to do this in OO Basic. Can you help a little with this
>>>>> please? I clarify that my formal education rather relied on the C and
>>>>> Java.
>>>>> regards,
>>>>> Yessica
>>>>>
>>>>>
>>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>>
>>>>>   Which line gives the error?
>>>>>
>>>>>> If you change all lines containing "getByName" with something like
>>>>>>
>>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>>     oCliente=oFrm.getByName("cod_******cliente")
>>>>>>
>>>>>>
>>>>>> Else
>>>>>>     Print "Cannot find cod_cliente"
>>>>>>     Exit Sub
>>>>>> End If
>>>>>>
>>>>>> What happens?
>>>>>>
>>>>>>
>>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>>
>>>>>>   Hello,
>>>>>>
>>>>>>> I have a database of business management. I have a customer table
>>>>>>> that
>>>>>>> has
>>>>>>> a field saldo_actual.
>>>>>>> On the other hand, I have a sales form, in which I have a total
>>>>>>> field,
>>>>>>> and
>>>>>>> a button Calculate Total.
>>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>>> button
>>>>>>> to
>>>>>>> add the total saldo_actual field.
>>>>>>> I assigned the macro to the button event: Mouse button released.
>>>>>>> Then I
>>>>>>> write my macro:
>>>>>>> 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 sCliente as String
>>>>>>> oFrm=Evento.Source.Model.******Parent
>>>>>>> oCliente=oFrm.getByName("cod_******cliente")
>>>>>>> sCliente=oCliente.******getCurrentValue()
>>>>>>> oTotal=oFrm.getByName("total")
>>>>>>> oCon=ThisDatabaseDocument.******CurrentController.******
>>>>>>> ActiveConnection
>>>>>>>
>>>>>>>
>>>>>>> oStat=oCon.CreateStatement
>>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>>> cliente.saldo_saldo_actual
>>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>>> oCliente.getCurrentValue()
>>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>>> End Sub
>>>>>>> Clicking on the button Calculate total, I get the following error:
>>>>>>> BASIC runtime error. There was an exception.
>>>>>>> Type: com.sun.star.container.******NoSuchElementException Message:
>>>>>>>
>>>>>>>
>>>>>>> I would appreciate very much a help please.
>>>>>>> regards,
>>>>>>> Yessica
>>>>>>>
>>>>>>>
>>>>>>>   --
>>>>>>>
>>>>>> Andrew Pitonyak
>>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>>> **>
>>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>>> >
>>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>>
>>>>>>
>>>>>>
>>>>>>  --
>>>> Andrew Pitonyak
>>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>> >
>>>> Info:  http://www.pitonyak.org/oo.php
>>>>
>>>>
>>>>
>> --
>> Andrew Pitonyak
>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>> Info:  http://www.pitonyak.org/oo.php
>>
>>
>

Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you very much for your answer!
There is a key value associated with my combo box.
On the Data tab of the Properties List, Contents List, I have the following
SQL statement: SELECT "name", "customer_id" FROM "customer"
My problem is that I do not know how to get the customer_id from the combo
box in the macro to do the update in the customers table, since using the
function getByName, I get the name of the client.
Regards,
Yessica

2013/1/31 Andrew Douglas Pitonyak <an...@pitonyak.org>

>
> Hopefully someone more in the know than I will answer, but, it is not
> clear to me that I have sufficient information to answer your question.
>
> I assume that your combo box is NOT multi-valued (don't even know if that
> is supported.... I have not looked at these in a very long time).
>
> is there something that ties your combo-box to some key value?
>
>
> On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
>
>> Hello,
>> Thank you very much for your answer! Now I understand what you're saying.
>> I changed my macro, now looks like this:
>> 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 sCliente as String
>> '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
>> sCliente=oCliente.**getCurrentValue()
>> oTotal=oFrm.getByName("**fmttotal")
>> Print sCliente
>> End Sub
>>
>> They were wrong names form controls.
>> The problem now is that when I write  Print sCliente, it prints the name
>> of
>> the client (because it is a combo box) and not the id of the customer,
>> which is what I need to do my update. How I can do to get the client id?
>> Can search by customer name obtained but this can be repeated, only the ID
>> is unique.
>> Much appreciate a response.
>> regards,
>> Yessica
>>
>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>
>>  I think that AndrewBase.odt provides a routine that can find a control
>>> from its name.... It is not efficient, but it works.
>>>
>>> To get things by name, you must know where they live. You have named
>>> forms
>>> and controls, so, I think that you can use the Forms navigator (or
>>> something like that) to see the heirarchy.
>>>
>>>
>>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>>
>>>  Hello,
>>>>
>>>> Thank you for the answers!
>>>> When I replaced the lines containing "getByName" for something as
>>>> indicated
>>>> prints a message saying: "Can not find cod_cliente". I think this is
>>>> because it is a field cod_cliente type drop-down list box and i should
>>>> get
>>>> the id of the customer through a cut chain or something, but I really do
>>>> not know how to do this in OO Basic. Can you help a little with this
>>>> please? I clarify that my formal education rather relied on the C and
>>>> Java.
>>>> regards,
>>>> Yessica
>>>>
>>>>
>>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>>
>>>>   Which line gives the error?
>>>>
>>>>> If you change all lines containing "getByName" with something like
>>>>>
>>>>> If oFrm.hasByName("cod_cliente") Then
>>>>>     oCliente=oFrm.getByName("cod_******cliente")
>>>>>
>>>>>
>>>>> Else
>>>>>     Print "Cannot find cod_cliente"
>>>>>     Exit Sub
>>>>> End If
>>>>>
>>>>> What happens?
>>>>>
>>>>>
>>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>>
>>>>>   Hello,
>>>>>
>>>>>> I have a database of business management. I have a customer table that
>>>>>> has
>>>>>> a field saldo_actual.
>>>>>> On the other hand, I have a sales form, in which I have a total field,
>>>>>> and
>>>>>> a button Calculate Total.
>>>>>> I want to make a macro that when clicking on the Calculate Total
>>>>>> button
>>>>>> to
>>>>>> add the total saldo_actual field.
>>>>>> I assigned the macro to the button event: Mouse button released. Then
>>>>>> I
>>>>>> write my macro:
>>>>>> 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 sCliente as String
>>>>>> oFrm=Evento.Source.Model.******Parent
>>>>>> oCliente=oFrm.getByName("cod_******cliente")
>>>>>> sCliente=oCliente.******getCurrentValue()
>>>>>> oTotal=oFrm.getByName("total")
>>>>>> oCon=ThisDatabaseDocument.******CurrentController.******
>>>>>> ActiveConnection
>>>>>>
>>>>>>
>>>>>> oStat=oCon.CreateStatement
>>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>>> cliente.saldo_saldo_actual
>>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>>> oCliente.getCurrentValue()
>>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>>> End Sub
>>>>>> Clicking on the button Calculate total, I get the following error:
>>>>>> BASIC runtime error. There was an exception.
>>>>>> Type: com.sun.star.container.******NoSuchElementException Message:
>>>>>>
>>>>>>
>>>>>> I would appreciate very much a help please.
>>>>>> regards,
>>>>>> Yessica
>>>>>>
>>>>>>
>>>>>>   --
>>>>>>
>>>>> Andrew Pitonyak
>>>>> My Macro Document: http://www.pitonyak.org/******AndrewMacro.odt<http://www.pitonyak.org/****AndrewMacro.odt>
>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>>> **>
>>>>> <http://www.**pitonyak.org/**AndrewMacro.odt<http://pitonyak.org/AndrewMacro.odt>
>>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>>> >
>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>>
>>>>>
>>>>>
>>>>>  --
>>> Andrew Pitonyak
>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>> >
>>> Info:  http://www.pitonyak.org/oo.php
>>>
>>>
>>>
> --
> Andrew Pitonyak
> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
> Info:  http://www.pitonyak.org/oo.php
>
>

Re: Error in macro.

Posted by Andrew Douglas Pitonyak <an...@pitonyak.org>.
Hopefully someone more in the know than I will answer, but, it is not 
clear to me that I have sufficient information to answer your question.

I assume that your combo box is NOT multi-valued (don't even know if 
that is supported.... I have not looked at these in a very long time).

is there something that ties your combo-box to some key value?

On 01/30/2013 07:38 PM, Yessica Brinkmann wrote:
> Hello,
> Thank you very much for your answer! Now I understand what you're saying.
> I changed my macro, now looks like this:
> 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 sCliente as String
> '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
> sCliente=oCliente.getCurrentValue()
> oTotal=oFrm.getByName("fmttotal")
> Print sCliente
> End Sub
>
> They were wrong names form controls.
> The problem now is that when I write  Print sCliente, it prints the name of
> the client (because it is a combo box) and not the id of the customer,
> which is what I need to do my update. How I can do to get the client id?
> Can search by customer name obtained but this can be repeated, only the ID
> is unique.
> Much appreciate a response.
> regards,
> Yessica
>
> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>
>> I think that AndrewBase.odt provides a routine that can find a control
>> from its name.... It is not efficient, but it works.
>>
>> To get things by name, you must know where they live. You have named forms
>> and controls, so, I think that you can use the Forms navigator (or
>> something like that) to see the heirarchy.
>>
>>
>> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>>
>>> Hello,
>>>
>>> Thank you for the answers!
>>> When I replaced the lines containing "getByName" for something as
>>> indicated
>>> prints a message saying: "Can not find cod_cliente". I think this is
>>> because it is a field cod_cliente type drop-down list box and i should get
>>> the id of the customer through a cut chain or something, but I really do
>>> not know how to do this in OO Basic. Can you help a little with this
>>> please? I clarify that my formal education rather relied on the C and
>>> Java.
>>> regards,
>>> Yessica
>>>
>>>
>>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>>
>>>   Which line gives the error?
>>>> If you change all lines containing "getByName" with something like
>>>>
>>>> If oFrm.hasByName("cod_cliente") Then
>>>>     oCliente=oFrm.getByName("cod_****cliente")
>>>>
>>>> Else
>>>>     Print "Cannot find cod_cliente"
>>>>     Exit Sub
>>>> End If
>>>>
>>>> What happens?
>>>>
>>>>
>>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>>
>>>>   Hello,
>>>>> I have a database of business management. I have a customer table that
>>>>> has
>>>>> a field saldo_actual.
>>>>> On the other hand, I have a sales form, in which I have a total field,
>>>>> and
>>>>> a button Calculate Total.
>>>>> I want to make a macro that when clicking on the Calculate Total button
>>>>> to
>>>>> add the total saldo_actual field.
>>>>> I assigned the macro to the button event: Mouse button released. Then I
>>>>> write my macro:
>>>>> 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 sCliente as String
>>>>> oFrm=Evento.Source.Model.****Parent
>>>>> oCliente=oFrm.getByName("cod_****cliente")
>>>>> sCliente=oCliente.****getCurrentValue()
>>>>> oTotal=oFrm.getByName("total")
>>>>> oCon=ThisDatabaseDocument.****CurrentController.****ActiveConnection
>>>>>
>>>>> oStat=oCon.CreateStatement
>>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>>> cliente.saldo_saldo_actual
>>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>>> oCliente.getCurrentValue()
>>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>>> End Sub
>>>>> Clicking on the button Calculate total, I get the following error:
>>>>> BASIC runtime error. There was an exception.
>>>>> Type: com.sun.star.container.****NoSuchElementException Message:
>>>>>
>>>>> I would appreciate very much a help please.
>>>>> regards,
>>>>> Yessica
>>>>>
>>>>>
>>>>>   --
>>>> Andrew Pitonyak
>>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>>> Info:  http://www.pitonyak.org/oo.php
>>>>
>>>>
>>>>
>> --
>> Andrew Pitonyak
>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>> Info:  http://www.pitonyak.org/oo.php
>>
>>

-- 
Andrew Pitonyak
My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
Info:  http://www.pitonyak.org/oo.php


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you very much for your answer! Now I understand what you're saying.
I changed my macro, now looks like this:
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 sCliente as String
'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
sCliente=oCliente.getCurrentValue()
oTotal=oFrm.getByName("fmttotal")
Print sCliente
End Sub

They were wrong names form controls.
The problem now is that when I write  Print sCliente, it prints the name of
the client (because it is a combo box) and not the id of the customer,
which is what I need to do my update. How I can do to get the client id?
Can search by customer name obtained but this can be repeated, only the ID
is unique.
Much appreciate a response.
regards,
Yessica

2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>

> I think that AndrewBase.odt provides a routine that can find a control
> from its name.... It is not efficient, but it works.
>
> To get things by name, you must know where they live. You have named forms
> and controls, so, I think that you can use the Forms navigator (or
> something like that) to see the heirarchy.
>
>
> On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
>
>> Hello,
>>
>> Thank you for the answers!
>> When I replaced the lines containing "getByName" for something as
>> indicated
>> prints a message saying: "Can not find cod_cliente". I think this is
>> because it is a field cod_cliente type drop-down list box and i should get
>> the id of the customer through a cut chain or something, but I really do
>> not know how to do this in OO Basic. Can you help a little with this
>> please? I clarify that my formal education rather relied on the C and
>> Java.
>> regards,
>> Yessica
>>
>>
>> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>>
>>  Which line gives the error?
>>>
>>> If you change all lines containing "getByName" with something like
>>>
>>> If oFrm.hasByName("cod_cliente") Then
>>>    oCliente=oFrm.getByName("cod_****cliente")
>>>
>>> Else
>>>    Print "Cannot find cod_cliente"
>>>    Exit Sub
>>> End If
>>>
>>> What happens?
>>>
>>>
>>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>>
>>>  Hello,
>>>> I have a database of business management. I have a customer table that
>>>> has
>>>> a field saldo_actual.
>>>> On the other hand, I have a sales form, in which I have a total field,
>>>> and
>>>> a button Calculate Total.
>>>> I want to make a macro that when clicking on the Calculate Total button
>>>> to
>>>> add the total saldo_actual field.
>>>> I assigned the macro to the button event: Mouse button released. Then I
>>>> write my macro:
>>>> 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 sCliente as String
>>>> oFrm=Evento.Source.Model.****Parent
>>>> oCliente=oFrm.getByName("cod_****cliente")
>>>> sCliente=oCliente.****getCurrentValue()
>>>> oTotal=oFrm.getByName("total")
>>>> oCon=ThisDatabaseDocument.****CurrentController.****ActiveConnection
>>>>
>>>> oStat=oCon.CreateStatement
>>>> sSQL="UPDATE cliente SET cliente.saldo_actual =
>>>> cliente.saldo_saldo_actual
>>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>>> oCliente.getCurrentValue()
>>>> oRes=oStat.ExecuteQuery(sSQL)
>>>> End Sub
>>>> Clicking on the button Calculate total, I get the following error:
>>>> BASIC runtime error. There was an exception.
>>>> Type: com.sun.star.container.****NoSuchElementException Message:
>>>>
>>>> I would appreciate very much a help please.
>>>> regards,
>>>> Yessica
>>>>
>>>>
>>>>  --
>>> Andrew Pitonyak
>>> My Macro Document: http://www.pitonyak.org/****AndrewMacro.odt<http://www.pitonyak.org/**AndrewMacro.odt>
>>> <http://www.**pitonyak.org/AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>>> >
>>> Info:  http://www.pitonyak.org/oo.php
>>>
>>>
>>>
> --
> Andrew Pitonyak
> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
> Info:  http://www.pitonyak.org/oo.php
>
>

Re: Error in macro.

Posted by Andrew Douglas Pitonyak <an...@pitonyak.org>.
I think that AndrewBase.odt provides a routine that can find a control 
from its name.... It is not efficient, but it works.

To get things by name, you must know where they live. You have named 
forms and controls, so, I think that you can use the Forms navigator (or 
something like that) to see the heirarchy.

On 01/30/2013 10:24 AM, Yessica Brinkmann wrote:
> Hello,
> Thank you for the answers!
> When I replaced the lines containing "getByName" for something as indicated
> prints a message saying: "Can not find cod_cliente". I think this is
> because it is a field cod_cliente type drop-down list box and i should get
> the id of the customer through a cut chain or something, but I really do
> not know how to do this in OO Basic. Can you help a little with this
> please? I clarify that my formal education rather relied on the C and Java.
> regards,
> Yessica
>
>
> 2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>
>
>> Which line gives the error?
>>
>> If you change all lines containing "getByName" with something like
>>
>> If oFrm.hasByName("cod_cliente") Then
>>    oCliente=oFrm.getByName("cod_**cliente")
>> Else
>>    Print "Cannot find cod_cliente"
>>    Exit Sub
>> End If
>>
>> What happens?
>>
>>
>> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>>
>>> Hello,
>>> I have a database of business management. I have a customer table that has
>>> a field saldo_actual.
>>> On the other hand, I have a sales form, in which I have a total field, and
>>> a button Calculate Total.
>>> I want to make a macro that when clicking on the Calculate Total button to
>>> add the total saldo_actual field.
>>> I assigned the macro to the button event: Mouse button released. Then I
>>> write my macro:
>>> 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 sCliente as String
>>> oFrm=Evento.Source.Model.**Parent
>>> oCliente=oFrm.getByName("cod_**cliente")
>>> sCliente=oCliente.**getCurrentValue()
>>> oTotal=oFrm.getByName("total")
>>> oCon=ThisDatabaseDocument.**CurrentController.**ActiveConnection
>>> oStat=oCon.CreateStatement
>>> sSQL="UPDATE cliente SET cliente.saldo_actual = cliente.saldo_saldo_actual
>>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>>> oCliente.getCurrentValue()
>>> oRes=oStat.ExecuteQuery(sSQL)
>>> End Sub
>>> Clicking on the button Calculate total, I get the following error:
>>> BASIC runtime error. There was an exception.
>>> Type: com.sun.star.container.**NoSuchElementException Message:
>>> I would appreciate very much a help please.
>>> regards,
>>> Yessica
>>>
>>>
>> --
>> Andrew Pitonyak
>> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
>> Info:  http://www.pitonyak.org/oo.php
>>
>>

-- 
Andrew Pitonyak
My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
Info:  http://www.pitonyak.org/oo.php


Re: Error in macro.

Posted by Yessica Brinkmann <ye...@gmail.com>.
Hello,
Thank you for the answers!
When I replaced the lines containing "getByName" for something as indicated
prints a message saying: "Can not find cod_cliente". I think this is
because it is a field cod_cliente type drop-down list box and i should get
the id of the customer through a cut chain or something, but I really do
not know how to do this in OO Basic. Can you help a little with this
please? I clarify that my formal education rather relied on the C and Java.
regards,
Yessica


2013/1/30 Andrew Douglas Pitonyak <an...@pitonyak.org>

> Which line gives the error?
>
> If you change all lines containing "getByName" with something like
>
> If oFrm.hasByName("cod_cliente") Then
>   oCliente=oFrm.getByName("cod_**cliente")
> Else
>   Print "Cannot find cod_cliente"
>   Exit Sub
> End If
>
> What happens?
>
>
> On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
>
>> Hello,
>> I have a database of business management. I have a customer table that has
>> a field saldo_actual.
>> On the other hand, I have a sales form, in which I have a total field, and
>> a button Calculate Total.
>> I want to make a macro that when clicking on the Calculate Total button to
>> add the total saldo_actual field.
>> I assigned the macro to the button event: Mouse button released. Then I
>> write my macro:
>> 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 sCliente as String
>> oFrm=Evento.Source.Model.**Parent
>> oCliente=oFrm.getByName("cod_**cliente")
>> sCliente=oCliente.**getCurrentValue()
>> oTotal=oFrm.getByName("total")
>> oCon=ThisDatabaseDocument.**CurrentController.**ActiveConnection
>> oStat=oCon.CreateStatement
>> sSQL="UPDATE cliente SET cliente.saldo_actual = cliente.saldo_saldo_actual
>> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
>> oCliente.getCurrentValue()
>> oRes=oStat.ExecuteQuery(sSQL)
>> End Sub
>> Clicking on the button Calculate total, I get the following error:
>> BASIC runtime error. There was an exception.
>> Type: com.sun.star.container.**NoSuchElementException Message:
>> I would appreciate very much a help please.
>> regards,
>> Yessica
>>
>>
> --
> Andrew Pitonyak
> My Macro Document: http://www.pitonyak.org/**AndrewMacro.odt<http://www.pitonyak.org/AndrewMacro.odt>
> Info:  http://www.pitonyak.org/oo.php
>
>

Re: Error in macro.

Posted by Andrew Douglas Pitonyak <an...@pitonyak.org>.
Which line gives the error?

If you change all lines containing "getByName" with something like

If oFrm.hasByName("cod_cliente") Then
   oCliente=oFrm.getByName("cod_cliente")
Else
   Print "Cannot find cod_cliente"
   Exit Sub
End If

What happens?

On 01/30/2013 04:56 AM, Yessica Brinkmann wrote:
> Hello,
> I have a database of business management. I have a customer table that has
> a field saldo_actual.
> On the other hand, I have a sales form, in which I have a total field, and
> a button Calculate Total.
> I want to make a macro that when clicking on the Calculate Total button to
> add the total saldo_actual field.
> I assigned the macro to the button event: Mouse button released. Then I
> write my macro:
> 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 sCliente as String
> oFrm=Evento.Source.Model.Parent
> oCliente=oFrm.getByName("cod_cliente")
> sCliente=oCliente.getCurrentValue()
> oTotal=oFrm.getByName("total")
> oCon=ThisDatabaseDocument.CurrentController.ActiveConnection
> oStat=oCon.CreateStatement
> sSQL="UPDATE cliente SET cliente.saldo_actual = cliente.saldo_saldo_actual
> + "& oTotal.getCurrentValue()& " WHERE id_cliente=" &
> oCliente.getCurrentValue()
> oRes=oStat.ExecuteQuery(sSQL)
> End Sub
> Clicking on the button Calculate total, I get the following error:
> BASIC runtime error. There was an exception.
> Type: com.sun.star.container.NoSuchElementException Message:
> I would appreciate very much a help please.
> regards,
> Yessica
>

-- 
Andrew Pitonyak
My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
Info:  http://www.pitonyak.org/oo.php