Доброго времени суток.
Помогите разобраться, баг или фича. Есть CRM 2015 (7.0.2.53), в которой при переключении формы (неважно, вручную или скриптом), в таблице userentityuisettings изменяет айдишник последней выбранной формы. Проверяется примерно таким запросом:
X++:
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false" >
<entity name="userentityuisettings" >
<attribute name="lastviewedformxml" />
<attribute name="objecttypecode" />
<filter type="and" >
<condition attribute="objecttypecode" operator="eq" value="10005" />
<condition attribute="ownerid" operator="eq-userid" />
</filter>
</entity>
</fetch>
. На этой же CRM прекрасно отрабатывает плагин, который подменяет последнее сохраненное Id формы, дабы пользователю не нужно было ждать, пока отработает скрипт, и переключит форму. CRM понимает, что если последняя форма у юзера была такой, как указано в userentityuisettings, то загружать нужно именно её, всё прекрасно, всё работает.
И есть другая CRM 2015 (7.0.0.3543), в которой аналогичное переключение форм вручную не изменяет Id формы в таблице userentityuisettings (но меняется, при переключении скриптом). Если же его подменять явно, скажем плагином на Retrieve, то при первом открытии записи, будет отображаться предыдущая форма, и только если обвновить страници или заново её открыть, отобразиться та форма, которая хранится как последняя открывавшаяся в таблице userentityuisettings.
Вот мне интересно, это баг црм, или есть какие-то подводные камни, на которые я натыкаюсь во втором случае.