private void ProcessInRechnung() { var inRechnung = this.AuftragsSammlung1.Where(n => n.Status == (int)Bestellstatus.InRechnung); rechnungen = new List <Documents>(); foreach (var item in inRechnung) { DocDescriptor desc = DocDescriptor.CreateRechnung(item); Documents newItem = DocumentsSet.AddNew(); newItem.RechnungsId = item.Id; newItem.KundenId = item.Kunde.Id; newItem.Bezeichnung = desc.Auftragsnummer + " - " + desc.Titel + " vom " + DateTime.Now.ToShortDateString(); newItem.Datum = DateTime.Now; newItem.Data = desc.ToDictionary().Serialize(); rechnungen.Add(newItem); item.RequiresProcessing = false; } }
partial void Test_Execute() { Rechnungen tmp = new Rechnungen(); tmp.Kunde = new KundenItem() { Anrede = "Herr", Hausnummer = 1, Land = "Deutschland", Nachnahme = "Mustermann", PLZ = 12345, Stadt = "Musterstadt", Straße = "Musterstraße", Vorname = "Max" }; tmp.GetRechnungsNummer(); tmp.Auftragsnummer = tmp.GetAuftragsNummer(); tmp.Bestelldatum = DateTime.Today; tmp.Rechnungsdatum = DateTime.Today; tmp.Lieferdatum = DateTime.Today; tmp.Lieferscheinnummer = "L-0001"; tmp.Lieferkosten = 6M; tmp.Referenznummer = "R-00001"; tmp.Versanddatum = DateTime.Today; tmp.ArtikellisteCollection.Add(new ArtikellisteItem() { Anzahl = 2, Rabatt = 3, ArtikelstammItem = new ArtikelstammItem() { Artikelnummer = "A00001", Artikelbeschreibung = "Testartikel", Vertriebsname = "Testartikel", VK_pro_PK = 10M } }); tmp.ArtikellisteCollection.Add(new ArtikellisteItem() { Anzahl = 1, Rabatt = 0, ArtikelstammItem = new ArtikelstammItem() { Artikelnummer = "A00002", Artikelbeschreibung = "Testartikel 2", Vertriebsname = "Testartikel 2", VK_pro_PK = 19.9M } }); DocDescriptor test = DocDescriptor.CreateRechnung(tmp); byte[] documentBytes = null; using (var dw = Application.Current.CreateDataWorkspace()) { var newDoc = dw.ApplicationData.DocumentsSet.AddNew(); newDoc.Bezeichnung = "Vorlagentest"; newDoc.Datum = DateTime.Now; newDoc.Data = test.ToByteArray(); dw.ApplicationData.SaveChanges(); documentBytes = newDoc.GeneratedDocument.Bytes; newDoc.Delete(); dw.ApplicationData.SaveChanges(); } Refresh(); if (documentBytes != null) { string file = Helper.GetFreeTempFilename("pdf"); File.WriteAllBytes(file, documentBytes); Helper.ShellExecute(file); } }