- About Vivit
- LUGs & SIGs
- Vivit Blogs
- News & Events
- Knowledge Base
|HPE Software Products: Requirements Management Information and News|
When a requirement status is changed, I send an email using the "Mail" method. It's sysntax is:
I am able to send an email. However, the FromTo email, which is not part of the "Mail" method, is automatically set to the logged in user, who changed the requirement status.
I would like to default the "FromTo" email to a constant email address say "email@example.com".
Can I do that?
I referred an old post (URL attached below), where it says we cannot do it. However, since the post was logged in 2008, I was wondering if it can be done.
FYI: I am using HP QC Enterprise Ver 12.50
Please help. Thank you!
Hi ,Please help me with a Query to count and classify the requirement types in a requirement folder.
I have downloaded the excel add-on, which still only creates a flat file with the parent directories.
I have also attempted to create a template under the analysis view, however the 'Special Properties' selection of 'Keep Hierarchial' is disabled.
In the requirements module, I would like to disable the "Folder". it will be enabled only if the user belongs to the TDAMIN group. The "folder option" can be accessed in 3 different ways. Refer the attached screenshot for details.
For all the 3 options, for UserGroups apart from TDAMIN, I was thinking of trapping the "ActionName" in the Function ActionCanExecute() and then display a message that "You do not have this access". But the user experience will not be right. I would like to disable the "Folder" option, the moment the User logs in to QC.
Please suggest how can I do it for all the 3 options. Thanks!
I mistakenly added an approver to the list of approvers. All the approved approvers approved the requirement P04-PRO-15 (ID 118) of the project RP3_GRA_RPA but the status did not pass to "for quality approval". I changed the list of approvers to remove the mistaken appleter (Marianne Brodeck) but the status has not changed.Is it possible to switch the status of this requirement to "for quality approval" so that the quality approver can approve it?
Maybe we're using ALM incorrectly, but when we release a new version of our software, I go to Releases, then create a release, then create a scope item, then check the boxes next to the requirement that are part of that release.
I want a tabular report that shows requirement id with its release name. I think the information I want is in the tables named req, req_releases, releases and qpm_scope_item but I cannot figure out how to write an SQL statement in the Analysis View that extracts the information correctly.
SELECT rq_req_id, rq_req_name, sci_name, rel_name
as a test which works in a dummy project I set up, but not in the real project that we're using.
Is there a way to get what I want from ALM?
I have checked all filters, both in the report and requirements view - nothing is selected.
Thanks in advance
I click new field button but i see error pop-up. But i can create new field on defect module.
Error code : 0x800413EC
Thanks a lot.
So we have a script working that automatically goes down the list of tests in Test Plan (you have to supply the folder path) and links every test to a requirement. The tests have a custom field called Req Ref ID, which we populate with the IDs of any requirements, and the requirements have a required field of the same name. The script simply checks the two fields, sees if there are any matches, and performs the linkage. The problem is: it crashes if it hits a test that has existing linkage. The solutions I could think of range from complicated to dangerous. The best option I can think of is to have it check whether a test has coverage or not, if no perform linkage, if yes wipe out existing coverage, then perform linkage. I'm not great at VBScript, though, and don't really know how to make it remove existing coverage. If anyone can help I'd greatly appreciate it... Here's the script:
'IN THE WORKFLOW SCRIPTS > PROJECT SCRIPTS > COMMON SCRIPT 'Use the following script to redirect this function to the module specific function: Function ActionCanExecute(ActionName) 'Use ActiveModule and ActiveDialogName to get 'the current context. On Error Resume Next 'Use the following script to redirect this function to the module specific function: Select Case ActiveModule ' Case "Defects" ' ActionCanExecute = Defects_ActionCanExecute(ActionName) ' Case "Test Lab" ' ActionCanExecute = TestLab_ActionCanExecute(ActionName) Case "Test Plan" If ActionName = "Link_T_to_Req" Then Call Link_T_to_Req() End If ' ActionCanExecute = TestPlan_ActionCanExecute(Link_TestP_to_Req) ' MSGBOX "IN TEST PLAN2" ' Case "Requirements" ' ActionCanExecute = Requirements_ActionCanExecute(ActionName) ' Case "Management" ' ActionCanExecute = Management_ActionCanExecute(ActionName) ' Case "Test Resources" ' ActionCanExecute = Resources_ActionCanExecute(ActionName) ' Case "Business Components" ' ActionCanExecute = Components_ActionCanExecute(ActionName) ' Case "Dashboard" ' ActionCanExecute = Analysis_ActionCanExecute(ActionName) ' Case "Business Models" ' ActionCanExecute = BusinessModels_ActionCanExecute(ActionName) ' Case "Test Runs" ' ActionCanExecute = TestRuns_ActionCanExecute(ActionName) End Select 'ActionCanExecute = DefaultRes On Error GoTo 0 End Function 'IN THE WORKFLOW SCRIPTS > PROJECT SCRIPTS > TEST PLAN MODULE SCRIPT Sub Link_T_to_Req() Dim strNessage strMessage =Inputbox("Enter the sub-root folder name: ","Input Required") If (strMessage <> "") AND (strMessage <> " ") Then ' strNodeByPath = "Subject\" & "Test" ' CAN REQUEST FOLDER NAME AS PARAMETER strNodeByPath = "Subject\Project EMEE\" & trim(strMessage) MsgBox strNodeByPath Call MyTestCases(strNodeByPath) MsgBox "WE ARE DONE! " Else MsgBox " ** YOU DID NOT ENTER A FOLDER !! **" End if End Sub Function MyTestCases(strNodeByPath) ' Variable for adding the coverage Dim reqID Dim TestID Dim coverable Dim reqF Dim Req Dim tdc Dim arrRefID Dim inti Dim TestF, testL Dim TestSource Dim testListReq Dim reqItem Dim myfilter Dim temp Dim temp1 Dim temp2 Dim TreeMgr, TestTree, TestFactory, TestList Dim TreeMg1r, TestTree1, TestFactory1 Set tdc = TDConnection Set TreeMgr = tdc.treemanager 'Specify the folder path in TestPlan, all the tests under that folder will be exported. Set TestTree = TreeMgr.NodeByPath(strNodeByPath) Set TestFactory = TestTree.TestFactory Set TestList = TestFactory.NewList("") 'Get a list of all from node. 'Specify Array to contain all nodes of subject tree. Dim NodesList() ReDim Preserve NodesList(0) 'Assign root node of subject tree as NodeByPath node. NodesList(0) = TestTree.Path Temp = NodesList(0) 'Temp1 = NodesList(1) ' MsgBox " NodesList(0) = " & Temp 'Gets subnodes and return list in array NodesList Call GetNodesList(TestTree, NodesList) Dim Row, Node, TestCase Row = 2 For Each Node In NodesList Set TestTree1 = TreeMgr.NodeByPath(Node) Set TestFactory1 = TestTree1.TestFactory Set TestList1 = TestFactory1.NewList("") 'Get a list of all from node. 'Iterate through all the tests. For Each TestCase In TestList1 'Loop through all the test cases temp = " TS_TEST_ID= " & TestCase.Field("TS_TEST_ID") & " TS_USER_11= " & TestCase.Field("TS_USER_11") ''' MsgBox temp ' ignore if any of the test case do not have Ref ID field If (TestCase.Field("TS_USER_11") <> "") AND (TestCase.Field("TS_USER_11") <> " ") AND (TestCase.Field("TS_USER_11") <> vbNull) Then TestID = TestCase.Field("TS_TEST_ID") RefID = TestCase.Field("TS_USER_11") Temp1 = Replace(RefID , vbCrLf, ",") ' remove carriage return Temp1 = Replace(Temp1 , vbLf, ",") ' remove line feed Temp1 = Replace(Temp1 , vbCr, ",") ' remove line feed Temp1 = Replace(Temp1 , ",,", ",") ' remove double comas as result of removing line feed Temp1 = Replace(Temp1 , ", ,", ",") 'remove as result of removing line control chars Temp1 = Replace(Temp1 , ",,", ", ") ' remove double comas as result of removing line feed Temp1 = Trim(Temp1) RefID = Temp1 ' MsgBox RefID ' New arrRefID = Split(RefID, ",", -1, 1) temp = " UPPER BOUND OF ArrRefID = " & UBound(arrRefID) ' Msgbox temp inti = 0 For inti = 0 To UBound(arrRefID) 'Loop through the individual ref number (ref1) Temp = " init = " & inti & " arrRefID(inti) = " & arrRefID(inti) ''' Msgbox Temp If ((arrRefID(inti) = "") or (arrRefID(inti) = " ") or (arrRefID(inti) = vbNull) or (arrRefID(inti) = vbNullChar) or (arrRefID(inti) = vbNullString)) Then 'Nothing to compare ''' MsgBox " NOTHING IN ARRAY VARIABLE SKIP" Else 'Connect to command object Set com = tdc.Command com.CommandText = "SELECT * FROM REQ WHERE RQ_USER_03 = '" & Trim(arrRefID(inti)) & "' " ''' MsgBox com.CommandText Set recset = com.Execute 'Validate the results If recset.RecordCount > 1 Then MsgBox "Duplicate Requirement Ref ID found under Req Module" 'If record found map against req ElseIf recset.RecordCount = 1 Then reqID = recset("RQ_REQ_ID") temp2 = " FOUND ReqID= " & reqID ''' MSGBOX temp2 Set reqF = tdc.ReqFactory Set Req = reqF.Item(reqID) Req.AddCoverage TestID, TDPOSITION_LAST ElseIf recset.RecordCount = 0 Then temp2 = " Not Found " & arrRefID(inti) & " in database " ''' MsgBox temp2 End If End If Next 'Loop through the individual ref number (ref1) Else 'No REF ID temp2 = " No Req Ref ID for Test.Field(TS_TEST_ID) = " & Test.Field("TS_TEST_ID") ''' MsgBox temp2 End If Next ' Loop TestCase In TestList ''' MsgBox "No more TestCase in TestList" Next ' Node In NodesList MsgBox "THE TRAVERSING THRU THE FOLDERS IS COMPLETE! " Set tdc = Nothing Set reqF = Nothing Set Req = Nothing Set TestFactory = Nothing Set TestList = Nothing Set TestFactory1 = Nothing Set TestList1 = Nothing Set recset = Nothing Set TestTree = Nothing Set TestTree1 = Nothing Set TreeMgr = Nothing End Function 'Returns a NodesList array for all children of a given node of a tree. ' '@param: Node Node in a Test tree. ' '@param: NodesList Array to store all children of a given node of a tree. ' '@return: No explicit return value. Function GetNodesList(ByVal Node, ByRef NodesList) Dim i Dim Tmp 'Run on all children nodes 'MsgBox " Function GetNodesList Node = " & Node & " Node.Count = " & Node.Count For i = 1 To Node.Count Dim NewUpper 'Add more space to dynamic array NewUpper = UBound(NodesList) + 1 ReDim Preserve NodesList(NewUpper) 'Add node path to array NodesList(NewUpper) = Node.Child(i).Path 'If current node has a child then get path on child nodes too. Tmp = " i = " & i & " Node.Child(i).Count = " & Node.Child(i).Count If Node.Child(i).Count >= 1 Then Tmp = Node.Child(i) ' Msgbox " Node.Child(i) = " & Tmp Call GetNodesList(Node.Child(i), NodesList) End If Next End Function
I have 3 folder in requirements module. One of them has the all requirements within. Every each requirements has a field which keeps information about folder that the requirement will be moved. I would like to move all the requirement to related folder automatically.
Folder A -> 50 requirements
Folder B -> 0 requirement
Folder C -> 0 requirement
In Folder A, 20 requirements should be moved to Folder B, 30 requirements should be moved to Folder C. It will be specified by the special requirement field which should moved to which folder.
It can be SQL Procedure or action does not matter.
Thanks in advance.
Hello Good Day All,
In ALM 12.53 version Requirement module - when i change the status for any of the requirement type am getting the below error-
"You do not have the required permissions to execute this action . "
Its not allowing me to change even for the TD Admin , and for all other roles in project.
I have changed status from Any to Any , also workflow but still no clue for this .
PLease any one have any idea suggest me .
Thanks & Regards
Requirement user template entities - not visible or updateable in Requirement Module
A project was set up with RQ_User fields created and then requirements(2800) had been captured..
Later I decided to create a template project and copied the original project customisation as a basis.
I now manage all access permisions and entities etc through this template project (the original project now being linked to this)
- our Bug User _Template entities work just fine -
I now have added some new Rq_ User_Template entities and updated all the linked projects.
the problem is:-
1/ the requirement user template entities - are not visible in the Requirement details view at all
2/ Two of the new entities are Project Lists - and the list items/values are not visible in any of the requirement module views
3/ these new entities are not updateable in any of the requirement module views
4/ all the new User Template entities are visible in the Customize/Project Entities/Requirements/User Fields - so they have been rolled out to the project
5/ even with TDAdmin access - I cannot amend these fields
6/ the Template Project does have the original User Entities as RQ_User_01 - 10 as well
any suggestions please?
can I put some coding in the Workflow to make these accesible - if so please could you supply this
is it because I have a mixture of User Entities (created and populated in the original project) and new User Template Entities?
I will be grateful of some help please - I have 10+ projects linked to this and don't want to hard code this in each project, and iof course, any new ones. Plus I cannot lose any history/audit trail on any of the existing projects - so I cannot recreate/copy all the original fields/entities as template fields.
hope that is as clear as mud
if we changed somethink in an existing requirements and the "Assigned To" is filled in, automatic mails will send... all right!
But is it possible to script that the history, all comments and the actual attachments will send by default, too?
I know, that you can send all these points by checking the checkboxes for manual sending, but what is the script settings to send also for automatic mails?
Is it possible to make the validation errors more visible when importing from MS Excel? Currently the litle red highligh is not enough. Can you highlight the entire cell in yellow?
Need to visibly show via the Requirements Grid or Tree view when a requirement has been baselined or changed after being baselined.
Is it possible to implement a new way of hiding fields from the Details menu when creating a requirement?
When you have created a project from a template, the user fields created for that requirement entity get passed along to the project. However, if you have a requirement user field that should only apply to one project, adding that user field to the template, applies that field to all projects linked to the template. We need to be able to add user fields for an entity specific to an individual project even if that project is linked to a template.
I know someone on here must know this one. I'm trying to produce an excel spreadsheet in QC replicating the tree view. I understand somehow the RQ_ORDER_ID and RQ_PARENT_ID are related, but that's about it. Looking in the DB reference it talks about a self-join but I do not know how to generate a script for that. Right now, we are referencing off Path which is not correct. We are using MS SQL Server and QC 12.01. Any help is appreciated.
SELECT REQ.RQ_USER_TEMPLATE_01 'DOORS ID', REQ.RQ_REQ_NAME 'Requirement.Name', REQ.RQ_USER_TEMPLATE_04 'Requirement.Threshold Platform Type' FROM REQ order by rq_req_path asc
Creating a requirement using REST APIs in HP QC ALM database with C/C++ Code for a Linux(Debian) Sys
Little background. The team that is in charge of the Requirements has full access to that module except they can't delete requirements.
I have setup a Requirement Folder called Trash which allows them to cut/paste or drag/drop requirements they don't want into that folder. I have then setup Data Hiding so only the Admins can see requirements in that Trash folder.
Works great, but we just found 3 requirements in the Trash that should not have been there and they want to know when and who put them there. I looked and there is no history that shows this.
I think the field I need to enable History on is the RQ_FATHER_NAME but I can't enable History on that field.
Anyone have an Idea on how I can track in history when and who puts a requirement under the Trash folder?
I'm on ALM 12.01