580 lines
33 KiB
VB.net
580 lines
33 KiB
VB.net
Imports System.IO
|
|
Imports System.Globalization
|
|
|
|
Public Class usrCntlAuswertungenFiskalvertretung_4200
|
|
|
|
|
|
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
|
|
Private Property rst As Object
|
|
|
|
Private Sub usrCntlBrgBuchungenFremd_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
datVon.Value = CDate("01." & Now.AddMonths(-3).Month & "." & Now.AddMonths(-1).Year)
|
|
datBis.Value = datVon.Value.AddMonths(3).AddDays(-1)
|
|
|
|
cboUID.Items.Clear()
|
|
cboUID.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE813667748 - VERAG Spedition GmbH", "DE813667748"))
|
|
cboUID.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DE295575575 - Global-Logistics GmbH", "DE295575575"))
|
|
End Sub
|
|
|
|
Function getDir() As String
|
|
Select Case cboUID._value
|
|
Case "DE813667748"
|
|
Return "\\FMZoll.verag.ost.dmn\FMZoll\ZM\"
|
|
Case "DE295575575"
|
|
Return "\\192.168.1.20\Daten\ZM\"
|
|
Case Else
|
|
Return ""
|
|
End Select
|
|
End Function
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
Try
|
|
|
|
lblErrUID.Visible = False
|
|
If cboUID._value = "" Then
|
|
lblErrUID.Visible = True
|
|
Exit Sub
|
|
End If
|
|
|
|
Me.Cursor = Cursors.WaitCursor
|
|
Dim dt = getZM_Datat()
|
|
|
|
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
|
|
|
|
If Not Directory.Exists(getDir) Then Directory.CreateDirectory(getDir)
|
|
Dim fs As New FileStream(getDir() & "\ZM_Formular_online.xml", FileMode.Create)
|
|
Dim sw As New StreamWriter(fs)
|
|
|
|
' File.AppendAllLines(Path.Combine(mydocpath,"WriteFile.txt"), lines);
|
|
|
|
' XML-Datei anlegen.
|
|
' fso = New FileSystemObject
|
|
' strPath = fso.BuildPath("\\FMZoll.verag.ost.dmn\FMZoll\ZM", "ZM_Formular_online.xml")
|
|
' txt = fso.CreateTextFile(strPath, True, False)
|
|
'With txt
|
|
sw.WriteLine("<?xml version=""1.0"" encoding=""UTF-8"" ?>")
|
|
sw.WriteLine("<xml-data xmlns=""http://www.lucom.com/ffw/xml-data-1.0.xsd"">")
|
|
sw.WriteLine("<form>catalog://A-Z/ust/ZM_Formular_online</form>")
|
|
sw.WriteLine("<instance>")
|
|
sw.WriteLine("<datarow>")
|
|
sw.WriteLine("<element id=""ID_USER"">.anonymous</element>")
|
|
sw.WriteLine("<element id=""berichtigung"">false</element>")
|
|
sw.WriteLine("<element id=""knri1"">DE</element>")
|
|
sw.WriteLine("<element id=""ffw_version"">ZM_Formular_online V2.0</element>")
|
|
sw.WriteLine("</datarow>")
|
|
sw.WriteLine("<dataset id=""tbl_ZM_tabelle"">")
|
|
' rst.MoveLast()
|
|
' Call SysCmd(acSysCmdInitMeter, "Fortschritt: ", rst.RecordCount)
|
|
'rst.MoveFirst()
|
|
'intZeile = 0
|
|
' Schleife zum Lesen der Fiskalvertretungsdaten.
|
|
Dim zeile_m = 1
|
|
For Each r As DataRow In dt.Rows
|
|
' Inc intZeile 'addiert 1
|
|
' Call SysCmd(acSysCmdUpdateMeter, intZeile)
|
|
If zeile_m < 1000 Then
|
|
' Schreiben der Fiskalvertretungsdaten im XML-Format.
|
|
sw.WriteLine("<datarow>")
|
|
sw.WriteLine("<element id=""knre1"">" & r("knre1") & "</element>")
|
|
sw.WriteLine("<element id=""knre2"">" & r("knre2").trim & "</element>")
|
|
sw.WriteLine("<element id=""betrag"">" & r("Betrag") & "</element>")
|
|
sw.WriteLine("<element id=""zeile_m"">" & zeile_m & "</element>")
|
|
sw.WriteLine("<element id=""umsatz_art"">0</element>") '" & r("umsatz_art") & "</element>")
|
|
sw.WriteLine("</datarow>")
|
|
zeile_m += 1
|
|
End If
|
|
' DoEvents()
|
|
' rst.MoveNext()
|
|
Next
|
|
sw.WriteLine("</dataset>")
|
|
sw.WriteLine("</instance>")
|
|
sw.WriteLine("</xml-data>")
|
|
'.Close()
|
|
' End With
|
|
' txt = Nothing
|
|
' fso = Nothing
|
|
' Me!strNachrichtenzeile = "Die XML-Datei finden Sie unter \\FMZoll.verag.ost.dmn\FMZoll\ZM\ZM_Formular_online.xml"
|
|
|
|
' rst.Close()
|
|
' rst = Nothing
|
|
sw.Close()
|
|
|
|
'Process.Start("\\FMZoll.verag.ost.dmn\FMZoll\ZM\ZM_Formular_online_TEST.xml")
|
|
|
|
Process.Start(getDir())
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
|
|
Me.Cursor = Cursors.Default
|
|
End Sub
|
|
|
|
|
|
Function getZM_Datat() As DataTable
|
|
Dim sqlStr = ""
|
|
|
|
sqlStr &= " SELECT Tb.knre1, Tb.knre2, cast(round(sum(Tb.betrag),0)as int) as betrag FROM ("
|
|
|
|
If CheckBox2.Checked Then
|
|
|
|
sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag,zbant.zbant_regnr" ' ,zbant.zbant_regnr --> sonst streicht "UNION" geliche beträge
|
|
sqlStr &= " FROM [192.168.133.98].atlas.dbo.zbant "
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
|
|
sqlStr &= " UNION"
|
|
|
|
sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag,zbhant.zbant_regnr" ' ,zbant.zbant_regnr --> sonst streicht "UNION" geliche beträge
|
|
sqlStr &= " FROM [192.168.133.98].atlas.dbo.zbhant "
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
End If
|
|
|
|
|
|
If CheckBox2.Checked And (CheckBox1.Checked Or cbxDatenAusDakosyLaden.Checked) Then sqlStr &= " UNION"
|
|
|
|
If CheckBox1.Checked Then
|
|
sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag,zbant.zbant_regnr" ' ,zbant.zbant_regnr --> sonst streicht "UNION" geliche beträge
|
|
sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbant"
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
|
|
sqlStr &= " UNION"
|
|
|
|
sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag,zbhant.zbant_regnr" ' ,zbant.zbant_regnr --> sonst streicht "UNION" geliche beträge
|
|
sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbhant"
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
End If
|
|
|
|
If (CheckBox2.Checked Or CheckBox1.Checked) And (cbxDatenAusDakosyLaden.Checked) Then sqlStr &= " UNION"
|
|
|
|
|
|
If cbxDatenAusDakosyLaden.Checked Then
|
|
|
|
sqlStr &= " select Left(ezaAd_UStIDAnmelder,2) AS knre1, substring(ezaAd_UStIDAnmelder,3,len(ezaAd_UStIDAnmelder)) AS knre2 ,eza_Rechnungspreis as betrag ,eza_ANR"
|
|
sqlStr &= " from tblDakosy_EZA inner join tblDakosy_EZA_Adressen ON ezaAd_EZAId=eza_Id"
|
|
' sqlStr &= " WHERE (eza_Trans_DatumZeit) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " WHERE (SELECT COUNT(*) FROM [tblDakosy_Statusmeldungen] WHERE [dySt_dyId]=eza_dyaAnmID AND [dySt_status] between 40 and 70 AND CONVERT(date, [dySt_ergZeitpunkt] ,104 ) BETWEEN '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' )>0 "
|
|
sqlStr &= " and ezaAd_AdressTyp='UC' and eza_ANR LIKE 'ATC42%' /*eza_VerfahrenBeantragtCode LIKE '42%'*/ and [eza_UstIdAnmelder]='" & cboUID._value & "' and ezaAd_UStIDAnmelder is not null and [eza_FinanzamtAnmelder]='9153' "
|
|
sqlStr &= " AND [eza_Status] IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1) "
|
|
End If
|
|
|
|
sqlStr &= " )"
|
|
sqlStr &= " as Tb"
|
|
sqlStr &= " GROUP BY Tb.knre1, Tb.knre2"
|
|
sqlStr &= " ORDER BY Tb.knre1, Tb.knre2"
|
|
|
|
'sqlStr &= " UNION"
|
|
|
|
' sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
'sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag"
|
|
' sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbant"
|
|
' sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
'sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
'sqlStr &= " AND [zbant_erwust] <>''"
|
|
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 600)
|
|
|
|
End Function
|
|
|
|
|
|
Function getZM_DataVorschau() As DataTable
|
|
Dim sqlStr = ""
|
|
|
|
sqlStr &= " select basman_nl, zbant_beznr, zbant_regnr, zbant_erwust, zbant_nadat,zbaaz_name1, baslnd_alpha, zbant_preisr, zbant_waehr, zbant_kurs, "
|
|
sqlStr &= " curEuro, eustwe, zollw FROM "
|
|
sqlStr &= " ("
|
|
|
|
If CheckBox1.Checked Then
|
|
|
|
sqlStr &= " ("
|
|
sqlStr &= " SELECT zbant.basman_nl, zbant.zbant_beznr, zbant.zbant_regnr, zbant.zbant_erwust, zbant.zbant_nadat, zbaaz.[zbaaz_name1], zbaaz.baslnd_alpha, zbant.zbant_preisr, zbant.zbant_waehr, zbant.zbant_kurs, "
|
|
sqlStr &= " CASE WHEN [zbant].[zbant_kurs]=0 THEN [zbant].[zbant_preisr] ELSE cast((([zbant].[zbant_preisr]/[zbant].[zbant_kurs])*100)/100 as decimal(17,2)) END AS curEuro"
|
|
sqlStr &= " ,Sum(zbapo.zbapo_eustwe) AS eustwe, Sum(zbapo.zbapo_zollw) AS zollw"
|
|
sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbant "
|
|
sqlStr &= " left JOIN [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbaaz"
|
|
sqlStr &= " ON zbant.[basman_nr] = zbaaz.[basman_nr] "
|
|
sqlStr &= " AND zbant.[basman_nl] = zbaaz.[basman_nl]"
|
|
sqlStr &= " AND zbaaz.zbabg_regkz = REPLACE(zbant.zbant_regnr,'ATC42','ATC0042')"
|
|
sqlStr &= " AND zbaaz.[zbaaz_typ] = 1 "
|
|
sqlStr &= " INNER JOIN [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbapo "
|
|
sqlStr &= " ON zbant.[basman_nr] = zbapo.[basman_nr] "
|
|
sqlStr &= " AND zbant.[basman_nl] = zbapo.[basman_nl]"
|
|
sqlStr &= " AND zbant.[zbant_beznr] = zbapo.[zbant_beznr]"
|
|
sqlStr &= " AND zbant.[zbant_regnr] = zbapo.[zbant_regnr]"
|
|
sqlStr &= " AND zbant.[zbant_korant] = zbapo.[zbant_korant]"
|
|
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
sqlStr &= " GROUP BY zbant.basman_nl, zbant.zbant_beznr, zbant.zbant_regnr, zbant.zbant_erwust, zbant.zbant_nadat, zbaaz.[zbaaz_name1], zbaaz.baslnd_alpha, zbant.zbant_preisr, zbant.zbant_waehr, zbant.zbant_kurs"
|
|
sqlStr &= " ) "
|
|
|
|
|
|
sqlStr &= " UNION"
|
|
|
|
sqlStr &= " ("
|
|
sqlStr &= " SELECT zbhant.basman_nl, zbhant.zbant_beznr, zbhant.zbant_regnr, zbhant.zbant_erwust, zbhant.zbant_nadat, zbhaaz.[zbaaz_name1], zbhaaz.baslnd_alpha, zbhant.zbant_preisr, zbhant.zbant_waehr, zbhant.zbant_kurs, "
|
|
sqlStr &= " CASE WHEN [zbhant].[zbant_kurs]=0 THEN [zbhant].[zbant_preisr] ELSE cast((([zbhant].[zbant_preisr]/[zbhant].[zbant_kurs])*100)/100 as decimal(17,2)) END AS curEuro"
|
|
sqlStr &= " ,Sum(zbhapo.zbapo_eustwe) AS eustwe, Sum(zbhapo.zbapo_zollw) AS zollw"
|
|
sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbhant "
|
|
sqlStr &= " left JOIN [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbhaaz"
|
|
sqlStr &= " ON zbhant.[basman_nr] = zbhaaz.[basman_nr] "
|
|
sqlStr &= " AND zbhant.[basman_nl] = zbhaaz.[basman_nl]"
|
|
sqlStr &= " AND zbhaaz.zbabg_regkz = REPLACE(zbhant.zbant_regnr,'ATC42','ATC0042')"
|
|
sqlStr &= " AND zbhaaz.[zbaaz_typ] = 1 "
|
|
sqlStr &= " INNER JOIN [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbhapo "
|
|
sqlStr &= " ON zbhant.[basman_nr] = zbhapo.[basman_nr] "
|
|
sqlStr &= " AND zbhant.[basman_nl] = zbhapo.[basman_nl]"
|
|
sqlStr &= " AND zbhant.[zbant_beznr] = zbhapo.[zbant_beznr]"
|
|
sqlStr &= " AND zbhant.[zbant_regnr] = zbhapo.[zbant_regnr]"
|
|
sqlStr &= " AND zbhant.[zbant_korant] = zbhapo.[zbant_korant]"
|
|
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
sqlStr &= " GROUP BY zbhant.basman_nl, zbhant.zbant_beznr, zbhant.zbant_regnr, zbhant.zbant_erwust, zbhant.zbant_nadat, zbhaaz.[zbaaz_name1], zbhaaz.baslnd_alpha, zbhant.zbant_preisr, zbhant.zbant_waehr, zbhant.zbant_kurs"
|
|
sqlStr &= " ) "
|
|
|
|
End If
|
|
|
|
|
|
If (CheckBox2.Checked Or cbxDatenAusDakosyLaden.Checked) And CheckBox1.Checked Then sqlStr &= " UNION"
|
|
|
|
If CheckBox2.Checked Then
|
|
|
|
sqlStr &= " ("
|
|
sqlStr &= " SELECT zbant.basman_nl, zbant.zbant_beznr, zbant.zbant_regnr, zbant.zbant_erwust, zbant.zbant_nadat, zbaaz.[zbaaz_name1], zbaaz.baslnd_alpha, zbant.zbant_preisr, zbant.zbant_waehr, zbant.zbant_kurs, "
|
|
sqlStr &= " CASE WHEN [zbant].[zbant_kurs]=0 THEN [zbant].[zbant_preisr] ELSE cast((([zbant].[zbant_preisr]/[zbant].[zbant_kurs])*100)/100 as decimal(17,2)) END AS curEuro"
|
|
|
|
sqlStr &= " ,Sum(zbapo.zbapo_eustwe) AS eustwe, Sum(zbapo.zbapo_zollw) AS zollw"
|
|
sqlStr &= " FROM [192.168.133.98].atlas.dbo.zbant "
|
|
sqlStr &= " left JOIN [192.168.133.98].atlas.dbo.zbaaz"
|
|
sqlStr &= " ON zbant.[basman_nr] = zbaaz.[basman_nr] "
|
|
sqlStr &= " AND zbant.[basman_nl] = zbaaz.[basman_nl]"
|
|
sqlStr &= " AND zbaaz.zbabg_regkz = REPLACE(zbant.zbant_regnr,'ATC42','ATC0042')"
|
|
sqlStr &= " AND zbaaz.[zbaaz_typ] = 1 "
|
|
sqlStr &= " INNER JOIN [192.168.133.98].atlas.dbo.zbapo "
|
|
sqlStr &= " ON zbant.[basman_nr] = zbapo.[basman_nr] "
|
|
sqlStr &= " AND zbant.[basman_nl] = zbapo.[basman_nl]"
|
|
sqlStr &= " AND zbant.[zbant_beznr] = zbapo.[zbant_beznr]"
|
|
sqlStr &= " AND zbant.[zbant_regnr] = zbapo.[zbant_regnr]"
|
|
sqlStr &= " AND zbant.[zbant_korant] = zbapo.[zbant_korant]"
|
|
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
sqlStr &= " GROUP BY zbant.basman_nl, zbant.zbant_beznr, zbant.zbant_regnr, zbant.zbant_erwust, zbant.zbant_nadat,zbaaz.[zbaaz_name1], zbaaz.baslnd_alpha, zbant.zbant_preisr, zbant.zbant_waehr, zbant.zbant_kurs"
|
|
sqlStr &= " )"
|
|
|
|
sqlStr &= " UNION"
|
|
|
|
sqlStr &= " ("
|
|
sqlStr &= " SELECT zbhant.basman_nl, zbhant.zbant_beznr, zbhant.zbant_regnr, zbhant.zbant_erwust, zbhant.zbant_nadat, zbhaaz.[zbaaz_name1], zbhaaz.baslnd_alpha, zbhant.zbant_preisr, zbhant.zbant_waehr, zbhant.zbant_kurs, "
|
|
sqlStr &= " CASE WHEN [zbhant].[zbant_kurs]=0 THEN [zbhant].[zbant_preisr] ELSE cast((([zbhant].[zbant_preisr]/[zbhant].[zbant_kurs])*100)/100 as decimal(17,2)) END AS curEuro"
|
|
sqlStr &= " ,Sum(zbhapo.zbapo_eustwe) AS eustwe, Sum(zbhapo.zbapo_zollw) AS zollw"
|
|
sqlStr &= " FROM [192.168.133.98].atlas.dbo.zbhant "
|
|
sqlStr &= " left JOIN [192.168.133.98].atlas.dbo.zbhaaz"
|
|
sqlStr &= " ON zbhant.[basman_nr] = zbhaaz.[basman_nr] "
|
|
sqlStr &= " AND zbhant.[basman_nl] = zbhaaz.[basman_nl]"
|
|
sqlStr &= " AND zbhaaz.zbabg_regkz = REPLACE(zbhant.zbant_regnr,'ATC42','ATC0042')"
|
|
sqlStr &= " AND zbhaaz.[zbaaz_typ] = 1 "
|
|
sqlStr &= " INNER JOIN [192.168.133.98].atlas.dbo.zbhapo "
|
|
sqlStr &= " ON zbhant.[basman_nr] = zbhapo.[basman_nr] "
|
|
sqlStr &= " AND zbhant.[basman_nl] = zbhapo.[basman_nl]"
|
|
sqlStr &= " AND zbhant.[zbant_beznr] = zbhapo.[zbant_beznr]"
|
|
sqlStr &= " AND zbhant.[zbant_regnr] = zbhapo.[zbant_regnr]"
|
|
sqlStr &= " AND zbhant.[zbant_korant] = zbhapo.[zbant_korant]"
|
|
|
|
sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
sqlStr &= " AND [zbant_erwust] <>''"
|
|
sqlStr &= " AND [zbant_anmust] = '" & cboUID._value & "' "
|
|
sqlStr &= " GROUP BY zbhant.basman_nl, zbhant.zbant_beznr, zbhant.zbant_regnr, zbhant.zbant_erwust, zbhant.zbant_nadat, zbhaaz.[zbaaz_name1], zbhaaz.baslnd_alpha, zbhant.zbant_preisr, zbhant.zbant_waehr, zbhant.zbant_kurs"
|
|
sqlStr &= " ) "
|
|
End If
|
|
|
|
|
|
|
|
If (CheckBox2.Checked Or CheckBox1.Checked) And (cbxDatenAusDakosyLaden.Checked) Then sqlStr &= " UNION"
|
|
|
|
If cbxDatenAusDakosyLaden.Checked Then
|
|
|
|
sqlStr &= " select eza_niederlassung as basman_nl, eza_ObjectName as zbant_beznr,eza_ANR as zbant_regnr, ezaAd_UStIDAnmelder as zbant_erwust,eza_Trans_DatumZeit as zbant_nadat,"
|
|
sqlStr &= " (CASE WHEN ezaAd_NameFirma1 is null THEN (SELECT TOP 1 [Name 1] FROM Kunden INNER JOIN Adressen on Adressennr=kundennr WHERE EORITIN=ezaAd_TeilnehmerEORI) ELSE ezaAd_NameFirma1 END) as zbaaz_name1,"
|
|
sqlStr &= " (CASE WHEN ezaAd_LandCode is null THEN (SELECT TOP 1 (SELECT TOP 1 isnull([Länderverzeichnis für die Außenhandelsstatistik].LandKz,'') AS LandKzISO2 FROM [Länderverzeichnis für die Außenhandelsstatistik] LEFT JOIN Währungstabelle ON [Länderverzeichnis für die Außenhandelsstatistik].LandNr = Währungstabelle.Währungsschlüssel WHERE Währungstabelle.LandKz=Adressen.LandKz) FROM Kunden INNER JOIN Adressen on Adressennr=kundennr WHERE EORITIN=ezaAd_TeilnehmerEORI) ELSE ezaAd_LandCode END) as baslnd_alpha,"
|
|
sqlStr &= " eza_Rechnungspreis as zbant_preisr,eza_Rechnungswaehrung as zbant_waehr "
|
|
sqlStr &= " ,0 as zbant_kurs,eza_Rechnungspreis as curEuro,0 as eustwe,0 as zollw"
|
|
sqlStr &= " from tblDakosy_EZA inner join tblDakosy_EZA_Adressen ON ezaAd_EZAId=eza_Id"
|
|
' sqlStr &= " WHERE (eza_Trans_DatumZeit) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
sqlStr &= " WHERE (SELECT COUNT(*) FROM [tblDakosy_Statusmeldungen] WHERE [dySt_dyId]=eza_dyaAnmID AND [dySt_status] between 40 and 70 AND CONVERT(date, [dySt_ergZeitpunkt] ,104 ) BETWEEN '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' )>0 "
|
|
sqlStr &= " and ezaAd_AdressTyp='UC' and eza_ANR LIKE 'ATC42%' /*eza_VerfahrenBeantragtCode LIKE '42%'*/ and [eza_UstIdAnmelder]='" & cboUID._value & "' and ezaAd_UStIDAnmelder is not null and [eza_FinanzamtAnmelder]='9153' "
|
|
sqlStr &= " AND [eza_Status] IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1) "
|
|
|
|
' sqlStr &= " select Left(ezaAd_UStIDAnmelder,2) AS knre1, substring(ezaAd_UStIDAnmelder,3,len(ezaAd_UStIDAnmelder)) AS knre2 ,eza_Rechnungspreis as betrag"
|
|
' sqlStr &= " from tblDakosy_EZA inner join tblDakosy_EZA_Adressen ON ezaAd_EZAId=eza_Id"
|
|
' sqlStr &= " WHERE (eza_Trans_DatumZeit) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
'sqlStr &= " and ezaAd_AdressTyp='DT' and eza_VerfahrenBeantragtCode=42 and eza_FiskalvertretungKz=1 /*AND ezaAd_UStIDAnmelder='" & cboUID._value & "'*/ and ezaAd_UStIDAnmelder is not null"
|
|
End If
|
|
|
|
|
|
|
|
sqlStr &= " ) as Tb"
|
|
sqlStr &= " order by zbant_erwust"
|
|
|
|
|
|
|
|
'sqlStr &= " UNION"
|
|
|
|
' sqlStr &= " SELECT Left([zbant_erwust],2) AS knre1, substring([zbant_erwust],3,len([zbant_erwust])) AS knre2"
|
|
'sqlStr &= " ,(CASE WHEN [zbant_kurs]=0 THEN [zbant_preisr] ELSE (([zbant_preisr]/[zbant_kurs])*100)/100 END) as betrag"
|
|
' sqlStr &= " FROM [VERAG-ATLAS1\SQLATLAS].atlas.dbo.zbant"
|
|
' sqlStr &= " WHERE (zbant_nadat) Between '" & datVon.Value.ToShortDateString & "' And '" & datBis.Value.ToShortDateString & "' "
|
|
'sqlStr &= " AND zbant_stat IN(SELECT [zbant_stat] FROM [atlas_status] where fiskal_freigabe=1)"
|
|
'sqlStr &= " AND [zbant_erwust] <>''"
|
|
Return SQL.loadDgvBySql(sqlStr, "FMZOLL", 600)
|
|
|
|
End Function
|
|
|
|
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
Try
|
|
|
|
|
|
lblErrUID.Visible = False
|
|
If cboUID._value = "" Then
|
|
lblErrUID.Visible = True
|
|
Exit Sub
|
|
End If
|
|
|
|
Me.Cursor = Cursors.WaitCursor
|
|
|
|
Dim dt = getZM_Datat()
|
|
|
|
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
|
|
|
|
If Not System.IO.Directory.Exists(getDir()) Then System.IO.Directory.CreateDirectory(getDir())
|
|
Dim fs As New FileStream(getDir() & "\ZM_Formular_online.csv", FileMode.Create)
|
|
Dim sw As New StreamWriter(fs)
|
|
|
|
|
|
sw.WriteLine("#v1.1")
|
|
sw.WriteLine("Laenderkennzeichen;USt-IdNr.;Betrag(EUR); Art der Leistung")
|
|
|
|
Dim umsatz_art = 0
|
|
Dim zeile_m = 1
|
|
For Each r As DataRow In dt.Rows
|
|
' If zeile_m < 1000 Then
|
|
sw.WriteLine(r("knre1") & ";" & r("knre2").trim & ";" & r("Betrag") & ";" & IIf(umsatz_art = 0, "L", IIf(umsatz_art = 1, "S", IIf(umsatz_art = 2, "D", "?"))))
|
|
zeile_m += 1
|
|
' End If
|
|
Next
|
|
sw.Close()
|
|
fs.Close()
|
|
Process.Start(getDir() & "\ZM_Formular_online.csv")
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
Me.Cursor = Cursors.Default
|
|
|
|
End Sub
|
|
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
|
|
Dim displayFilter = False
|
|
|
|
lblErrUID.Visible = False
|
|
If cboUID._value = "" Then
|
|
lblErrUID.Visible = True
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Fiskalvertretung"
|
|
|
|
Dim rpt As New rptFiskalvertretungVorschau
|
|
|
|
rpt.DataSource = getZM_DataVorschau()
|
|
|
|
'Filter anzeigen
|
|
' If displayFilter Then
|
|
' rpt.lblFilterTxt.Visible = displayFilter
|
|
'rpt.txtFilter.Visible = displayFilter
|
|
'rpt.txtFilter.Text = SQL.getStringReplaceScalarVar(getSpedBuchWhere, getSpedbuchList)
|
|
'Else
|
|
'If txtUeberschr.Text <> "" Then
|
|
' rpt.txtFilter.Text = txtUeberschr.Text
|
|
'rpt.txtFilter.Visible = True
|
|
'rpt.lblFilterTxt.Visible = True
|
|
'rpt.lblFilterTxt.Text = "Beschreibung:"
|
|
'End If
|
|
'End If
|
|
|
|
|
|
|
|
rpt.GroupHeader1.DataField = "baslnd_alpha" 'Gruppierung
|
|
|
|
rpt.GroupHeader2.DataField = "zbant_erwust" 'Gruppierung
|
|
|
|
|
|
|
|
' rpt.GroupHeader2.DataField = "AvisoId" 'Gruppierung
|
|
|
|
' MsgBox(rpt.DataSource.rows.count)
|
|
If rpt.DataSource.rows.count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
Dim sum = 0
|
|
rpt.lblUeberschrift.Text = "Fiskalvertretung " & datVon.Text & " bis " & datBis.Text
|
|
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
|
|
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
'Dim cnt As Integer = 0
|
|
rpt.lblDat.Text = Now.ToLongDateString
|
|
Dim sumEust As Double = 0
|
|
Dim sumRg As Double = 0
|
|
Dim gesSumEust As Double = 0
|
|
Dim gesSumRg As Double = 0
|
|
Dim gesgesSumEust As Double = 0
|
|
Dim gesgesSumRg As Double = 0
|
|
Dim gesgesSumAnz = 0
|
|
Dim gesSumAnz = 0
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
|
|
' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
|
|
|
|
rpt.lblAbfDatum.Text = rpt.Fields.Item("zbant_nadat").Value
|
|
rpt.lblRegNr.Text = rpt.Fields.Item("zbant_regnr").Value
|
|
|
|
rpt.lblBezNr.Text = rpt.Fields.Item("zbant_beznr").Value
|
|
rpt.lblNL.Text = rpt.Fields.Item("basman_nl").Value
|
|
rpt.lblReBetrWaehr.Text = rpt.Fields.Item("zbant_waehr").Value
|
|
|
|
Dim re As Double = 0
|
|
Dim rg As Double = 0
|
|
Dim eust As Double = 0
|
|
Dim kurs As Double = 0
|
|
If IsNumeric(checkNull(rpt.Fields.Item("zbant_preisr").Value)) Then re = CDbl(rpt.Fields.Item("zbant_preisr").Value())
|
|
rpt.lblReBetrag.Text = CDbl(re).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
If IsNumeric(checkNull(rpt.Fields.Item("curEuro").Value)) Then rg = CDbl(rpt.Fields.Item("curEuro").Value())
|
|
rpt.lblReBetragEUR.Text = CDbl(rg).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
If IsNumeric(checkNull(rpt.Fields.Item("eustwe").Value)) Then eust = CDbl(rpt.Fields.Item("eustwe").Value())
|
|
rpt.lblEUST.Text = CDbl(eust).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
If IsNumeric(checkNull(rpt.Fields.Item("zbant_kurs").Value)) Then kurs = CDbl(rpt.Fields.Item("zbant_kurs").Value())
|
|
rpt.lblKurs.Text = CDbl(kurs).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
' sumAbfBez = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
|
|
|
|
sumRg += rg
|
|
sumEust += eust
|
|
|
|
gesSumRg += rg
|
|
gesSumEust += eust
|
|
|
|
gesgesSumRg += rg
|
|
gesgesSumEust += eust
|
|
|
|
gesSumAnz += 1
|
|
gesgesSumAnz += 1
|
|
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
rpt.lblFiskalvertretung.Text = "Fiskalvertretung - " & SQL.getValueTxtBySql("SELECT TOP 1 isnull([LandBez],'') FROM [Länderverzeichnis für die Außenhandelsstatistik] WHERE [LandKz]='" & checkNull(rpt.Fields.Item("baslnd_alpha").Value) & "'", "FMZOLL")
|
|
rpt.lblFiskalvertretungLand.Text = checkNull(rpt.Fields.Item("baslnd_alpha").Value)
|
|
|
|
gesSumEust = 0
|
|
gesSumRg = 0
|
|
gesSumAnz = 0
|
|
rpt.lblGesSumTxt.Text = "Summe " & checkNull(rpt.Fields.Item("baslnd_alpha").Value) & ":"
|
|
End Sub
|
|
AddHandler rpt.GroupHeader2.Format, Sub()
|
|
rpt.lblUIDNr.Text = "USt-ID: " & checkNull(rpt.Fields.Item("zbant_erwust").Value)
|
|
rpt.lblFirmenname.Text = checkNull(rpt.Fields.Item("zbaaz_name1").Value)
|
|
|
|
sumEust = 0
|
|
sumRg = 0
|
|
|
|
End Sub
|
|
|
|
AddHandler rpt.GroupFooter2.Format, Sub()
|
|
'rpt.lblSumAbfertigungsart.Text = sumAbfBez
|
|
'rpt.lblSumBarzahlungsbetrag.Text = sumBar.ToString("N2", CultureInfo.CurrentCulture)
|
|
'rpt.lblSumRechnungsbetrag.Text = sumRg.ToString("N2", CultureInfo.CurrentCulture)
|
|
'rpt.lblSumAnzahl.Text = sumAnz.ToString("N0")
|
|
'rpt.lblSuag.Text = sumRg.ToString("C")
|
|
rpt.lblSumRe.Text = sumRg.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblSumEust.Text = sumEust.ToString("N2", CultureInfo.CurrentCulture)
|
|
|
|
|
|
End Sub
|
|
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblGesSumRe.Text = gesSumRg.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesSumEust.Text = gesSumEust.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesSumAnzahl.Text = gesSumAnz.ToString("N0")
|
|
|
|
End Sub
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
|
|
rpt.lblGesgesSumRe.Text = gesgesSumRg.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesgesSumEust.Text = gesgesSumEust.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesGesSumAnzahl.Text = gesgesSumAnz.ToString("N0")
|
|
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
|
|
End Sub
|
|
|
|
Function checkNull(o As Object, Optional ret As String = "") As Object
|
|
If o Is Nothing Then Return ret
|
|
If o Is DBNull.Value Then Return ret
|
|
Return o
|
|
End Function
|
|
|
|
|
|
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
|
|
|
lblErrUID.Visible = False
|
|
|
|
Dim dir = getDir()
|
|
|
|
If dir = "" Then
|
|
lblErrUID.Visible = True
|
|
Else
|
|
Process.Start(dir)
|
|
End If
|
|
|
|
|
|
End Sub
|
|
End Class
|