Because of QA requirements (approval by product manager) some tasks remain open for a long time .
I don't mind that as long as it doesn't concern tasks that are needed to solve a compilation issue in a downstream workspace.
I'd like to create a list of all objects that do not compile in our test workspace and join that with the tasks that contain these objects in our development workspace .
How can I query which objects in the test workspace failed to compile ?
Alternatively, how can I query which objects need to compile, which should be the same after completion of a full compile ?
"How can I query which objects in the test workspace failed to compile?"
At the time of the compile, or some time after the fact?
"..how can I query which objects need to compile.."
Although there is official API, checking the update status of the Object would tell you which Objects are in need of compilation (assuming xref is enabled).
If using the plug-in, this could done via the Roundtable Search provider (on the search UI).
Manually, here is an alternative that doesn't directly hit the db, but I'm not sure if this is what you are seeking:
{rtb/i/rtb_datasetnames.i} {rtb/i/rtb_objtypes.i} &SCOPED-DEFINE MODIFIED "M" DEFINE VARIABLE cRowident AS CHARACTER NO-UNDO INITIAL "". DEFINE VARIABLE hBuf AS HANDLE NO-UNDO. DEFINE VARIABLE hTT AS HANDLE NO-UNDO. RUN rtb/proxy/p/rtbGetRowValues.p (INPUT-OUTPUT cRowident, 0, "{&DS_OBJECT}", INPUT-OUTPUT TABLE-HANDLE hTT, FALSE). hBuf = hTT:DEFAULT-BUFFER-HANDLE. hBuf:FIND-FIRST(). ASSIGN hBuf::wspace-id = "devel" hBuf::obj-type = {&PCODE} hBuf::update-status = {&MODIFIED}. RUN rtb/proxy/p/rtbGetRowValues.p (INPUT-OUTPUT cRowident, 0, "{&DS_OBJECT}", INPUT-OUTPUT TABLE-HANDLE hTT, FALSE). FINALLY: DELETE OBJECT hTT NO-ERROR. END FINALLY.
"How can I query which objects in the test workspace failed to compile?"
At the time of the compile, or some time after the fact?
"..how can I query which objects need to compile.."
Although there is official API, checking the update status of the Object would tell you which Objects are in need of compilation (assuming xref is enabled).
If using the plug-in, this could done via the Roundtable Search provider (on the search UI).
Manually, here is an alternative that doesn't directly hit the db, but I'm not sure if this is what you are seeking:
{rtb/i/rtb_datasetnames.i} {rtb/i/rtb_objtypes.i} &SCOPED-DEFINE MODIFIED "M" DEFINE VARIABLE cRowident AS CHARACTER NO-UNDO INITIAL "". DEFINE VARIABLE hBuf AS HANDLE NO-UNDO. DEFINE VARIABLE hTT AS HANDLE NO-UNDO. RUN rtb/proxy/p/rtbGetRowValues.p (INPUT-OUTPUT cRowident, 0, "{&DS_OBJECT}", INPUT-OUTPUT TABLE-HANDLE hTT, FALSE). hBuf = hTT:DEFAULT-BUFFER-HANDLE. hBuf:FIND-FIRST(). ASSIGN hBuf::wspace-id = "devel" hBuf::obj-type = {&PCODE} hBuf::update-status = {&MODIFIED}. RUN rtb/proxy/p/rtbGetRowValues.p (INPUT-OUTPUT cRowident, 0, "{&DS_OBJECT}", INPUT-OUTPUT TABLE-HANDLE hTT, FALSE). FINALLY: DELETE OBJECT hTT NO-ERROR. END FINALLY.