AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.08.2019, 20:55   #1  
vasya-serega is offline
vasya-serega
Участник
 
145 / 17 (1) ++
Регистрация: 12.05.2013
Адрес: Украина
Видимость Date.prototype.someExtention на форме (365)
Доброго времени суток,
кто подскажет, что измненилось в 365 црмке при загрузке скриптов на форме?

Есть скрипт, в котором прописан код
Date.prototype.someFunction = function () {
...
return someDate;
};
И есть скрипт другой скрит, который пытается этот метод вызвать.
Если вызывать его для объекта, который получаешь из кода. н-р,
X++:
(new Date()).someFunction()
то все работает, а вот если для объекта, которые вернула црмка для какого-нибудь поля, то браузер начинает ругаться, что такого свойства у объекта нету
X++:
var date1 = context.getFormContext().getAttribute("new_effectivedate").getValue();
date1.someFunction(); // Error
var date2 = Xrm.Page.getAttribute("new_effectivedate").getValue();
date2.someFunction(); // Error
В 2015 все работало без проблем. Конечно, не проблема переписать прототипы на обычные функции, но хотелось бы еще понимать, что происходит.
Старый 12.08.2019, 00:16   #2  
Jercy is offline
Jercy
Участник
 
1 / 10 (1) +
Регистрация: 12.08.2019
Цитата:
var date1 = context.getFormContext().getAttribute("new_effectivedate").getValue();
Возвращает тип Object. Здесь как в анекдоте "... у Вас письмо без даты"
Старый 12.08.2019, 10:43   #3  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Date - это всегда object: https://www.w3schools.com/js/js_type_conversion.asp, так что, думаю, проблема где-то еще.


Насколько я понимаю, это довольно плохая мысль - модифицировать прототипы базовых типов. Идея часто используется для создания разного рода полифилов, но для того, чтобы все четко работало вы должны быть автором приложения и первым делом подгружать нужный полифил. Для своих хэлпер функций их точно не стоит использовать.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 12.08.2019, 10:48   #4  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Пруф: https://developer.mozilla.org/ru/doc...BF%D0%BE%D0%B2
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
survivingcrm: Keeping Dynamics 365 Apps Up to Date Blog bot Dynamics CRM: Blogs 0 06.11.2018 02:27
powerobjects: Dynamics 365 as an Application Integration Platform Blog bot Dynamics CRM: Blogs 0 13.04.2018 02:16
survivingcrm: What’s An “App” in Dynamics 365 Anyway? Blog bot Dynamics CRM: Blogs 0 06.01.2018 22:14
stoneridgesoftware: New Features in Dynamics 365 (CRM) Business Edition – UI Improvements: Date Fields & Look Up Fields Blog bot Dynamics CRM: Blogs 0 27.10.2017 23:13
wiki.dynamicsbook: Changes Made in Navision Attain 3.60 Blog bot Dynamics CRM: Blogs 0 02.09.2008 13:23

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:29.