コンポーネントの公開中にコンポーネントフィールドを更新しています。コンポーネントが公開されたら、現在の日時をコンポーネントの PublishDate フィールドに更新します。このコードは .net アセンブリ (c#) で記述しました。コンポーネントの発行が失敗し、「このアクションを実行する権限がありません」というエラーが表示される
以前は vbscript テンプレートでこれを行っていましたが、この問題に直面している複合テンプレートに移行しています。
コンポーネントの公開中にコンポーネントフィールドを更新しています。コンポーネントが公開されたら、現在の日時をコンポーネントの PublishDate フィールドに更新します。このコードは .net アセンブリ (c#) で記述しました。コンポーネントの発行が失敗し、「このアクションを実行する権限がありません」というエラーが表示される
以前は vbscript テンプレートでこれを行っていましたが、この問題に直面している複合テンプレートに移行しています。
Tridion 2011 では、既定で、テンプレート コードから他のアイテムを発行または編集することはできなくなりました。
ただし、 Tridion.ContentManager.ConfigファイルのallowWriteOperationsInTemplates
属性を変更することで有効にすることができます。
<tridion.contentmanager.security allowAutomaticUserCreation="true" hideOrganizationalItemsNoAccess="false" allowWriteOperationsInTemplates="true">
そのままの Tridion 2011 では、テンプレートで項目を変更することはできないと思います。この動作は構成でオーバーライドできます。誰かがこれを正確に行う方法を知っている場合は、ドキュメントで見つけることができないため、情報を追加してください。
テンプレート コードを使用してバンドルを作成しているときに、TOM.NET API が読み取り専用であるため、それが許可されていないことがわかりました。
したがって、Tridion.ContentManager.Config ファイルの allowWriteOperationsInTemplates 属性を変更すると、次のようになります。
tridion.contentmanager.security allowAutomaticUserCreation="true"
TOM.Net API を使用してアーティファクトを作成できます。
ありがとう !飛蓮霧