You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
160 lines
5.2 KiB
160 lines
5.2 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using Model;
|
|
using OnDoc.Klassen;
|
|
using OnDoc.UIControls;
|
|
using Syncfusion.Windows.Forms.Tools;
|
|
using Syncfusion.WinForms.Controls;
|
|
using Syncfusion.WinForms.DataGrid;
|
|
using Syncfusion.WinForms.DataGrid.Interactivity;
|
|
using Windows.Media.Ocr;
|
|
|
|
namespace OnDoc.DocMgmt
|
|
{
|
|
public partial class SerienbriefBearbeitung : SfForm
|
|
{
|
|
DataTable StdFelder = new DataTable();
|
|
DataTable IDVFelder = new DataTable();
|
|
DataTable UsedFelder = new DataTable();
|
|
int dokumenttypnr = 0;
|
|
serienbrief sb = new serienbrief();
|
|
public SerienbriefBearbeitung()
|
|
{
|
|
InitializeComponent();
|
|
this.Style.TitleBar.BackColor = Theaming.Titelbar();
|
|
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
|
|
}
|
|
|
|
public SerienbriefBearbeitung(serienbrief sb)
|
|
{
|
|
InitializeComponent();
|
|
this.Style.TitleBar.BackColor = Theaming.Titelbar();
|
|
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
|
|
this.sb = sb;
|
|
}
|
|
|
|
private void SerienbriefBearbeitung_Load(object sender, EventArgs e)
|
|
{
|
|
StdFelder = get_vorlagenfelder(sb.dokumenttypnr, 0);
|
|
|
|
foreach (System.Data.DataRow dr in StdFelder.Rows)
|
|
{
|
|
dr[1] = dr[1].ToString().Replace(System.Environment.NewLine, " ");
|
|
}
|
|
StdFelder.AcceptChanges();
|
|
sfdatagridstandard.RowHeight = 17;
|
|
sfdatagridstandard.DataSource = StdFelder;
|
|
|
|
|
|
IDVFelder = get_vorlagenfelder(sb.dokumenttypnr, 1);
|
|
foreach (System.Data.DataRow dr in IDVFelder.Rows)
|
|
{
|
|
dr[1] = dr[1].ToString().Replace(System.Environment.NewLine, " ");
|
|
}
|
|
IDVFelder.AcceptChanges();
|
|
sfdatagridDokspezifisch.DataSource = IDVFelder;
|
|
sfdatagridDokspezifisch.RowHeight= 17;
|
|
init_used_felder();
|
|
|
|
}
|
|
private DataTable get_vorlagenfelder(int dokumenttypnr, int type) {
|
|
Database.DB db = new Database.DB(AppParams.connectionstring);
|
|
db.clear_parameter();
|
|
db.add_parameter("@dokumenttypnr", sb.dokumenttypnr.ToString());
|
|
db.add_parameter("@type", type.ToString());
|
|
db.Get_Tabledata("sp_edex_sb_get_standardvorlagenfelder",true,false);
|
|
return db.dsdaten.Tables[0];
|
|
}
|
|
|
|
private Microsoft.Office.Interop.Word.Application word;
|
|
private Microsoft.Office.Interop.Word.Document doc;
|
|
public void load_document()
|
|
{
|
|
word = new Microsoft.Office.Interop.Word.Application();
|
|
doc = new Microsoft.Office.Interop.Word.Document();
|
|
word.Documents.Open(sb.filename);
|
|
doc = word.ActiveDocument;
|
|
word.Visible= true;
|
|
word.WindowState = Microsoft.Office.Interop.Word.WdWindowState.wdWindowStateMaximize;
|
|
}
|
|
|
|
private void get_usedfelder(ref System.Data.DataTable list)
|
|
{
|
|
list = get_vorlagenfelder(sb.dokumenttypnr, 1);
|
|
int i;
|
|
string s;
|
|
bool dodelete = false;
|
|
foreach (System.Data.DataRow row in list.Rows)
|
|
{
|
|
dodelete = false;
|
|
if (row["Feldname"] != "")
|
|
{
|
|
// ContentControls
|
|
try
|
|
{
|
|
if (row["Feldname"].ToString().Substring(0, 3) == "cc_")
|
|
{
|
|
s = row["Feldname"].ToString(); ;
|
|
}
|
|
else
|
|
{
|
|
s = word.ActiveDocument.FormFields[row["feldname"].ToString()].Name.ToString();
|
|
}
|
|
}
|
|
|
|
catch
|
|
{
|
|
dodelete = true;
|
|
}
|
|
}
|
|
|
|
if (row["Beginntextmarke"] != "")
|
|
{
|
|
try
|
|
{
|
|
s = word.ActiveDocument.Bookmarks[row["beginntextmarke"].ToString()].Name.ToString();
|
|
}
|
|
catch
|
|
{
|
|
dodelete = true;
|
|
}
|
|
|
|
}
|
|
|
|
if (row["endetextmarke"] != "")
|
|
{
|
|
try
|
|
{
|
|
s = word.ActiveDocument.Bookmarks[row["endetextmarke"].ToString()].Name.ToString();
|
|
}
|
|
catch
|
|
{
|
|
dodelete = true;
|
|
}
|
|
}
|
|
if (dodelete)
|
|
row.Delete();
|
|
}
|
|
list.AcceptChanges();
|
|
sfdatagridUsed.DataSource= list;
|
|
}
|
|
public DataTable init_used_felder()
|
|
|
|
{
|
|
load_document();
|
|
get_usedfelder(ref UsedFelder);
|
|
return null;
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|