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: Prevent Attr and Layout DXL from running
Topic Summary:
Created On: 24-Jan-2008 14:37
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.
 24-Jan-2008 14:37
User is offline View Users Profile Print this message


Louie Landale

Posts: 2070
Joined: 12-Sep-2002

I need a mechanism for an admin to be able to prevent all embedded DXL from running; triggers, AttrDXL, and LayoutDXL. I know how to disable triggers (see 'TriggerState.dxl' posted on the forum).

One use of this is to disable all such DXL before I restore modules figuring to check to insure they have no such DXL. Another is simply to decrease the execution time of my massive DXL that open lots of modules. I need to disable this DXL yet allow normal DXL to run.

I hope we can brain storm and come up with something.

Here's some initial thoughts: I was thinking I could make use of 'evalTop_' to do something to the top DXL context that prevented all DXL from running correctly, perhaps define some function that all DXL uses and that function issues 'halt'. DXL that needs to run would somehow suppress the prevention and allow the DXL to run. I made a feeble attempt at putting Pragma in the top context, but I have no idea what I'm doing and didn't get far, even though I did manage to prevent DXL from running, I just couldn't reproduce it reliably.

I tried and failed to define "Object obj = null" in the top context, but that wouldn't stop the DXL from running anyway just stop it from storing the results.

Any thoughts?

- Louie
Report this to a Moderator Report this to a Moderator
 24-Jan-2008 18:33
User is offline View Users Profile Print this message


Louie Landale

Posts: 2070
Joined: 12-Sep-2002

I wonder if opening modules and views in Batch mode may prevent AttrDXL and Layouts from firing...
Report this to a Moderator Report this to a Moderator
 24-Jan-2008 18:41
User is offline View Users Profile Print this message


Scott Boisvert

Posts: 348
Joined: 14-Apr-2006

You could create a view without the AttrDXL's and Layout DXL's, then make it the default view. That should keep those DXLs from running when the module is opened.

I don't think you can mess with views in Batch mode, though I could be wrong, but I've always had to have the module viewable when modifying views.

-------------------------
Scott Boisvert
Engineering Tools Administrator
L-3 Communications - Avionics Systems
scott.boisvert@l-3com.com
Report this to a Moderator Report this to a Moderator
 24-Jan-2008 19:20
User is offline View Users Profile Print this message


David Pechacek

Posts: 674
Joined: 5-Dec-2006

What Scott mentioned is what we do. If its not in the view it won't run.

And Louie, I'm almost positive layout and attribute DXL is still run in batch mode because we have many batch scripts that export data and some times some of that data is from DXL attributes or columns. I've had no issues with the data not showing up due to the DXL not running.

An idea that comes to mind would be to have a pre open trigger on a module that pops up a dialog box asking "Run DXL?". If you click "No", it modifies a local file somewhere that simply contains a true or false value to be "false" (and "true" when you say "Yes"). Then have all your DXL read that file and if the value is "false", have the DXL halt. It's crude but it'd work.

-------------------------
David Pechacek
AAI Services Textron
dpechacek@sc-aaicorp.com
David.Pechacek@gmail.com
Report this to a Moderator Report this to a Moderator
 24-Jan-2008 20:07
User is offline View Users Profile Print this message


Louie Landale

Posts: 2070
Joined: 12-Sep-2002

My purpose is to find and suppress Hostile or Incompetant or CPU intensive DXL embedded in the module. For example when we get a module archive we want to make sure its 'clean' before we deploy it on in some sensitive database.

Thus, a solution that requires the other DXL to cooperate isn't acceptable.

I'm going to have to search all views and all columns, so strict control over default views isn't going to cut it.

- Louie
Report this to a Moderator Report this to a Moderator
 24-Jan-2008 20:38
User is offline View Users Profile Print this message


Scott Boisvert

Posts: 348
Joined: 14-Apr-2006

I'm assuming you have a test database set up.

Once restored on the test database you could run the following script to pull the dxl scripts out of any DXL Attribute. It creates a *.dxl file with the name of the attribute as the *. If per chance you used this in conjunction with the "default view" you could would be able to check the actual DXL before it is ever run.

Unfortunately the only way I can think of retrieving the DXL from the layouts is to actually cycle through each column of each view to pull the DXL in the same manner as above. The problem with his of course is that the DXL is executed when the view is loaded.....

-------------------------
Scott Boisvert
Engineering Tools Administrator
L-3 Communications - Avionics Systems
scott.boisvert@l-3com.com

Edited: 24-Jan-2008 at 20:40 by Scott Boisvert
Report this to a Moderator Report this to a Moderator
 25-Jan-2008 15:13
User is offline View Users Profile Print this message


Tony Goodman

Posts: 1098
Joined: 12-Sep-2002

Louie, there is no way that I know of to prevent DXL from executing.

We import a lot of archives and bad layout DXL causes us a lot of trouble.
I wrote this while back, hope it helps.

The attached will find bad layout DXL in a module.
I discovered that noError does not suppress error dialogs when opening views, hence the need to remove default views temporarily.
It should be relatively simpel to add checks for Attribute DXL and triggers.

-------------------------
Tony Goodman
http://www.smartdxl.com
Report this to a Moderator Report this to a Moderator
 25-Jan-2008 16:21
User is offline View Users Profile Print this message


David Pechacek

Posts: 674
Joined: 5-Dec-2006

From a guy at Telelogic:

I don't know of a way to "completely" suppress it. There is a way to keep users from using the DXL editor to run scripts. You can also control who has access to run a particular script by controlling the OS access to the actual script.


Thats it though.

-------------------------
David Pechacek
AAI Services Textron
dpechacek@sc-aaicorp.com
David.Pechacek@gmail.com
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.