|
![]() |
#1 |
Участник
|
Цитата:
Да, вот код : X++: function activity_onload() { var CRM_FORM_TYPE_CREATE = 1; var CRM_FORM_TYPE_UPDATE = 2; var entityName = Xrm.Page.data.entity.getEntityName(); window.recipientFieldName = ((entityName == 'appointment') || (entityName == 'recurringappointmentmaster')) ? 'requiredattendees' : 'to'; if(Xrm.Page.getControl(window.recipientFieldName) != null) { window.recipientDefaultViewId = Xrm.Page.getControl(window.recipientFieldName).getDefaultView(); } if(Xrm.Page.getControl('new_opportunityid') != null) { window.opportunityDefaultViewId = Xrm.Page.getControl('new_opportunityid').getDefaultView(); } /*** [FR-6] [begin code] ***/ if(Xrm.Page.ui.getFormType() == CRM_FORM_TYPE_CREATE) { Xrm.Page.getAttribute("regardingobjectid").fireOnChange(); } Xrm.Page.getAttribute("new_opportunityid").fireOnChange(); Xrm.Page.getAttribute("new_campaignid").fireOnChange(); /*** [FR-6] [end code] ***/ /*** [FR-9] [begin code] ***/ window.saveCode = (Xrm.Page.data.entity.getEntityName() == 'email') ? 7 : 58; window.SaveAsCompleted = function() { if(!crmForm.IsValid()) { return; } var bSubmit = true; if((Xrm.Page.getAttribute('regardingobjectid').getValue() != null) && ((Xrm.Page.getAttribute('regardingobjectid').getValue()[0].entityType == 'account') || (Xrm.Page.getAttribute('regardingobjectid').getValue()[0].entityType == 'contact') || (Xrm.Page.getAttribute('regardingobjectid').getValue()[0].entityType == 'opportunity'))) { window.devCall = true; var retVal = openStdDlg("/" + Xrm.Page.context.getOrgUniqueName() + '/Activities/dlg_create.aspx', window, 350, 350); if(retVal != null) { var oWindowInfo = GetWindowInformation(retVal); var url = oWindowInfo.Url; var iX = oWindowInfo.Width; var iY = oWindowInfo.Height; var win = openStdWin(url, buildWinName(), iX, iY); bSubmit = false; } } if(bSubmit) { crmForm.SubmitCrmForm(window.saveCode, true, true, false); } } if(Xrm.Page.data.entity.getEntityName() == 'email') { eval('window.send = ' + send.toString().replace('crmForm.SubmitCrmForm(CRM_EMAILFORM_EMAILSEND,true,true,false)', 'SaveAsCompleted()')); } try { if((window.top.opener != undefined) && (window.top.opener.devCall != undefined)) { var parentXrmPage = window.top.opener.Xrm.Page; copyLookup("from", parentXrmPage, Xrm.Page); copyLookup("to", parentXrmPage, Xrm.Page); copyLookup("new_accountid", parentXrmPage, Xrm.Page); copyLookup("regardingobjectid", parentXrmPage, Xrm.Page); copyLookup("new_opportunityid", parentXrmPage, Xrm.Page); copyLookup("new_campaignid", parentXrmPage, Xrm.Page); copyLookup("ownerid", parentXrmPage, Xrm.Page); Xrm.Page.getAttribute("new_opportunityid").fireOnChange(); Xrm.Page.getAttribute("new_campaignid").fireOnChange(); window.top.opener.crmForm.SubmitCrmForm(window.saveCode, true, true, false); } } catch(e) { if ((e.number != -2147418094) && (e.number != -2146828218)) { throw e; } } |
|
![]() |
#2 |
Чайный пьяница
|
У меня были проблемы, если при загрузке использовалось показ/скрытие полей CRM. У вас такого кода не вижу. В любом случае думаю, что ваш код стоит отрефакторить, потому что как по мне выглядит сейчас он пугающе.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#3 |
Участник
|
То есть Вы всё таки думаете, что проблема из за кода? Но ведь ошибка такая возникает не у всех пользователей и не всегда. Как Вы думаете обновление до роллап 8 поможет хотябы немного?
|
|
![]() |
#4 |
Чайный пьяница
|
Цитата:
Уже 11 роллап вышел, его вроде как ставить пора. А по поводу того поможет или нет - необходимо смотреть описание фиксов, включённых в ролап.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#5 |
Участник
|
В коде идет обращение к window.top.opener.Xrm.Page, но форма активити может быть открыта не только из связанного представления, но и из главного окна crm. Возможно ошибка возникает именно в этом случае.
|
|
|
За это сообщение автора поблагодарили: webmaster (1). |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|