366 lines
14 KiB
VB.net
366 lines
14 KiB
VB.net
Imports System.DirectoryServices.ActiveDirectory
|
|
Imports com.sun.org.apache.xerces.internal.xs
|
|
Imports com.sun.tools.corba.se.idl.constExpr
|
|
Imports Microsoft.Office.Interop
|
|
Imports VERAG_PROG_ALLGEMEIN
|
|
|
|
Public Class frmGoMautBoxen
|
|
Public kundenNr = -1
|
|
|
|
Dim kunde As cKunde
|
|
Dim adresse As cAdressen
|
|
Dim kundeErw As cKundenErweitert
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
|
|
Dim dt As New DataTable
|
|
|
|
Public addnew = False
|
|
Public WithEvents s As New cBinding("SDL") 'fürs Binding
|
|
Dim changed As Boolean = False
|
|
Dim ready As Boolean = False
|
|
|
|
Sub New(kundenNr)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
Me.kundenNr = kundenNr
|
|
Me.addnew = addnew
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Sub New(kunde As cKunde, adresse As cAdressen, kundeErw As cKundenErweitert)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
Me.kunde = kunde
|
|
Me.adresse = adresse
|
|
Me.kundeErw = kundeErw
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click, btn.Click
|
|
|
|
lblWarning.Text = ""
|
|
|
|
If kunde Is Nothing And kundenNr < 0 Then
|
|
lblWarning.Text = "Bitte Kunden-Nr eingeben."
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
If cbxKK.SelectedValue = "" Then
|
|
lblWarning.Text = "Bitte Kreditkarten-Nr eingeben."
|
|
Exit Sub
|
|
End If
|
|
|
|
If rbAP.Checked And txtbishAbrp.Text = "" Then
|
|
lblWarning.Text = "Bitte bisherigen Abrechnungspartner eingeben."
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
|
|
If dgvLKW.Rows(0).Cells(1).Value = "" Then
|
|
lblWarning.Text = "Bitte KFZ-Kennzeichen eingeben."
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
If Not rbPostPay.Checked And Not rbAP.Checked Then
|
|
lblWarning.Text = "Umstellungsart angeben!"
|
|
Exit Sub
|
|
End If
|
|
|
|
genMausboxenFormular(dgvLKW, sender)
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
Sub initdgv()
|
|
Try
|
|
|
|
Dim setKdNr
|
|
If kundenNr > 0 Then
|
|
setKdNr = kundenNr
|
|
ElseIf kunde IsNot Nothing Then
|
|
setKdNr = kunde.KundenNr
|
|
Else
|
|
setKdNr = -1
|
|
|
|
End If
|
|
|
|
dt = SQL.loadDgvBySql("SELECT Kreditkarten.KartenNr, Kreditkarten.Kartenablaufmonat, Kreditkarten.Kartenablaufjahr FROM Kreditkarten WHERE (((Kreditkarten.AdressenNr)=" & setKdNr & ") AND ((Kreditkarten.NeueKartenNr) Is Null)) ORDER BY Kreditkarten.KartenNr", "FMZOLL")
|
|
|
|
If dt.Rows.Count > 0 Then
|
|
Dim dv As New DataView(dt, "KartenNr<>''", "KartenNr", DataViewRowState.CurrentRows)
|
|
Dim dt_new As DataTable = dv.ToTable(False, "KartenNr")
|
|
cbxKK.DataSource = dv
|
|
cbxKK.DisplayMember = "KartenNr"
|
|
cbxKK.ValueMember = "KartenNr"
|
|
cbxKK.changeItem(dv.Item(0).Row.Item(0))
|
|
End If
|
|
|
|
For i As Integer = 1 To 6
|
|
dgvLKW.Rows.Add("LKW-KZ " & i, "")
|
|
Next
|
|
|
|
Catch ex As Exception
|
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
|
End Try
|
|
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
Private Sub btnAbbrechen_Click(sender As Object, e As EventArgs) Handles btnAbbrechen.Click ', Me.FormClosing
|
|
|
|
Me.Close()
|
|
|
|
End Sub
|
|
|
|
Private Sub frmLKWDetails_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
|
|
'If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MAUTBOXEN_bearbeiten", Me) Then
|
|
' MsgBox("Keine Berechtigung!")
|
|
' Me.Close()
|
|
'End If
|
|
|
|
KdSearchBox1.initKdBox(Me)
|
|
|
|
|
|
If kundenNr > 0 Then
|
|
Me.KdSearchBox1.KdNr = kundenNr
|
|
KdSearchBox1.Enabled = False
|
|
End If
|
|
|
|
cbxLandKz.fillWithSQL(" select distinct landkz, Währungstabelle.Land from Währungstabelle where landkz is not null order by LandKz", , "FMZOLL", True)
|
|
|
|
initKunde()
|
|
|
|
End Sub
|
|
|
|
Private Sub KdSearchBox1_PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Handles KdSearchBox1.PropertyChanged
|
|
initKunde()
|
|
End Sub
|
|
|
|
|
|
Private Sub initKunde()
|
|
|
|
If kundenNr < 0 Then
|
|
|
|
|
|
If adresse IsNot Nothing Then
|
|
kundenNr = adresse.AdressenNr
|
|
txtName.Text = If(adresse.Name_1, "") & If(adresse.Name_2, "")
|
|
txtStrasse.Text = If(adresse.Straße, "")
|
|
txtOrt.Text = If(adresse.Ort, "")
|
|
txtPlz.Text = If(adresse.PLZ, "")
|
|
cbxLandKz.changeItem(If(adresse.LandKz, ""))
|
|
txtAnsprechpartnerAnrede.Text = adresse.Anrede
|
|
txtAnsprechpartner.Text = adresse.Ansprechpartner
|
|
txtFax.Text = adresse.Telefax
|
|
txtEmail.Text = adresse.E_Mail
|
|
|
|
initdgv()
|
|
|
|
End If
|
|
|
|
Else
|
|
|
|
|
|
If KdSearchBox1.KdNr_value > 0 AndAlso KdSearchBox1.KdData_ADRESSEN IsNot Nothing AndAlso KdSearchBox1.KdData_KUNDE IsNot Nothing Then
|
|
|
|
Dim AD = KdSearchBox1.KdData_ADRESSEN
|
|
Dim KD = KdSearchBox1.KdData_KUNDE
|
|
Dim KDERW = KdSearchBox1.KdData_KUNDE_ERW
|
|
|
|
kundenNr = AD.AdressenNr
|
|
txtName.Text = If(AD.Name_1, "") & If(AD.Name_2, "")
|
|
txtStrasse.Text = If(AD.Straße, "")
|
|
txtOrt.Text = If(AD.Ort, "")
|
|
txtPlz.Text = If(AD.PLZ, "")
|
|
cbxLandKz.changeItem(If(AD.LandKz, ""))
|
|
txtAnsprechpartnerAnrede.Text = AD.Anrede
|
|
txtAnsprechpartner.Text = AD.Ansprechpartner
|
|
txtFax.Text = (If(AD.Telefax, ""))
|
|
txtEmail.Text = (If(AD.E_Mail, ""))
|
|
|
|
initdgv()
|
|
|
|
End If
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub cbxKK_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbxKK.SelectedValueChanged
|
|
|
|
If cbxKK.SelectedValue Is Nothing OrElse cbxKK.SelectedValue.ToString = "System.Data.DataRowView" Then
|
|
txtMonat.Text = ""
|
|
txtJahr.Text = ""
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim dr() As DataRow = dt.Select("KartenNr = " & cbxKK.SelectedValue)
|
|
|
|
txtMonat.Text = dr(0).Item(1)
|
|
txtJahr.Text = dr(0).Item(2)
|
|
|
|
End Sub
|
|
|
|
Private Sub rbAP_CheckedChanged(sender As Object, e As EventArgs) Handles rbAP.CheckedChanged
|
|
|
|
If rbAP.Checked Then
|
|
txtbishAbrp.ReadOnly = False
|
|
Else
|
|
txtbishAbrp.Text = ""
|
|
txtbishAbrp.ReadOnly = True
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
Public Function genMausboxenFormular(dgv As DataGridView, sender As Object, Optional PrinterName As String = "", Optional ByRef pfadWord As String = "", Optional printReportElsePDF As Boolean = False, Optional openWord As Boolean = False) As Microsoft.Office.Interop.Word.Document
|
|
|
|
|
|
Dim odoc As Microsoft.Office.Interop.Word.Document = Nothing
|
|
|
|
Try
|
|
pfadWord = AppDomain.CurrentDomain.BaseDirectory & "Resources\MDM_Schreiben\GOBOX_UMSTELLUNG.dotx"
|
|
|
|
Dim oWord As New Microsoft.Office.Interop.Word.Application
|
|
Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA_ID)
|
|
|
|
|
|
Dim cGenWord As New cGenWord
|
|
|
|
odoc = cGenWord.openWord(pfadWord, False, oWord)
|
|
Dim oTable As Word.Table
|
|
|
|
'odoc.FormFields("Adresse1").Range.Text = kunde.Name_1 & " " & kunde.Name_2
|
|
'odoc.FormFields("Adresse2").Range.Text = kunde.Straße
|
|
'odoc.FormFields("Adresse3").Range.Text = kunde.LandKz & " " & kunde.PLZ & " " & kunde.Ort
|
|
'' odoc.FormFields("KdNrVERAG").Range.Text = KUNDE.KundenNr
|
|
'' odoc.FormFields("KdNrMST").Range.Text = PartnerKdNrFromFMZOLL.MSEKundenNr
|
|
'odoc.FormFields("Sachbearbeiter").Range.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
|
|
'odoc.FormFields("Datum").Range.Text = Now.ToShortDateString
|
|
'odoc.FormFields("KundenNr").Range.Text = kunde.AdressenNr
|
|
'odoc.FormFields("AuftragsNr").Range.Text = AuftragsNr.ToString("000000.##")
|
|
|
|
Dim textArt As String = ""
|
|
If rbPostPay.Checked Then
|
|
textArt = "hiermit beantragen wir die Umstellung unserer Pre-Pay GO-Box(en) auf Post-Pay." & vbNewLine & "Dies betrifft das/die folgende(n) Fahrzeug(e):"
|
|
ElseIf rbAP.Checked Then
|
|
textArt = "hiermit beantragen wir die Änderung des Abrechnungspartners unserer Post-Pay-GO-Boxen von " & txtbishAbrp.Text & " auf Verag." & vbNewLine & "Dies betrifft die folgenden Fahrzeuge:"
|
|
End If
|
|
|
|
|
|
Dim txtEnde As String = ""
|
|
|
|
If rbPostPay.Checked Then
|
|
txtEnde = "Hiermit bestätige Ich, dass:" & vbNewLine &
|
|
"• die Änderungen in der Reihenfolge des Eintreffens bei ASFINAG laufend bearbeitet werden." & vbNewLine &
|
|
"• die Umstellung genau zu einem Stichtag von ASFINAG nicht zugesichert werden kann." & vbNewLine &
|
|
"• die Änderung der Vertragsart von Pre- auf Post-Pay erst nach erfolgter Aktualisierung der in der/den GO-Box(en) gespeicherten Daten an einer GO-Vertriebsstelle wirksam wird."
|
|
|
|
ElseIf rbAP.Checked Then
|
|
txtEnde = "Weitere Fahrzeuge habe ich in einer zusätzlichen Liste beigefügt." & vbNewLine &
|
|
"Ich nehme zur Kenntnis, dass die Änderungen nach Eintreffen bei ASFINAG laufend bearbeitet werden." & vbNewLine &
|
|
"Die Umstellung genau zu einem Stichtag ist von ASFINAG nicht zugesichert."
|
|
End If
|
|
|
|
|
|
Dim listTowrite As New List(Of VERAG_PROG_ALLGEMEIN.cPDFWriteValues)
|
|
For Each item In odoc.FormFields
|
|
|
|
Dim fieldName = item.Name.ToLower().Trim()
|
|
|
|
Select Case fieldName
|
|
Case "adresse1" : odoc.FormFields(fieldName).Range.Text = txtName.Text
|
|
Case "adresse2" : odoc.FormFields(fieldName).Range.Text = txtAnsprechpartnerAnrede.Text & " " & txtAnsprechpartner.Text
|
|
Case "adresse3" : odoc.FormFields(fieldName).Range.Text = txtStrasse.Text
|
|
Case "adresse4" : odoc.FormFields(fieldName).Range.Text = cbxLandKz._value & " " & txtPlz.Text & " " & txtOrt.Text
|
|
Case "adresse5" : odoc.FormFields(fieldName).Range.Text = txtEmail.Text
|
|
Case "adresse6" : odoc.FormFields(fieldName).Range.Text = txtFax.Text
|
|
Case "sachbearbeiter" : odoc.FormFields(fieldName).Range.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
|
|
Case "datum" : odoc.FormFields(fieldName).Range.Text = Now.ToShortDateString
|
|
Case "kundennr" : odoc.FormFields(fieldName).Range.Text = IIf(kundenNr > 0, kundenNr, KdSearchBox1.KdNr_value)
|
|
Case "kartennr" : odoc.FormFields(fieldName).Range.Text = cbxKK.SelectedValue
|
|
Case "art" : odoc.FormFields(fieldName).Range.Text = IIf(rbPostPay.Checked, rbPostPay.Text, rbAP.Text)
|
|
Case "typ_text" : odoc.FormFields(fieldName).Range.Text = textArt
|
|
Case "ende" : odoc.FormFields(fieldName).Range.Text = txtEnde
|
|
|
|
End Select
|
|
|
|
Next
|
|
|
|
If True Then
|
|
|
|
|
|
If odoc.Range.Bookmarks.Exists("TabelleKarten") Then
|
|
If odoc.Bookmarks("TabelleKarten").Range.Tables.Count > 0 Then
|
|
oTable = odoc.Bookmarks("TabelleKarten").Range.Tables(1)
|
|
Dim i = 1
|
|
Dim kfzTmp = ""
|
|
For Each r As DataGridViewRow In dgvLKW.Rows
|
|
If r.Cells(0).Value <> "" And r.Cells(1).Value <> "" Then
|
|
oTable.Rows(i + 1).Cells(1).Range.Text = r.Cells(0).Value
|
|
oTable.Rows(i + 1).Cells(2).Range.Text = r.Cells(1).Value
|
|
|
|
Else
|
|
oTable.Rows(i + 1).Cells(1).Range.Text = ""
|
|
oTable.Rows(i + 1).Cells(2).Range.Text = ""
|
|
End If
|
|
|
|
|
|
If i < dgvLKW.Rows.Count Then oTable.Rows.Add()
|
|
i += 1
|
|
Next
|
|
End If
|
|
|
|
|
|
End If
|
|
End If
|
|
|
|
odoc.Save() : odoc.Activate()
|
|
|
|
Dim path = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("GOBOX_UMSTELLUNG_" & kundenNr & ".pdf", ".pdf", True, False)
|
|
odoc.SaveAs(path, Word.WdSaveFormat.wdFormatPDF)
|
|
|
|
|
|
Try
|
|
odoc.Close()
|
|
oWord.Quit()
|
|
Catch ex As Exception
|
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
|
End Try
|
|
|
|
|
|
If sender Is Button2 Then
|
|
Process.Start(path)
|
|
ElseIf sender Is btn Then
|
|
|
|
Dim outl As New Outlook.Application
|
|
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
|
|
Mail = outl.CreateItem(0)
|
|
Mail.Attachments.Add(path, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "_Formular.pdf")
|
|
Mail.Display()
|
|
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
|
End Try
|
|
|
|
End Function
|
|
|
|
End Class |