データベース設計文書
なんか問題がある?心配しないで、答えは全部ここにいる。
全サイト検索

リンク&読み込み

リンクフィールド&読み込みフィールド

異なるフォームページを持つ2つのワークシートをリンクさせるこのアクションは、リンクフィールド読み込みフィールドの作成を含んでいます。。

注文時にお客様の基本情報を自動的に呼び出すようにして、入力の手間を省きたいのですが、お客様の基本情報は別のシートにあるので、この便利な機能を利用できます。

上記の販売注文から、どの顧客が購入したかを選択できるフィールド、 それがリンクフィールドです。

このフィールドにリンクされた値は、他のフォームで選択されたフィールドのヘッダとなる。 この選択フィールドヘッダは、リンク管理で、各データの名前を分類するために使用されます。下記の例では、販売注文の「名前」フィールドが顧客リストの「名前」フィールドとリンクしています。 ユーザーが管理しやすいように、データを特定できるフィールド(フィールドヘッダーの検索機能など)を選択できます。

Ragicは、ユーザーが販売注文で顧客を選択すると、販売注文から連絡先番号、住所、電子メールアドレスなどの顧客情報を自動的に入力することができます。リンク&読み込みを行うことで、データ操作を大幅に軽減し、ユーザーに対してより迅速な対応を実感できるデータベースにすることができます。 このようなフィールドタイプを読み込みフィールドと呼んでいます。

リンクマネージャ

リンクと読み込みフィールド両方は、リンクマネージャで簡単に設定できます。 フォームデザインモードで フォームツール をクリックし、 リンク&読み込み を選択して、リンクマネージャへアクセスします。

リンクマネージャーは、まずリンクフィールドの設定を求めます。これは、ページの右側にある一つのフィールドヘッダーをクリックで選択します。 システムが各データを正しく識別するために、リンクフィールドはソースリスト内で独特値であることに注意してください。

次に、ページの左側にある、現在編集中のフォームに対応するフィールドをクリックします。 このフィールドは、対応するデータに自動的にリンクされます。 リンクマネージャーでは、リンクフィールドが青色で表示されます。

リンクフィールドを設定したら、読み込みたいデータフィールドを設定して、載読み込みフィールド設定します。ユーザーがリンクフィールドで値を選択すると、これらのフィールドは自動的に対応する値を読み込みます。読み込みフィールドの設定は、リンクフィールドの設定と同じですが、リンクマネージャでは読み込みフィールドがグレーで表示される点が異なります。ページの左側を先に設定する代わりに、右側のフィールドをページの左側にドラッグするだけで、Ragicが自動的に対応するフィールドを追加してくれます。

また、すでにリンクと読み込みフィールドが設定されている場合は、それをクリックして左側のツールバーからリンクマネージャーウィンドウを素早く開くことができます。

リンクフィールド右上に青色のLアイコン、読み込みフィールド右上に灰色のLアイコンが表示されます。

アイコンをクリックすると、そのグループにリンクしているすべてのフィールドが選択され、すばやく参照できます。

子テーブルへのリンクと読み込み

また、他のフォームから子テーブルにデータをリンクして読み込むことも可能です。 これは、子テーブルの各項目にデータを入力する際に、あるフィールドで値を選択(または最初の単語を入力して関連するオプションを表示)した後に、後続のフィールドのデータを自動的に読み込むようにしたい場合によくあります。 例えば、注文データには複数の商品項目が存在します。

子テーブルのリンク方法については、以下の子テーブルから新しいフォームを作成元フォームのフィールドを新規作成の文書をご参照ください。

子テーブル連続選択

子テーブルにリンクフィールドを作成した場合、子テーブル連続選択をチェックすることができます。

注意:同じリンクフィールドで子テーブル連続選択複数選択を行える設定は1つのみ。

このように、複数のデータ項目を一度に選択し、子テーブルに順番に記入していくことができます。 (非連続選択の場合、1回選択すると自動的にウィンドウが閉じます)。

同じシートから複数回のリンクと読み込み

同じフォームから異なるデータを何度もリンクして読み込みする必要がある場合、例えば、注文者と受取人が異なるが、データソースはすべて顧客リストからリンクして読み込む場合、これは子テーブルへのリンクと読み込みに適さない状況ですので、同じソースシートに複数のリンクと読み込みを設定する必要があります。

先ほどの注文を例にして説明します。

フォーム設計モード >ワークシートリンク > リンク&読み込み

まず、注文者の情報として、顧客データフォームからのリンクと読み込みの最初のセットが表示されます。

右上にあるメインのリンクフィールド:注文者のドロップダウンメニューから、"新しいリンクを作成"を選択してください。

「新しいリンクを作成」を選択すると、再度「顧客データ」からリンクして読み込むことができます。

もちろん、同じフィールドの名前を少し変えて、間違えないようにすることはできます。

例えば、この注文書では、同じソースからの2つのリンクと項目は、それぞれ注文者と受取人のためのものです。

デザインを保存すると、その注文を2回にわたって顧客データにリンクして読み込むことができます。

また、「新規リンクを作成」を使って、元のフォームからデータをリンクして読み込むこともできます。

リンクフィールドをキャンセル

フィールドに設定されたリンクを削除したい場合は、 リンクマネージャーで削除したいリンクをクリックし、リンクの横にある赤いキャンセルマークをクリックするだけで、読み込みフィールドの2つのフィールド間のリンクが削除されます。

リンクフィールドから青いリンクラインを削除すると、一緒に設定されていたすべての読み込みフィールドも削除されます

よくあるミス

1. 他のフォームの子テーブルフィールドからフォームにリンクを引き込む

子テーブルから一般フィールドへのリンク&読み込みはできません(リンク管理では、右側の子テーブルが左側にリンクされます)。 子テーブルには複数のデータが含まれることがあるため、複数なフィールド値が存在する可能性がありますが、一般フィールドは1つの値しか持ちません。

2. 一般フィールド+子テーブルフィールドまたは異なる子テーブルフィールドへのリンク

例えば、一般フィールドにリンクと読み込みを設定した場合、リンクの1つを子テーブルフィールドに設定することはできません。 また、その逆で、リンクと読み込みが子テーブルフィールドに設定する場合、リンクの1つを一般フィールドにすることはできません。一般フィールドは単一のフィールド値を格納するために使用され、子テーブルフィールドは複数のデータ値を格納するために使用されるので、単一のフィールドへの読み込みと子テーブルの複数データの読み込みを同時にリンクさせることはできません。

また、一般フィールドにリンクした後の子テーブルフィールドの読み込みもサポートしていません

また、各子テーブルは別々にデータを保存するため、異なる子テーブルへの読み込みを連携させることはできず、別の子テーブルでデータを作成した際に、他の子テーブルのデータを自動的に取り込むことはできません。

3. 同じ行の異なる子テーブルをリンクする

Ragicでこれを行うことに技術的な問題はありませんが、他のユーザーがフォームを使用している場合、同じ行に異なる子テーブルを置くと、他のユーザーが混乱する可能性があります。

4. 独特値でないフィールドからのリンク (選択肢フィールドリンクフィールド数字フィールドをリンクフィールドとしてリンクさせるなど)

リンクフィールドは基本的に選択肢フィールド(他のシートから選択)なので、リンクフィールドを設定するときは選択肢を定義するようなもので、各選択肢が独特なオプションであると判断するフィールドをリンクフィールドのベースとする必要があるのです。

つまり、リンク&読み込みを設定する場合、右のフォームのリンクフィールドのソースは、フォームの独特値フィールド(KEYフィールド、例えば番号やコード)であることが推奨されるのです。

リンクと読み込むリンクフィールド(青い線)を設定する際に、右側のソースシートの一部のフィールドが最初にグレーアウトしている場合、それらはオプションフィールド、リンクフィールド、数値フィールドであり、通常は独特値を表すタイプのフィールドではないため、これらのフィールドからリンクできないことが原因であると考えられます。

5. 読み込んだ対象フィールドに 連動選択肢 が含まれる場合、親選択肢を対象テーブルの子選択肢の下または右に配置します。

システムがリンク&読み込みを行う場合、データの入力順序は決まっています。 システムは「対象フォーム」に記載されているフィールドの順序に従って、「上から下、左から右」にデータを入力します。つまり、読み込みフィールドが異なる列に配置されている場合は、上の列のフィールドが先に入力され、読み込みフィールドが同じ行に配置されている場合は、左側のフィールドが先に入力されます。

連動選択肢は、子選択肢フィールドの値が利用できるようになる前に、親選択肢フィールドの値を必要とします。リンク先フォームの親選択肢フィールドが子選択肢フィールドの下または右にある場合、このセットのリンクがトリガーしたときにデータの順番で最初に記入されるべき子選択肢に記入する値がなく、その結果、子選択肢読み込みフィールドが正しく動作しなくなります。

例えば、「自動車ブランド」(親選択肢)と「自動車モデル」(子選択肢)という2つのリンクした選択肢を持つ読み込みフィールドがある場合、対象フォームで「自動車ブランド」の左側に「自動車モデル」フィールドを配置すると、「自動車モデル」フィールドには対応する値が読み込まれないという結果になります。 したがって、「自動車モデル」フィールドは「自動車ブランド」フィールドの右側か下側に配置するのが正しい。

6. マルチシートで、すでに読み込まれたフィールドの重複読み込み

複数バージョンのシートに既に読み込まれているフィールドを再読み込むことはできません。 例えば、「出荷指示(業務)」と複数バージョンのシート「出荷指示(物流)」がある場合、「出荷指示(業務)」に「顧客名」フィールドが既に読み込まれている場合。

複数バージョンのフォーム「出荷指示(物流用)」から「顧客名」フィールドを削除しても、再度読み込むことができない(グレーアウトされる)。マルチシートのフィールドを再び追加するには、この文書を参照してください。

リンクと読み込みフィールドを最新データに同期

フォーム A 上に、フォーム B へのリンクから読み込んだ値を持つフィールドがある場合、フォーム B 上のデータに加えた変更は、フォーム A に以前格納されていたデータには反映されません。

このように設計する理由を次の例で説明します:フォーム A が注文書、フォーム B が顧客情報であるとします。 田中さんの注文が確定すると、彼の住所情報が顧客情報フォームの情報とリンクされます。田中さんが後に引っ越しをして、顧客情報の住所を変更することになったとします。しかし、既存の注文書は、後の引っ越しの新住所に変更するのではなく、元の住所を維持する必要があります。

もちろん、フォーム B のデータを修正した後、フォーム A のリンクや読み込みフィールドを同時に更新したい場合もあります。

そのためには、フォームページの デザインモードフォームツールをクリックして、リンク&読み込みされたシートを確認し、同期させたいシートの横にあるギアボタンをクリックしてください。

次の画面では、一番下(枠で囲った部分)で、このセット若しくは全てのリンク&読み込みフィールドを最新データに同期させるかどうかを選択できます。

適用されると、左下に進行状況が表示されます。

フォームのリンクと読み込みフィールドを最新の状態に維持したい場合は、「同期したフィールドの値を常に読み込む」ボックスにチェックを入れてください。こうすることで、Ragicが注意を払い、リンク先のフィールドが更新されたときに、リンクと読み込みフィールドのデータを自動更新します。

ご注意ください、インポートを使ってソースデータを更新している場合、読み込んだフィールドの値を自動的に同期させることはできません! インポート後に手動で「最新のデータに同期」をクリックする必要があります。

リンクフィールドを変更

リンクを作成して読み込むと、Ragicはソースフォームの独特値に基づいてリンクフィールドを自動的に作成します。このデフォルトのリンクフィールドを変更する必要がある場合、リンクを削除して再度作成しなくても、右側のソースフォームの参照フィールドをドラッグするだけで変更できます。

以下の例では、商品リストで商品名と商品番号がリンクされています。 しかし、商品番号はスタッフにとって商品を特定しにくい場合があるので、商品名フィールとリンクするように変更したい。

リンクフィールドを変更するには、商品番号フィールドの左ボタンを押したまま、商品名フィールドまでドラッグし、左ボタンを離すだけで OK 。

変更が完了すると、実際に注文シートでリンクや読み込みを行う際にも、リンクされたデータが商品名となります。

チュートリアルビデオ

リンク&ロード機能の実践的な使い方を動画でご紹介します!

一番上に戻る 目次

無料でRagicを始める

Googleアカウントに登録