1

CMS_UserSettings テーブルに新しいカスタム フィールドを追加しました。フォーム コントロールの種類は複数選択です。コントロールのデータ ソースは、SQL クエリに設定されます。選択したユーザー ([管理] > [ユーザー]) に基づいて、コントロールにアイテムを入力できるようにしたいと考えています。現在のユーザーではありません。これの構文を知っている人はいますか?出来ますか?

現在のユーザー属性を取得するサンプルを次に示します。これを選択したユーザーにする必要があります。

SELECT ItemID, dealerNumber + ' - ' + dealerTitle 
FROM cPort_DealerLocation
WHERE culliganGroupID = {%CurrentUser.culliganGroupID#%}
ORDER BY ItemID
4

1 に答える 1

3

EditedObject マクロを使用して、現在編集中のオブジェクトにアクセスできます - {%EditedObject.FieldName%}.

編集:

ドキュメントに対してこれを行うには、カスタム マクロ メソッドが必要なようです。次のコードでこれを行うことができました:1)カスタムマクロメソッドを作成します(方法についてはドキュメントを参照してください

        MacroMethod method = new MacroMethod("MyEditedDoc", parameters => CMSContext.EditedDocument)
        {
            Type = typeof(TreeNode),
            Comment = "Returns currently edited document.",
            MinimumParameters = 0
        };
        MacroMethods.RegisterMethod(method);

2) 次に、使用できるドキュメント タイプのフィールド エディターで、{%MyEditedDoc().DocumentName#%}[フォーム] タブで解決されます。

于 2013-08-28T08:49:48.287 に答える