OutSystems Forge 日本語データベース

Filter RecordList

※Forge全件データの日本語検索サービスをご利用になりたい場合は、こちらまでお問合せください。

Forge英文サイト

2016-08-10 1.1.0 António Chinita 9.1.501.0 All .NET
RecordListオブジェクトを属性名でフィルタリングできます。
このコンポーネントを使用すると、指定した値で指定された列にRecordListオブジェクトをフィルタできます。 また、オペレータは、検索を少し複雑にすることもできます。 テキストタイプのサポート:<> Int&Datetime型のサポート:<、<=、>、> =および<> メソッドの使用方法の例は、メソッドの説明で提供されています。 -------------------------------------------------- --------------------------------- 入力 -------------------------------------------------- --------------------------------- RecordList(Object):フィルタリングするRecordListオブジェクトです。組み込みのToObject()関数を使用してRecordListを変換します。 Attribute(String):フィルタリングする列の名前。これは、フィルタリングする構造体の属性名です。複数の属性名がサポートされています。カンマで区切ります。例えば。名前、説明、コメント FieldValue(String):検索値。オペレータをサポートします。 -------------------------------------------------- --------------------------------- オペレータ仕様 -------------------------------------------------- --------------------------------- デフォルトの動作(単純な文字列値) この値が属性値の内部に含まれているかどうかを検証します。 SQLのLIKE演算子に相当します。 演算子を使用する サポートされる演算子 文字列:<>(SQLのNOT LIKEに相当) DateTime、Int:<、<=、>、> =、<> 例では、演算子の前に、フィルター値の前にスペースを置いてください。 例えば。 フィルタ値 "<= 1987-01-18"には、1987年1月18日までのすべての日付が表示されます。 -------------------------------------------------- --------------------------------- 実装の提案 -------------------------------------------------- --------------------------------- これを使用する必要がある場合は、おそらく、既存のすべてのデータを含む大きなリストがあります。したがって、メソッドを呼び出してそのデータをすべて返す必要はありません。 拡張機能によって提供されるメソッドは、提供されたオブジェクト(参照)で直接操作されることに常に注意してください。。 典型的なシナリオでは、次のようなものが必要です。 変更されない基本レコードリスト。 ListDuplicate()アクションによって生成される同じタイプのRecordList変数。これにより、元のデータセットに触れることはありません 元のデータセットの複製であるローカル変数のフィルタアクション。 例えば。 -------------------------------------------------- --------------------------------- 最終的な考え -------------------------------------------------- --------------------------------- この拡張機能によって提供される機能により、ほとんどの場合カスタムロジックを必要とする構造レコードリストをフィルタリングすることができます。例えば。検索入力パラメータなしでWebServicesによって返されたレコードリスト。 通知: これらのリストを検索するには、すべてのレコードを反復処理する必要があります。その結果、長いリストではパフォーマンスが低下します。 このようなコンポーネントを軽く使用しないでください。他のオプションが使用できず、リストがあまり長くないことがわかっている場合にのみ使用してください。 私のケースでは、アプリケーションを検索パラメータに合わせて簡単に変更できない従来の4GL Java Webサービスによって返された構造体に大きく依存しているため、これを開発しなければなりませんでした。 注意:このコンポーネントは、非公開で文書化されていないプラットフォームAPIを利用しています。その結果、このコンポーネントは、プラットフォームのアップグレード時に予期せず破損することがあります。プラットフォームのアップグレード/パッチ適用時にアプリケーションが期待どおりに機能し続けることを確認するために、適切なテストを行うことをお勧めします。

[Overview]
Allows you to filter a RecordList Object by attribute(s) name.
[Detail]
This component allows you to filter RecordList objects, on the specfied columns by the specified value. It also supports operators to enable a little more complexity on the searches. Text Types support: <> Int&Datetime Types support: <, <=, >, >= and <> Examples on how to use these are provided in the method's description. ----------------------------------------------------------------------------------- Inputs ----------------------------------------------------------------------------------- RecordList (Object): The RecordList Object to filter from. Use the Built-In ToObject() function to convert your RecordList. Attribute (String): The column name to filter from. This is the structure attribute name you wish to filter by. Multiple attribute names are supported, just separate them with commas. Eg. Name, Description, Comment FieldValue (String): The search value. Supports operators. ----------------------------------------------------------------------------------- Operator Specifications ----------------------------------------------------------------------------------- Default Behavior (simple string value) Verifies if this value is contained inside the attribute value. Equivalent to SQL's LIKE operator. With Operators Supported Operators String: <> (Equivalent to SQL's NOT LIKE) DateTime, Int: <, <=, >, >=, <> Example, just prepend the operator, and a space before the filter value. Eg. Filter value "<= 1987-01-18" will show all dates previous to Jan. 18th 1987. ----------------------------------------------------------------------------------- Implementation Sugestions ----------------------------------------------------------------------------------- If you need to use this, you probably have a larger list that contains all the existing data. So you shouldn't need to call the method returning all that data ever again. Always have in mind that the method provided by the extension will operate directly on the provided Object (reference). On a typical scenario you should have something like: A base recordlist that is never modified. A RecordList variable of the same type that will be populated by a ListDuplicate() action. This will avoid ever touching the original dataset A filter action on the Local variable that is a duplicate of the original dataset. Eg. ----------------------------------------------------------------------------------- Final Thoughts ----------------------------------------------------------------------------------- The functionality provided by this extension will enable you to filter Structure RecordLists, that almost always require custom logic to do so. Eg. Recordlists returned by WebServices without search input parameters. NOTICE: Searching these lists, requires iterating through all its records, as a result, performance suffers on long lists. Do not use such components lightly, this should be used only when no other options are avaliable and you know the lists aren't very long. In my case, I had to develop this because our application is running heavily on structures returned by legacy 4GL Java WebServices that can't be easily changed to accomodate search parameters. Notice: This component takes advantage of private and undocumented Platform APIs, which can change without notice. As a result, this component may unexpectedly break as the Platform is upgraded. We advise proper testing to ensure that your applications continue to work as expected when upgrading/patching the Platform.
戻る