> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# テーブル列順序

> テーブル要素の Order タブでテーブル列順序を指定します。固定列順序を列挙するか、画像ごとに列の配置が異なる場合はルールを記述します。

画像ごとに列の順序や構成が異なる場合があるため、テーブル内で考えられる列順序をすべて列挙する必要があります。

ある要素がテーブルで考えられるすべての列を表しており、画像を解析することで考えられる列順序をすべて特定できる場合は、その要素のプロパティで可能な列順序をすべて指定します。

考えられる列順序をすべて漏れなく列挙できない場合や、検出する必要のない別の列が途中に挟まる場合は、複数の列順序を記述するためのルールを作成できます。

**テーブル**要素の **Properties** ダイアログの **Order** タブで列順序を指定します。

**Properties** ダイアログを開くには、**FlexiLayout** ウィンドウで **テーブル**要素を右クリックし、ショートカットメニューの **Properties...** を選択します。

<Frame>
  <img src="https://mintcdn.com/abbyy/lqYknuOmCa79141v/images/flexi-capture/fls/Order_tab.gif?fit=max&auto=format&n=lqYknuOmCa79141v&q=85&s=7c70fa7943a9c263b53c00cc008709b5" alt="ABBYY FlexiLayout Studio のテーブル要素の Properties ダイアログにある Order タブのスクリーンショット。固定列順序とルールのオプションが表示されています。" width="431" height="455" data-path="images/flexi-capture/fls/Order_tab.gif" />
</Frame>

* 可能な列順序を単純に列挙するだけであれば、たとえば "Column1; Column2; Column3" と "Column3; Column2; Column1" のように、互いに矛盾する列順序を指定できます。画像に対して FlexiLayout をマッチングする際、プログラムはその画像に最も適した列順序を選択します。
* 複数の列順序を記述するためにルールを使用する場合は、矛盾する順序を指定できません。画像に対して FlexiLayout をマッチングする際、プログラムはすべての条件を満たす列順序を探します。2 つのルールで矛盾する条件が指定されている場合 (たとえば、"Column1 \<\< Column2 \<\< Column3" と "Column3 \<\< Column2 \<\< Column1")、プログラムは FlexiLayout をマッチングできません。

<div id="list-fixed-column-orders">
  ## 固定列順序の一覧
</div>

すべてのテスト画像で列の順序がまったく同じ場合、その順序は*固定*であるといいます。たとえば、テーブルに *日付*、*数量*、*価格* の 3 つの列があり、それらが常にこの順序で並んでいる場合です。

テスト画像によっては、複数の異なる列順序が見つかることがあります。たとえば、ある画像では *日付*、*数量*、*価格* の順で、別の画像では *日付*、*価格*、*数量* の順になっていることがあります。

このような順序は、いくつでも指定できます。

固定列順序を指定するには、**Fixed column order** オプションを選択します。既定では、**テーブル要素**を作成すると、テーブルブロックの作成時に指定した順序で全列を並べた 1 つの固定列順序がプログラムによって設定されます。この順序には、既定で **Standard** という名前が付けられます。

テスト画像上の列順序に合わせて、**Standard** の順序を変更できます。また、新しい順序を追加したり、一覧から順序を削除したりすることもできます。

<div id="edit-a-fixed-column-order">
  ### 固定列順序を編集する
</div>

<Steps>
  <Step title="固定列順序の編集ダイアログを開く">
    編集する列順序を選択し、**Edit...** をクリックします。
  </Step>

  <Step title="列順序の名前を変更する">
    **Order name** field に、列順序の新しい名前を入力します。この名前は、FlexiLayout で順序を識別するためにのみ使用され、現在の **テーブル** 要素の認識候補のプロパティに表示されます。この名前を指定すると、プログラムがどの列順序を選択したのかを識別しやすくなります。
  </Step>

  <Step title="列を並べ替える">
    **List1** field には、すべてのテーブル列の一覧が表示されます。列を選択し、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=e5bbccc3203ef5f931d294c79aa2293f" alt="右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Right.gif" /> をクリックして **List2** リストに追加します。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=749dfbf28d3479073569e0b2fb77236b" alt="すべて右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Right.gif" /> をクリックすると、すべての列がリストに追加されます。

    <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=f694213211ab88377bbc83d3e099016f" alt="左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Left.gif" /> をクリックすると **List2** リストから列が削除され、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=6f3826db16635949999496b43c4dde6e" alt="すべて左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Left.gif" /> をクリックすると **List2** リストからすべての列が削除されます。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Up_Table.gif?s=1223f3bf294a1e1de73888cbc5479e4d" alt="上へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Up_Table.gif" /> ボタンと <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Down_Table.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=0b97cc8954437f7ce4a776808f92f271" alt="下へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Down_Table.gif" /> ボタンを使うと、**List2** リスト内で列を上下に移動できます。必要に応じてこれらのボタンを使って列の順序を変更し、**OK** をクリックします。
  </Step>
</Steps>

<div id="create-a-new-column-order">
  ### 新しい列順序を作成する
</div>

<Steps>
  <Step title="［固定列順序の追加］ダイアログを開く">
    **Add...** をクリックします。
  </Step>

  <Step title="列順序に名前を付ける">
    **Order name** field に、新しい列順序の名前を入力します。
  </Step>

  <Step title="列を並べ替える">
    **List1** field には、すべてのテーブル列の一覧が表示されます。列を選択し、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=e5bbccc3203ef5f931d294c79aa2293f" alt="右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Right.gif" /> をクリックして **List2** リストに追加します。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=749dfbf28d3479073569e0b2fb77236b" alt="すべて右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Right.gif" /> をクリックすると、すべての列がリストに追加されます。

    <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=f694213211ab88377bbc83d3e099016f" alt="左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Left.gif" /> をクリックすると **List2** リストから列が削除され、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=6f3826db16635949999496b43c4dde6e" alt="すべて左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Left.gif" /> をクリックすると **List2** リストからすべての列が削除されます。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Up_Table.gif?s=1223f3bf294a1e1de73888cbc5479e4d" alt="上へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Up_Table.gif" /> ボタンと <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Down_Table.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=0b97cc8954437f7ce4a776808f92f271" alt="下へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Down_Table.gif" /> ボタンを使うと、**List2** リスト内で列を上下に移動できます。必要に応じてこれらのボタンで列の順序を変更し、**OK** をクリックします。
  </Step>
</Steps>

固定列順序を削除するには、リストで対象の順序を選択し、**Delete** をクリックします。

<div id="use-rules-to-specify-column-order">
  ## ルールを使用して列の順序を指定する
</div>

テスト画像を解析しても1つ以上の固定列順序を特定できない場合は、考えられる順序を記述するルールを作成できます。

各ルールでは、たとえば次のような条件を設定します。「*日付*列は常に*品目*列より前にある」または「*価格*列は常に*品目*列より後にある」。ルールを使うと、列の検索範囲を絞り込み、考えられる組み合わせの数を減らすことができます。

ルールを使用して列の順序を指定するには、**Rules for column order**オプションを選択します。

<div id="create-a-rule">
  ### ルールを作成する
</div>

<Steps>
  <Step title="「Edit Column Order Rule」ダイアログを開く">
    **Add...** をクリックします。
  </Step>

  <Step title="列を配置して順序を設定する">
    **List1** field には、すべてのテーブル列の一覧が表示されます。列を選択し、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=e5bbccc3203ef5f931d294c79aa2293f" alt="右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Right.gif" /> をクリックして **List2** リスト に追加します。次に、先ほど選択した列の後に必ず配置される列を選択します (ただし、直後である必要はありません) 。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=749dfbf28d3479073569e0b2fb77236b" alt="すべて右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Right.gif" /> をクリックすると、すべての列が一覧に追加されます。

    <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=f694213211ab88377bbc83d3e099016f" alt="左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Left.gif" /> をクリックすると **List2** リスト から列が削除され、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=6f3826db16635949999496b43c4dde6e" alt="すべて左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Left.gif" /> をクリックすると **List2** リスト からすべての列が削除されます。<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Up_Table.gif?s=1223f3bf294a1e1de73888cbc5479e4d" alt="上へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Up_Table.gif" /> ボタンと <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Down_Table.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=0b97cc8954437f7ce4a776808f92f271" alt="下へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Down_Table.gif" /> ボタンを使用すると、**List2** リスト 内で列を上下に移動できます。必要に応じてこれらのボタンで列の順序を変更し、**OK** をクリックします。
  </Step>
</Steps>

作成したルールは **Rules for column order** field に表示されます。`<<` 記号は、一方の field がもう一方の field より常に前にあることを示します。

<div id="edit-a-rule">
  ### ルールを編集する
</div>

<Steps>
  <Step title="Edit Column Order Rule ダイアログを開く">
    **Edit...** をクリックします。
  </Step>

  <Step title="必要な順序を設定する">
    <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=e5bbccc3203ef5f931d294c79aa2293f" alt="右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Right.gif" />、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_All_Right.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=749dfbf28d3479073569e0b2fb77236b" alt="すべて右へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_All_Right.gif" />、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Left.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=f694213211ab88377bbc83d3e099016f" alt="左へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Left.gif" />、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Up_Table.gif?s=1223f3bf294a1e1de73888cbc5479e4d" alt="上へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Up_Table.gif" />、<img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Button_Down_Table.gif?fit=max&auto=format&n=fmgRWFNHKYN2MLSg&q=85&s=0b97cc8954437f7ce4a776808f92f271" alt="下へ移動ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="27" height="18" data-path="images/flexi-capture/fls/Button_Down_Table.gif" /> の各ボタンを使用して列を並べ替え、**OK** をクリックします。
  </Step>
</Steps>

ルールを削除するには、**Delete** をクリックします。
