public string CreateChecklist(ChecklistData checklistData, bool printIt) { var template = Path.Combine(this.CreateTemplatePath(), checklistData.VorlagenDatei); Application word = null; try { word = new Application(); word.DisplayAlerts = WdAlertLevel.wdAlertsNone; var newDoc = word.Documents.Add(template); foreach (var control in newDoc.SelectContentControlsByTag("Technician")) { control.Range.Text = checklistData.TechnikerName; } foreach (var control in newDoc.SelectContentControlsByTag("ChecklistDate")) { control.Range.Text = checklistData.ChecklistenDatum.ToShortDateString(); } foreach (var control in newDoc.SelectContentControlsByTag("CustomerAndCustomerId")) { control.Range.Text = $"{checklistData.FirmenBezeichnung} [{checklistData.KundenNummer}]"; } foreach (var control in newDoc.SelectContentControlsByTag("MachineModelAndSN")) { control.Range.Text = $"{checklistData.Maschinenmodell} [{checklistData.SeriennummerMaschine}]"; } foreach (var control in newDoc.SelectContentControlsByTag("AuftragsnummerInSage")) { control.Range.Text = checklistData.AuftragsNummerSage; } foreach (var control in newDoc.SelectContentControlsByTag("InkType")) { control.Range.Text = checklistData.Tintentyp; } foreach (var control in newDoc.SelectContentControlsByTag("ColorSet")) { control.Range.Text = checklistData.Farbset; } foreach (var control in newDoc.SelectContentControlsByTag("FirmwareCurrent")) { control.Range.Text = checklistData.AktuelleFirmware; } var fileName = $"{checklistData.Maschinenmodell}_{checklistData.SeriennummerMaschine}_InstallationsCheckliste.docx"; var nameFull = Path.Combine(checklistData.Dateipfad, fileName); newDoc.SaveAs(nameFull); if (printIt) { newDoc.PrintOut(); } return(nameFull); } finally { if (word != null) { word.Quit(); word.Dispose(); } } }
private string FormatChecklistRow(ChecklistData item, int i, ChecklistReportRankDepth?depth) { string result = ""; switch (item.Type.ToLower()) { case "is": result = "incertae sedis "; break; case "si": result = "Species inquirenda "; break; default: switch (item.RankCategory.ToLower()) { case "g": case "s": if (item.Verified) { result = string.Format(@"\i {0} \i0 ", UnItalicize(item.DisplayName, "subsp.|var.|sub.var.|form |sub.form ")); } else { result = item.DisplayName; } break; default: result = item.DisplayName; break; } // Add the rank if necessary... if (depth.HasValue) { switch (item.RankCategory.ToLower()) { case "h": case "f": result = item.Rank + " " + result; break; case "g": if (depth == ChecklistReportRankDepth.Subgenus) { result = item.Rank + " " + result; } break; default: break; } } break; } // Unitalicise the author/year component if applicable. if (!string.IsNullOrWhiteSpace(item.Author)) { int index = result.IndexOf(item.Author); if (index >= 0) { result = result.Substring(0, index - 1) + "\\i0 " + result.Substring(index - 1); } } return(result); }
public ChecklistBusiness() { _checklistData = new ChecklistData(); _checklistNormaData = new ChecklistNormaData(); }
private string FormatChecklistRow(ChecklistData item, int i, ChecklistReportRankDepth? depth) { string result = ""; switch (item.Type.ToLower()) { case "is": result = "incertae sedis "; break; case "si": result = "Species inquirenda "; break; default: switch (item.RankCategory.ToLower()) { case "g": case "s": if (item.Verified) { result = string.Format(@"\i {0} \i0 ", UnItalicize(item.DisplayName, "subsp.|var.|sub.var.|form |sub.form ")); } else { result = item.DisplayName; } break; default: result = item.DisplayName; break; } // Add the rank if necessary... if (depth.HasValue) { switch (item.RankCategory.ToLower()) { case "h": case "f": result = item.Rank + " " + result; break; case "g": if (depth == ChecklistReportRankDepth.Subgenus) { result = item.Rank + " " + result; } break; default: break; } } break; } // Unitalicise the author/year component if applicable. if (!string.IsNullOrWhiteSpace(item.Author)) { int index = result.IndexOf(item.Author); if (index >= 0) { result = result.Substring(0, index - 1) + "\\i0 " + result.Substring(index - 1); } } return result; }