static void DocumentStatus(string transactionId, string docType, string docNumber) { #region Variables de trabajo string errorMessage = string.Empty; string statusCode = string.Empty; string fechaText = string.Empty; string fileResp = string.Empty; string xmlContent = string.Empty; string methodName = "DocumentStatus"; string pathData = ConfigurationManager.AppSettings["pathData"]; string url = ConfigurationManager.AppSettings["urlSoap"]; string user = ConfigurationManager.AppSettings["username"]; string pwd = ConfigurationManager.AppSettings["password"]; string company = ConfigurationManager.AppSettings["company"]; string account = ConfigurationManager.AppSettings["account"]; string connection = ConfigurationManager.AppSettings["connection"]; DateTime fechaHoy = DateTime.Now; Dictionary <string, string> dictResult = null; #endregion fechaText = fechaHoy.ToString("yyyyMMdd"); pathData = Path.Combine(pathData, fechaText); errorMessage = FileHelper.CreateDirectory(pathData); if (!string.IsNullOrWhiteSpace(errorMessage)) { if (IsConected()) { EmailHelper.SendEmailDBExperts(emailHCEError, emailSubject, errorMessage); } } else { #region Llamado al WS using (WSClient ws = new WSClient(url, user, pwd, company, account)) { dictResult = ws.DocumentStatus(transactionId); } statusCode = dictResult["statusCode"]; errorMessage = dictResult["errorMessage"]; #endregion #region Archivo XML de respuesta fileResp = Path.Combine(pathData, string.Format("{0}_{1}_{2}.xml", docType, docNumber, methodName)); xmlContent = XmlHelper.ToXml(methodName, dictResult); xmlContent = string.Format(@"<?xml version=""1.0"" encoding=""iso-8859-1""?>{0}{1}", Environment.NewLine, xmlContent); FileHelper.PutFileContent(fileResp, xmlContent); #endregion #region Mensaje de error if (!string.IsNullOrWhiteSpace(errorMessage)) { if (IsConected()) { if (statusCode.Equals("901")) { EmailHelper.SendEmailDBExperts(emailDBEError, emailSubject, xmlContent); } else { EmailHelper.SendEmailDBExperts(emailHCEError, emailSubject, xmlContent); } } } #endregion #region Acceso a DB string plantilla = "EXEC [wsc].[FilesDetailStatusXml] @companyId='{0}', @accountId='{1}', @xmlContent='{2}';"; DataSet dsDatos = new DataSet(); DataTable dtStatus = new DataTable("dtStatus"); dsDatos.ExtendedProperties["Conexion"] = connection; dtStatus.ExtendedProperties["Metodo"] = string.Format(plantilla, company, account, xmlContent); dsDatos.Tables.Add(dtStatus); dsDatos = DataHelper.GetData(dsDatos); errorMessage = dsDatos.ExtendedProperties["Error"].ToString(); if (string.IsNullOrWhiteSpace(errorMessage)) { errorMessage = dtStatus.ExtendedProperties["Error"].ToString(); } #endregion } }