0

以下のような更新クエリを使用して、HZ_CONTACT_POINTS に存在する連絡先の PL/SQL プロシージャから EMAIL_ADDRESS または PHONE_NUMBER 列を手動で更新しても問題ありませんか?

UPDATE hz_contact_points SET phone_number = P_PHONE_NUMBER WHERE owner_table_id = p_party_id AND owner_table_name = 'HZ_PARTIES' and primary_flag = 'Y' AND status = 'A' AND UPPER(contact_point_type) = 'PHONE';

また

UPDATE hz_contact_points SET email_address = P_EMAIL_ADDRESS WHERE owner_table_id = p_party_id AND owner_table_name = 'HZ_PARTIES' AND PRIMARY_FLAG = 'Y' AND STATUS = 'A' AND UPPER(CONTACT_POINT_TYPE) = 'EMAIL';

または、API 呼び出しを使用する必要がありますか。

HZ_CONTACT_POINT_V2PUB.update_phone_contact_point

また

HZ_CONTACT_POINT_V2PUB.update_email_contact_point

4

1 に答える 1

3

HZ_CONTACT_POINT_V2PUBTCA のインターフェースの一部です。TCAのドキュメントから引用するには:

「Oracle Trading Community Architecture (TCA) は、組織、場所、およびそれらの間の階層関係のネットワークを含む、商業コミュニティに属する関係者または顧客に関する複雑な情報を管理できるようにするデータ モデルです。」

特に、その複雑な情報にはバージョン履歴が含まれます。それが Oracle Apps API の機能です。実際の DML を実行し、付随する変更 (依存関係、バージョン管理、監査など) を調整して、そのデータ モデル の一貫性を確保します。

SQL を使用して属性を手動で更新する場合、そのようなことはしません。

では、「大丈夫」でしょうか?多分あなたはそれで逃げて、何も壊さないでしょう. あるいは、あなたの組織はバージョン履歴を気にしていないかもしれません。しかし、彼らは Oracle Apps のライセンスに多額の費用を費やしてきました。だから私のアドバイスは、API を使うことです。API をバイパスする習慣を身につけると、最終的にはデータ モデルが壊れてしまい、Oracle サポートが非常に難しい質問をするからです。

于 2014-11-29T07:57:51.330 に答える