Changeset 5221
- Timestamp:
- 08/10/08 18:41:53 (5 months ago)
- Files:
-
- openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/QueryBuilder.java (modified) (4 diffs)
- openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/ResultSetMetaData.java (modified) (1 diff)
- openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/Token.java (modified) (2 diffs)
- openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/Utils.java (added)
- openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/test/org/eclipse/datatools/connectivity/oda/openmrs/test/QueryBuilderTest.java (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/QueryBuilder.java
r5140 r5221 95 95 // there will always be an aggregate, so add it to the front of the 96 96 // token query 97 query += "|" + token.getAggregate() + " " ;97 query += "|" + token.getAggregate() + " " + token.getAggregateValue() + " "; 98 98 99 99 // add modifiers if there are any … … 169 169 for (int i = 0; i < tokens.length; i++) { 170 170 // extract the aggregate 171 String aggregate = tokens[i].substring(0, tokens[i].indexOf("{") );171 String aggregate = tokens[i].substring(0, tokens[i].indexOf("{") - 1); 172 172 // String aggregate = "LAST 5"; 173 173 … … 179 179 180 180 Token token = tokenMap.get(tokenName); 181 182 token.setAggregate(aggregate); 181 182 token.setAggregate(Utils.getAggregateNameForTokenFromTokenProperty(tokenName, select)); 183 token.setAggregateValue(Utils.getAggregateValueForTokenFromTokenProperty(tokenName, select)); 183 184 184 185 // set the modifier data here: … … 224 225 String[] tokenName = tokens.split("\\|"); 225 226 227 log.info(tokens); 228 226 229 ArrayList<String> tokenNames = new ArrayList<String>(); 227 230 openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/ResultSetMetaData.java
r5140 r5221 108 108 109 109 else if (dataStyle.equals(FLAT)) { 110 int max = 5;110 //int max = 5; 111 111 112 112 // explode columns 113 for (int i = 0; i < tokens.size(); i++) { 113 for (int i = 0; i < tokens.size(); i++) 114 { 115 int max = Integer.parseInt(tokens.get(i).getAggregateValue()); 116 114 117 for (int j = 1; j < max + 1; j++) { 115 118 String name = tokens.get(i).getName(); openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/src/org/eclipse/datatools/connectivity/oda/openmrs/impl/Token.java
r5140 r5221 35 35 private String modifiers = null; 36 36 37 private String aggregate = "5"; 37 private String aggregate = null; 38 39 private String aggregateValue = null; 38 40 39 41 private boolean modified = false; … … 278 280 this.aggregate = aggregate; 279 281 } 282 283 public String getAggregateValue() { 284 return aggregateValue; 285 } 286 287 public void setAggregateValue(String aggregateValue) { 288 this.aggregateValue = aggregateValue; 289 } 280 290 } openmrs-contrib/birt_oda_plugin/org.eclipse.datatools.connectivity.oda.openmrs/test/org/eclipse/datatools/connectivity/oda/openmrs/test/QueryBuilderTest.java
r5140 r5221 46 46 @Test 47 47 public void shouldGetFilter() { 48 String query = "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE|{HAZARDOUS DRINKING}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE|{TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked";48 String query = "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {HAZARDOUS DRINKING}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE|LAST 1 {TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked"; 49 49 String filter = QueryBuilder.getFilter(query); 50 50 assertEquals("3:org.openmrs.cohort.StaticCohortDefinition", filter); … … 53 53 @Test 54 54 public void shouldGetQueryFromTokensFilterDataStyle() { 55 String query = "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE|{HAZARDOUS DRINKING}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE|{TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked";55 String query = "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {HAZARDOUS DRINKING}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE|LAST 1 {TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked"; 56 56 List<Token> tokens = QueryBuilder.getTokens(query, tokenMap); 57 57 58 58 assertEquals( 59 "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE| {HAZARDOUS DRINKING}:OBSERVATIONDATE| {PATIENT CONTACT METHOD}:OBSERVATIONDATE|{TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked",59 "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {HAZARDOUS DRINKING}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE|LAST 1 {TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked", 60 60 QueryBuilder.getQuery(tokens, 61 61 "3:org.openmrs.cohort.StaticCohortDefinition", … … 65 65 @Test 66 66 public void shouldGetTokens() { 67 String query = "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE|{HAZARDOUS DRINKING}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE|{TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked";67 String query = "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {HAZARDOUS DRINKING}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE|LAST 1 {TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked"; 68 68 List<Token> tokens = QueryBuilder.getTokens(query, tokenMap); 69 69 … … 76 76 @Test 77 77 public void shouldGetQueryFromTokensFilterDataStyle2() { 78 String query = "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE|{TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked";79 String tokens = " {X-RAY, ABDOMEN}:OBSERVATIONDATE|{TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE";78 String query = "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked"; 79 String tokens = "LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE"; 80 80 assertEquals(query, QueryBuilder.getQuery(tokens, 81 81 "3:org.openmrs.cohort.StaticCohortDefinition", "stacked")); … … 85 85 public void shouldGetTokenNamesFromStorage() { 86 86 List<String> tokens = QueryBuilder 87 .getTokenNamesFromStorage(" {X-RAY, ABDOMEN}:OBSERVATIONDATE|{TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE");87 .getTokenNamesFromStorage("LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE"); 88 88 assertEquals("X-RAY, ABDOMEN", tokens.get(0)); 89 89 assertEquals("TAKEN MORE THAN 95 PERCENT OF PRESCRIBED ARVS", tokens … … 94 94 @Test 95 95 public void shouldGetDataStyle() { 96 String query = "SELECT {X-RAY, ABDOMEN}:OBSERVATIONDATE|{HAZARDOUS DRINKING}:OBSERVATIONDATE|{PATIENT CONTACT METHOD}:OBSERVATIONDATE|{TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked";96 String query = "SELECT LAST 1 {X-RAY, ABDOMEN}:OBSERVATIONDATE|LAST 1 {HAZARDOUS DRINKING}:OBSERVATIONDATE|LAST 1 {PATIENT CONTACT METHOD}:OBSERVATIONDATE|LAST 1 {TACHYPNEA}:OBSERVATIONDATE FROM 3:org.openmrs.cohort.StaticCohortDefinition&datastyle=stacked"; 97 97 assertEquals("stacked", QueryBuilder.getDataStyle(query)); 98 98 }