dubbele naam, ander type uit query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Patrick van den Berg

Patrick van den Berg

29/11/2011 11:17:58
Quote Anchor link
ik heb een webapp waarmee je requirements kan maken. Vervolgens wordt er een sub-item gemaakt van het requirement waarin de werkelijk requirement beschreven word. Nu kan deze sub-requirement gelinkt worden aan een testcase.
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?
 
PHP hulp

PHP hulp

23/11/2024 06:47:42
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

29/11/2011 12:05:58
Quote Anchor link
Hoe zien je tabellen eruit?
 
Patrick van den Berg

Patrick van den Berg

29/11/2011 12:11:46
Quote Anchor link
Ik zal het nog wel wat uitgebreider uitleggen. Waarschijnlijk wordt het probleem duidelijker. Ik zal ook mijn query mee-posten. Mogelijk is ghet alleen een aanpassing in de query maar ik kom er eventjes niet meer uit:

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"];
 
Chris Koopman

Chris Koopman

29/11/2011 13:31:46
Quote Anchor link
Ik had een vraag
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 -
 
Patrick van den Berg

Patrick van den Berg

29/11/2011 13:33:29
Quote Anchor link
Beetje raar antwoord chris koopman.
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'
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.