Imports EDOKALib.Common '''Diese klasse beinhaltet die Logik für die Office Vorlage Public Class OfficeVorlage #Region "Members" Private _officeVorlageNr As Integer Private _bezeichnung As String Private _beschreibung As String Private _vorlageId As Integer Private _vorlageName As String Private _prefixDokumentName As String Private _isIdvVorlage As Boolean Private _idvId As String Private _officeVorlage As String Private _isAbsenderErsteller As Boolean 'nicht implementiert -> property not visible Private _isIdvNativ As Boolean Private _isDokumentGeschuetzt As Boolean 'nicht implementiert -> property not visible Private _isKopfzeileGenerieren As Boolean Private _klassifizierung As Boolean 'nicht implementiert -> property not visible Private _barcode As BarcodeTyp Private _mandantNr As Integer Private _isAktiv As Boolean Private _erstelltAm As DateTime Private _mutiertAm As DateTime Private _mutiererMitarbeiterNr As Integer Private _anwendung As Anwendung Private _ownerMitarbeiterNr As Integer #End Region #Region "Constructor" Public Sub New() End Sub '''Neue Instanz für bestehende OfficeVorlage erstellen ''' Public Sub New(ByVal officeVorlageNr As Integer) Try Dim ds As New DataSet() DataAccess.OfficeVorlage.GetByNr(ds, officeVorlageNr) LoadData(ds) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.OfficeVorlage.New", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex End Try End Sub #End Region #Region "Structs" Public Structure BarcodeTyp Private _top As Integer Private _left As Integer Private _width As Integer Private _height As Integer Private _isHorizontal As Boolean Public Sub New(ByVal top As Integer, ByVal left As Integer, ByVal width As Integer, ByVal height As Integer, ByVal isHorizontal As Boolean) Try _top = top _left = left _width = width _height = height _isHorizontal = isHorizontal Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.OfficeVorlage.Barcode", ex.Message + " " + ex.StackTrace, TraceLevel.Error) End Try End Sub Public ReadOnly Property Top() Get Return _top End Get End Property Public ReadOnly Property Left() Get Return _left End Get End Property Public ReadOnly Property Height() Get Return _height End Get End Property Public ReadOnly Property Width() Get Return _width End Get End Property Public ReadOnly Property IsHorizontal() Get Return _isHorizontal End Get End Property End Structure #End Region #Region "Private Functions" '''lädt die daten in die klassen member ''' Private Sub LoadData(ByVal ds As DataSet) Try If Not Common.Tools.ValidateDS(ds) Then Return End If _officeVorlageNr = Tools.CToInt32(ds.Tables(0).Rows(0)("offfice_vorlagenr")) _bezeichnung = NullHandler.CToString(ds.Tables(0).Rows(0)("bezeichnung")) _beschreibung = NullHandler.CToString(ds.Tables(0).Rows(0)("beschreibung")) _vorlageId = NullHandler.CToInt32(ds.Tables(0).Rows(0)("vorlageid")) _vorlageName = NullHandler.CToString(ds.Tables(0).Rows(0)("vorlagename")) _prefixDokumentName = NullHandler.CToString(ds.Tables(0).Rows(0)("prefix_dokumentname")) _isIdvVorlage = Tools.CToBool(ds.Tables(0).Rows(0)("idv_vorlage")) _idvId = NullHandler.CToString(ds.Tables(0).Rows(0)("idv_id")) _officeVorlage = NullHandler.CToString(ds.Tables(0).Rows(0)("office_vorlage")) _isAbsenderErsteller = Tools.CToBool(ds.Tables(0).Rows(0)("absender_ersteller")) _isIdvNativ = Tools.CToBool(ds.Tables(0).Rows(0)("idv_nativ")) _isDokumentGeschuetzt = Tools.CToBool(ds.Tables(0).Rows(0)("dokument_geschuetzt")) _isKopfzeileGenerieren = Tools.CToBool(ds.Tables(0).Rows(0)("kopfzeile_generieren")) _klassifizierung = NullHandler.CToInt32(ds.Tables(0).Rows(0)("klassifizierung")) _barcode = New BarcodeTyp(Tools.CToInt32(ds.Tables(0).Rows(0)("bcpt")), _ NullHandler.CToInt32(ds.Tables(0).Rows(0)("bcpl")), _ Tools.CToInt32(ds.Tables(0).Rows(0)("bcw")), _ Tools.CToInt32(ds.Tables(0).Rows(0)("bch")), _ NullHandler.CToInt32(ds.Tables(0).Rows(0)("bhorizontal"))) _mandantNr = NullHandler.CToInt32(ds.Tables(0).Rows(0)("mandantnr")) _isAktiv = Tools.CToBool(ds.Tables(0).Rows(0)("aktiv")) _erstelltAm = NullHandler.CToDateTime(ds.Tables(0).Rows(0)("erstellt_am")) _mutiertAm = NullHandler.CToDateTime(ds.Tables(0).Rows(0)("mutiert_am")) _mutiererMitarbeiterNr = NullHandler.CToInt32(ds.Tables(0).Rows(0)("mutierer")) _anwendung = New Anwendung(NullHandler.CToInt32(ds.Tables(0).Rows(0)("anwendungnr"))) _ownerMitarbeiterNr = NullHandler.CToInt32(ds.Tables(0).Rows(0)("owner")) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.OfficeVorlage.ConstructorHelper", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex End Try End Sub #End Region #Region "Public Functions" Public Function Save(ByVal mutierer As Integer) Try Dim err As Integer Dim key As Integer If _officeVorlageNr = 0 Then 'create new err = DataAccess.OfficeVorlage.Add(key, _bezeichnung, _beschreibung, _vorlageId, _vorlageName, _ _prefixDokumentName, _isIdvVorlage, _idvId, _officeVorlage, _isAbsenderErsteller, _isIdvNativ, _ _isDokumentGeschuetzt, _isKopfzeileGenerieren, _klassifizierung, _barcode.Top, _barcode.Left, _ _barcode.Width, _barcode.Height, _barcode.IsHorizontal, _mandantNr, _isAktiv, _erstelltAm, _ _mutiertAm, _mutiererMitarbeiterNr, _anwendung.AnwendungsNr, _ownerMitarbeiterNr) If err = 0 Then _officeVorlageNr = key End If Else 'save existing End If If err <> 0 Then Throw New DokumentartException(Meldungstext.GetInhaltById(40000)) End If 'refresh data Dim ds As New DataSet() DataAccess.OfficeVorlage.GetByNr(ds, OfficeVorlageNr) LoadData(ds) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.OfficeVorlage.Save", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex End Try End Function Public Function Delete(ByVal mutierer As Integer) Try _isAktiv = False Save(mutierer) Catch ex As Exception TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.OfficeVorlage.Delete", ex.Message + " " + ex.StackTrace, TraceLevel.Error) Throw ex End Try End Function #End Region #Region "Properties" Public Property OfficeVorlageNr() As Integer Get Return _officeVorlageNr End Get Set(ByVal Value As Integer) _officeVorlageNr = Value End Set End Property Public Property Bezeichnung() As String Get Return _bezeichnung End Get Set(ByVal Value As String) _bezeichnung = Value End Set End Property Public Property Beschreibung() As String Get Return _beschreibung End Get Set(ByVal Value As String) _beschreibung = Value End Set End Property Public Property VorlageId() As Integer Get Return _vorlageId End Get Set(ByVal Value As Integer) _vorlageId = Value End Set End Property Public Property VorlageName() As String Get Return _vorlageName End Get Set(ByVal Value As String) _vorlageName = Value End Set End Property Public Property PrefixDokumentName() As String Get Return _prefixDokumentName End Get Set(ByVal Value As String) _prefixDokumentName = Value End Set End Property Public Property IsIdvVorlage() As Boolean Get Return _isIdvVorlage End Get Set(ByVal Value As Boolean) _isIdvVorlage = Value End Set End Property Public Property IdvId() As String Get Return _idvId End Get Set(ByVal Value As String) _idvId = Value End Set End Property Public Property OfficeVorlage() As String Get Return _officeVorlage End Get Set(ByVal Value As String) _officeVorlage = Value End Set End Property Public Property IsIdvNativ() As Boolean Get Return _isIdvNativ End Get Set(ByVal Value As Boolean) _isIdvNativ = Value End Set End Property Public Property IsKopfzeileGenerieren() As Boolean Get Return _isKopfzeileGenerieren End Get Set(ByVal Value As Boolean) _isKopfzeileGenerieren = Value End Set End Property Public Property BarcodeMember() As BarcodeTyp Get Return _barcode End Get Set(ByVal Value As BarcodeTyp) _barcode = Value End Set End Property Public Property MandantNr() As Integer Get Return _mandantNr End Get Set(ByVal Value As Integer) _mandantNr = Value End Set End Property Public Property IsAktiv() As Boolean Get Return _isAktiv End Get Set(ByVal Value As Boolean) _isAktiv = Value End Set End Property Public Property ErstelltAm() As DateTime Get Return _erstelltAm End Get Set(ByVal Value As DateTime) _erstelltAm = Value End Set End Property Public Property MutiertAm() As DateTime Get Return _mutiertAm End Get Set(ByVal Value As DateTime) _mutiertAm = Value End Set End Property Public Property MutiererMitarbeiterNr() As Integer Get Return _mutiererMitarbeiterNr End Get Set(ByVal Value As Integer) _mutiererMitarbeiterNr = Value End Set End Property Public Property Anwendung() As Anwendung Get Return _anwendung End Get Set(ByVal Value As Anwendung) _anwendung = Value End Set End Property Public Property OwnerMitarbeiterNr() As Integer Get Return _ownerMitarbeiterNr End Get Set(ByVal Value As Integer) _ownerMitarbeiterNr = Value End Set End Property #End Region End Class #Region "OfficeVorlageException" '''Diese Klasse behandelt eine OfficeVorlage spezifische Ausnahme Public Class OfficeVorlageException Inherits Exception Dim _message As String Public Sub New(ByVal message As String) _message = message End Sub Public Overrides ReadOnly Property Message() As String Get Return _message End Get End Property End Class #End Region