I guess you are going to say RTFM... well, I forgot to say I wanted to, but
couldn't find those classes at api.openoffice.org... and these days I
haven't been able to download the SDK.

If anybody has a link for the oo3.0 sdk I would really appreciate it  and if
someone could give me a link to the relevant part of the api I would
appreciate it too.

Thank you all, again.

Ely

2008/10/14 Ely Schoenfeld <[EMAIL PROTECTED]>

> Hi.
>
> It's me again.
>
> I've found the following at:
> http://www.oooforum.org/forum/viewtopic.phtml?t=24192&highlight=external+links
>
> ----- begin ----
> Sub refreshAllSheetLinks()
> oEnum = thisComponent.AreaLinks.createEnumeration
> while oEnum.hasMoreElements
>    oLink = oEnum.NextElement
>    oLink.refresh
> wend
> oEnum = thisComponent.SheetLinks.createEnumeration
> while oEnum.hasMoreElements
>    oLink = oEnum.NextElement
>    oLink.refresh
> wend
> oEnum = thisComponent.DDELinks.createEnumeration
> while oEnum.hasMoreElements
>    oLink = oEnum.NextElement
>    oLink.refresh
> wend
> End Sub
> ----- end ----
>
> With xray I've found that the oLink has also a method called "release" but
> whenever the macro reaches that statement, it says:
>
> "Propiedad o método no encontrado"
>
> In English should be something like:
> "Method or property not found"
>
> Does anybody has any idea of what is happening?
> or
> How could I break those links instead of "refresh" them?
>
> Thank you all in advance.
>
> 2008/10/13 Ely Schoenfeld <[EMAIL PROTECTED]>
>
> My answers appear bellow.
>>
>> 2008/10/12 Andrew Douglas Pitonyak <[EMAIL PROTECTED]>
>>
>> Ely Schoenfeld wrote:
>>>
>>>> First of all, thank you for taking the time to answer.
>>>>
>>>> My answers appear later on.
>>>>
>>>> 2008/10/11 Andrew Douglas Pitonyak <[EMAIL PROTECTED]>
>>>>
>>>>
>>>>
>>>>> Ely Schoenfeld wrote:
>>>>>
>>>>>
>>>>>
>>>>>> Sorry, I forgot to add the question:
>>>>>>
>>>>>> Does some one knows how to delete the links to other documents from a
>>>>>> macro/function/button?
>>>>>>
>>>>>> Ely.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>> Do you mean in a Calc document?
>>>>>
>>>>>
>>>>>
>>>>
>>>> Yes, I'm talking about the whole calc document.
>>>>
>>>>
>>>>
>>>>
>>>>> Do you mean for a specific Sheet?
>>>>>
>>>>>
>>>>
>>>>
>>>> See previous answer.
>>>>
>>>>
>>>>
>>>>
>>>>> If you call getLinkUrl() on the sheet in question, does it return
>>>>> something?
>>>>>
>>>>>
>>>>
>>>>
>>>> Well, the first time it returned the current file url, I mean the file
>>>> where
>>>> the tests where done, instead of the "remote" file.  Then I closed and
>>>> opened again the document and now it's returning just the path to "My
>>>> documents" (very strange)
>>>>
>>>>
>>>>
>>>>
>>>>> Better yet, if you call getLinkMode(), what value is returned?
>>>>>
>>>>>
>>>>>
>>>>
>>>> It returns 0  (com.sun.star.sheet.SheetLinkMode.NONE)
>>>>
>>>>
>>>>
>>>>
>>>>> What happens if you call
>>>>> oSheet.setLinkMode(com.sun.star.sheet.SheetLinkMode.NONE)?
>>>>>
>>>>>
>>>>>
>>>>
>>>> It just changes the result of getLinkMode(), nothing else. I think it
>>>> establishes the "mode" for future copy/paste procedures. (Am I right?)
>>>>
>>>> I present the functions I used at the end of this message, just in case
>>>> someone else needs them.
>>>>
>>>> While I was looking for a way to delete the links to other documents
>>>> from a
>>>> macro, I found someone who wants to do the same: "DDE Refresh and clean
>>>> up"
>>>> at
>>>>
>>>> http://user.services.openoffice.org/en/forum/viewtopic.php?f=20&t=4076&p=49673#p49673
>>>>
>>>> Someone redirected him to "Programming actions, where macro recorder and
>>>> API
>>>> fail" at
>>>>
>>>> http://www.oooforum.org/forum/viewtopic.phtml?t=22845&postdays=0&postorder=asc&start=0
>>>>
>>>> The author of the second thread says:
>>>>
>>>> ----- begin -------
>>>> The following describes a procedure to circumvent this problem. The
>>>> basic
>>>> steps are
>>>>
>>>> (1) Create a TopWindowListener
>>>> (2) execute the dispatch
>>>> (3) the dispatch opens a new top window
>>>> (4) the top window listener is called
>>>> (5) inside the top window listener, the accessibility interface is used
>>>> to
>>>> execute the desired user interactions
>>>> (6) inside the top window listener, the dispatch dialog's OK Button is
>>>> pressed to terminate the dispatch
>>>> (7) the TopWindowListener is removed
>>>> ------ end -------
>>>>
>>>> That is a great thing to know. My problem is that I haven't  been able
>>>> to
>>>> understand  the use of the api documentation enough, so I cant figure
>>>> out
>>>> how to  modify the examples presented there, to my benefit.
>>>>
>>>>
>>>
>>> Um, you don't understand this method for the same reason that even
>>> advanced macro programmers shutter when they think about using this method
>>> to control OOo. I would describe this method as:
>>>
>>> Write code that directly manipulates OOo's native Dialogs and controls.
>>> Doing this requires a lot of information about these dialogs that is not
>>> published anywhere. The discovery process is error prone and causes OOo to
>>> lock.
>>>
>>
>> Yes, I understood that much.    :)
>>
>>
>>>
>>> In other words, this is not what you want to learn. This method is only
>>> to be used as a last resort if you must solve a problem for which there is
>>> no other solution. I consider this about the same as using OOo to write a
>>> document with detailed instructions written on a piece of paper because your
>>> computer has no monitor.
>>>
>>
>> Ha ha ha,,, a very good example... hahaha.
>>
>>
>>>
>>> It is better if you are able to learn the native API. Unfortunately,
>>> there are a few things that are not possible with the current API (such as
>>> obtaining a list of available printers).
>>>
>>> Based on your previous answers, I am pretty sure that I am not
>>> understanding what it is that you desire to do. In other words, you have not
>>> created a linked sheet, because clearly you do not have a linked sheet. Your
>>> usage of the word link, mislead me (so to speak)   :-)
>>>
>>> Are you using external data links? I am not really sure what you are
>>> doing at this point....
>>>
>>
>> When I "point to" data from other documents, changing things back and
>> forth over time, I get a lot of rows at menu "Edit/Links..." that are no
>> longer needed.
>>
>> What I want to accomplish is to press a button that copy the few (5) cells
>> with "foreign" data and paste them as text, and then delete all those links
>> at "Edit/Links..."
>> The first part because OO Calc becomes very slow with a bunch of open open
>> files that have references to each other, and the second part to keep things
>> clean and avoid the "update links" dialog that appears every time I open the
>> document
>>
>> I couldn't open the "mailing list guidelines" now so I don't know if I'm
>> permitted to add attachments, meanwhile I give this link to download a 3
>> very small calc documents with an example and instructions.(A 24k zip file)
>>
>>
>> http://www.mitalteli.com/tmp/ootest_HelpNeededToDeleteLinksToOtherCalcDocuments-20081013.zip
>>
>> Thank you in advance.
>>
>> Ely.
>>
>>
>>>
>>>  The examples contain:
>>>>
>>>> dispatcher.executeDispatch(oFrame, ".uno:InsertObject", "", 0, Array())
>>>> or
>>>> dispatcher.executeDispatch(oFrame, ".uno:OptionsTreeDialog", "", 0,
>>>> Array())
>>>>
>>>>
>>>> If I understand correctly, the "uno:InsertObject" and
>>>> "uno:OptionsTreeDialog" are the "names" of the objectes or windows to
>>>> interact with. Right?
>>>> How could I find the "name" of the "Modify links" window?   (Menu Edit /
>>>> Links...)
>>>>
>>>> And that is just the beginning.
>>>>
>>>>
>>>> Thank you very, very much for your help.
>>>>
>>>> Ely.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>> --
>>>>> Andrew Pitonyak
>>>>> My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
>>>>> My Book: http://www.hentzenwerke.com/catalog/oome.htm
>>>>> Info:  http://www.pitonyak.org/oo.php
>>>>> See Also: http://documentation.openoffice.org/HOW_TO/index.html
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> P.S. Here I put the functions I used for testing:
>>>>
>>>> Function fTestLinkMode
>>>>    Dim oSheet as Object
>>>>    oSheet = ThisComponent.Sheets.getByIndex(0)
>>>>    fTestLinkMode = "=> " &  oSheet.Name & " **LinkMode: " &
>>>> oSheet.getLinkMode()
>>>> End function
>>>>
>>>> Function fTestLinkUrl
>>>>    Dim oSheet as Object
>>>>    oSheet = ThisComponent.Sheets.getByIndex(0)
>>>>    fTestLinkUrl = "=> " &  oSheet.Name & " **LinkUrl: " &
>>>> oSheet.getLinkUrl()
>>>> End function
>>>>
>>>> Function fTestSetLinkMode(pMode)
>>>>    Dim oSheet as Object
>>>>    oSheet = ThisComponent.Sheets.getByIndex(0)
>>>>    '#oSheet.setLinkMode(com.sun.star.sheet.SheetLinkMode.NONE)
>>>>    oSheet.setLinkMode(pMode)
>>>>    fTestSetLinkMode = "=> " & "done"
>>>> End function
>>>>
>>>>
>>>>
>>>
>>> --
>>> Andrew Pitonyak
>>> My Macro Document: http://www.pitonyak.org/AndrewMacro.odt
>>> My Book: http://www.hentzenwerke.com/catalog/oome.htm
>>> Info:  http://www.pitonyak.org/oo.php
>>> See Also: http://documentation.openoffice.org/HOW_TO/index.html
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>
>

Reply via email to