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: Layout DXL: How to display Baseline Number of Object Text Last Change
Topic Summary:
Created On: 22-Oct-2008 16:55
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.
Answer This question was answered by Louie Landale, on Monday, October 27, 2008 10:48 AM

Answer:
If instead of just Object Text but rather you wanted to display the Baseline in which the object was last changed at all (any attribute), then you could get the obj."Last Modified On" value of the object, loop through all the baselines of the module for bl in (module(obj)), get the date of the baseline bl.date, and compare as needed.

To do what you want to do what you want, then regreattably you need to open up all the baselines, loop through all History looking for changes to attr Object Text for this object, and retaining the last date. Then compare that to the baseline. I'm sure this will not work satisfactorily in a Layout due to the massive processing involved.

You can have an on-demand script that manages an attribute perhaps called "BL of OT Last Changed", which does this work and sets the attribute. Run the script often.

- Louie
 22-Oct-2008 16:55
User is offline View Users Profile Print this message


Mathias Burchardt

Posts: 21
Joined: 17-Sep-2008

Hi all,

I would like to have a column, which displays the Baseline number, in which "Object Text" was last changed.
Initially it will display 0.0. After creating a baseline it shall remain at 0.0, until I change object text (then it shall display 0.1).
When I create two more baselines (e.g. 0.2 and 0.3) it shall remain at 0.1, until I change object text (then it shall display 0.3).

Has anybody an idea of how to do that or has anybody had a similar problem and can provide a solution?


Thanks in advance!
Best Regards,

Mathias Burchardt
BeOne Hamburg GmbH
Report this to a Moderator Report this to a Moderator
 23-Oct-2008 14:57
User is offline View Users Profile Print this message


Louie Landale

Posts: 2070
Joined: 12-Sep-2002

Answer Answer
If instead of just Object Text but rather you wanted to display the Baseline in which the object was last changed at all (any attribute), then you could get the obj."Last Modified On" value of the object, loop through all the baselines of the module for bl in (module(obj)), get the date of the baseline bl.date, and compare as needed.

To do what you want to do what you want, then regreattably you need to open up all the baselines, loop through all History looking for changes to attr Object Text for this object, and retaining the last date. Then compare that to the baseline. I'm sure this will not work satisfactorily in a Layout due to the massive processing involved.

You can have an on-demand script that manages an attribute perhaps called "BL of OT Last Changed", which does this work and sets the attribute. Run the script often.

- Louie
Report this to a Moderator Report this to a Moderator
 24-Oct-2008 09:34
User is offline View Users Profile Print this message


Peter Albert

Posts: 232
Joined: 30-Dec-2005

Hi Mathias,

attached you will find a script of the type which Louie proposed. It manages two additional attributes: an object level attribute "Last modified baseline" and a module level attribute "Published baselines". The latter was necessary for us, as we want to report the last published baseline in which an attribute was changed, with possible intermediate baselines in between.

The DB has several options:

- report all modifications or just the latest modifications
- check and report all attributes individually or let just one modified attribute "raise the flag" for this object and baseline
- Update the "Last modified baseline" attribute or display the result for the current object in the DB

If you want to run it, you need the usual combination of

#include <Your_path/modifiedBaselines.inc>
modifiedBaselines


Regards,

Peter




Edited: 24-Oct-2008 at 09:36 by Peter Albert
Report this to a Moderator Report this to a Moderator
 24-Oct-2008 09:37
User is offline View Users Profile Print this message


Mathias Burchardt

Posts: 21
Joined: 17-Sep-2008

Thanks a lot, Louie!
The code below works, but performance is a little poor (I guess because each object has to step through all baselines).
Has anybody an idea of how to improve performance in this case?
Thank you.
Rgds Mathias
Report this to a Moderator Report this to a Moderator
 24-Oct-2008 10:27
User is offline View Users Profile Print this message


Peter Albert

Posts: 232
Joined: 30-Dec-2005

Hi Mathias,

you could create a module level attribute which contains the baseline info and the modification dates in individual lines. You would only have to update this attribute once a baseline is taken. Then your script just has to loop over the lines in this attribute value, and probably perform some regular expression voodoo, instead of looping through the baselines, which should make it much faster.

Regards

Peter
Report this to a Moderator Report this to a Moderator
 24-Oct-2008 11:33
User is offline View Users Profile Print this message


Pekka Mäkinen

Posts: 276
Joined: 18-Mar-2004

If done that way you better run the code as a DXL attribute and place that DXL attribute in a view. Then the refresh for the values will happen only when you open the module and the view where this attribute exists. Thus there will be no performance problems with scrolling the module in this view.

-------------------------
Pekka.Makinen@softqa.fi
SoftQA Oy -http://www.softqa.fi/

Edited: 24-Oct-2008 at 11:33 by Pekka Mäkinen
Report this to a Moderator Report this to a Moderator
 27-Oct-2008 10:38
User is offline View Users Profile Print this message


Mathias Burchardt

Posts: 21
Joined: 17-Sep-2008

Thank you, Pekka,

great advice to use DXL Attributes instead of Layout Columns for this case.

Rgds, Mathias
Report this to a Moderator Report this to a Moderator
 27-Oct-2008 10:45
User is offline View Users Profile Print this message


Mathias Burchardt

Posts: 21
Joined: 17-Sep-2008

Peter,

great tool, thank you. After cross-checking with your tool I changed my code to consider not only date but also time.

Currently the Attribute DXL solution works best for me. I will uncheck "affect change dates" for all irrelevant attributes and so the correct baseline number will be shown when I change relevant attributes.

Rgds
Mathias
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.