Решение для добавления подсетки к сущности в CRM 2011 для отношений, которые не настраиваются - PullRequest
0 голосов
/ 03 декабря 2011

Я пытаюсь добавить подсеть к объекту Прайс-лист для Прайс-листа. При просмотре раскрывающегося списка параметров для сущностей в диалоговом окне вставки вложенной сетки я не вижу элементы прайс-листа в качестве опции. После дальнейшего изучения выясняется, что единственными опциями в списке являются отношения 1: N, которые устанавливаются как настраиваемые, а не элементы прайс-листа.

Кто-нибудь знает обходной путь для этого?

1 Ответ

0 голосов
/ 04 декабря 2011

Я спрашивал о viewID, потому что в FormXml для «основной» формы вы можете найти раздел, в котором подробно описывается, как создается подсетка для продуктов, связанных с pricelevel (прайс-лист), и принципал параметр - это ViewId, который является идентификатором системного представления объекта, который вы хотите просмотреть / отредактировать.

Я спросил о типе развертывания (локальное или сетевое), потому что вы можете просто просмотреть базу данных в таблице SavedQuery, чтобы получить ViewID для productpricelevel (детализация уровня цен), но я Я уверен, что вы можете получить это с помощью обычного запроса CRM. В любом случае, ViewID, который у меня есть в записи для представления «Все позиции прайс-листа», это «AB4877E9-6D01-4D28-84C3-BE7564C1BB09», и я держу пари, что он одинаков для вашей организации.

С помощью этой информации вы можете изменить FormXml для pricelevel и добавить в подсеть XML для productpricelevel, как показано ниже. Если вам нужно изменить макет пользовательского интерфейса, вы можете посмотреть на другой объект, который имеет макет, который вы хотите, и изменить соответствующим образом.

<row>
  <!--cell id: a distinct GUID for this area of the form. Any will do.-->
  <cell id="{74e711eb-0eec-119e-8703-ce8b5dbbca94}" showlabel="true" colspan="1" auto="false" rowspan="8">
    <labels>
      <!--label description: the name (if any) of any label you want to see with the subgrid-->
      <label description="Price Level Detail" languagecode="1033" />
    </labels>
    <!--control id: the name of the subgrid
    classid: the type of control (in this case, a subgrid)-->
    <control id="CustomPriceLevelItemSubGrid" classid="{E7A81278-8635-4d9e-8D4D-59480B391C5B}">
      <parameters>
        <!--ViewID: the ID stored in the system for the entity you're interested in (in this case, productpricelevel/Price Level Detail)-->
        <ViewId>{AB4877E9-6D01-4D28-84C3-BE7564C1BB09}</ViewId>
        <IsUserView>false</IsUserView>
        <!--RelationshipName: the name of the relationship that links the two entities (pricelevel to productpricelevel)-->
        <RelationshipName>price_level_product_price_levels</RelationshipName>
        <!--TargetEntityType: the entity you want to see displayed in the subgrid-->
        <TargetEntityType>productpricelevel</TargetEntityType>
        <AutoExpand>Fixed</AutoExpand>
        <EnableQuickFind>true</EnableQuickFind>
        <EnableViewPicker>true</EnableViewPicker>
        <ViewIds></ViewIds>
        <EnableJumpBar>true</EnableJumpBar>
        <ChartGridMode>Grid</ChartGridMode>
        <VisualizationId></VisualizationId>
        <IsUserChart>false</IsUserChart>
        <EnableChartPicker>false</EnableChartPicker>
        <RecordsPerPage>4</RecordsPerPage>
      </parameters>
    </control>
  </cell>
</row>
<row />
<row />
<row />
<row />
<row />
<row />
<row />
...