It's all about the answers!

Ask a question

querying workitems, API choices, rpt, oslc, sparql, java api, best practice


Jason Hampton (111) | asked Dec 03 '16, 12:40 p.m.
edited Dec 04 '16, 11:26 a.m.

Let me preface by saying - wow, jazz is an ambitious ecosystem. Between all the different APIs, the reporting service, the basic java api, sparql.. it's intense.. and hard to know the best way to skin the proverbial cat.

The company has 5 instances (they call them functional areas) each of the ccm, dcc, qm, rs, rm.

The GOAL - query any open bugs/defects with a list of possible owner names. (only return defects belonging to those names)

What I have to this point, is a JRS report I built from report builder & am consuming via XML from url like:

https://jazzserver:9443/rs/query/1286/dataservice?limit=-1&basicAuthenticationEnabled=true&report=1278

to return ALL users, and then I filter on the ones I want. but I am worried that this list could grow huge & cause performance issues. (I could not find any way to paginate the result, etc) Also, there 2 datasources, so I then need 2 queries.

I want to care for these concerns, open to anything. Should I stick in the reporting service (rs) module, or should try using the (Reportable REST API) rpt stuff under the other modules? I would guess most defects would appear under the QualityManagement qm section, like

https://jazzserver:9443/qm/rpt/repository/workitem

I also see this oslc stuff I could try using

https://jazzserver:9443/qm/oslc/contexts/_pXsVsRmqEeWdnsGEjrjqng/workitems?oslc.query=dc.owner="fred"


I tried doing some stuff in the java basic api, boy that’s also a steep learning curve. Though I am pretty happy to use it for viewing work items. I guess it's capabilities are similar to oslc api. 

I tried some using the SQL from the RS / report builder / advanced section, as sparql input, but it doesn’t really seem like it’s sparql, fails quickly on parsing error

https://jazzserver:9443/qm/query?query=SELECT+DISTINCT+T1.PROJECT_NAME%2C%0D%0A+++++++T1.REFERENCE_ID%2C%0D%0A++....

I take it that SQL is hitting the data-collection tables or some such, and isn't related to the QM module.


So yeah, I’m pretty all over the place, not sure where to focus. my ideal approach would be to use the basic java api to create dynamic queries against the Reporting module, with ability to page through. it doesn't seem possible.

But maybe I'm over thinking it, maybe the whole purpose of the RS is just this. Maybe running that excel url, even when returning thousands of entries, is not straining the system.


If anyone could point me anywhere, it would be super awesome


Comments
Jason Hampton commented Dec 06 '16, 10:13 a.m.

I'm finding that the data under the RS module is delayed 30-60 minutes. I guess I'll be refocusing on the oslc / rpt functions. 

One answer



permanent link
Ralph Schoon (57.1k23642) | answered Dec 06 '16, 11:05 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
edited Dec 06 '16, 11:05 a.m.
If you want to work on work items, you have basically two choices of direct APIs on the life data, as far as I can tell.
REST/OSLC based or the RTC Java API.

I prefer the Java APIs. If you want to learn about them, start here: https://rsjazz.wordpress.com/2015/09/30/learning-to-fly-getting-started-with-the-rtc-java-apis/

Your answer


Register or to post your answer.