private void analyzeFile() { var task = new Thread(() => { _templateInfo = new TemplateInfo { templatePath = string.Format(@"{0}\templateFiles\{1}", Environment.CurrentDirectory, _file.Name), templateID = Guid.NewGuid(), templateSize = _file.Length.ToString(CultureInfo.InvariantCulture), templateName = _file.Name, updatetime = DateTime.Now, rowid = Guid.NewGuid() }; var argListTmpe = ReportOfficeTools.GetArgInfoListFromWord(_templateInfo, out _tmpResult); if (_tmpResult != "") { WorkWindow.ShowError(_tmpResult); } else { _tmpResult = Tools.UpdateArgConfig(argListTmpe); if (_tmpResult == "") { _templateInfo.templatePath = string.Format(@".\templateFiles\{0}", _file.Name); _tmpResult = Tools.UpdateTemplateConfig(_templateInfo); } } Dispatcher.Invoke(_analyzeFinished, _tmpResult); }); task.Start(); }
public static List <WordInfo> CreateReportFile(List <TemplateInfo> templateInfoList, List <return_getRegionTreeNodeList> regionList, int appType, out string result) { var resultList = new List <WordInfo>(); result = ""; foreach (var itemRegion in regionList) { var regionString = itemRegion.node1 + itemRegion.node2 + itemRegion.node3 + itemRegion.node4 + itemRegion.node5; foreach (var itemFile in templateInfoList) { var wordInfo = new WordInfo { rowid = Guid.NewGuid(), templateID = itemFile.templateID, templateName = itemFile.templateName, regionPath = itemRegion.node1 + itemRegion.node2 + itemRegion.node3 + itemRegion.node4, regionType = itemRegion.nodeOrganizationType, wordID = Guid.NewGuid() }; var argInfoList = GetArgInfoList(itemFile, out result); if (result != "") { ShowError(202, result); return(resultList); } var destFilePath = string.Format(@"{0}\reportFiles\{4}_{1}_{2}_{3}", Environment.CurrentDirectory, wordInfo.regionPath, DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss"), itemFile.templateName, itemRegion.nodeNo.Substring(0, 6)); File.Copy(itemFile.templatePath, destFilePath, true); result = ReportOfficeTools.UpdateWord(argInfoList, regionString, appType, destFilePath, false); if (result != "") { ShowError(203, result); return(resultList); } wordInfo.wordPath = destFilePath; wordInfo.updatetime = DateTime.Now; wordInfo.wordFileName = WindowsTools.GetBasicName(wordInfo.wordPath); resultList.Add(wordInfo); } } return(resultList); }
private IEnumerable <string> getCountDataView(string regionA) { var regionCondition = ""; if (regionA != "") { regionCondition = string.Format(" gatherRegionA = '{0}'", regionA); } var resultList = new List <string>(); const string argInfoFormat = @"参数编号:{0}\t 查询结果:{1}\t参数名称:{2}"; Console.WriteLine(regionA + @"全部个数查询开始"); var allStart = DateTime.Now; foreach (var item in _argInfoList) { string sql = ReportOfficeTools.AddCondition(item, regionCondition); if (sql == "") { continue; } sql = string.Format("select '{0} '+'{1} '+'{2} '+'{3} '+convert(nvarchar(50),count(1))+' {5} ' from ({4}) a", item.argNo, item.argBusinessGroup, item.argName, item.businessType, sql, regionA); string result; var tmp = ALF.MSSQL.Tools.GetSqlListString(sql, out result); if (result != "") { resultList.Add(string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t", item.argNo, item.argName, item.argBusinessGroup, item.businessType, result, regionA)); continue; } resultList.Add(tmp.Single()); Console.WriteLine(argInfoFormat, item.argNo, tmp.Single(), item.argName); } Console.WriteLine(@"全部个数查询结束,用时:{0}", (DateTime.Now - allStart).ToString()); return(resultList); }