Examples of IRecord


Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

    int pivotFieldIndex;
    int valueFieldIndex;
    int groupFieldIndex;

    List newRecords = new ArrayList();
    IRecord newRecord = null;
    Object selectedGroupValue = null;
   
    pivotedFieldNames = new ArrayList();
   
    dataStoreMeta = dataStore.getMetaData();
    pivotFieldIndex = dataStoreMeta.getFieldIndex(getPivotFieldName());
    valueFieldIndex = dataStoreMeta.getFieldIndex(getValueFieldName());
    groupFieldIndex = dataStoreMeta.getFieldIndex(getGroupFieldName());

    /************************************************************************************
    * Renaming output column for dynamic records (alias record with different number of columns )
    * if requested
    /************************************************************************************/
    if (numRows){
      String precGroupField = null;
      String precPivotField = null;
      int cont = 0;
      Iterator iterator = dataStore.iterator();
      while (iterator.hasNext()) {
        IRecord record = (IRecord) iterator.next();
 
        IField pivotField = record.getFieldAt(pivotFieldIndex);
        IField valueField = record.getFieldAt(valueFieldIndex);
        IField groupField = record.getFieldAt(groupFieldIndex);
        
        if (precGroupField == null)
          precGroupField = groupField.getValue().toString();
       
        if (precPivotField == null)
          precPivotField = pivotField.getValue().toString();
       
        if (precGroupField.equalsIgnoreCase(groupField.getValue().toString())){
          if (precPivotField.equalsIgnoreCase(pivotField.getValue().toString())){
            pivotField.setValue(pivotField.getValue().toString()+String.valueOf(cont));
            cont++;
          }
          else{
            cont = 0;
            precPivotField = pivotField.getValue().toString();
            pivotField.setValue(pivotField.getValue().toString()+String.valueOf(cont))
            cont++;
          }
        }
        else{
          cont = 0;
          precGroupField = groupField.getValue().toString();
          precPivotField = pivotField.getValue().toString();
          pivotField.setValue(pivotField.getValue().toString()+String.valueOf(cont));
          cont++;
        }
      }
    }

   
    Iterator pivotedFieldNamesIterator = dataStore.getFieldDistinctValues(pivotFieldIndex).iterator();   
    while ( pivotedFieldNamesIterator.hasNext() ) {
      pivotedFieldNames.add( pivotedFieldNamesIterator.next() );
    }
   
    Iterator it = dataStore.iterator();
    while (it.hasNext()) {
      IRecord record = (IRecord) it.next();

      IField pivotField = record.getFieldAt(pivotFieldIndex);
      IField valueField = record.getFieldAt(valueFieldIndex);
      IField groupField = record.getFieldAt(groupFieldIndex);

      if(selectedGroupValue == null || !selectedGroupValue.toString().equals( groupField.getValue().toString() )) {
        selectedGroupValue = groupField.getValue();
        if(newRecord != null) {
          newRecord.getFields().remove(pivotFieldIndex);
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

Febbraio           SER3           13            2
Febbraio           SER4           75            2
   */
  public static void main(String[] args) {
    IDataStore dataStore;
    IRecord record;
   
    dataStore = new DataStore();
   
    dataStore.getMetaData().addFiedMeta(new FieldMetadata("X", String.class ));
    dataStore.getMetaData().addFiedMeta(new FieldMetadata("SER", String.class));
    dataStore.getMetaData().addFiedMeta(new FieldMetadata("VAL", Double.class));
    dataStore.getMetaData().addFiedMeta(new FieldMetadata("IDX", Integer.class));
   
    // ----------------------------------------------------
   
    record = new Record();
    record.appendField(new Field("Gennaio"));
    record.appendField(new Field("SER1"));
    record.appendField(new Field(new Double(33)));
    record.appendField(new Field(new Integer(1)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Gennaio"));
    record.appendField(new Field("SER2"));
    record.appendField(new Field(new Field(new Double(12))));
    record.appendField(new Field(new Integer(1)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Gennaio"));
    record.appendField(new Field("SER3"));
    record.appendField(new Field(new Field(new Double(64))));
    record.appendField(new Field(new Integer(1)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Gennaio"));
    record.appendField(new Field("SER4"));
    record.appendField(new Field(new Field(new Double(21))));
    record.appendField(new Field(new Integer(1)));
    dataStore.appendRecord(record);
   
    // ----------------------------------------------------
   
    record = new Record();
    record.appendField(new Field("Febbraio"));
    record.appendField(new Field("SER1"));
    record.appendField(new Field("56"));
    record.appendField(new Field(new Integer(2)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Febbraio"));
    record.appendField(new Field("SER2"));
    record.appendField(new Field(new Field(new Double(35))));
    record.appendField(new Field(new Integer(2)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Febbraio"));
    record.appendField(new Field("SER3"));
    record.appendField(new Field(new Field(new Double(13))));
    record.appendField(new Field(new Integer(2)));
    dataStore.appendRecord(record);
   
    record = new Record();
    record.appendField(new Field("Febbraio"));
    record.appendField(new Field("SER4"));
    record.appendField(new Field(new Field(new Double(75))));
    record.appendField(new Field(new Integer(2)));
    dataStore.appendRecord(record);
   
    IDataStoreTransformer transformer = new PivotDataSetTransformer("SER", "VAL", "X", false);
    transformer.transform(dataStore);
    System.out.println(dataStore.toXml());
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

    JSONObject  result = null;
    JSONObject metadata;
    IField field;
    JSONArray fieldsMetaDataJSON;   
    JSONObject fieldMetaDataJSON;
    IRecord record;
    JSONObject recordJSON;
    int recNo;
   
   
    JSONArray recordsJSON;
    int resultNumber;
    Object propertyRawValue;
    String detailProperty;
   
    Assert.assertNotNull(dataStore, "Object to be serialized connot be null");
   
    try {
      result = new JSONObject();
     
      metadata = new JSONObject();
       
      metadata.put("totalProperty", TOTAL_PROPERTY);
      metadata.put("root", ROOT);
      metadata.put("id", "id");
      result.put("metaData", metadata);
     
      propertyRawValue = dataStore.getMetaData().getProperty("resultNumber");
      detailProperty = (String)dataStore.getMetaData().getProperty("detailProperty");
      if(propertyRawValue==null){
        propertyRawValue = new Integer(1);
      }
      Assert.assertNotNull(propertyRawValue, "DataStore property [resultNumber] cannot be null");
      Assert.assertTrue(propertyRawValue instanceof Integer, "DataStore property [resultNumber] must be of type [Integer]");
      resultNumber = ((Integer)propertyRawValue).intValue();
      Assert.assertTrue(resultNumber >= 0, "DataStore property [resultNumber] cannot be equal to [" + resultNumber + "]. It must be greater or equal to zero")
      result.put(TOTAL_PROPERTY, resultNumber);
     
      recordsJSON = new JSONArray();
      result.put(ROOT, recordsJSON);
   
      // field's meta
      fieldsMetaDataJSON = new JSONArray();
      fieldsMetaDataJSON.put("recNo"); // counting column
      for(int i = 0; i < dataStore.getMetaData().getFieldCount(); i++) {
        IFieldMetaData fieldMetaData = dataStore.getMetaData().getFieldMeta(i);
       
        propertyRawValue = fieldMetaData.getProperty("visible");
        if(propertyRawValue != null
            && (propertyRawValue instanceof Boolean)
            && ((Boolean)propertyRawValue).booleanValue() == false) {
          continue;
        }
       
        String fieldName = "column_" + (i+1);
        String fieldHeader = fieldMetaData.getAlias() != null? fieldMetaData.getAlias(): fieldMetaData.getName();
       
        fieldMetaDataJSON = new JSONObject();
        fieldMetaDataJSON.put("name", fieldName);           
        fieldMetaDataJSON.put("dataIndex", fieldName);
        fieldMetaDataJSON.put("header", fieldHeader);
       
       
        Class clazz = fieldMetaData.getType();
        if (clazz == null) {
          logger.debug("Metadata class is null; considering String as default");
          clazz = String.class;
        } else {
          logger.debug("Column [" + (i+1) + "] class is equal to [" + clazz.getName() + "]");
        }
        if( Number.class.isAssignableFrom(clazz) ) {
          //BigInteger, Integer, Long, Short, Byte
          if(Integer.class.isAssignableFrom(clazz)
               || BigInteger.class.isAssignableFrom(clazz)
             || Long.class.isAssignableFrom(clazz)
             || Short.class.isAssignableFrom(clazz)
             || Byte.class.isAssignableFrom(clazz)) {
            logger.debug("Column [" + (i+1) + "] type is equal to [" + "INTEGER" + "]");
            fieldMetaDataJSON.put("type", "int");
          } else {
            logger.debug("Column [" + (i+1) + "] type is equal to [" + "FLOAT" + "]");
            fieldMetaDataJSON.put("type", "float");
          }
         
          String format = (String) fieldMetaData.getProperty("format");
          if ( format != null ) {
            fieldMetaDataJSON.put("format", format);
          }
         
        } else if( String.class.isAssignableFrom(clazz) ) {
          logger.debug("Column [" + (i+1) + "] type is equal to [" + "STRING" + "]");
          fieldMetaDataJSON.put("type", "string");
        } else if( Timestamp.class.isAssignableFrom(clazz) ) {
          logger.debug("Column [" + (i+1) + "] type is equal to [" + "TIMESTAMP" + "]");
          fieldMetaDataJSON.put("type", "date");
          fieldMetaDataJSON.put("subtype", "timestamp");
          fieldMetaDataJSON.put("dateFormat", "d/m/Y H:i:s");
        } else if( Date.class.isAssignableFrom(clazz) ) {
          logger.debug("Column [" + (i+1) + "] type is equal to [" + "DATE" + "]");
          fieldMetaDataJSON.put("type", "date");
          fieldMetaDataJSON.put("dateFormat", "d/m/Y");
        } else if( Boolean.class.isAssignableFrom(clazz) ) {
          logger.debug("Column [" + (i+1) + "] type is equal to [" + "BOOLEAN" + "]");
          fieldMetaDataJSON.put("type", "boolean");
        } else {
          logger.warn("Column [" + (i+1) + "] type is equal to [" + "???" + "]");
          fieldMetaDataJSON.put("type", "string");
        }
       
        Boolean calculated = (Boolean)fieldMetaData.getProperty("calculated");
        calculated = calculated == null? Boolean.FALSE: calculated;
        if(calculated.booleanValue() == true) {
          DataSetVariable variable =  (DataSetVariable)fieldMetaData.getProperty("variable");
          if(variable.getType().equalsIgnoreCase(DataSetVariable.HTML)) {
            fieldMetaDataJSON.put("type", "auto");
            fieldMetaDataJSON.remove("type");
            fieldMetaDataJSON.put("subtype", "html");
          }
         
        }
       
        if(detailProperty != null && fieldHeader.equalsIgnoreCase(detailProperty)) {
          metadata.put("detailProperty", fieldName);
          fieldMetaDataJSON.put("hidden", true);
        }
       
        fieldsMetaDataJSON.put(fieldMetaDataJSON);
      }
      metadata.put("fields", fieldsMetaDataJSON);
     
      // records
      recNo = 0;
      Iterator records = dataStore.iterator();
      while(records.hasNext()) {
        record = (IRecord)records.next();
        recordJSON = new JSONObject();
        recordJSON.put("id", ++recNo);
       
        for(int i = 0; i < dataStore.getMetaData().getFieldCount(); i++) {
          IFieldMetaData fieldMetaData = dataStore.getMetaData().getFieldMeta(i);
         
          propertyRawValue = fieldMetaData.getProperty("visible");
          if(propertyRawValue != null
              && (propertyRawValue instanceof Boolean)
              && ((Boolean)propertyRawValue).booleanValue() == false) {
            continue;
          }
          String key = fieldMetaData.getAlias() != null ? fieldMetaData.getAlias() : fieldMetaData.getName();
          field = record.getFieldAt( dataStore.getMetaData().getFieldIndex( key ) );
         
         
         
          String fieldValue = "";
          if(field.getValue() != null) {
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

    JSONObject  result = null;
    JSONObject metadata;
    IField field;
    JSONArray fieldsMetaDataJSON;   
    JSONObject fieldMetaDataJSON;
    IRecord record;
    JSONObject recordJSON;
    int recNo;
    IDataStore dataStore;
       
    JSONArray recordsJSON;
    int resultNumber;
    Object propertyRawValue;
   
    Assert.assertNotNull(o, "Object to be serialized connot be null");
    if( !(o instanceof IDataStore) ) {
      throw new SerializationException("DataStoreJSONSerializer is unable to serialize object of type: " + o.getClass().getName());
    }
   
   
   
    try {
      dataStore = (IDataStore)o;
      result = new JSONObject();
     
      metadata = new JSONObject();
       
      metadata.put("totalProperty", TOTAL_PROPERTY);
      metadata.put("root", ROOT);
      metadata.put("id", "id");
      result.put("metaData", metadata);
     
      propertyRawValue = dataStore.getMetaData().getProperty("resultNumber");
     
     
      recordsJSON = new JSONArray();
      result.put(ROOT, recordsJSON);
   
      // field's meta
      fieldsMetaDataJSON = new JSONArray();
      //fieldsMetaDataJSON.put("recNo");
      for(int i = 0; i < dataStore.getMetaData().getFieldCount(); i++) {
        IFieldMetaData fieldMetaData = dataStore.getMetaData().getFieldMeta(i);
       
        Object visibleProp = fieldMetaData.getProperty("visible");
        if(visibleProp != null
            && (visibleProp instanceof Boolean)
            && ((Boolean)visibleProp).booleanValue() == false) {
          continue;
        }
       
        fieldMetaDataJSON = new JSONObject();
        fieldMetaDataJSON.put("header", fieldMetaData.getName());
        fieldMetaDataJSON.put("name", "column-" + (i+1));           
        fieldMetaDataJSON.put("dataIndex", "column-" + (i+1));
       
        fieldsMetaDataJSON.put(fieldMetaDataJSON);   
      }
      metadata.put("fields", fieldsMetaDataJSON);
     
      // records
      recNo = 0;
      Iterator records = dataStore.iterator();
      while(records.hasNext()) {
        record = (IRecord)records.next();
        recordJSON = new JSONObject();
        recordJSON.put("id", ++recNo);
       
        for(int i = 0; i < metadata.getJSONArray("fields").length(); i++) {
          field = record.getFieldAt(i);
          recordJSON.put("column-" + (i+1), field.getValue().toString());
        }
       
        recordsJSON.put(recordJSON);
      }
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

        }else{
          row = (Object[])o;
        }
       
       
        IRecord record = new Record(dataStore);
        for(int i = 0,  j = 0; i < dataStoreMeta.getFieldCount(); i++) {
        IFieldMetaData fieldMeta = dataStoreMeta.getFieldMeta(i);
        Boolean calculated = (Boolean)fieldMeta.getProperty("calculated");
        if(calculated.booleanValue() == false) {
          Assert.assertTrue(j < row.length, "Impossible to read field [" + fieldMeta.getName() + "] from resultset");
          record.appendField( new Field( row[j] ) );
          if(row[j] != null) fieldMeta.setType(row[j].getClass());
          j++;         
        } else {
          DataSetVariable variable = (DataSetVariable)fieldMeta.getProperty("variable");
          if(variable.getResetType() == DataSetVariable.RESET_TYPE_RECORD) {
            variable.reset();
          }
         
          record.appendField( new Field( variable.getValue()) );
          if(variable.getValue() != nullfieldMeta.setType(variable.getValue().getClass());
        }
      }
       
        processCalculatedFields(record, dataStore);
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

        SVGElement child = (SVGElement)childNode;

        String childId = child.getId();
        String column_id = childId.replaceAll(datamart.getTargetFeatureName() + "_", "");

        IRecord record = dataStore.getRecordByID( column_id );


        //Map attributes = (Map)datamart.getAttributeseById(column_id);


        String targetColor = null;
        Number kpyValue = null;
        if(record != null) {
          IField field = record.getFieldAt( dataStoreMeta.getFieldIndex(selectedKpiName) )
          String kpyValueAttr = "" + field.getValue();
          //String kpyValueAttr = (String)attributes.get( selectedKpiName ); 
          if(kpyValueAttr == null) {
            targetColor = null_values_color;
          } else {
            kpyValue = Double.parseDouble(kpyValueAttr);

            if(kpyValue.doubleValue() < lb_value.doubleValue()) {
              targetColor = lb_color;
            } else if(kpyValue.doubleValue() > ub_value.doubleValue()) {
              targetColor = ub_color;
            } else if(kpyValue.doubleValue() == ub_value.doubleValue()) {
              targetColor = col_kpi_array[trash_kpi_array.length-2];
            } else  {
              for (int j = 0; j < trash_kpi_array.length-1; j++) {
                if (kpyValue.doubleValue() >= trash_kpi_array[j].doubleValue() && kpyValue.doubleValue() <  trash_kpi_array[j+1].doubleValue()) {
                  targetColor = col_kpi_array[j];
                  break;
                }
              }
            }
          }
        }

        if(targetColor != null) {
          if(child.getNodeName().equals("path")
              || child.getNodeName().equals("polygon")
              || child.getNodeName().equals("ellipse")
              || child.getNodeName().equals("circle")
              || child.getNodeName().equals("rect")
          ) {

            child.setAttribute("fill", targetColor );
          } else if(child.getNodeName().equals("line")
              || child.getNodeName().equals("polyline")
          ) {
            child.setAttribute("stroke", targetColor );
          }

          String opacity = measure.getColurCalculatorParameters().getProperty("opacity");
          if(opacity != null) {
            child.setAttribute("opacity", opacity );
          }


        }

      }
    }

    // add label
    //Map values = datamart.getValues();
    //Iterator it = values.keySet().iterator();
    Iterator it = dataStore.iterator();
    while(it.hasNext()) {
      IRecord record = (IRecord)it.next();
      IField field = null;

      field = record.getFieldAt( dataStoreMeta.getIdFieldIndex() );
      String id = (String)field.getValue();
      //String id = (String)it.next();



      //Map kpiValueMap = (Map)values.get(id);

      String centroideId = "centroidi_" + datamart.getTargetFeatureName() + "_"  + id;
      Element centroide = targetMap.getElementById( centroideId );
      if( centroide != null ) {
        List fields = record.getFields();
        int line = 0;
        Element labelGroup = null;
        if(fields.size()>0) labelGroup = masterMap.createElement("g");
        boolean isFirst = true;
        for(int i = 0; i < fields.size(); i++) {
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

        SVGElement child = (SVGElement)childNode;
        String childId = child.getId();
        String column_id = childId.replaceAll(datamart.getTargetFeatureName() + "_", "");


        IRecord record = dataStore.getRecordByID( column_id );
        if(record == null) {
          logger.warn("No data available for feature [" + column_id +"]");
          continue;
        }
        List fields = record.getFields();
        for(int j = 0; j < fields.size(); j++) {
          if(j == dataStore.getMetaData().getIdFieldIndex() ) {
            continue;
          }
          IField field = (IField)fields.get(j);
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

        if(childNode instanceof Element) {
          SVGElement childOrig =(SVGElement)childNode;         
          String childId = childOrig.getId();
          String column_id = childId.replaceAll(datamart.getTargetFeatureName() + "_", "");         

          IRecord record = dataStore.getRecordByID( column_id );
          if(record == null) {
            logger.warn("No data available for feature [" + column_id + "]");
            continue;
          }

          IField filed = record.getFieldAt( dataStoreMeta.getFieldIndex( filedMeta.getName()) );

          String link = "" + filed.getValue();

          if (link != null) {
            mapLink = new HashMap();
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

            String[] measureColumnNames = (String[])getMetaData().getMeasureColumnNames().toArray(new String[0]);       
                      
             
              Iterator it = dataStore.iterator();
              while(it.hasNext()) {
                IRecord record = (IRecord)it.next();
               
                IField field;
               
                field = record.getFieldAt( dataStoreMeta.getFieldIndex(columnid) );
                String id = "" + field.getValue();
                if((id==null) || (id.trim().equals(""))) {
                  continue;
                }
                dataStoreMeta.getFieldMeta( dataStoreMeta.getFieldIndex(columnid) ).setProperty("ROLE", "GEOID");
               
                for(int i = 0; i < measureColumnNames.length; i++) {
                  field = record.getFieldAt( dataStoreMeta.getFieldIndex(measureColumnNames[i]) );
                    String value = "" + field.getValue();
                    if((value==null) || (value.trim().equals(""))) {
                      continue;
                    }
                    dataStoreMeta.getFieldMeta( dataStoreMeta.getFieldIndex(measureColumnNames[i]) ).setProperty("ROLE", "MEASURE");
View Full Code Here

Examples of it.eng.spagobi.tools.dataset.common.datastore.IRecord

 
  public void addLinkField(String fieldName, Link link, IDataStore dataStore) {
   
    IDataStoreMetaData dataStoreMeta;
    FieldMetadata fieldMeta;
    IRecord record;
    IField field;
   
   
    try {
      Assert.assertNotNull(fieldName, "Input parametr [fieldName] cannot be null");
      //Link parameter can be null; in that case Link.DEFAULT_BASE_URL will be used
      Assert.assertNotNull(dataStore, "Input parametr [dataStore] cannot be null");
     
      try {
        logger.debug("Adding link column [" + fieldName + ": " + link + "] ...");
       
        dataStoreMeta = dataStore.getMetaData();
        fieldMeta = new FieldMetadata();
         
        fieldMeta.setName(fieldName);
        fieldMeta.setType(String.class);
        fieldMeta.setProperty("ROLE", "CROSSNAVLINK");
       
        dataStoreMeta.addFiedMeta(fieldMeta);
       
        logger.debug("Link column [" + fieldName + ": " + link + "] added succesfully");
      } catch(Throwable t) {
        throw new GeoEngineException("Impossible to add link column [" + fieldName + ": " + link + "] to datastore", t);
      }
     
      record = null;
      try {
        logger.debug("Valorizing link column [" + fieldName + ": " + link + "] for each record in the dataset ...");
        Iterator it = dataStore.iterator();
        while(it.hasNext()) {
          record = (IRecord)it.next();
          if(link != null) {
            logger.debug("Added link value [" + link.toXString(record, env) + "]");
            field = new Field( link.toXString(record, env) )
          } else {
            field = new Field( Link.DEFAULT_BASE_URL );   
            logger.debug("Added link value [" + Link.DEFAULT_BASE_URL + "]");
          }
             
          record.appendField( field );
        }
        logger.debug("Link column [" + fieldName + ": " + link + "] has been succesfully valorized for each record in the dataset ");
      } catch(Throwable t) {
        throw new GeoEngineException("Impossible to valorize link column for record [" + record + "]", t);
      }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.