詳細情報:
Nonprofit の Gift Entry Grid のカスタム Lightning Web コンポーネント
カスタムLightning Webコンポーネントがギフト エントリ グリッドとの間でデータを移動する方法について説明します。
| 必要なエディション |
|---|
| 使用可能: Lightning Experience |
使用可能なエディション: Education Cloud を含む Enterprise Edition、Performance Edition、Unlimited Edition、Developer Edition 使用可能なエディション: Enterprise Edition、Unlimited Edition、および Developer Edition (Nonprofit Cloud 付属) |
- ギフトエントリグリッドからコンポーネントに送信されるプロパティ
支援エントリグリッドは、セルコンポーネントの「 params 」プロパティーとモーダルの「 rowData 」プロパティーを使用して、行データをカスタム Lightning Web コンポーネントに渡します。 - ギフトエントリグリッドへのデータの送信
列モーダルとセル編集コンポーネントでは、異なるメカニズムを使用してデータをギフトエントリグリッドに返します。 - データを返す場合の考慮事項
データをギフトエントリグリッドに戻すときは、選択リスト項目と参照項目について次のルールを考慮してください。
ギフトエントリグリッドからコンポーネントに送信されるプロパティ
支援エントリグリッドは、セルコンポーネントの「 params 」プロパティーとモーダルの「 rowData 」プロパティーを使用して、行データをカスタム Lightning Web コンポーネントに渡します。
| 必要なエディション |
|---|
| 使用可能: Lightning Experience |
使用可能なエディション: Education Cloud を含む Enterprise Edition、Performance Edition、Unlimited Edition、Developer Edition 使用可能なエディション: Enterprise Edition、Unlimited Edition、および Developer Edition (Nonprofit Cloud 付属) |
| プロパティ | 説明 |
|---|---|
| params |
|
| rowData |
|
ギフトエントリグリッドへのデータの送信
列モーダルとセル編集コンポーネントでは、異なるメカニズムを使用してデータをギフトエントリグリッドに返します。
| 必要なエディション |
|---|
| 使用可能: Lightning Experience |
使用可能なエディション: Education Cloud を含む Enterprise Edition、Performance Edition、Unlimited Edition、Developer Edition 使用可能なエディション: Enterprise Edition、Unlimited Edition、および Developer Edition (Nonprofit Cloud 付属) |
列のモーダル
列モーダルは、モーダルタイトル (テンプレートで定義) のほか、[続行] ボタンと [キャンセル] ボタンを含むラッパー Lightning Web コンポーネント内で表示されます。
[続行] ボタンは、ユーザーがカスタムモーダルを閉じるためにクリックするボタンです。次の必須の公開関数がコールされます。
| 関数 | 説明 |
|---|---|
@api validate() |
次の 2 つのプロパティを持つオブジェクトを返します。
|
@api getComponentValues() |
行に適用するプロパティの key:value セットを返します。
|
セル編集コンポーネント
セル編集コンポーネントから支援エントリグリッドにデータを返す
- ギフトエントリグリッドに戻るメッセージとしてオブジェクトを作成します。
- イベントを
lightning__giftEntryGridComponentActionメッセージ チャネルに公開します。
メッセージ本文の内容は厳格です。次の例の構造に従います。
// Build the "message" object to send back to
// Gift Entry Grid following the documented contract
const message = {
// Required properties (do not change the values below)
action: "ColumnEdit",
componentName: this.tagName,
colId: this._params?.colDef?.colId,
// 'details' is an optional property:
// - include if there is data to write to the row
// in Gift Entry
details: {
// rowId and rowIndex must be included in details
rowId: this.params?.data?.id, // Required
rowIndex: this.params?.data?.rowIndex, // Required
// All GiftEntry fields to write to rowData
// and as object in a key:value collection.
// To clear the value of a field on the GiftEntry rowData
// object, return null instead of undefined
giftEntryFields : { key: value, ... },
// rowProperties is optional, but if passed can be
// referenced by other custom components. Data in this
// object are not persisted to the GiftEntry record.
rowProperties: { key : value, ... },
// Special Use: If your custom column component is
// forcing a matched gift transaction, use these
// properties to send the matching transaction ID
// and NAME back to grid for proper handling:
matchingGiftTransactionId: {giftTransactionId},
matchingGiftTransactionName: {giftTransactionName}
}
}
データを返す場合の考慮事項
データをギフトエントリグリッドに戻すときは、選択リスト項目と参照項目について次のルールを考慮してください。
| 必要なエディション |
|---|
| 使用可能: Lightning Experience |
使用可能なエディション: Education Cloud を含む Enterprise Edition、Performance Edition、Unlimited Edition、Developer Edition 使用可能なエディション: Enterprise Edition、Unlimited Edition、および Developer Edition (Nonprofit Cloud 付属) |
選択リスト項目の考慮事項:
- 選択リスト項目が単純な文字列として返される場合、表示ラベルと API 参照名が異なる場合、値は選択リストの API 参照名を表します。
- 選択リストフィールドは、
{ value: xx, displayValue: zz }の形式でオブジェクトとして返すこともできます。次に例を示します。{ giftType: { value: “Organizational”, displayValue: “Organizativo/Doméstico” } }
参照項目の考慮事項:
- ギフトエントリグリッドの列ではない参照項目は、応答オブジェクトでのみ単なる ID 文字列として返すことができます。例:
{MyLookupFieldId__c: ‘xxx00000000’} - キャンペーンやアウトリーチソースコードなど、ギフトエントリグリッドの項目列である参照項目は、カスタム Lightning Web コンポーネントからオブジェクト形式で返され、グリッドで適切に表示されるようにする必要があります。次に例を示します。
Campaign: { Id: {campaignId}, Name: {campaignName} }

