This is occurring in XI Reports 3.1
I'm trying to schedule a Deski (FullClient) report through the Java API.
The report has a PDF format and Inbox destination...
It also has a prompt with a default value.
When I schedule the report through InfoView it does so succesfully.
When I try to perform the same action through the Java API... the scheduling does not work.
Here's a snippet of code I'm using:
=======================
loInfoObjects = moInfoStore.query("SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME = '" + lsRptNm + "'");
loFullClientPubl = (IFullClient)loInfoObjects.get(0);
loFullClientPubl.properties().setProperty("SI_KIND", CeKind.PDF);
loFullClientPubl.getProcessingInfo().properties().setProperty("SI_KIND", CeKind.PDF);
loFullClientPubl.getSchedulingInfo().setRightNow(true);
if (loFullClientPubl.hasPrompts())
{
IFullClientPrompts loPrompts = loFullClientPubl.getPrompts();
IFullClientPrompt loPrompt = (IFullClientPrompt)loPrompts.get(0);
loPrompt.getValues().set(0, "123456");
loFullClientPubl.getPrompts().set(0, loPrompt);
}
else //This is the scenario that executes....
{
loFullClientPubl.getPrompts().add("Code").getValues().add("123456");
loFullClientPubl.getProcessingInfo().properties().setProperty("SI_HAS_PROMPTS", true);
}
loFullClientPubl.schedule(); //Schedule the report
=====================================
After I execute the code, I can see that an entry has been created in CI_INFOOBJECTS but no record of the scheduling shows up in infoView, not even as a "failed" report. It's as if the report had never been scheduled.
In CI_INFOOBJECTS ...
Unlike the manual scheduling, the SI_KIND, and SI_HAS_PROMPTS properties for the failed scheduling are not set to "PDF" and "true" as expected, but remain as "FullClient" and "false"
This is the reason why I set the properties programmatically prior to scheduling the report. While this did change the values in CI_INFOOBJECTS, it still did not fix the problem of scheduling, that is no reports show up in infoView.
Have any of you guys come across this? I'm stumped...
Thank you