Examples of IFieldMetaData


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

    dataStoreMeta = dataStore.getMetaData();
    dataStoreMeta.deleteFieldMetaDataAt( pivotFieldIndex );
    dataStoreMeta.deleteFieldMetaDataAt( valueFieldIndex-1 );
   
    for(int i = 0; i < pivotedFieldNames.size(); i++) {
      IFieldMetaData fieldMeta;     
      fieldMeta = new FieldMetadata((String)pivotedFieldNames.get(i), pivotedFieldType);     
      dataStoreMeta.addFiedMeta( fieldMeta );
    }
  }
View Full Code Here

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

   
      // 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) {
            if(Timestamp.class.isAssignableFrom(fieldMetaData.getType())) {
              fieldValue =  TIMESTAMP_FORMATTER.formatfield.getValue() );
            } else if (Date.class.isAssignableFrom(fieldMetaData.getType())) {
              fieldValue =  DATE_FORMATTER.formatfield.getValue() );
            } else {
              fieldValue =  field.getValue().toString();
            }
          }
View Full Code Here

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

   
      // 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);   
      }
View Full Code Here

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

        }
       
       
        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);
        dataStore.appendRecord(record);
View Full Code Here

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

    List calculatedFieldsMeta;
   
    dataStoreMeta = dataStore.getMetaData();
    calculatedFieldsMeta = dataStoreMeta.findFieldMeta("calculated", Boolean.TRUE);
    for(int i = 0; i < calculatedFieldsMeta.size(); i++) {
      IFieldMetaData fieldMeta = (IFieldMetaData)calculatedFieldsMeta.get(i);
      DataSetVariable variable = (DataSetVariable)fieldMeta.getProperty("variable");
     
      ScriptEngineManager scriptManager = new ScriptEngineManager();
      ScriptEngine groovyScriptEngine = scriptManager.getEngineByName("groovy");
     
     
      // handle bindings
      // ... static bindings first
      Iterator it = bindings.keySet().iterator();
      while(it.hasNext()) {
        String bindingName = (String)it.next();
        Object bindingValue = bindings.get(bindingName);
        groovyScriptEngine.put(bindingName, bindingValue);
      }
     
      // ... then runtime bindings
      Map qFields = new HashMap();
      Map dmFields = new HashMap();
      Object[] columns = new Object[dataStoreMeta.getFieldCount()];
      for(int j = 0; j < dataStoreMeta.getFieldCount(); j++) {
        qFields.put(dataStoreMeta.getFieldMeta(j).getAlias(), record.getFieldAt(j).getValue());
        dmFields.put(dataStoreMeta.getFieldMeta(j).getProperty("uniqueName"), record.getFieldAt(j).getValue());
        columns[j] = record.getFieldAt(j).getValue();
      }
     
      groovyScriptEngine.put("qFields", qFields); // key = alias
      groovyScriptEngine.put("dmFields", dmFields); // key = id
      groovyScriptEngine.put("fields", qFields); // default key = alias
      groovyScriptEngine.put("columns", columns); // key = col-index
     
      // show time
      Object calculatedValue = null;
      try {
        calculatedValue = groovyScriptEngine.eval(variable.getExpression());
       
      } catch (ScriptException ex) {
        calculatedValue = "NA";
          ex.printStackTrace();
     
     
      //logger.debug("Field [" + fieldMeta.getName()+ "] is equals to [" + calculatedValue + "]");
      variable.setValue(calculatedValue);
     
      record.getFieldAt(dataStoreMeta.getFieldIndex(fieldMeta.getName())).setValue(variable.getValue());
    }
  }
View Full Code Here

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

  public String getFieldsBlock() {
    StringBuffer buffer = new StringBuffer();
       
    int fieldNo = dataStore.getMetaData().getFieldCount();
    for(int i = 0; i < fieldNo; i++) {
      IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
      if(fieldMeta.getType().getName().equalsIgnoreCase(DateDecorator.class.getName())) {
        fieldMeta.setType(Date.class);
      }
      buffer.append("<field name=\"" + fieldMeta.getName() + "\" class=\"" +  fieldMeta.getType().getName() + "\"/>\n");
    }
   
    return buffer.toString();
  }
View Full Code Here

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

    int x = 0;
   
    int i=0;
    int fieldNo = dataStore.getMetaData().getFieldCount();
    for(i = 0; i < fieldNo; i++) {
      IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
     
     
      boolean isANumber = false;
      String className = fieldMeta.getType().getName();
      Class fieldClass = Object.class;
      try {
        fieldClass = Class.forName(className);
      } catch (ClassNotFoundException e) {
        logger.error("Class type not recognized: [" + className + "]", e);
      }
      if (Number.class.isAssignableFrom(fieldClass)){
        isANumber = true;
      }
     
      buffer.append("<textField isStretchWithOverflow=\"true\" isBlankWhenNull=\"false\" evaluationTime=\"Now\" hyperlinkType=\"None\"  hyperlinkTarget=\"Self\" ");
      if (isANumber) {
        String pattern = (String)fieldMeta.getProperty("pattern");
        buffer.append(" pattern=\"" + ((pattern != null) ? pattern : DEFAULT_NUMBER_PATTERN) + "\"");
      }
      buffer.append(" >\n");
     
      buffer.append("<reportElement " +
                  "mode=\"" + "Opaque" + "\" " +
                  "x=\"" + x + "\" " +
                  "y=\"" + 0 + "\" " +
                  "width=\"" + columnWidth[i] + "\" " +
                  "height=\"" + detailHeight + "\" " +
                  "forecolor=\"" + getParamValue(PN_DETAIL_EVEN_ROW_FORECOLOR, DEFAULT_DETAIL_EVEN_ROW_FORECOLOR ) + "\" " +
                  "backcolor=\"" + getParamValue(PN_DETAIL_EVEN_ROW_BACKCOLOR, DEFAULT_DETAIL_EVEN_ROW_BACKCOLOR) + "\" " +
                  "key=\"textField\">\n");
     
      buffer.append("<printWhenExpression><![CDATA[new Boolean(\\$V\\{REPORT_COUNT\\}.intValue() % 2 == 0)]]></printWhenExpression>");
      buffer.append("</reportElement>");
      buffer.append("<box leftPadding=\"2\" rightPadding=\"2\" topBorder=\"None\" topBorderColor=\"#000000\" leftBorder=\"None\" leftBorderColor=\"#000000\" rightBorder=\"None\" rightBorderColor=\"#000000\" bottomBorder=\"None\" bottomBorderColor=\"#000000\"/>\n");

     
      buffer.append("<textElement " +
                "textAlignment=\"" + (isANumber ? "Right": "Left") + "\" " +
                "verticalAlignment=\"Middle\"> " +
                "<font pdfFontName=\"" + getParamValue(PN_ROW_FONT, DEFAULT_ROW_FONT)+ "\" " +
                    "size=\"" + getParamValue(PN_ROW_FONT_SIZE, DEFAULT_ROW_FONT_SIZE)+ "\"/>" +
              "</textElement>\n");
     
      if(fieldMeta.getType().getName().equalsIgnoreCase("java.sql.Date")) {
        buffer.append("<textFieldExpression   " +
              "class=\"java.lang.String\"> " +
              "<![CDATA[\\$F\\{" + fieldMeta.getName() + "\\}.toString()]]>\n" +
              "</textFieldExpression>\n");
      } else {
        buffer.append("<textFieldExpression   " +
              "class=\"" + fieldMeta.getType().getName() + "\"> " +
              "<![CDATA[\\$F\\{" + fieldMeta.getName() + "\\}]]>\n" +
              "</textFieldExpression>\n");
      }
   
     
      buffer.append("</textField>\n\n")
     
     
     
     
      buffer.append("<textField isStretchWithOverflow=\"true\" isBlankWhenNull=\"false\" evaluationTime=\"Now\" hyperlinkType=\"None\"  hyperlinkTarget=\"Self\" ");
      if (isANumber) {
        String pattern = (String)fieldMeta.getProperty("pattern");
        buffer.append(" pattern=\"" + ((pattern != null) ? pattern : DEFAULT_NUMBER_PATTERN) + "\"");
      }
      buffer.append(" >\n");
      buffer.append("<reportElement " +
                    "mode=\"" + "Opaque" + "\" " +
                    "x=\"" +  x  + "\" " +
                    "y=\"" + 0 + "\" " +
                    "width=\"" + columnWidth[i] + "\" " +
                    "height=\"" + detailHeight + "\" " +
                    "forecolor=\"" + getParamValue(PN_DETAIL_ODD_ROW_FORECOLOR, DEFAULT_DETAIL_ODD_ROW_FORECOLOR ) + "\" " +
                  "backcolor=\"" + getParamValue(PN_DETAIL_ODD_ROW_BACKCOLOR, DEFAULT_DETAIL_ODD_ROW_BACKCOLOR) + "\" " +
                  "key=\"textField\">\n");
      buffer.append("<printWhenExpression><![CDATA[new Boolean(\\$V\\{REPORT_COUNT\\}.intValue() % 2 != 0)]]></printWhenExpression>");
      buffer.append("</reportElement>");
      buffer.append("<box leftPadding=\"2\" rightPadding=\"2\" topBorder=\"None\" topBorderColor=\"#000000\" leftBorder=\"None\" leftBorderColor=\"#000000\" rightBorder=\"None\" rightBorderColor=\"#000000\" bottomBorder=\"None\" bottomBorderColor=\"#000000\"/>\n");

      buffer.append("<textElement " +
                "textAlignment=\"" + (isANumber ? "Right": "Left") + "\" " +
                "verticalAlignment=\"Middle\"> " +
                "<font pdfFontName=\"" + getParamValue(PN_ROW_FONT, DEFAULT_ROW_FONT)+ "\" " +
                  "size=\"" + getParamValue(PN_ROW_FONT_SIZE, DEFAULT_ROW_FONT_SIZE)+ "\"/>" +
                "</textElement>\n");
     
      if(fieldMeta.getType().getName().equalsIgnoreCase("java.sql.Date")) {
        buffer.append("<textFieldExpression   " +
              "class=\"java.lang.String\"> " +
              "<![CDATA[\\$F\\{" + fieldMeta.getName() + "\\}.toString()]]>\n" +
              "</textFieldExpression>\n");
      } else {
        buffer.append("<textFieldExpression   " +
              "class=\"" + fieldMeta.getType().getName() + "\"> " +
              "<![CDATA[\\$F\\{" + fieldMeta.getName() + "\\}]]>\n" +
              "</textFieldExpression>\n");
      }
     
      buffer.append("</textField>\n\n\n")
     
View Full Code Here

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

    int x = 0;
   
    int i=0;
    int fieldNo = dataStore.getMetaData().getFieldCount();
    for(i = 0; i < fieldNo; i++) {
      IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
     
      buffer.append("<staticText>\n");
      buffer.append("<reportElement " +
            "mode=\"" + "Opaque" + "\" " +
            "x=\"" + x + "\" " +
            "y=\"" + 0 + "\" " +
            "width=\"" + columnWidth[i] + "\" " +
            "height=\"" + getParamValue(PN_HEADER_HEIGHT, DEFAULT_HEADER_HEIGHT ) + "\" " +
            "forecolor=\"" + getParamValue(PN_HEADER_FORECOLOR, DEFAULT_HEADER_FORECOLOR ) + "\" " +
            "backcolor=\"" + getParamValue(PN_HEADER_BACKCOLOR, DEFAULT_HEADER_BACKCOLOR ) + "\" " +
            "key=\"staticText\"/>\n")

      buffer.append("<box leftPadding=\"2\" rightPadding=\"2\" topBorder=\"None\" topBorderColor=\"#000000\" leftBorder=\"None\" leftBorderColor=\"#000000\" rightBorder=\"None\" rightBorderColor=\"#000000\" bottomBorder=\"None\" bottomBorderColor=\"#000000\"/>\n");

      buffer.append("<textElement " +
          "textAlignment=\"" + (fieldMeta.getType().getName().equalsIgnoreCase("java.lang.String")? "Left": "Left") + "\" " +
          "verticalAlignment=\"Middle\"> " +
            "<font pdfFontName=\"" + getParamValue(PN_HEADER_FONT, DEFAULT_HEADER_FONT) + "\" " +
                "size=\"" + getParamValue(PN_HEADER_FONT_SIZE, DEFAULT_HEADER_FONT_SIZE) + "\" " +
                "isBold=\""+getParamValue(PN_HEADER_FONT_BOLD, DEFAULT_HEADER_FONT_BOLD)+"\" "+
                "isItalic=\""+getParamValue(PN_HEADER_FONT_ITALIC, DEFAULT_HEADER_FONT_ITALIC)+"\"/> " +
        "</textElement>\n");

      String alias = fieldMeta.getAlias();
      alias = (alias == null? fieldMeta.getName(): alias);
      String escapedAlias = escape(alias);
      buffer.append("<text><![CDATA[" + escapedAlias + "]]></text>\n");

      buffer.append("</staticText>\n\n");   
View Full Code Here

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

    pixelPerColumn = totalWidth/(fieldNo);
    remainderPixels = totalWidth%(fieldNo);
    pixelPerChar = Integer.parseInt(getParamValue(PN_PIXEL_PER_CHAR, DEFAULT_PIXEL_PER_CHAR ));
   
    for(int i = 0; i < fieldNo; i++) {
      IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
      Integer fieldWidth = (Integer)fieldMeta.getProperty("width");
      int width = (fieldWidth == null)? 80: fieldWidth.intValue();
      int fieldRequiredWidthInPixel = width * pixelPerChar;
      if(fieldRequiredWidthInPixel < pixelPerColumn) {
        columnWidthInPixel[i] = fieldRequiredWidthInPixel;
        freePixels += (pixelPerColumn-fieldRequiredWidthInPixel);
        overflowFieldNum--;
      } else {
        columnWidthInPixel[i] = pixelPerColumn;
      }
     
    }
   
    if(overflowFieldNum > 0 && freePixels > 0) {
      freePixels += remainderPixels;
      pixelPerColumn = freePixels/overflowFieldNum;
      remainderPixels = freePixels%overflowFieldNum;
      for(int i = 0; i < fieldNo; i++) {
        IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
        Integer fieldWidth = (Integer)fieldMeta.getProperty("width");
        int width = (fieldWidth == null)? 80: fieldWidth.intValue();
        int fieldRequiredWidthInPixel = width * pixelPerChar;
        if(fieldRequiredWidthInPixel > columnWidthInPixel[i]) {
          columnWidthInPixel[i] += pixelPerColumn;
          if(fieldRequiredWidthInPixel > columnWidthInPixel[i]) overflowFieldNum--;
View Full Code Here

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

    int overflowFieldNum =fieldNo;
    int pixelPerColumn = totalWidth/(fieldNo);
    int remainderPixels = totalWidth%(fieldNo);
   
    for(int i = 0; i < fieldNo; i++) {
      IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
      Integer fieldWidth = (Integer)fieldMeta.getProperty("width");
      int width = (fieldWidth == null)? 80: fieldWidth.intValue();
      int fieldRequiredWidthInPixel = width * pixelPerChar;
      if(fieldRequiredWidthInPixel < pixelPerColumn) {
        columnWidthInPixel[i] = fieldRequiredWidthInPixel;
        freePixels += (pixelPerColumn-fieldRequiredWidthInPixel);
        overflowFieldNum--;
      } else {
        columnWidthInPixel[i] = pixelPerColumn;
      }
     
    }
   
    int lines = 1;
    if(overflowFieldNum > 0 && freePixels > 0) {
      freePixels += remainderPixels;
      pixelPerColumn = freePixels/overflowFieldNum;
      remainderPixels = freePixels%overflowFieldNum;
      for(int i = 0; i < fieldNo; i++) {
        IFieldMetaData fieldMeta = dataStore.getMetaData().getFieldMeta(i);
        Integer fieldWidth = (Integer)fieldMeta.getProperty("width");
        int width = (fieldWidth == null)? 80: fieldWidth.intValue();
        int fieldRequiredWidthInPixel = width * pixelPerChar;
        if(fieldRequiredWidthInPixel > columnWidthInPixel[i]) {
          columnWidthInPixel[i] += pixelPerColumn;
          if(fieldRequiredWidthInPixel < columnWidthInPixel[i]) overflowFieldNum--;
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.