Показать сообщение отдельно
Старый 01.03.2010, 12:41   #6  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Skyway Посмотреть сообщение
Ага, спасибо. Теперь возник еще вопрос - как при помощи JS получить имя пользователя, под которым залогонен юзер?
Попробуйте такой скрипт. У меня отработал идеально:

Код:
GetCurrentUserName = function()
{
	var xml = "<?xml version='1.0' encoding='utf-8'?>"+ 
	"<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'"+
	" xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'"+
	" xmlns:xsd='http://www.w3.org/2001/XMLSchema'>"+ 
	GenerateAuthenticationHeader()+ 
	"<soap:Body>"+ 
	"<RetrieveMultiple xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ 
	"<query xmlns:q1='http://schemas.microsoft.com/crm/2006/Query'"+
	" xsi:type='q1:QueryExpression'>"+ 
	"<q1:EntityName>systemuser</q1:EntityName>"+ 
	"<q1:ColumnSet xsi:type='q1:ColumnSet'>"+ 
	"<q1:Attributes>"+ 
	"<q1:Attribute>fullname</q1:Attribute>"+ 
	"</q1:Attributes>"+ 
	"</q1:ColumnSet>"+ 
	"<q1:Distinct>false</q1:Distinct>"+ 
	"<q1:Criteria>"+ 
	"<q1:FilterOperator>And</q1:FilterOperator>"+ 
	"<q1:Conditions>"+ 
	"<q1:Condition>"+ 
	"<q1:AttributeName>systemuserid</q1:AttributeName>"+ 
	"<q1:Operator>EqualUserId</q1:Operator>"+ 
	"</q1:Condition>"+ 
	"</q1:Conditions>"+ 
	"</q1:Criteria>"+ 
	"</query>"+ 
	"</RetrieveMultiple>"+ 
	"</soap:Body>"+ 
	"</soap:Envelope>";

	var xHReq = new ActiveXObject("Msxml2.XMLHTTP");
	xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
	xHReq.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/RetrieveMultiple");
	xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
	xHReq.setRequestHeader("Content-Length", xml.length);
	xHReq.send(xml);

	var results = xHReq.responseXML.getElementsByTagName('BusinessEntity');

	if (results.length == 0)
	{
		return "No user Was Found"
	}
	else
	{
		var username = results[0].selectSingleNode('./q1:fullname');
		if (username == null)
			return "User Was Found but name field is empty";
		else
			return username.nodeTypedValue;
	}
}

alert(GetCurrentUserName());
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit