Skip to content

Instantly share code, notes, and snippets.

@djazayeri
Created December 16, 2015 14:53
Show Gist options
  • Save djazayeri/e17ebc1c49f53c75b86c to your computer and use it in GitHub Desktop.
Save djazayeri/e17ebc1c49f53c75b86c to your computer and use it in GitHub Desktop.
Ad hoc reportingrest cohort query
var startAndEndDateParameters = "<parameters>" +
" <org.openmrs.module.reporting.evaluation.parameter.Parameter>\n" +
" <name>startDate</name>\n" +
" <label></label>\n" +
" <type>java.util.Date</type>\n" +
" <required>true</required>\n" +
" </org.openmrs.module.reporting.evaluation.parameter.Parameter>\n" +
" <org.openmrs.module.reporting.evaluation.parameter.Parameter>\n" +
" <name>endDate</name>\n" +
" <label></label>\n" +
" <type>java.util.Date</type>\n" +
" <required>true</required>\n" +
" </org.openmrs.module.reporting.evaluation.parameter.Parameter>\n" +
"</parameters>";
var hasEncounterSearchEntry = " <entry>" +
" <string>hasEncounter</string>" +
" <org.openmrs.module.reporting.evaluation.parameter.Mapped>" +
" <parameterizable class=\"org.openmrs.module.reporting.cohort.definition.DefinitionLibraryCohortDefinition\">" +
" <definitionKey>reporting.library.cohortDefinition.builtIn.anyEncounterDuringPeriod</definitionKey>" +
startAndEndDateParameters +
" </parameterizable>" +
" <parameterMappings>" +
" <entry>" +
" <string>startDate</string>" +
" <string>${startDate}</string>" +
" </entry>" +
" <entry>" +
" <string>endDate</string>" +
" <string>${endDate}</string>" +
" </entry>" +
" </parameterMappings>" +
" </org.openmrs.module.reporting.evaluation.parameter.Mapped>" +
" </entry>";
var malesWithEncounterDuringPeriod: "<org.openmrs.module.reporting.cohort.definition.CompositionCohortDefinition>" +
startAndEndDateParameters +
"<compositionString>male AND hasEncounter</compositionString>" +
"<searches>" +
" <entry>" +
" <string>male</string>" +
" <org.openmrs.module.reporting.evaluation.parameter.Mapped>" +
" <parameterizable class=\"org.openmrs.module.reporting.cohort.definition.DefinitionLibraryCohortDefinition\">" +
" <definitionKey>reporting.library.cohortDefinition.builtIn.males</definitionKey>" +
" </parameterizable>" +
" <parameterMappings/>" +
" </org.openmrs.module.reporting.evaluation.parameter.Mapped>" +
" </entry>" +
hasEncounterSearchEntry +
"</searches>" +
"</org.openmrs.module.reporting.cohort.definition.CompositionCohortDefinition>";
EvaluateCohort.save({
serializedXml: malesWithEncounterDuringPeriod,
startDate: fromDate.toISOString(),
endDate: toDate.toISOString()
}).$promise.then(function(response) {
genderData.push({ label: "Male", value: response.members.length });
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment