複製

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つの明細が配置されています。