Vorgänge
Vorgänge wie Angebote, Aufträge und Rechnungen können Sie anlegen, buchen und wandeln. Die Nummern der Vorgangsarten richten sich nach Ihrer microtech-ERP-Konfiguration.
Vorgang mit Positionen erstellen
Vorgaenge.Append legt den Vorgang samt
Positionen an; die Positionen beschreibt
CreateVorgangPosition<T>.
var vorgang = new Vorgang
{
AdrNr = "10000",
Art = 70,
Bez = "Testauftrag"
};
var positionen = new List<CreateVorgangPosition<VorgangPosition>>
{
new("ARTIKEL-001", menge: 5, einheit: "Stk"),
new("ARTIKEL-002", menge: 10, einheit: "Stk", bez: "Optionale Bezeichnung")
};
vorgang = bpApp.Vorgaenge.Append(vorgang, positionen);
Lieferanschrift übernehmen
var anschrift = bpApp.ReadDataSet<Anschriften>()
.First(a => a.AdrNr == "10000" && a.AnsNr == 1);
vorgang.SetLieferAnschrift(anschrift);
vorgang.Save();
Buchen
var vorgang = bpApp.QueryDataSet<Vorgang>()
.First(v => v.BelegNr == "LS-2025-0001");
bool erfolg = vorgang.Buchen();
Wandeln
Beim Wandeln entsteht aus einem Vorgang eine andere Vorgangsart, etwa aus einem Angebot ein Auftrag.
var angebot = bpApp.QueryDataSet<Vorgang>()
.First(v => v.BelegNr == "AN-2025-0001");
var result = angebot.Wandeln(targetVorgangArt: 10)
.MitLieferDatum(DateTime.Today.AddDays(7))
.Execute();
if (result.Success)
Console.WriteLine($"Gewandelt zu: {result.NeueVorgangNr}");
Stornieren
var vorgang = bpApp.QueryDataSet<Vorgang>()
.First(v => v.BelegNr == "RE-2025-0001");
var gutschriftArt = vorgang.GetPossibleStornoArten().First();
bool erfolg = vorgang.Stornieren(archiv: true, gutschrift: true, gutschriftArt: gutschriftArt);
Wählen Sie die gewünschte Gutschriftsart aus den möglichen
Stornoarten;
das Beispiel verwendet die erste. Die Stornierung selbst führt
Stornieren aus.
Archivieren und wiederherstellen
Das Archiv-Kapitel zeigt das Verschieben und Wiederherstellen von Vorgängen.
GetLayoutBuilder liefert einen
LayoutBuilder für ein microtech-ERP-Drucklayout. Der Builder setzt die
LayoutPrinterSettings,
Build() gibt das Layout zurück und
Print führt den Druck aus.
Die möglichen Exportformate stehen in FileFormats.
var vorgang = bpApp.QueryDataSet<Vorgang>()
.First(v => v.BelegNr == "RE-2025-0001");
var layout = vorgang.GetLayoutBuilder("Rechnung Standard")
.WithPrinterSettings(new LayoutPrinterSettings
{
FileExport = true,
PrintKind = PrintKind.pkErsteFolgeSeiten,
FileFormat = FileFormats.AdobeAcrobatReader,
FileName = @"C:\Export\Rechnung.pdf",
FileOverwrite = true
})
.Build();
vorgang.Print(layout);
Ohne Layoutnamen verwendet GetLayoutBuilder() das erste Layout der jeweiligen Vorgangsart
(E-Mail-Layouts werden dabei übersprungen). Die Druckereinstellungen werden in microtech ERP gespeichert.
Layout-Gruppen, Direktdruck und Exportformate, auch für andere Datensatztypen, beschreibt das Druckkapitel.