メインコンテンツまでスキップ

レポートにカスタムリンクを設定して別のページにジャンプします

1. 使用シーン

この例では、次の3.0レポートでカスタムリンクを構成し、パラメータ (フィルタ、テーブルの現在行) を別のページ (レポート、通常フォーム、プロセスフォームなど) にジャンプする方法を説明します。

2. 機能を実現する

2.1. レポートはパラメータを持って他のレポートにジャンプします

2.1.1. 購買記録レポートカードパラメータの設定

次の3つのカードパラメータを設定します

Productname (文字列)

Startdate (日付)

Intervaldate (日付範囲)

フィルター結合カードパラメータ:

2.1.2. フィルタ付きパラメータジャンプ

製品情報レポートには、フィルタパラメータを持って購買記録レポートにジャンプし、デフォルトでフィルタリングします。リンク先に続くパラメータ名は、上記の購買記録レポートに設定されているカードパラメータと一致します。

ここで、文字列タイプと日付タイプのカードパラメータは直接挿入でき、時間範囲タイプのカードパラメータはパラメータを [] の中間に挿入する必要がある。

2.1.3. 現在の表行パラメータを持ってジャンプします

製品情報レポートが現在の行を持つパラメータは購買記録レポートにジャンプし、デフォルトでフィルタリングされ、リンク先に続くパラメータ名は上記の購買記録レポートに設定されているカードパラメータと一致します。

ここで、文字列タイプのカードパラメータはurlで直接挿入でき、日付と日付範囲タイプのカードパラメータはカスタムリンクで処理してジャンプする必要があります。

日付関連フィールドは含まれていません:

日付関連フィールドを含む:

まず必要なフィールドを追加します。

日付関連フィールドは、タイムスタンプの形式で処理する必要があります。

function onLinkClicked(info) {
const { cardParams = {} } = info;
const { start, end, productName, createTime } = cardParams; // 这里获取到上面定义的参数
// 处理日期筛选参数
const startTimeStamp = start ? new Date(start).getTime() : '';
const endTimeStamp = end ? new Date(end).getTime() : '';
const createTimeStamp = createTime ? new Date(createTime).getTime() : '';
// 处理url格式进行参数拼接
const url = `/${pageConfig.appType}/workbench/REPORT-5Q966D91PTBGG1GDDOSK38ERD94S35E9JZLPL2?productName=${encodeURI(productName)}&startDate=${createTimeStamp}&intervalDate=[${startTimeStamp},${endTimeStamp}]`;
window.open(url);
}

2.2. レポート携帯パラメータ他のページへジャンプ

2.2.1. 通常フォームデータの詳細

テーブル列にインスタンスidフィールドを追加して非表示にします。

数式フィールドの設定:

/你的应用AppType/formDetail/你的表单FormUuid?formInstId=实例ID

2.2.2. フローフォームのデータ詳細

テーブル列にインスタンスidフィールドを追加して非表示にします。

数式フィールドの設定:

/你的应用AppType/processDetail?procInsId=实例ID

3. 効果を実現する

3.1. レポートはパラメータを持って他のレポートにジャンプします

3.2. レポート携帯パラメータ他のページへジャンプ

4. オンラインで試遊する

この文書は機械翻訳により生成されています。翻訳により生じた齟齬や相違点は拘束力を持たず、コンプライアンスや執行目的において法的効力はありません。
© DingTalk (Singapore) Private Limited