|
|
#41 |
|
Участник
|
|
|
|
|
|
#42 |
|
Участник
|
По ходу дела возникла вот какая проблема:
Хочу вывести в текстовый файл результат работы одной процедуры: Код: StreamWriter Sw1 = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Tarasov.txt");
Sw1.Write(ConnectToSite(url));
Sw1.Close();А вот код самой процедуры: Код: public static string ConnectToSite(string link)//подключение к сайту и загрузка html-кода
{
string Code = "";
try
{
string ip = "192.168.0.7";//получение адреса прокси-сервера
string port = "3128"; //получение номера порта
WebProxy proxyObject = new WebProxy(ip + ":" + port, true);//передача параметров прокси
WebClient client = new WebClient();
proxyObject.Credentials = CredentialCache.DefaultNetworkCredentials;//передача параметров аутентификации по умолчанию
client.Proxy = proxyObject;
Code = new Regex(@"\s+", RegexOptions.Compiled).Replace(client.DownloadString(link), " ").Normalize();//нормализация кода страницы
}
catch
{
}
return Code;
} |
|
|
|
|
#43 |
|
Чайный пьяница
|
Цитата:
Сообщение от Tarasov E
По ходу дела возникла вот какая проблема:
Хочу вывести в текстовый файл результат работы одной процедуры: Код: StreamWriter Sw1 = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Tarasov.txt");
Sw1.Write(ConnectToSite(url));
Sw1.Close();А вот код самой процедуры: Код: public static string ConnectToSite(string link)//подключение к сайту и загрузка html-кода
{
string Code = "";
try
{
string ip = "192.168.0.7";//получение адреса прокси-сервера
string port = "3128"; //получение номера порта
WebProxy proxyObject = new WebProxy(ip + ":" + port, true);//передача параметров прокси
WebClient client = new WebClient();
proxyObject.Credentials = CredentialCache.DefaultNetworkCredentials;//передача параметров аутентификации по умолчанию
client.Proxy = proxyObject;
Code = new Regex(@"\s+", RegexOptions.Compiled).Replace(client.DownloadString(link), " ").Normalize();//нормализация кода страницы
}
catch
{
}
return Code;
}Код: public static string ConnectToSite(string link)//подключение к сайту и загрузка html-кода
{
string Code = "";
try
{
string ip = "192.168.0.7";//получение адреса прокси-сервера
string port = "3128"; //получение номера порта
WebProxy proxyObject = new WebProxy(ip + ":" + port, true);//передача параметров прокси
WebClient client = new WebClient();
proxyObject.Credentials = CredentialCache.DefaultNetworkCredentials;//передача параметров аутентификации по умолчанию
client.Proxy = proxyObject;
Code = new Regex(@"\s+", RegexOptions.Compiled).Replace(client.DownloadString(link), " ").Normalize();//нормализация кода страницы
}
catch(Exception ex)
{
Code = ex.Message;
}
return Code;
}
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#44 |
|
Участник
|
Вот какую он ошибку мне возратил:
Цитата:
The remote server returned an error: (407) Proxy Authentication Required.
Последний раз редактировалось Tarasov E; 05.11.2009 в 10:14. |
|
|
|
|
#45 |
|
Чайный пьяница
|
Проверьте можно ли доступиться в интернет через прокси с правами учётной записи, под которой работает Асинхронный сервис Microsoft CRM. Если нет - то либо дайте права, либой шейте в коде учётные данные, либо создавайте в CRM какое нибудь хранилище для данной учётной записи. Как по мне первый вариант - самый лучший.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#46 |
|
Участник
|
Цитата:
Сообщение от a33ik
Проверьте можно ли доступиться в интернет через прокси с правами учётной записи, под которой работает Асинхронный сервис Microsoft CRM. Если нет - то либо дайте права, либой шейте в коде учётные данные, либо создавайте в CRM какое нибудь хранилище для данной учётной записи. Как по мне первый вариант - самый лучший.
|
|
|
|
|
#47 |
|
Участник
|
Хотелось бы вернутся к обновлению поля дата на заданное в другом поле значение.
Как выше предлагалось - нужно получить значение поля Data и сложить в кастомном степе его со значением поля периодичность, а затем записать полученный результат снова в поле Data. Так вот - возник вопрос о форматах. Как лучше получить дату и как ее записать обратно в CRM? Со строками до этого получал так: Код: string period = retrievedEntity.Properties.Contains("new_period") ? (string)retrievedEntity["new_period"] : string.Empty; |
|
|
|
|
#48 |
|
Чайный пьяница
|
Цитата:
Сообщение от Tarasov E
Хотелось бы вернутся к обновлению поля дата на заданное в другом поле значение.
Как выше предлагалось - нужно получить значение поля Data и сложить в кастомном степе его со значением поля периодичность, а затем записать полученный результат снова в поле Data. Так вот - возник вопрос о форматах. Как лучше получить дату и как ее записать обратно в CRM? Со строками до этого получал так: Код: string period = retrievedEntity.Properties.Contains("new_period") ? (string)retrievedEntity["new_period"] : string.Empty;Код: CrmDateTime dt = retrievedEntity.Properties.Contains("new_datetime") ? (CrmDateTime)retrievedEntity["new_datetime"] : CrmDateTime.Now;
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#49 |
|
Участник
|
Цитата:
Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
string period = retrievedEntity.Properties.Contains("new_period") ? (string)retrievedEntity["new_period"] : string.Empty;
StreamWriter Sw = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Ace.txt");
Sw.WriteLine(period);
Sw.Close(); |
|
|
|
|
#50 |
|
Чайный пьяница
|
Цитата:
Сообщение от Tarasov E
Бизнес-процесс переходит в состояние "Ожидание" вот на этом участке кода:
Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
string period = retrievedEntity.Properties.Contains("new_period") ? (string)retrievedEntity["new_period"] : string.Empty;
StreamWriter Sw = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Ace.txt");
Sw.WriteLine(period);
Sw.Close();
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#51 |
|
Участник
|
Поковырялся...бизнес-процесс больше не уходит в ожидание, но в файл пишется не значение поля new_scandate, а
Цитата:
Microsoft.Crm.Sdk.CrmDateTime
Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
StreamWriter Sw = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Ace.txt");
Sw.WriteLine(sdt);
Sw.Close();Последний раз редактировалось Tarasov E; 10.11.2009 в 11:36. |
|
|
|
|
#52 |
|
Участник
|
Изменил на sdt.value и все получил как надо
|
|
|
|
|
#53 |
|
Чайный пьяница
|
Цитата:
Сообщение от Tarasov E
Поковырялся...бизнес-процесс больше не уходит в ожидание, но в файл пишется не значение поля new_scandate, а
Вот код: Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
StreamWriter Sw = new StreamWriter(@"C:\BP_Scanner\BP_Scanner_Hash\Ace.txt");
Sw.WriteLine(sdt);
Sw.Close();Попробуйте так: Код: Sw.WriteLine(sdt.Value);
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
| За это сообщение автора поблагодарили: Tarasov E (1). | |
|
|
#54 |
|
Участник
|
Написал код, который к полученной дате прибавляет заданное колличество часов. Для это конвертил CRMDateTime в DateTime, но как перевести обратно к сожалению не знаю. Собственно вот сам код:
Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
string period = retrievedEntity.Properties.Contains("new_periodical") ? (string)retrievedEntity["new_periodical"]: string.Empty;
double hours = Convert.ToDouble(period);
DateTime time = Convert.ToDateTime(sdt.Value);
DateTime newtime = time.AddHours(hours);Код: CrmDateTime nextDate = (CrmDateTime)newtime; но получил следующее: Цитата:
Error 1 Cannot convert type 'System.DateTime' to 'Microsoft.Crm.Sdk.CrmDateTime'
Последний раз редактировалось Tarasov E; 10.11.2009 в 14:27. |
|
|
|
|
#55 |
|
Чайный пьяница
|
Цитата:
Сообщение от Tarasov E
Написал код, который к полученной дате прибавляет заданное колличество часов. Для это конвертил CRMDateTime в DateTime, но как перевести обратно к сожалению не знаю. Собственно вот сам код:
Код: CrmDateTime sdt = retrievedEntity.Properties.Contains("new_scandate") ? (CrmDateTime)retrievedEntity["new_scandate"] : CrmDateTime.Now;
string period = retrievedEntity.Properties.Contains("new_periodical") ? (string)retrievedEntity["new_periodical"]: string.Empty;
double hours = Convert.ToDouble(period);
DateTime time = Convert.ToDateTime(sdt.Value);
DateTime newtime = time.AddHours(hours);Код: CrmDateTime nextDate = (CrmDateTime)newtime; но получил следующее: Какой есть выход если мне к CRM'овскойц дате надо прибавить часы и записать новое значение даты обратно в CRM? Особенно интересует запись обратно в CRM.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#56 |
|
Участник
|
А каким образом передать данные из Workflow Activity в конкретное поле в CRM типа Date/Time?
|
|
|
|
|
#57 |
|
Чайный пьяница
|
CrmService.Update - подойдёт?
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#58 |
|
Участник
|
|
|
|
|
|
#59 |
|
Чайный пьяница
|
Через DynamicEntity.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
|
|
#60 |
|
Участник
|
В случае с Retrieve делал так:
Код: targetRetrieve.EntityName = _entitytype; targetRetrieve.EntityId = _entityid; но в случае в update не знаю как передать айдишник вызвавшей бизнес-процесс записи. Делаю пока только так: Код: targetUpdate.Entity.Name = _entitytype; |
|
|
|
|
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|