0

私は古い tridion 2009 トリガーを持っていました。これはコードです:

CREATE TRIGGER My_TABLE ON [ITEMS]  
FOR INSERT  
AS  
    INSERT INTO My_TABLE(ACTION, PUBLICATION_ID, ITEM_REFERENCE_ID, ITEM_TYPE, LAST_PUBLISHED_DATE, URL, SCHEMA_ID)  
        SELECT 'ADD', PUBLICATION_ID, ITEM_REFERENCE_ID, ITEM_TYPE, LAST_PUBLISHED_DATE, URL, SCHEMA_ID  
        FROM inserted  

Tridion 2009URLおよびSCHEMA_IDwhere テーブルの一部ですがITEMS、Tridion 2011 SP1 にアップグレードすると、これらの列はテーブルに存在しなくなりITEMSます。

SCHEMA_IDテーブルに移動しましたがCOMPONENT、各タイプのアイテムの URL を取得する方法に少し興味があります (ページ、コンポーネントなど。URL を取得するには link_info テーブルを使用する必要があります)。

URLの表にあったように、どの表を使用して を取得するかを教えてくださいITEMS

ありがとう。

4

1 に答える 1

3

データベースの詳細が文書化されていないのには理由があります。SDL は、このレベルでのそのデータへのアクセスをサポートしていません。

必要なときに必要なデータを取得するための非常に豊富な API が用意されているため、SDL は実装サポートについて心配することなく、データベース レイヤーを継続的に改善できます。

あなたの場合、ここでいくつか説明すると役立つかもしれません...

  1. これはどのデータベースですか? 列名を読むと、コンテンツ配信データベースのように見えますか?
  2. 公開された URL を保存する理由は何ですか? それはすでにそこにあります。

まだ明確でない場合classesは、表ではなくリンクを使用して URL を取得する必要がありLINK_INFOます。適切に設定された環境ではこれらの値がキャッシュされるため、データベースへの影響について心配する必要はありません。これでも十分ではなく、カスタム値を含むカスタム テーブルが本当に必要な場合は、必要に応じてテーブルにデータを入力する Deployer 拡張機能の使用を検討してください。

于 2012-12-26T14:36:21.197 に答える