RAT Plugin v15.1.5 causes DXL error
7 years 5 months ago #82
by javier-fernandez
RAT Plugin v15.1.5 causes DXL error was created by javier-fernandez
Hi all!
We detected an important issue in the new RAT Plugin for DOORS. Let me explain you properly:
As shown in the TRC World, one of the new functionalities was the quality assessment in-line, which will assess the requirements in DOORS as usual without opening RAT every time. This functionality needs some DXL triggers that are stored in the DOORS Server and will be executed for all DOORS Clients, having or not RAT Plugin installed).
In case the DOORS Client does not have access to the triggers (in DOORS Server) it will display a DXL error every time you open a module. No matter if you have RAT Plugin or not.
IMPORTANT: The DXL error is not a blocking error and won’t be involved in any other work case. The engineers will be able to work as usual but the DXL error screen could be annoying. However, we are afraid to say that we were forced to remove this functionality from v15.1.5, but it will be on v15.1.6 with a new arquitecture.
If you reached this situation, you can avoid this DXL error by executing the following DXL script on any DOORS client. It will solved the issue for everybody.
We are totally available if you have any question on this issue. Sorry for the inconveniences.
We detected an important issue in the new RAT Plugin for DOORS. Let me explain you properly:
As shown in the TRC World, one of the new functionalities was the quality assessment in-line, which will assess the requirements in DOORS as usual without opening RAT every time. This functionality needs some DXL triggers that are stored in the DOORS Server and will be executed for all DOORS Clients, having or not RAT Plugin installed).
In case the DOORS Client does not have access to the triggers (in DOORS Server) it will display a DXL error every time you open a module. No matter if you have RAT Plugin or not.
IMPORTANT: The DXL error is not a blocking error and won’t be involved in any other work case. The engineers will be able to work as usual but the DXL error screen could be annoying. However, we are afraid to say that we were forced to remove this functionality from v15.1.5, but it will be on v15.1.6 with a new arquitecture.
If you reached this situation, you can avoid this DXL error by executing the following DXL script on any DOORS client. It will solved the issue for everybody.
// Defining RQS trigger Names
string onOpenModuleTriggerName
onOpenModuleTriggerName = "open_module"
string onObjectDescriptionChangesName
onObjectDescriptionChangesName = "description_Changes"
string onObjectHeadingChangesName
onObjectHeadingChangesName = "heading_Changes"
string onCreateNecessaryFiles
onCreateNecessaryFiles = "create_necessary_files"
// Removing previous RQS triggers
Trigger t
for t in database do {
string h=name (t )
if (h == "open_module" ) {
delete(t)
}
if (!null t && h == onObjectDescriptionChangesName) {
delete(t)
}
if (!null t && h == onObjectHeadingChangesName) {
delete(t)
}
if (!null t && h == onCreateNecessaryFiles) {
delete(t)
}
}
// Creating the fixed triggers
bool existsTrigger_OnOpen
existsTrigger_OnOpen = false
bool existsTrigger_OnChanges
existsTrigger_OnChanges = false
bool existsTrigger_OnChanges_h
existsTrigger_OnChanges_h = false
bool create_necessary_files_exists
create_necessary_files_exists = false
Trigger currentTrigger
string currentTriggerName
for currentTrigger in database do {
currentTriggerName = name(currentTrigger)
if (currentTriggerName == onOpenModuleTriggerName) {
existsTrigger_OnOpen = true
}
if (currentTriggerName == onObjectDescriptionChangesName) {
existsTrigger_OnChanges = true
}
if (currentTriggerName == onObjectHeadingChangesName) {
existsTrigger_OnChanges_h = true
}
if (currentTriggerName == onCreateNecessaryFiles) {
create_necessary_files_exists = true
}
}
if (!existsTrigger_OnOpen) {
Trigger topen
topen = trigger(onOpenModuleTriggerName, project->all->module->formal->all, post, open, 10,
" string fileName = \"triggers/onModule_Open.inc\"
string includeString = \"#include <triggers/onModule_Open.inc>\"
if (canOpenFile(fileName, false)) {
eval_ includeString
}
")
}
if (!existsTrigger_OnChanges) {
Trigger tchanges = trigger(onObjectDescriptionChangesName, project->all->module->formal->all->attribute->"Object Text", post, modify, 10,
" string fileName = \"triggers/onObjectDescription_Ends.inc\"
string includeString = \"#include <triggers/onObjectDescription_Ends.inc>\"
if (canOpenFile(fileName, false)) {
eval_ includeString
}
")
}
if (!existsTrigger_OnChanges_h) {
Trigger tchanges_h = trigger(onObjectHeadingChangesName, project->all->module->formal->all->attribute->"Object Heading", post, modify, 10,
" string fileName = \"triggers/onObjectDescription_Ends.inc\"
string includeString = \"#include <triggers/onObjectDescription_Ends.inc>\"
if (canOpenFile(fileName, false)) {
eval_ includeString
}
")
}
if (!create_necessary_files_exists) {
Trigger tfiles = trigger(onCreateNecessaryFiles, project->all->discussion, post, create, 10, "")
}
// Printing current triggers after fixing RQS trigger scripts
Trigger outputTrigger
for outputTrigger in database do {
currentTriggerName = name outputTrigger
if (currentTriggerName == onOpenModuleTriggerName ||
currentTriggerName == onObjectDescriptionChangesName ||
currentTriggerName == onObjectHeadingChangesName ||
currentTriggerName == onCreateNecessaryFiles) {
print currentTriggerName ": " dxl outputTrigger "\n"
}
}
string buttons[] = {"OK"}
messageBox (" Trigger fixed successfully !", buttons, msgInfo )
We are totally available if you have any question on this issue. Sorry for the inconveniences.
Please Log in or Create an account to join the conversation.
- javier-fernandez
- Topic Author