2017-11-09 9 views
0

私はuniselectorでpagetypeのフィールドを表示するソリューションを探しています。Kentico 10 Uniselectorカスタムフィールドを表示

私の現在の設定

  • オブジェクトタイプ:cms.document
  • 表示名形式:{%のDOCUMENTNAMEの%} { MyPageType#1%の%のをMyCustomField}
  • 選択モード: 複数
  • 条件:ClassName = 'MyPageType' AND DocumentCulture = '{%LocalizationContex t.CurrentCulture.CodeName#1%}」

答えて

1

私はあなたがいる限り、あなたは(ユニセレクターの 『追加列』フィールドにカスタムフィールド名を追加したとDocumentNameと同じようにフィールドを参照することができると信じて拡張オプションを拡張する必要があります)。

  • 表示名形式:{%のDOCUMENTNAMEの%} {%のをMyCustomFieldの%}
  • 追加列:私は、これはユニセレクターでは可能であるとは考えていないのでをMyCustomField
+0

私はこれを試してみましたが、私はこの例外=>原因となった例外があります。無効な列名「をMyCustomField」。マルチパート識別子「MyCustomField」はバインドできませんでした。 'MyCustomField'列が 'AllData'に対して複数回指定されました。 –

+0

はい、私はあなたがこれが可能ではないと思うでしょう。あなたはcms.documentテーブルから選択するようにuniselectorに指示できますが、選択したタイプの専用テーブルに参加することはできません。私はあなたがこれのためのカスタムフォームコントロールを構築する必要があるだろうと思う。 – getsetcode

0

代わりにリストボックスコントロールを試してみたことがありますか?これにより、SQL SELECTを定義して、表示されるデータを完全に制御できるようになります。たとえば、次のようなSQLクエリするデータソースを設定します。

SELECT DocumentID, DocumentName, MyCustomField FROM dbo.Namespace_MyTable a 
INNER JOIN dbo.CMS_Document b ON a.MyTableID = b.DocumentForeignKeyValue 
INNER JOIN dbo.CMS_Tree c ON b.DocumentNodeID = c.NodeID AND c.NodeClassID = 1 
-- Make sure NodeClassID has the correct value from dbo.CMS_Class 

その後、あなたのテキスト形式フィールドは{%のDOCUMENTNAMEの%} {%のをMyCustomFieldの%}のようなものすることができ

これをテストして動作します。あなたのニーズに正確に合っていないかもしれませんが、うまくいけばユニ・セレクターが可能であるよりもあなたを近づけます。

関連する問題