2つの選択リストを使用してシャトルを使用してコレクションを満たす機能を開発しています。私は、繰り返しの介入の後に、特定のリストを変更するときに、名前を表示し、その対応するIDを回復する正しい方法を得ていません。私はシャトルで選択したアイテムを更新、挿入、または削除する手順を開発しました.Sqlコマンドのいくつかのテストの後にうまく動作すると思います。apexシャトルが表示されない
私のテストケースでは、契約書、作業所、従業員という3つのテーブルが使用されています。特定の契約のワークステーションの従業員を別の契約に挿入するつもりです。従業員を受け取る新しい契約には、以前に挿入されたワークステーションが所有されている必要があります。テーブルの一般的な構造は次のとおりです。
契約:pk_contract、number_contract、COMPANY_NAME等...
ワークステーション:pk_workstation、fk_contract、説明等...
従業:pk_employee、fk_workstation、EMPLOYEE_NAME、 employee_sex等...
は、私はそれを実証するためのアプリを作成しました:https://apex.oracle.com/pls/apex/f?p=43921
USER:テスト、 PASSWORD:TEST
ページ2 - 移行従業員が別の挿入された情報を表示するために、3つの主要な領域を有し、かつ2:選択リストと
契約を、その必須の選択、preferrable契約070/2016、魔女は、ワークステーションに挿入されています、ワークステーションと従業員が添付された、契約を表す静的な値を持つ表示フィールド。
ワークステーション:2つの選択リストと、ゴードンノットと、私は思います:古いワークステーション、関連元の契約のウォークステーション - 表示フィールドに関連する、契約の地域。上記で選択した新しい契約に関連する新しいワークステーション。
従業員:与えられた元のワークステーションとボタンの魔法使いの左側には、従業員の束を表すシャトルが何もしません。
古典的なレポートを表す2つ以上の領域が、挿入、更新、または削除された従業員にシャトルを適切なサイズからコレクションを使用して通知するためにのみ使用されます。私はコレクションとテーブルとの結合を知らないので、2つのレポート領域を作成しました。このコレクションには、まだ移行されていない従業員ID、old_workstation ID、new_workstation ID、および新しい契約IDがあります。
私はapexセッションの状態で値を回復するために、ほぼすべてのフィールドをサブミットしています。
明らかに、コレクションは手順ではうまくいきますが、元の作業を再度選択すると、シャトルは適切なサイズでそのワークステーションの以前に挿入された従業員を表示しません。
SELECT e.pk_employee
FROM tb_employee e
INNER JOIN tb_workstation pt
ON pt.pk_workstation = e.fk_workstation
WHERE pt.typo IS NOT NULL
AND e.fk_workstation = p2_original_workstation
AND e.pk_employee IN (
SELECT to_number(c001) AS id_employee
FROM apex_collections
WHERE collection_name = 'WORKSTATION_EMPLOYEES');
マイshutlleのLOVはこの理論的根拠を持っている:私はそれが従業員のIDSではなく、自分の名前、下にここに記載されているソースタイプに関してを示し、私はそれを変更する場合、余分な値が含まれていないために値の私のリスト上で設定しました:
SELECT e.name, e.pk_employee
FROM tb_employee e
INNER JOIN tb_workstation pt
ON pt.pk_workstation = e.fk_workstation
WHERE pt.typo IS NOT NULL
AND e.fk_workstation = p2_original_workstation
AND e.pk_employee NOT IN (
SELECT to_number(c001) AS id_employee
FROM apex_collections
WHERE collection_name = 'WORKSTATION_EMPLOYEES');
誰でもこの問題について私を助けることができますか?
よろしくお願いいたします。