注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

プラットフォームで Functions を使用する

このセクションでは、Foundry プラットフォーム全体で Functions を使用できるさまざまな方法について説明します。このリストはほぼ最新の状態を保っていますが、ここに記載されていない Functions の使用方法があるかもしれません。

Workshop

Workshop は、Workshop で構築されたモジュール全体でカスタムロジックを使用できるように、さまざまな方法で Functions との統合をサポートしています。

変数

ほとんどの Workshop 変数 は、Function によってサポートされており、アプリケーションビルダーは、Functions を使用して計算された値を Workshop 全体で使用できます。デフォルトでは、変数の値は、それが依存する別の変数が更新されたときに再計算されます。これにより、ユーザーのフィードバックに応じて値を柔軟に再計算できます。たとえば、ユーザーが入力コンポーネントを編集すると、依存する Function バックのオブジェクトセット変数が自動的に再計算されます。

詳しくは、Workshop 変数をバックする Functions の使用方法に関するチュートリアル をご覧ください。

以下は、Workshop 変数タイプと TypeScript での同等物のマッピングです。指定されたタイプの Workshop 変数は、リストされた有効なタイプのいずれかを返す Function でバックアップできます。使用可能な Function タイプについては、ドキュメントを参照してください。

  • Boolean: boolean
  • String: string
  • Numeric: Integer, Long, Float, Double
  • Date: LocalDate
  • Timestamp: Timestamp
  • Array: BaseType[] または Set<BaseType>
  • Object Set: ObjectSet<ObjectType>(推奨)、ObjectType[] または Set<ObjectType>

オブジェクトテーブル:派生プロパティ

Workshop の オブジェクトテーブル ウィジェットは、Function バックの列を計算するように設定でき、ユーザー入力に基づいて更新され、エンドユーザーがテーブルをスクロールするとリアルタイムで再計算されます。この機能の使用方法に関する完全なチュートリアル をご覧ください。

チャート:派生集計

Workshop の チャート:XY ウィジェットは、Function バックの集計を使用して、オンデマンドで集計値を導出することができます。これは、集計データがユーザー選択に基づいて生成される場合に便利です。チャートウィジェットで Functions を使用するには、チャートレイヤーを設定するためにクリックし、Function 集計 を選択します。

use-functions-chart

集計 API のリファレンス が利用可能です。さらに高度なユースケースでは、カスタム集計の計算方法に関するドキュメントを参照してください。

Actions

アクションタイプ は、Foundry オントロジーのオブジェクトに対して変更を加えたり、外部通知や副作用を柔軟かつ安全な方法で送信できるようにする機能です。Actions 内では、Functions は完全な柔軟性を提供し、オブジェクトがどのように更新されるべきか、また副作用がどのように設定されるべきかをコード作者が定義できます。

Function バックの Actions

Function バックの Actions は、オントロジーエディット API を使用して、オブジェクトがどのように更新されるべきかのロジックを定義します。これにより、コードで複雑な編集を表現できます。たとえば、開始オブジェクトにリンクされたすべてのオブジェクトを更新します。Function バックの Actions のエンドツーエンドでの使用方法に関するチュートリアルを参照してください。

副作用:通知

アクションは、指定されたユーザーに通知を送信するように設定することができます。Functions を使用して通知を受け取るユーザーや通知の内容自体を計算できます。これにより、オブジェクト内に格納されている受信者のユーザー ID を読み込んだり、オブジェクトデータに基づいて電子メールの内容をレンダリングしたりする柔軟性が提供されます。詳細については、通知に関する完全なドキュメント および Functions を使用して通知を設定する方法に関するガイド を参照してください。

副作用:Webhook

アクションは、適用されると Webhook がトリガーされるように設定することもできます。Webhook は、Foundry と他のシステムの統合を可能にし、ユーザーが適用したアクションを Foundry の外部の API に書き戻すことができます。オブジェクトデータに基づいて Webhook パラメーターを入力するなどのワークフローを実現するために、Functions を使用して実行される Webhook に送信されるパラメーターを計算できます。Webhooks に関する完全なドキュメントを表示してください。

Slate

Slate には、プラットフォーム タブ内で Functions を見つけて使用するネイティブサポートが含まれています。Slate ドキュメントを編集するときにプラットフォームタブを開き、左下に Foundry Function を追加してください。これで、Function を検索し、パラメーターを設定し、Slate ドキュメントで結果を使用できます。

use-functions-slate

歴史的な理由から、Slate 製品には「Functions」という独自の概念があり、それぞれの Slate ドキュメント内にある JavaScript ロジックのスニペットです。これが、Functions 製品が「Foundry Functions」と呼ばれ、プラットフォーム タブの下に配置されている理由です。Slate の Functions 機能は、ドキュメント内で迅速かつ簡単なデータ操作を可能にしますが、オブジェクトに対するネイティブサポートはありません。

Slate の Functions と Foundry Functions を互いに組み合わせて使用できます。例えば、Foundry Function からデータを返し、Slate Function でそれを操作するか、または、Slate Function を使用して Foundry Function に渡すべきパラメーターを計算することができます。

Quiver

Quiver の オブジェクトセットプロット は、Workshop の Chart:XY ウィジェットと同じ基本コンポーネントを使用しています。そのため、Quiver の解析で Function バックの集計を使用することもできます。