Hallo Mäxx!
| Zitat: |  |
...
Habe ich das richtig verstanden, dass ich die Felder nur
übergeben kann, in dem ich auf das Ereignis von LL reagiere?
Kann ich LL nicht quasi eine "Zeile" übergeben
(ohne auf ein Ereignis zu reagieren) und ihn dann dazu
bringen die Daten zu "schreiben"?
Ich stelle mir vor die Daten z.B. in einer For / Next
Schleife zu übergeben und nicht als Reaktion auf das
Ereignis. Ich finde es dann irgendwie schwieriger.
Hat vielleicht jemand eine Idee, wie das geht?
...
|  |
Du musst keineswegs auf ein Ereignis reagieren wenn du das nicht möchtest.
Nutze die ListLabel10.dll.
Kurzer Hack:
Private myListLabel As combit.ListLabel10.ListLabel = New _
combit.ListLabel10.ListLabel
Private myDS As DataSet
Private myDA As System.Data.OleDb.OleDbDataAdapter
Private myDRVariables As DataRow
Private myDRFields As DataRow
'*************************************************************
Public Sub Preview()
InitData(myQueryStringVariables, myQueryStringFields)
myListLabel.Variables.Clear()
DefineData(False)
myListLabel.Fields.Clear()
DefineData(True)
myListLabel.Core.LlPrintStart(LlProject.List, myPath & myFile, _
LlPrintMode.Preview)
For i As Integer = 0 To myDS.Tables("tblFelder").Rows.Count - 1
myDRFields = myDS.Tables("tblFelder").Rows(i)
myListLabel.Fields.Clear()
DefineData(True)
Do While myListLabel.Core.LlPrintFields() = False
myListLabel.Core.LlPrint()
Loop
Next
myListLabel.Core.LlPrintEnd()
myListLabel.Core.LlPreviewDisplay(myFile, myPath, myFormHandle)
myListLabel.Core.LlPreviewDeleteFiles(myFile, myPath)
End Sub
'*************************************************************
Private Sub InitData(ByVal QueryStringVariables As String, ByVal _
QueryStringFields As String)
Dim myOleDbConnection As OleDbConnection = New OleDbConnection( _
glbConnectionString)
myOleDbConnection.Open()
myDS = New DataSet
myDA = New Data.OleDb.OleDbDataAdapter(QueryStringVariables, _
myOleDbConnection)
myDA.Fill(myDS, "tblVariablen")
myDA = New Data.OleDb.OleDbDataAdapter(QueryStringFields, myOleDbConnection)
myDA.Fill(myDS, "tblFelder")
myDRVariables = myDS.Tables("tblVariablen").Rows(0)
myDRFields = myDS.Tables("tblFelder").Rows(0)
myOleDbConnection.Close()
End Sub
'*************************************************************
Private Sub DefineData(ByVal AsFields As Boolean)
If AsFields Then
For i As Integer = 0 To myDS.Tables("tblFelder").Columns.Count - 1
myListLabel.Fields.Add(myDS.Tables("tblFelder").Columns(i).ColumnName, _
myDRFields(i).ToString, LlFieldType.Text)
Next
Else
For i As Integer = 0 To myDS.Tables("tblVariablen").Columns.Count - 1
myListLabel.Variables.Add(myDS.Tables("tblVariablen").Columns( _
i).ColumnName, _
myDRVariables(i).ToString, LlFieldType.Text)
Next
End If
End Sub...so in etwa sollte es gehen.
Viel Glück!
Gruß, Micha
I'm an idealist. I don't know where I'm going, but I'm on my way.
- Carl Sandburg |