dubbele naam, ander type uit query
Ik wil een lijst krijgen waarin je kan zien welke requirements gekoppeld zijn aan een testcase en welke nog niet.
Ik heb een query wat met het volgende resultaat komt.
case1 - covered by - testcase1
case1 - subissue - parent requirement
case2 - subissue - parent requirement
case3 - covered by - testcase1
case3 - subissue - een papa req.
case4 - subissue - nog een requirement
case5 - subissue - parent requirement
ik wil een lijst waarin staat:
covered items
case1 - covered by - testcase1
case3 - covered by - testcase1
non-coverd items
case2
case4
case5
Alleen nu worden ook de case1 en case3 in de non-covered items lijst gezet. Wat ook logisch is.
Iemand enig idee hoe ik dit kan oplossen?
Hoe zien je tabellen eruit?
tabels issieus - hier staan alle issues (requirements, testcases, etc) in.
Iedere issue heeft een eigen type id. een issue kan een test zijn of een requiremnt of een bug.
Deze issues worden aan elkaar gelinkt door een link tabel.
hierin heb je een source, destination en een link type.
Een 'covered by' is een andere type dan 'jira-issue'
Je kan dan onderscheid maken tussen de verschillende linken die er zijn.
Dit is denk ik wel duidelijk.
Als we in de website een requirement (req1) maken dan moet deze gemaakt worden voor de export naar word. Dit is niks anders dan een titel.
Vervoglens moeten we een software requirement (sofreq1) maken. We maken dan een subitem van de requirement en vullen deze in. Hierdoor wordt het eenvoudig om naar wordt te exporteren
Als ik nu in het issue tabel kijk dan zie ik:
req1
softreq1
Als ik in het linktabel kijk dan zie ik
softreq1 - child from - req1
Dit is volgens mij ook nog logisch. Ik gebruik de namen, uiteraard zijn dit id's.
Ik heb nu een testcase (testcase1). En deze testcase laat zien de requirement gedekt wordt door de testcase. Deze koppel ik aan elkaar in de applicatie en geef hierbij het type link: covered by
Als ik nu in het issue tabel kijk dan zie ik:
req1
softreq1
testcase1
Als ik in het linktabel kijk dan zie ik
softreq1 - child from - req1
softreq1 - covered by - testcase1
Er staat nu 2x softreq1 in de linktabel. 1x gelinkt aan zijn parent en 1x gelinkt aan de testcase.
Vervoglens ga ik nog 3 sub-requirements erbij maken, waarvan er 1 gelinkt wordt aan een testcase. Ondertusse heb ik query aangepast zodat alles in 1 resultset getoond wordt:
softreq1 - child from - req1
softreq1 - covered by - testcase1
softreq2 - child from - req1
softreq2 - covered by - testcase2
softreq3 - child from - req1
softreq4 - child from - req2
Nu wil ik dat mijn scherm, de gekoppelde issues toond die aan een testcase zitten en de issues die nog niet aan een testcase zitten
covered items:
softreq1 - covered by - testcase1
softreq2 - covered by - testcase2
non-covered items
softreq3
softreq4
Het probleem is dat ook softreq1 en softreq2 in de lijst komen met non-covered items want ook logisch is want ze staan er 2x in. Enig idee hoe ik kan oplossen zodat deze niet in de lijst getoond worden.
Dit is mijn query:
select S.PID, S.pname, S.ID, S.SUMMARY, S.issuetype, S.SOURCE, S.DESTINATION, S.linktype, issuelinktype.INWARD, issuelinktype.OUTWARD, jiraissue.ID, jiraissue.SUMMARY
from issuelinktype,
(
select R.PID, R.pname, R.ID, R.SUMMARY, R.issuetype, issuelink.SOURCE, issuelink.DESTINATION, issuelink.linktype
from
(
select project.pname, project.id as [PID], jiraissue.ID, jiraissue.SUMMARY, jiraissue.issuetype
from jiraissue
left join project
on jiraissue.PROJECT = project.ID
where issuetype = '8'
)R
left join issuelink
on R.ID = issuelink.DESTINATION
)S
left join jiraissue
on S.SOURCE = jiraissue.ID
where issuelinktype.ID = S.linktype
and S.PID = ". $value["ID"];
Zit hier sinds 1 maand met een probleem
Ik wil mij eng.lang.php verranderen naar Nederlands
Kan iemand mij helpen
hieronder de script ofzo code
Zoals eerder beschreven, maak gebruik van pastebin.com als je een grote lap code wilt plaatsen.[/modedit]
Gewijzigd op 29/11/2011 14:23:47 door Chris -
Misschien een nieuw topic openen.
Ik ben er uit. Ik heb de query opnieuw opgebouwd:
query is nu:
select Project.id, Project.pname, JiraIssue.SUMMARY, SourceIssue.Summary as [Gelinkt aan],
case when IssueLink.Source is null then 'Is not covered' else 'Is covered' end as [Covered]
from JiraIssue
inner join Project on JiraIssue.PROJECT = project.ID
left join IssueLink on JiraIssue.ID = issuelink.DESTINATION and issuelink.linkType = '10100'
left join JiraIssue SourceIssue on SourceIssue.ID = issuelink.Source
where JiraIssue.issuetype = '8'