リリース ノート
Preview (weekly preview)
以下の変更は毎週のプレビュー ビルドで利用可能で、次回の RTM リリースに含まれる予定です。
バグ
すべてのプラットフォーム
- グリッドおよびピボットの PDF エクスポートで、文字列値が 200 文字で切り捨てられることがなくなりました。従来、PDF エクスポーターはエンジンの制限に加えて独自の 200 文字の制限を適用していたため、エクスポートに表示されるテキストがダッシュボードよりも短くなる場合がありました。この追加の制限が削除され、エクスポートされるテキストはエンジンの
MaxStringCellSize設定 (デフォルトは 256 文字) に従うようになり、エクスポートにはダッシュボードと同じ長さのテキストがセルごとに表示されます。さらに多くの文字を表示するにはMaxStringCellSizeを大きくしてください。セルは幅が固定されているため、長い値は折り返されてページ数が増加することにご注意ください。
2.2.0 (September 3rd, 2026)
重大な変更
newTooltipベータ機能フラグが削除されました。ホバー ツールチップがデフォルトになったため、このフラグを有効化する呼び出しは削除できます。- 新しい DataGrid が Reveal SDK のデフォルトのグリッド表示形式になりました。既存のグリッド表示形式は、ダッシュボードを変更しなくても新しい DataGrid で描画されます。従来のグリッドを引き続き使用する場合は、
newDataGrid機能フラグを無効にしてください。同じセルに複数の条件付き書式ルールが重なる場合、新しい DataGrid は一致するすべてのルールをリストの順序で適用し、重複する書式プロパティについては後のルールが優先されます。この動作は従来のグリッドとは異なるため、重複するルールに依存しているダッシュボードは、アップグレード後に影響を受ける可能性があります。
新機能
- チャートでユーザーが作成した注釈がサポートされるようになり、専用のエディターとスタイル設定オプションが追加されました。カテゴリ チャート ファミリーでポイント、スライス、ストリップの注釈タイプを使用できます。注釈はダッシュボードとともに保存されるため、すべての閲覧者が同じ位置で同じメモを確認できます。
- グリッド、ピボット、スパークライン、および新しい DataGrid 表示形式でハイパーリンク列がサポートされるようになりました。URL リンクとダッシュボード リンクに対応し、フィールド トークンの置換が可能です。ダッシュボード リンクのコールバックにはセルおよび行のコンテキストが渡されます。
- 再設計されたツールチップがベータ版ではなくなり、デフォルトになりました。ツールチップは、サポートされるすべての表示形式でホバー時に表示され、ドリル ダウンやフィルタリングなどのツールチップ アクションをツールチップから直接利用できます。表示のオン / オフは
RevealView.showTooltipsで切り替えます。さらに、ツールチップの動作に関する残りの既知の問題も解決し、すべての表示形式でより一貫性のある体験を提供します。 - 表示形式の列ハイパーリンクおよび行レベルのアクションで相対 URL がサポートされるようになりました。URL フィールドがフォーカスを外れると自動的に正規化されます。
- 新しい DataGrid 表示形式が Reveal SDK のデフォルトのグリッドになりました。また、対象となるセルの「フィルター条件」アクションによるインタラクティブ フィルタリングもサポートされます。
RVDashboardに、JSON からダッシュボードを読み込み、JSON にシリアル化するメソッドが追加されました:
const dashboard = RVDashboard.loadFromJson(json);
revealView.dashboard = dashboard;
const asObject = revealView.dashboard.toJson();
const asString = revealView.dashboard.toJsonString();
- SQL ベースのデータ ソースを選択すると、メタデータ画面にデータベース名ではなくデータ ソースのタイトルが表示されるようになりました。
- SQLite および DuckDB コネクタで、パラメーター化されたカスタム クエリがサポートされるようになりました。
- PostgreSQL コネクタでストアド プロシージャがサポートされるようになりました。
- Snowflake で
applyTimeZone関数がサポートされるようになりました。 - MongoDB コネクタ: スキーマ推論で検出されなかったフィールドを明示的に使用できるようになりました。
- MongoDB のクエリ パフォーマンスと結合処理が改善されました。
- SQL データ ソースのテーブル、ビュー、ストアド プロシージャがアルファベット順に並べ替えられるようになりました。
- 無効なデータ ソース URL のエラー メッセージがより分かりやすくなりました。
- 一般的な日本語のリソース文字列が一貫性のために見直され、修正されました。
バグ修正
すべてのプラットフォーム
- XMLA データ ソースをキャプションで並べ替えたときに発生していたクラッシュを修正しました。
- ページングされたグリッドの Excel および CSV エクスポートで古いデータが出力される問題を修正しました。
- データ フィルター ダイアログを繰り返し閉じたときに発生していたクラッシュを修正しました。
- SQLite コネクタの
SortIntervalをエンジンの実装に合わせて修正しました。 - クエリに
ORDER BY句がない場合に MSSQL のページングが失敗する問題を修正しました。 - デフォルトの書式設定を使用する計算フィールドの Excel データ ラベルの問題を修正しました。
- SSRS のいくつかの問題を修正しました。
- ツールチップがフィールドの桁区切り記号の設定に従うようになりました。
- 結合ノードのないサブクエリの処理を修正しました。
- データ フィルターの値リストを更新すると、値が再取得されるようになりました。
- データ ブレンディング使用時のセクション フィールドの問題を修正しました。
- ラジアル チャートが空白で表示される問題を修正しました。
Find関数が誤った結果を返す問題を修正しました。- KPI 表示形式の問題を修正しました。
- グリッド ページングのバグを修正しました。
- DataGrid の太字の条件付き書式で斜体のみが適用されていた問題を修正しました。
- 明示的な日付形式が設定されていない列で、DataGrid の日付および時刻セルが書式設定されていない値にフォールバックする問題を修正しました。
- 設定されていても非表示になっている列集計が、DataGrid に表示されないようになりました。
ASP.NET
- 日付フィルターのパラメーターを自動読み込みする際に発生していた
Unexpected UserContext instance typeエラーを修正しました。
2.1.0 (July 7th, 2026)
重大な変更
- レガシーの
$.igおよびRevealApiグローバル オブジェクトが削除されました。
新機能
- 新しいデータ ソース: SQLite (カスタム クエリをサポート)。
- 新しいデータ ソース: Cube。
- 新しいデータ ソース: DuckDB (ファイルおよび MotherDuck データベース、カスタム クエリ、ストアド プロシージャ (DuckDB マクロ) をサポート)。
- ほとんどのデータベース コネクタが新しい (v2) コネクタ アーキテクチャに移行され、組み込みの SQL インジェクション保護が追加されました。
- 新しい DataGrid ビジュアライゼーション (
newDataGridベータ機能) は、ページングされたデータ ソースに接続されている場合の並べ替え、グループ化、フィルタリングをサポートするようになり、クラシック グリッドのページング エクスペリエンスに近づきました。 - リニア ゲージ、ラジアル ゲージ、ブレット グラフの表示形式の UI が更新され、ベータ版ではなくなりました。
- ピボット、グリッド、スパークライン表示形式のキーボード ナビゲーションとアクセシビリティがさらに改善され、編集モードでの完全なキーボード ナビゲーション サポートが追加されました。
- SQL Server データ ソース:
ApplicationIntent=ReadOnlyおよびMultiSubnetFailover接続オプションのサポートが追加されました。 - 日付フィルターの UI が更新されました。すべてのフィールドがすでにフィルタリングされている場合、[フィルターの追加] は非表示になります。
additionalHeadersProviderは非同期実装をサポートするようになりました:
RevealSdkSettings.setAdditionalHeadersProvider(async (url: string) => {
const token = await refreshTokenIfNeeded();
return { Authorization: `Bearer ${token}` };
});
- Excel エクスポートで数値の書式設定がサポートされるようになりました。
- MongoDB コネクタ:
allowDiskUseのサポートが追加されました。 - カスタム表示形式テンプレートが改善されました。
- DataGrid 表示形式に
empty-dataテキストが追加され、ダッシュボードに追加された最初の表示形式に表示される空状態アイコンが更新されました。
AI
- AI を使用してメタデータ カタログの自動補完を可能にする、メタデータ エンリッチメントの最初のイテレーションが導入されました。デフォルトでは無効です。
- 複数のカスタム AI プロバイダーへの接続のサポートが追加されました (Node と Java。C# にはすでに存在していました)。
- Anthropic プロバイダーが公式の Anthropic SDK に移行されました。
- ホット リロード / 部分的な再生成、ユーザーごとのコンテキスト サポート、新しいプラガブルなメタデータ ストレージ プロバイダーなど、メタデータ レイヤーが改善されました。
- 組み込みコネクタ向けに
networkTimeoutオプションが公開 されました。 - ダッシュボード生成において、特定の名前付き四半期および月の日付範囲処理を修正しました。
バグ修正
すべてのプラットフォーム
- 古いインタラクション データが原因で発生していたツリーマップ表示形式のクラッシュを修正しました。
- ピボット表示形式でツールチップが表示されない問題を修正しました。
- 非表示フィールドおよび計算フィールドに対するフィールドベースの条件付き書式の問題を修正しました。
- グリッド表示形式で「データがありません」メッセージが表示されない問題を修正しました。
- 連続するレベルに同じ値が含まれる場合の階層展開の問題を修正しました。
- コンテキスト メニューを開いてもカスタム表示形式が非表示にならないようになりました。
RevealViewがダッシュボードを編集前の状態に戻してしまう問題を修正しました。- 負のパーセンテージの書式設定の問題を修正しました。
- XMLA からタブラーへの変換中に選択した日付の値が正しく伝播しない問題を修正しました。
- すでにそのフィールドでフィルタリングされている場合、「フ ィルター条件」コンテキスト メニュー オプションが非表示になるようになりました。
- 非表示の値フィールドでフィルタリングした場合にクエリ結果が正しくない問題を修正しました。
- フィルター値の選択に関するいくつかの問題を修正しました。
- バブル チャートの Excel エクスポートでデータ範囲の問題を修正しました。
- 画像エクスポートで、はぐれたダッシュボードの閉じるボタンが誤って復元される問題を修正しました。
- 接頭辞付き名前空間または絶対リレーションシップ ターゲットを使用する XLSX ファイルの読み込みの問題を修正しました。
- 埋め込みダッシュボードでのフィルターと最大化に関する問題を修正しました。
- 最大化の信頼性を向上させました。
Java
- Java で BigQuery データ ソース項目を定義する際にエラーが発生する問題を修正しました。
2.0.0 (May 15th, 2026)
重大な変更
すべてのプラットフォーム
- レガシーの Java および WPF エンジン バックエンドが削除されました。
- 非推奨のレガシー チャート タイプが削除されました。
- 非推奨の
DateFilterプロパティがRevealView、RVDashboard、RVDateDashboardFilter、RevealSettings、IExportOptions、および関連クラスから削除されました。 RVDashboardThumbnailViewは非推奨となり、新しいRVThumbnailクラスに置き換えられました。- SQL Server ベースのコネクタは、公式の Microsoft SQL Server クライアント ライブラリを使用するようになりました。信頼されていない、または自己署名のサーバー証明書を使用する接続では、データ ソース設定時に
TrustServerCertificateを設定する必要がある場合があります。
Node
- ヘッドレス エクスポート オプションの
dateFilterプロパティは削除されました。代わりにRVDateDashboardFilterとRVDateRuleを使用したfilters配列をご使用ください。
Java
- Java SDK は Java 17 以上が必須になりました。
- Java SDK は
io.revealbi:reveal-sdk-servletMaven アーティファクトとRevealEngineServletを使用するサーブレット ベース構成になりました。 - Java SDK は Linux、Windows、OSX をサポートし、3 つの OS すべてで x64 と arm64 の両アーキテクチャをサポートします。
- Jetty をサーバーとして使用する場合、Reveal SDK が内部で使用している Jetty(現在は 12.0.12)とバージョンが競合する可能性があります。
新機能
すべてのプラットフォーム
- 新しいデータ ソース: Azure Cosmos DB。
- 新しいデータ ソース: ClickHouse。
- 新しいデータ ソース: Elasticsearch。
- グリッド、ピボット、棒グラフ、縦棒グラフ、テキスト ビジュアライゼーションで、フィールドの値に基づいた条件付き書式が適用できるようになりました。固定(静的)値との比較に加え、条件付き書式ルールで同じビジュアライゼーション内の別のフィールドと比較できるようになりました。書式設定は各行の実際のデータに基づいて個別に評価されます。詳細はこちら。
- ダッシュボードおよび個々のビジュアライゼーションのサムネイルをプ ログラムから生成できる新しい
RVThumbnailクラスが追加されました。非推奨のRVDashboardThumbnailViewAPI を置き換え、ランタイム テーマの変更もサポートします。
import { RVThumbnail } from "reveal-sdk";
async function renderThumbnail() {
await RVThumbnail.fromDashboard("#thumbnail", "Sales");
}
renderThumbnail();
- DataGrid ビジュアライゼーションで、セルの選択、複数セルのドラッグ選択、Ctrl+C によるクリップボードへのコピーがサポートされました。また、列ヘッダー、交互行、セル境界線のデザインも更新されました。
RevealViewがスタンドアロンの npm パッケージとして利用可能になりました。- セル数の上限設 定が
$.ig.RVUtility.prototype.maxCellsRestrictionからRevealSdkSettings.maxCellsRestrictionに変更されました。 - キーボード ナビゲーションがデフォルトで有効になりました。ウィジェットのタイトルとインタラクティブな要素に、スクリーン リーダー向けの ARIA 属性が改善されました。
- ビジュアライゼーション エディターのチャート領域とデータ領域の間に、ドラッグ可能なスプリッターが追加されました。
- SQL Server 接続の統合認証が改善されました。
- 以前の内部実装に代わり、公式の Microsoft SQL Server クライアント ライブラリが使用されるようになりました。
- Snowflake で
AllowsOAuthAccountTypeによる OAuth アカウント タイプがサポートされました。 - ネットワーク障害後のデータ エージェントの接続回復が改善されました。
Java
- Java SDK はコネクタと拡張ポイントについて .NET SDK と機能同等になりました(
InMemoryDataProviderを除く)。InMemoryDataProviderは今後のリリースで Java に移植される予定です。 - Java SDK で
RVRedisOptionsを使用した Redis キャッシュがサポートされました。 DefaultDashboardThemeがサポートされました。- ヘッドレス エクスポートで CSV 形式がサポートされました。
CsvExportOptions options = new CsvExportOptions();
options.setUseFormattedValues(true);
CompletableFuture<InputStream> result = dashboardExporter.exportToCsv("dashboardId", null, options);
- カスタム フィールド スキーマ、計算フィールド、カスタム メジャーを有効にするベータ API として
IRVDataModelProviderが利用可能になりました。既存の .NET 実装と同等の機能を提供します。
public class MyDataModelProvider implements IRVDataModelProvider {
@Override
public CompletableFuture<List<RVDataModelField>> editSchema(RVDataSourceItem dataSourceItem, List<RVDataModelField> schema, IRequestContext requestContext) {
// フィールド スキーマのカスタマイズ
return CompletableFuture.completedFuture(schema);
}
@Override
public CompletableFuture<List<RVDataModelCalculatedField>> getCalculatedFields(RVDataSourceItem dataSourceItem, IRequestContext requestContext) {
// 計算フィールドの注入
return CompletableFuture.completedFuture(null);
}
@Override
public CompletableFuture<List<RVDataModelMeasure>> getMeasures(RVDataSourceItem dataSourceItem, IRequestContext requestContext) {
// カスタム メジャーの追加
return CompletableFuture.completedFuture(null);
}
}
- .NET SDK でのみ利用可能だったキャッシュ設定(
maxDownloadSize、maxInMemoryCellsなど)が Java SDK でも公開されました。 - ヘッドレス エクスポートの日付フィルターに
RVDateRuleが利用できるようになりました。
ExportOptions exportOptions = new ExportOptions();
exportOptions.getFilters().add(new RVDateDashboardFilter(new RVDateRule(RVPeriodRelation.TO_DATE, RVPeriodType.YEAR)));
Node
- カスタム フィールド スキーマ、計算フィールド、カスタム メジャーを有効にするベータ API として
IRVDataModelProviderが利用可能になりました。既存の .NET 実装と同等の機能を提供します。
class MyDataModelProvider implements IRVDataModelProvider {
async editSchema(userContext, dataSourceItem, schema) {
// スキーマ内の既存フィールドを変更します(例: defaultAggregation、label、description の変更)。変更を適用するには変更後の配列を返し、元のままにするには null を返します。
schema.find(f => f.name === "Discount").defaultAggregation = RVDashboardAggregationType.CountDistinct;
schema.find(f => f.name === "UnitPrice").label = "Price per Unit";
return schema;
}
async getCalculatedFields(userContext, dataSourceItem) {
// 既存のフィールド名を参照する式を使用して新しい計算フィールドを注入します(例: [UnitPrice] * [Quantity])。これらはビジュアライゼーション エディターに追加フィールドとして表示されます。
return [{ name: "LineTotal", type: RVDashboardDataType.Number, expression: "[UnitPrice] * [Quantity] * (1 - [Discount])" }];
}
async getMeasures(userContext, dataSourceItem) {
// sum(...)、sumif(...)、PREVIOUS(...) などの式を使用してカスタム集計メジャーを注入します。これらはビジュアライゼーション構築時に利用可能なメジャーとして表示されます。
return [{ name: "Total Revenue", expression: "sum([UnitPrice] * [Quantity])", description: "Revenue before discount" }];
}
}
- .NET SDK でのみ利用可能だったキャッシュ設定(
maxDownloadSize、maxInMemoryCellsなど)が Node SDK でも公開されました。
const revealOptions: RevealOptions = {
maxDownloadSize: 200 * 1024 * 1024,
maxInMemoryCells: 10_000_000,
};
- ヘッドレス エクスポートの日付フィルターに
RVDateRuleが利用できるようになりました。dateFilterプロパティは削除されました — 代わりにfiltersをご使用ください。
const exportOptions = new ExportOptions();
exportOptions.filters = [new RVDateDashboardFilter(new RVDateRule(RVPeriodRelation.ToDate, RVPeriodType.Year))];
バグ修正
すべてのプラットフォーム
- Azure Cosmos DB で階層データが読み取れませんでした。
- 一部のチャート シリーズが描画されず、コンボ積み上げシリーズにホバーするとクラッシュしていました。
- ダッシュボードの読み込み完了時にキーボード フォーカスが失われていました。
- ゲージ ビジュアライゼーションでデータ値が最大値を超えた場合に、最大値にクランプされませんでした。
overrideLocaleの同時呼び出しが不正な動作を引き起こす場合がありました。- TypeScript のみのビルドで
parseISODateが利用できませんでした。 - 特定のチャート タイプでサムネイル生成が失敗していました。
- モジュール バンドラーを使用する場合にローカライズが正しく機能しませんでした。
- YouTube Analytics コネクタで日付フィルターが正しく適用されませんでした。
RevealViewコンストラクターが CSS セレクター文字列を正しく受け付けず、DOM 要素のみ機能していました。RVJsonSchemaConfigBuilderで日付フィールドに誤った列タイプが割り当てられていました。Dataが設定されていない場合にピボット フィールド エディターで null 参照クラッシュが発生していました。- 条件付き書式ルールで null または空のカラー プロパティを開くとクラッシュしていました。
- フィルターが一致しない場合にヘッドレス エクスポートが失敗していました。
- ダッシュボード リンクをたどった後に戻る操作でエラーが発生していました。
- MongoDB の
VerifyConnectionが予期せず失敗していました。 filterValueChangedEventが正しく発火しないリグレッションが発生していま した。- YouTube OAuth に必要な設定エントリが欠落していました。
- LinkedIn コネクタで非推奨のメトリクスが原因で失敗が発生していました。
- Excel データ ソース アイテムの「最初の行をタイトルとして使用」パラメーターが正しく設定されていませんでした。
- データ ソース セレクター ダイアログでタイトルが表示されていませんでした。
1.8.4 (Mar 5th, 2026)
New Features
All Platforms
- New data source: MariaDB.
- Redshift now supports stored procedures.
- KPI visualizations now support conditional formatting.
- Added "Between" and "Not Between" number comparison operators for conditional formatting.
- Keyboard accessibility improvements in View Mode for grid and pivot visualizations.
- Localization now uses the user's language preference instead of the server locale. This affects labels such as "Grand Total" in Excel export, and "Previous" and "Current" in KPI visualizations.
- Elasticsearch now supports parameterized queries.
- MySQL now supports timezone conversion.
- Added a "Remove" button to the visualization editor fields list.
- Added a search box to the visualization type selection dialog.
- Added an
onFilterValueChangedevent to the RevealView. The event fires when the user uses the filtering UI or API to modify the selection of a filter.
revealView.onFilterValueChanged = (args) => {
console.log("Filter:", args.filter);
console.log("Source:", args.source.title);
console.log("Old value:", args.oldValue);
console.log("New value:", args.newValue);
};
Bugs
All Platforms
- The "Null or empty" filter option text is now localized.
- Switching visualizations quickly when using statistical functions could lose the original baseline.
- MongoDB blending regression.
- Cache not working in some scenarios for NodeJS and Java SDKs.
- Pivot Excel export headers missing when grand totals are visible.
- Dashboard filter refresh rate ignoring the metadata screen expiration setting.
- Stacked chart y-axis range only using first value field's range.
- Combination chart: changing the display order alters the y-axis range.
- Local evaluation of "not equals" operators incorrect.
- ScatterMap null reference exception when reloading data.
- Date range generation for quarter-based rules incorrect on web.
- SSAS hierarchical filters not working correctly.
- MySQL error when the database name includes a hyphen.
- Field search box not showing up in the visualization editor.
- Dashboard filter binding issues.
- Auto connect filters issues.
- Headless export inconsistencies with deferred rendering.
- Maximized visualization sizing and loading incorrect when dashboard has global filters.
- Multiple visualization editors could appear simultaneously in the dashboard layout.
- Show data labels setting not applied in Excel export.
- Data source icon not displaying for some data sources.
- Maximized visualization state incorrectly reported after minimizing.
- Headless export null pointer when the server returns 4xx or 5xx errors.
- Exporting a dashboard containing text widget could fail.
- Null values not treated as the smallest value when sorting.
- Azure Analysis Services could cause a null reference when global filters are present.
Java
- Headless export crash when exporting a grid visualization.
1.8.3 (2026 年 1 月 9 日)
新機能
すべてのプラットフォーム
- 条件付き書式の形状選択ポップアップが改善され、クリア オプションが含まれるようになりました。
- 新しい円チャートとドーナツ チャートが一般利用可能になりました。この更新された円チャートとドーナツ チャートは、以前の円チャートとドーナツ チャートの表示形式を置き換えます。
- ヘッドレス エクスポートが最適化され、より信頼性が高く、わずかに高速になりました。
- SQL Server では、計算フィールドを作成するときに
ISEMPTY関数がサポートされるようになりました。 - onUrlLinkRequested イベントで null が返されると、ナビゲーションがキャンセルされるようになりました。
- 大きい数値の形式がローカライズされるようになりました。
- ダッシュボード フィールド フィルター値のフィールドとは異なるフィールドをダッシュボード フィルターのラベルに使用できるように UX が改善されました。
- Elasticsearch にいくつかの改善が加えられました:
FORMATDATE関数のサポートの追加、LOG関数 (単一パラメーター呼び出し) の問題の修正、FYEAR(会計年度) 関数の問題の修正、SQL インジェクション攻撃を防ぐための改善。 - データ ソース アイコンを非表示にしたり変更したりできるようになりました。
revealView.onAssetRequested = (args) => {
// Use default
return null;
// Hide icon
return { visible: false };
// Custom icon
return { imageUrl: "./images/custom.jpg" };
// Conditional
if (args.dataSource instanceof RVSqlServerDataSource) {
return { imageUrl: "./images/sqlserver.jpg" };
}
};
- 定義済みの計算フィールドのサポートが追加されました。
//Registration
mvcBuilder.AddReveal(builder =>
{
builder.AddDataModelProvider<MyDataModelProvider>();
});
//Implementation example
internal class MyDataModelProvider : IRVDataModelProvider
{
private static readonly List<RVDataModelCalculatedField> calculatedFields;
static MyDataModelProvider()
{
calculatedFields = new List<RVDataModelCalculatedField> {
new RVDataModelCalculatedField("GrossAmount", "Gross Amount", RVDashboardDataType.Numeric, "[UnitPrice] * [Quantity]"),
new RVDataModelCalculatedField("DiscountAmount", "Discount Amount", RVDashboardDataType.Numeric, "[GrossAmount] * [Discount]"),
new RVDataModelCalculatedField("NetAmount", "Net Amount", RVDashboardDataType.Numeric, "[GrossAmount] * [Discount]")
};
}
public Task<List<RVDataModelCalculatedField>> GetCalculatedFieldsAsync(RVDataSourceItem dsItem, IRequestContext userContext)
{
if (dsItem.Title == "Order Details")
return Task.FromResult(calculatedFields);
else
return Task.FromResult<List<RVDataModelCalculatedField>>(null);
}
public Task<List<RVDataModelMeasure>> GetMeasuresAsync(RVDataSourceItem dsItem, IRequestContext userContext)
{
if (dsItem.Title == "Order Details")
return Task.FromResult(new List<RVDataModelMeasure> {
new RVDataModelMeasure("Total Revenue", "sum([NetAmount])", "Total Revenue (net)"),
new RVDataModelMeasure("ASP", "sum([NetAmount]) / SUM([Quantity])", "Revenue-weighted price per unit")
});
else
return Task.FromResult<List<RVDataModelMeasure>>(null);
}
public Task<List<RVDataModelField>> EditSchemaAsync(RVDataSourceItem dsItem, List<RVDataModelField> baseSchema, IRequestContext requestContext)
{
if (dsItem.Title == "Order Details")
{
baseSchema.FirstOrDefault(f => f.Name == "Discount").DefaultAggregation = RVDashboardAggregationType.CountDistinct;
return Task.FromResult(baseSchema);
}
else
{
return Task.FromResult<List<RVDataModelField>>(null);
}
}
}
- MongoDB で
ENDOFMONTH関数がサポートされるようになりました。