Merge branch 'newMaster2024' of https://git.it.verag.ag/edv/SDL into newMaster2024
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
Imports DocumentFormat.OpenXml.Spreadsheet
|
||||
Imports DAKOSY_Worker
|
||||
Imports DocumentFormat.OpenXml.Spreadsheet
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class usrCntlCBAM
|
||||
|
||||
@@ -1065,11 +1067,8 @@ Public Class usrCntlCBAM
|
||||
ElseIf sender Is Button3 Then
|
||||
'----- kafka / Greenpulse ----------------------------------------------------------------------------------------------------------------------------------------
|
||||
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
|
||||
'---------------------------------------------------------------------------------------------------------------------------------------------
|
||||
doCBAM_XML(dt, EORI)
|
||||
'---------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Button2.Enabled = True
|
||||
btnCBAM_DS_DAKOSY_XML.Enabled = True
|
||||
|
||||
doCBAM_KafkaFromDakosy(dt)
|
||||
|
||||
End If
|
||||
End If
|
||||
@@ -1084,6 +1083,31 @@ Public Class usrCntlCBAM
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub doCBAM_KafkaFromDakosy(dt As DataTable)
|
||||
Try
|
||||
|
||||
For Each g In dt.Rows
|
||||
Dim mrn As String = g("RegistriernummerATLAS")
|
||||
Dim EZA = cDakosyEZA.LOADByMRN(mrn, True)
|
||||
' Objekt
|
||||
Dim rec = cDakosyEZA_Greenpulse.BuildByMrn(EZA)
|
||||
|
||||
' Dim rec = cATEZ_Greenpulse_KafkaDecs.BuildDemo()
|
||||
'' JSON (schön formatiert)
|
||||
'Dim json As String = cATEZ_Greenpulse_KafkaDecsBuilder_DAKOSY.BuildJsonByMrn(mrn, pretty:=True)
|
||||
'Console.WriteLine(json)
|
||||
|
||||
|
||||
Dim key = cATEZ_Greenpulse_KafkaDecs.GetUniqueKey_Pipe("DE", "DAKOSY", mrn)
|
||||
Dim dr = cATEZ_Greenpulse_KafkaDecs.InsertOrUpdateToKafkaSync_Bool(rec, key, 30000)
|
||||
|
||||
' MessageBox.Show($"OK: {dr.Status} @ {dr.TopicPartitionOffset}")
|
||||
Next
|
||||
Catch ex As Exception
|
||||
MessageBox.Show(ex.Message)
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
Private Sub doCBAM_XML(dt As DataTable, EORI As String)
|
||||
Dim CBAM_XML As New VERAG_PROG_ALLGEMEIN.CBAM_QReport_17.QReportType
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
Imports System.Data.SqlClient
|
||||
Imports System.Threading
|
||||
Imports System.Threading.Tasks
|
||||
Imports System.Windows.Forms
|
||||
Imports Confluent.Kafka
|
||||
|
||||
Imports Newtonsoft.Json
|
||||
@@ -22,8 +23,8 @@ Public Class cATEZ_Greenpulse_KafkaDecs
|
||||
'== Kafka: Konfiguration (Klassenebene)
|
||||
'========================
|
||||
Public Shared BootstrapServers As String = "192.168.85.250:9092" 'http://192.168.85.250:8888
|
||||
Public Shared TopicName As String = "greenpulse.declarationdata.v1"
|
||||
'Public Shared TopicName As String = "dev.greenpulse.declarationdata.v1"
|
||||
' Public Shared TopicName As String = "greenpulse.declarationdata.v1"
|
||||
Public Shared TopicName As String = "dev.greenpulse.declarationdata.v1"
|
||||
' Falls SASL/TLS benötigt:
|
||||
Public Shared UseSasl As Boolean = False
|
||||
Public Shared SaslUsername As String = ""
|
||||
@@ -271,9 +272,22 @@ Public Class cATEZ_Greenpulse_KafkaDecs
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'========================
|
||||
'== Kafka: Insert/Update (per Message-Key)
|
||||
'========================
|
||||
|
||||
Public Shared Function InsertOrUpdateToKafkaSync_Bool(rec As cATEZ_Greenpulse_KafkaDecs, unique_KEY As String, Optional waitMs As Integer = 30000) As Boolean
|
||||
Try
|
||||
Dim result = InsertOrUpdateToKafkaSync(rec, unique_KEY, waitMs)
|
||||
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
MessageBox.Show("Fehler beim Senden an Kafka: " & ex.Message, "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||
Return False
|
||||
End Try
|
||||
|
||||
End Function
|
||||
Public Shared Function InsertOrUpdateToKafkaSync(rec As cATEZ_Greenpulse_KafkaDecs, unique_KEY As String, Optional waitMs As Integer = 30000) As DeliveryResult(Of String, String)
|
||||
|
||||
|
||||
@@ -290,7 +304,7 @@ Public Class cATEZ_Greenpulse_KafkaDecs
|
||||
|
||||
Using producer = New ProducerBuilder(Of String, String)(cfg).Build()
|
||||
Dim key = unique_KEY ' GetUniqueKey(rec)
|
||||
Dim msg = New Message(Of String, String) With {.key = key, .Value = rec.ToJson(False)}
|
||||
Dim msg = New Message(Of String, String) With {.Key = key, .Value = rec.ToJson(False)}
|
||||
|
||||
Dim done As New Threading.ManualResetEventSlim(False)
|
||||
Dim lastReport As DeliveryResult(Of String, String) = Nothing
|
||||
|
||||
Reference in New Issue
Block a user