私ができなかったことの1つは、データを統計的に使用することです。 FNLで2sxc - 統計データのクエリ
、たとえば、あなたは完全なSQLサーバ機能を使用することができ、私はまだ同じ目的を達成するために2sxc内のデータにアクセスする方法を見つけ出すことはできませんビット...
私ができる方法はありますSQLビュー(一時テーブル)にリスト内のデータを配置し、クエリを実行しますか?または、他の方法でデータにアクセスしてクエリを実行しますか?
敬具、 ジョアン
私ができなかったことの1つは、データを統計的に使用することです。 FNLで2sxc - 統計データのクエリ
、たとえば、あなたは完全なSQLサーバ機能を使用することができ、私はまだ同じ目的を達成するために2sxc内のデータにアクセスする方法を見つけ出すことはできませんビット...
私ができる方法はありますSQLビュー(一時テーブル)にリスト内のデータを配置し、クエリを実行しますか?または、他の方法でデータにアクセスしてクエリを実行しますか?
敬具、 ジョアン
あなたはカミソリでそれを行うことができます。
AppsData ["your_pipeline_data"]たとえば、2sxcビジュアルクエリ/パイプラインでフィルタ処理、ソート、抽出された内容に応じて、App.Data ["Default"]というオブジェクトをテンプレートとして受け取ります。このオブジェクトのLinqを使用してデータを操作することができます。このデータを列挙型オブジェクトに入れると、必要な情報を得ることができます。
例:
@{
var termGroups = ((IEnumerable<dynamic>)AsDynamic(App.Data["Default"]))
.OrderBy(t => t.Nom) // sort terms
.GroupBy(l => l.Nom.Substring(0, 1).ToUpper()) // group by first letter
.OrderBy(s => s.Key); // ensure sorting at group-level
int groups= Enumerable.Count(termGroups);
}
は、SQLにおけるGROUPBYのと等価です。
There are @terms items in the list.
または
There are @groups groups in the list.
:
は、すべてのデータを操作するには、ちょうどそのようなあなたのテンプレートで変数を使用し、任意のLINQのディレクティブその後
@{
var terms = ((IEnumerable<dynamic>)AsDynamic(App.Data["Default"]));
int count = Enumerable.Count(terms);
}
を入れていません
クレジット:Linqコードは2sxc AZのチュートリアルのものです
質問言語としてLINQを考えたことはありませんが、それはまさにそれです... 2sxcページには "GroupBy"情報はありません。 Web上のLINQドキュメントを検索できますか?すべてのLINQ演算子は2sxcビューで使用できますか? –
私は両方の質問に「はい」と言います。 Linqはデフォルトで統合されているので、Linq構文はすべて利用可能です。 IEnumerableのドキュメントを見てください:https://msdn.microsoft.com/en-us/library/system.linq.enumerable_methods(v=vs.110).aspx –
ただ一つの最後のアドオン。 foreach(item in var){@ z.field} A、A、B、C、D、Dの出力を取得します。私はこれを出力する必要があります:A - 2; B-1; C-1; D - 2、等 –