/// <summary> /// Получить список договор на проверку. /// </summary> /// <param name="webServiceURLs">Адреса веб сервисов 1С</param> /// <param name="userName">Имя пользователя для подключения</param> /// <param name="userPassword">Пароль для подключения</param> /// <param name="dateFrom">Начало периода отбора</param> /// <param name="dateTo">Окончание периода отбора</param> /// <param name="sellPoint1CCode">Точка заключения сделки</param> /// <param name="quantityParam">Кол-во договоров в выборке</param> /// <param name="status">Список статусов для отбора. Может быть пустым</param> /// <returns>Список договоров для проверки</returns> public static AccountLegendNResult GetAccountsLegends(string[] webServiceURLs, string userName, string userPassword, DateTime dateFrom, DateTime dateTo, string sellPoint1CCode, int quantityParam, params string[] status) { SOAPProxy.SOAPProxy soapProxy = Singleton <SOAPProxy.SOAPProxy> .Values; AccountLegendMethod serviceSbTable = new AccountLegendMethod(userName, userPassword, dateFrom, dateTo, sellPoint1CCode, quantityParam, status); AccountLegendNResult result = GetDataFromService(webServiceURLs, serviceSbTable, soapProxy); return(result); }
/// <summary> /// Получить данные с прокси веб сервиса. /// </summary> /// <param name="webServiceURLs">Адреса серверов</param> /// <param name="service">Веб сервис</param> /// <param name="soapProxy">Прокси</param> /// <returns></returns> private static T GetDataFromService <T>(string[] webServiceURLs, SOAPMethod <T> service, SOAPProxy.SOAPProxy soapProxy) where T : ISOAPData, new() { T result = new T(); List <string> errors = new List <string>(); foreach (string server in webServiceURLs) { result = soapProxy.GetData(service, server); if (result.Errors.Length == 0) { break; } errors.AddRange(result.Errors); } result.Errors = errors.ToArray(); return(result); }