/
カスタムフォーマッターコードの例
カスタムフォーマッターコードの例
これらの便利なJavaコードの例を使用することで、様々なタイプのカスタムフォーマッターを作成することができます。
CustomFormatter.java
packagecom.hof.mi.interfaces; /** * Base class for Custom Formatters */ public abstract class CustomFormatter extends UserInputParameters { private static final String cvsId = "$Id: CustomFormatter.java,v 1.1 2008-02-29 04:07:06 steve Exp $"; public static final int RENDER_HTML = 1; public static final int RENDER_TEXT = 2; public static final int RENDER_CSV = 3; public static final int RENDER_LINK = 4; /** * Returns the display name for this custom formatter * @return name */ public abstract String getName(); /** * Returns true if this custom formatter accepts the given native type. * @param type the data type to check * @return true/false */ public abstract boolean acceptsNativeType(int type); /** * Returns whether or not the value returned from this formatter * includes html code. If this returns false, a String value * will have any html entities parsed before output. * @return true/false */ public boolean returnsHtml() { return false; } /** * Method to render a value using this custom defined data type format. * This is called internally when the report is rendered. The current render type is passed in so * that rendering can be modifed for each type (ie. CSVs cannot contain image data) * @param value - Object to be formatted * @paramrenderType - How the report is being rendered. * @return String - The value rendered to a String * @throws Exception - Throw an exception, Yellowfin will do an Object.toString() call if an exception is encountered */ public abstract String render(Object value, int renderType) throws Exception; }
CurrencyFormatter.java
こちらの例では、カスタムフォーマッターは数値を受け取り、それを通貨値として書式設定しています。
package com.example.formatters; import com.hof.mi.interfaces.CustomFormatter; import java.text.*; public class CurrencyFormatter extends CustomFormatter { public String getName() { return "Currency Formatter"; } public boolean acceptsNativeType(int type) { // We only handle numeric types if (type == TYPE_NUMERIC) return true; return false; } public String render(Object value, int renderType) throws Exception { if (value == null) return null; if (renderType == RENDER_LINK) { // Return a generic version of the value return value.toString(); } // Create a String representing the value as a currency value NumberFormat nf = new DecimalFormat("0.00"); return "$" + nf.format((Number)value); } }
後項:付録
, multiple selections available,
Related content
カスタムフォーマッターコードの例
カスタムフォーマッターコードの例
More like this
カスタムフォーマッターコードの例
カスタムフォーマッターコードの例
More like this
カスタムフォーマッター付録
カスタムフォーマッター付録
More like this
カスタムフォーマッターの実装
カスタムフォーマッターの実装
More like this
カスタムフォーマッターの実装
カスタムフォーマッターの実装
More like this
カスタムフォーマッター付録
カスタムフォーマッター付録
More like this