2012-02-13 3 views
5

Просто интересно, есть ли поддержка поддержки intellisense во время работы над файлами javascript в Dynamics CRM 2011? Я знаю, что вы можете получить эту поддержку, если используете Visual Studio, но просто интересно, есть ли способ сделать это в самом CRM-приложении.Javascript intellisense с Dynamics CRM 2011

Любые предложения по этому вопросу были бы замечательными!

+0

Я предполагаю, что вы спрашиваете, потому что хотите, чтобы вы могли относительно быстро опубликовать систему? Вы согласны с решением, основанным на VS, которое выполнит то же самое? –

+0

Да, это главная причина. Я знаю VS-based решения, однако оптимальным является intellisense для ресурсов JavaScript в самом CRM. Знаете ли вы какие-либо решения, обеспечивающие эту функциональность? – skub

+0

Ничего. Может быть, Dynamics CRM 6.0? И из любопытства, какие VS-based издательские решения вы пробовали? –

ответ

4

Поскольку редактор сценариев внутри CRM - это просто текстовое поле, я думаю, что ответ отрицательный, и поверьте мне, что я сожалею об этом! Вы могли бы подумать, что они, по крайней мере, установили шрифт в качестве курьера типа типа true, чтобы немного помочь в редактировании.

Я считаю, что самый простой способ - использовать легкий текстовый редактор с подсветкой синтаксиса, например Notepad++. Это бесплатно, конечно;)

Если вы скопируете код из редактора CRM, вставьте его в Notepad ++ и выберите JavaScript в качестве языка, он даст вам ту же подсветку синтаксиса, что и Visual Studio, но без связанных нагрузок (не поймите меня неправильно, мне нравится Visual Studio, но это массовое переполнение для небольшого изменения JavaScript). Также он позволит вам правильно установить отступы. Затем, когда вы закончите редактирование, скопируйте и вставьте обратно в CRM.

Я нахожу это особенно полезным, если мне нужно сделать быструю смену на машине, где Visual Studio недоступна.

+0

Да, я думаю, это единственный способ :( – skub

+1

@ skub: Я думаю, что этот ответ хорош, но ваше печальное лицо заставляет меня чувствовать себя грустным. Вы проверили проект Tanguy CRM JS? Это красиво и может быть адаптировано быстро опубликовать файлы с одним сохранением и щелчком * с помощью * intellisense. (См. http://stackoverflow.com/questions/7791822/ms-dynamics-crm-2012-script-editor-enhancements/7812797#7812797) –

+0

ah right это выглядит многообещающе, я проверю его :). Спасибо, Питер! – skub

2

Вам нужно добавить файл XrmPage-vsdoc.js в свой проект в VS2010, а затем добавить ссылку на него, как этот

///<reference path="..\IntelliSense\XrmPage-vsdoc.js"/> 

к началу вашего * .js файла и вы получите работать IntelliSense. Для получения дополнительной информации смотрите этот пост CRM 2011: IntelliSense for Xrm.Page

+0

Я думал, что он не хотел использовать VS? – sarnold

0

Посмотрите на редактор веб-ресурсов Shrpr, который имеет подсветку синтаксиса, согласование фигурных скобок и некоторое простое завершение кода (не полный intellisense, но все же стоит того).

http://www.shrpr.org/2011/11/shrpr-web-resource-editor-first-release.html

(есть более поздние версии тоже, но первое объявление было наибольшее количество информации в)

6

К сожалению следует читать более внимательно, прежде чем отправлять. Но если вы с использованием VS ...

См. http://blogs.msdn.com/b/crm/archive/2011/04/07/jscript-intellisense-for-form-script-libraries.aspx. Я автор этой части CRM SDK. Я сделал это решение и включил его в SDK. Он предоставляет JavaScript IntelliSense на основе структуры и данных, найденных в определенной форме. Существует расширение Visual Studio и поддерживающее CRM-решение.

Этот CRM SDK Topic представляет решение: http://msdn.microsoft.com/en-us/library/gg328261.aspx.

Это решение немного отличается от других решений IntelliSense, поскольку оно фактически реализует большинство функций Xrm.Page, поэтому вы получаете IntelliSense и некоторую возможность протестировать свой код против моментального снимка отдельной формы, содержащей данные. Вам не нужно загружать файлы в виде веб-ресурсов. Сначала вы можете сделать проверку работоспособности и избежать значительной отладки веб-ресурсов изнутри CRM.

То, что он не делает, это указать имена отдельных атрибутов формы, которые вы можете захотеть ссылаться (хотя моментальный снимок данных страницы предоставляет это в удобном для чтения формате JSON). Он фокусируется на синтаксисе API и доступных методах. Если вы наберете Xrm.Page.getAttribute ('new_optionset'). вы увидите только методы, которые действительны для атрибута набора параметров. Хотя все атрибуты имеют функции getValue и setValue, не каждый атрибут имеет метод getOptions. Это не требует добавления дополнительной библиотеки в ваш скрипт, чтобы они могли работать.

Я думаю, что другие библиотеки intellisense великолепны. Спасибо тем людям, которые их создали. Решение, которое я сделал, имеет немного больше накладных расходов, но вы получаете и другой опыт. Используйте то, что работает для вас.

+0

Думаю, мне понравится. На этой неделе я попробую попробовать. –

Смежные вопросы