Skip to content

KonsilagerImport

Dieses Skript wird für den Import in der Kommissionsabrechnung verwendet.

Das Skript wird im Hauptmenü unter Systemeinstellungen - > Zusatzmodule -> Konsilager Import bearbeitet.

Beispiel

Option Infer On
Option Explicit Off
Option Strict Off
Imports Styletronix.AuftragsverwaltungV2.Common
Imports Styletronix.AuftragsverwaltungV2
Imports System.Linq
Imports System
Imports System.Data
Imports System.Collections.Generic
Imports Microsoft.VisualBasic
Imports Styletronix.AuftragsverwaltungV2.Common.Konsilager
Public Class DynamicCode
Public Shared Sub Import(e As ImportParameters)
Using dlg As New System.Windows.Forms.OpenFileDialog With {
.AutoUpgradeEnabled = True,
.Title = "Datei für Import auswählen.",
.Filter = "CSV-Datei|*.csv"}
If dlg.ShowDialog = System.Windows.Forms.DialogResult.OK Then
Dim data = Styletronix.Utils.Data.DecodeCSV2(dlg.FileName, New Styletronix.Utils.Data.CSVOptions With {.Delimiters = New String() {";"}, .HasHeadline = True})
For Each row In data.Rows
Dim ArtNr As String = row("Teil")
Dim Lagerstand = Decimal.Parse(row("Bestand_STg"))
Dim Datum = DateTime.Parse(row("Stichtag"))
Dim item = (From a In e.Daten Where a.Artikel.Artikelnummer = ArtNr).FirstOrDefault
If item Is Nothing Then
DevExpress.XtraEditors.XtraMessageBox.Show(String.Format("Die Artikelnummer {0} wurde nicht gefunden.", ArtNr))
Else
item.NeuerLagerstand = If(item.NeuerLagerstand, 0) + Lagerstand
item.NeuerLagerstandDatum = Datum
item.Meldungen = "Import durch CSV Datei."
End If
Next
e.Handled = True
End If
End Using
End Sub
End Class

Styletronix.AuftragsverwaltungV2.Common

Public Class Konsilager Public Class Kommissionsdaten Public Property ArtikelID As Int64 Public Property Artikel As tbl_Artikel Public Property Lagerstand As Decimal Public Property Kommissionsmenge As Decimal Public Property KommissionsmengeGesamt As Decimal Public Property Auftragliste As New List(Of tbl_Auftrag_Artikel) Public ReadOnly Property Differenz As Decimal Public Property NeuesteLieferung As DateTime? Public Property NeuesteLageraktualisierung As DateTime? Public Property Meldungen As String Public Property Abrechnen As Decimal? Public Property AbrechnenKommentar As String Public Property NeuerLagerstand As Decimal? Public Property NeuerLagerstandDatum As DateTime? Public Property NeuerLagerstandBezeichnung As String End Class
Public Class ImportParameters Inherits EventArgs Public Property Daten As List(Of Kommissionsdaten) Public Property Handled As Boolean Public Property DC As DC_AllgemeinDataContext End Class End Class
  • Ursprungsdatei: konsilagerimport.htm