Welcome to Telelogic Product Support
  Home Downloads Knowledgebase Case Tracking Licensing Help Telelogic Passport
Telelogic DOORS (steve huntington)
Decrease font size
Increase font size
Topic Title: Get internal DOORS URL
Topic Summary:
Created On: 26-Nov-2008 08:24
Status: Post and Reply
Linear : Threading : Single : Branch
Search Topic Search Topic
Topic Tools Topic Tools
Quick Reply Quick Reply
Subscribe to this topic Subscribe to this topic
E-mail this topic to someone. E-mail this topic
Bookmark this topic Bookmark this topic
View similar topics View similar topics
View topic in raw text format. Print this topic.
 26-Nov-2008 08:24
User is offline View Users Profile Print this message


Timo Blum

Posts: 9
Joined: 11-Sep-2008

Hi

every object in doors hav a url like

doors://serverort/?version=1,prodID=0,dbid=47455b6205ba3133,container=000005ed

is there an easy possibility to get this information with dxl?

thx
Timo
Report this to a Moderator Report this to a Moderator
 26-Nov-2008 08:28
User is offline View Users Profile Print this message


Pekka Mäkinen

Posts: 276
Joined: 18-Mar-2004

function getURL

-------------------------
Pekka.Makinen@softqa.fi
SoftQA Oy -http://www.softqa.fi/
Report this to a Moderator Report this to a Moderator
 26-Nov-2008 08:59
User is offline View Users Profile Print this message


Timo Blum

Posts: 9
Joined: 11-Sep-2008

thx a lot
can i now get a doors object/module/project with a functon which only needs this url

or do i have to use uniqueID for that?


and soon next question

want to create a project with dxl
this is no prblem
but u can only create a project with the same name once

second time the create() function doesnt work because a projet with the same name allready exist

how can i check the name before trying to create it?

Edited: 26-Nov-2008 at 09:03 by Timo Blum
Report this to a Moderator Report this to a Moderator
 28-Nov-2008 09:15
User is offline View Users Profile Print this message


Marcel van der Laan

Posts: 15
Joined: 21-Sep-2007

Timo,

Originally posted by: Timo Blum
can i now get a doors object/module/project with a functon which only needs this url


You can get the information with the decodeURL function; this will extract the info from the URL to get you all the information you need to get the refrerenced object again.


but u can only create a project with the same name once

second time the create() function doesnt work because a projet with the same name allready exist

how can i check the name before trying to create it?


I see two possibilities:
1) Try getting a handle to the project, by calling project(string projectName). However getting a null here could also mean that the user has no read access to the project co this may not exactly cover it.
2) Use the for name in database do {} loop to check all the names of projects (including deleted ones).

I the end, the final check would be after attempting to create the project itself...

Regards,
Marcel

P.S. My reference in all this is the 8.1 client help. Don't know if newer version provide more capabilities.
Report this to a Moderator Report this to a Moderator
 28-Nov-2008 10:33
User is offline View Users Profile Print this message


Timo Blum

Posts: 9
Joined: 11-Sep-2008

Originally posted by: Marcel van der Laan

Timo,



Originally posted by: Timo Blum

can i now get a doors object/module/project with a functon which only needs this url





You can get the information with the decodeURL function; this will extract the info from the URL to get you all the information you need to get the refrerenced object again.






i mean something like

object o = ????(uniqueID)
for example...

??? = function i am searching for
Report this to a Moderator Report this to a Moderator
 1-Dec-2008 15:38
User is offline View Users Profile Print this message


Louie Landale

Posts: 2070
Joined: 12-Sep-2002

The [Object object(int AbsNo, Module mod)] function will find objects with that absolute number in the module, but only if that object is currently displayed. That makes this function practically useless. I see that the function appears in two spots in the manual.

I plan to write a clever library function that keeps tracks of the objects in 3 modules, where the interface is as you said: Object = fGetObject(Module mod, [int AbsNo | string Identifier). Internally the functions will get all the objects in the module and put them into a Skip list, then search the Skip lists. Current the function looks like attached.


- Louie
Report this to a Moderator Report this to a Moderator
 2-Dec-2008 10:49
User is offline View Users Profile Print this message


Timo Blum

Posts: 9
Joined: 11-Sep-2008

found a way


string url
string dbhost
int dbport
string dbname
string dbID
Item i
ModuleVersion m
int absonr

decodeURL
("doors://serverort/?version=1,prodID=0,dbid=47455b6205ba3133,
container=00001aa3",dbhost,dbport,dbname,dbID,i,m,absonr)

this funktions fills the declared variables with the valus

now u have an module m and an absoult number absonr from the searched object

now u can jump direct to the object with

Object gotoObject(int absno, Module m)
Report this to a Moderator Report this to a Moderator
 4-Dec-2008 14:19
User is offline View Users Profile Print this message


Marcel van der Laan

Posts: 15
Joined: 21-Sep-2007

hi Timo,

Originally posted by: Timo Blum
now u have an module m and an absoult number absonr from the searched object


Well, you don't have a Module, you have a ModuleVersion object, which can be some previously baselined version of the module (which you can check with isBaseline()). Worst case, the object may be null, incase the uniqueID doesn't refer to an object...

From the ModuleVersion, you need to find and open the correct module, e.g. using fullname(). So you'll get something along the lines the code attached.


Regards,
Marcel
Report this to a Moderator Report this to a Moderator
 5-Dec-2008 11:25
User is offline View Users Profile Print this message


Timo Blum

Posts: 9
Joined: 11-Sep-2008

thx for the small edit....

will try it soon
Report this to a Moderator Report this to a Moderator
Statistics
20925 users are registered to the Telelogic DOORS forum.
There are currently 1 users logged in.
The most users ever online was 15 on 15-Jan-2009 at 16:36.
There are currently 0 guests browsing this forum, which makes a total of 1 users using this forum.
You have posted 0 messages to this forum. 0 overall.

FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.