[u]FORM2
Private Sub cmd_Einlesen_Click()
poprmPfad = Pfad & "PO.PRM"
postPfad = Pfad & "PO.ST"
On Error GoTo Fehler
No = FreeFile
Open poprmPfad For Input As #No
Line Input #No, Tmp
ReDim Feldlänge(Val(Tmp))
For J = 1 To Val(Tmp)
Input #No, dummy, Feldlänge(J), dummy, dummy, dummy
Nebensatzlänge = Nebensatzlänge + Feldlänge(J)
Next J
Close #No
No = 0
Fehler:
If No <> 0 Then Close #No
Call cmd_Wechsel_Click
End Sub
Private Sub cmd_Wechsel_Click()
For J = 0 To 8
Form2.txt_Feld(J).Text = ""
Next J
FF1 = FreeFile
FF3 = FreeFile
X = 0
Open postPfad For Random As FF1 Len = Nebensatzlänge
AnzahlNSätze = LOF(FF1) / Nebensatzlänge
For J = 1 To AnzahlNSätze
Get FF1, J, NPuffer
If Belegnr = NPuffer.Nummer Then
X = X + 1
NSatzPos(X) = J
NSatzNr(X) = NPuffer.NFeld0
'Textbox(X).Text = NSatzNr(X)
Else
End If
Next J
Do
Halt = False
For N = 1 To X - 1
If NSatzNr(N) > NSatzNr(N + 1) Then
Temp = NSatzNr(N)
NSatzNr(N) = NSatzNr(N + 1)
NSatzNr(N + 1) = Temp
Temp2 = NSatzPos(N)
NSatzPos(N) = NSatzPos(N + 1)
NSatzPos(N + 1) = Temp2
Halt = True
End If
Next N
Loop Until Halt = False
For J = 1 To X
Get FF3, NSatzNr(J), NPuffer
Zeile(J) = NPuffer.NFeld0 & NPuffer.NFeld4 & NPuffer.NFeld5 & _
NPuffer.NFeld6 & NPuffer.NFeld7
Form3.lst_Ausgabe.AddItem (Zeile(J))
Next J
I = InputBox("Es gibt " & X & " Nebensätze, bitte laufende Nummer des" & _
"auszugebenden Nebensatzes eingeben.", "Nebensatz laden")
If StrPtr(I) = 0 Or I = "" Then GoTo Ende
If I <= X Then
Get FF1, NSatzPos(I), NPuffer
txt_Feld(0).Text = NPuffer.Nummer & NPuffer.NFeld0
txt_Feld(1).Text = NPuffer.NFeld1
txt_Feld(2).Text = NPuffer.NFeld2
txt_Feld(3).Text = NPuffer.NFeld3
txt_Feld(4).Text = NPuffer.NFeld4
txt_Feld(5).Text = NPuffer.NFeld5
txt_Feld(6).Text = NPuffer.NFeld6
txt_Feld(7).Text = NPuffer.NFeld7
Else
MsgBox ("Es gibt nur " & X & " Nebensatz/sätze.")
End If
Close FF1
Ende:
Exit Sub
End Sub
Private Sub cmd_Ausgabe_Click()
Form3.Show
End Sub [u]FORM3
Private Sub Form_Load()
lbl_Nr.Caption = Belegnr
lbl_Datum.Caption = Datum
lbl_Name.Caption = Kundenname
lbl_KundenNr.Caption = KundenNr
End Sub Modul1
Public Pfad As String
Public prmPfad As String, stPfad As String
Public poprmPfad As String, postPfad As String
Public SatzNr As String
Public Belegnr As String
Public Kundenname, KundenNr, Datum As String
Public X As Integer, Zeile(1 To 100) As String
Public Type DatensatzType
Feld0 As String * 9
Feld1 As String * 10
Feld2 As String * 6
Feld3 As String * 5
Feld4 As String * 3
Rem usw...
End Type
Public Type NebensatzType
Nummer As String * 9
NFeld0 As String * 3
NFeld1 As String * 5
NFeld2 As String * 6
NFeld3 As String * 2
NFeld4 As String * 12
Rem usw...
end type |