【Ver 1.7以降】
- 対象の記録を複製します。
- 指定した階層(対象の記録の子、その記録の子・・・)まで行います。
- 対象の記録に、親の記録があれば、それに紐付けます。
複製処理の仕組み
コンビ画面の複製ボタンをクリックした時の、コンビ画面の記録が0階層です。
ここでは、コンビ画面の記録(最初の複製対象の記録)をAとします。
0階層での処理
Aを複製します。ここでは、複製したものをaとします。
1階層での処理
- 1-複の関係で、Aを親とする子の記録 → B
- 複-複の関係で、Aを親とする子の記録 → C
- 複-複の親の関係で、Aを子とする親の記録 → D
B,C,Dは、1階層の記録になります。
1階層での処理とは、
- Bを複製します。ここでは、bとします。aを親として、bを子として紐付けます。Bの記録は、2階層目の処理に進みます。
- CあるいはDは、Aと複-複の関係にあるので、aに紐付けます。C,Dを複製はしません。また、C,Dの記録は、2階層目の処理に進みません。
2階層での処理
Bに、1-複の関係の子、複-複の関係の子、複-複の関係の親、の記録があれば、1階層と同様の処理をします。
以降の3,4,5・・・の階層も同様です。
テーブル設定
移動・複製
コンビ画面に複製ボタンを表示
チェックすると、複製ボタンを表示します。
1階層以降の複製時に複製を行う
チェックをはずしたテーブルの場合、1階層目以降の記録の処理で、処理を行いません。
複製処理の仕組みの例で言えば、
- Bのテーブルで、チェックをはずして複製処理を行わないとすれば、Bを複製しません。
- Cのテーブルで、チェックをはずして複製処理を行わないとすれば、Cの記録を、aに紐付けません。
- Dのテーブルで、チェックをはずして複製処理を行わないとすれば、Dの記録を、aに紐付けません。
関連テーブル
1-複の関連テーブルの、複製時最大レベル
1-複の関連テーブルで、複製処理の最大階層(レベル)を指定します。
- 0は、そのテーブルの記録を複製しません。
- 1は、そのテーブルを複製します。
ただし、それ以降の階層の処理はしません。例えば、画像の例では、個人テーブルは複製時最大レベルが1なので、グループを複製した時、個人の記録は複製しますが、個人の記録に紐付いている記録については処理をしません。 - 2は、そのテーブルを複製します。
そして、2階層目の処理も行います。ただし、3階層目の処理は行いません。
以下同様です。
「複 - 複」「複 - 複 の親」の関連テーブル
の、複製時最大レベル
「複 - 複」「複 - 複 の親」の関係で、複製処理の最大階層(レベル)を指定します。
0か1です。
- 0は、そのテーブルの記録を紐付けません。
- 1は、そのテーブルの記録を紐付けます。
複製例
ここでは、グループに複製ボタンを表示して、グループの複製を例示します。
グループのテーブル設定
売上の複製時最大レベルを2になっているので、売上に紐付いている記録も複製されます。
複製する記録の例
この記録を複製します。
複製された記録
複製された記録にも、売上に2つの明細が配置されています。