Grundsätzlich sollte es aber kein Problem sein, das beim Importieren möglicherweise einfach mit auszulesen. In die Datei muss der Importer eh gehen, da nur da drin steht, von wo nach wo die Linie fährt (und das wird ja schon bei der Linienauswahl angezeigt).
Zum Thema Busskripte: Mit ein bisschen (und echt nicht viel) Fummelarbeit ist es kaum ein Problem, einen Bus dafür kompatibel zu machen. Es ist nur halt immer irgendwo anders und irgendwie anders formatiert.
Als Beispiel: Der Code für mein Programm SpedV, welcher nur für die anzeige der Verspätung zuständig ist, hat 35 Zeilen und greift auf 9 Variablen zurück, kann dafür aber für die meisten Busse die Verspätung ausgeben:
Public ReadOnly Property Delay As TimeSpan
Get
If stringvars.IBIS_Delay_rot IsNot Nothing AndAlso stringvars.IBIS_Delay_rot <> "" Then
Return New TimeSpan(0, CInt(stringvars.IBIS_Delay_rot.Split(":"c)(0).Trim.TrimStart("-"c)), CInt(stringvars.IBIS_Delay_rot.Split(":"c)(1).Trim)).Negate
End If
If stringvars.IBIS_Delay_gruen IsNot Nothing AndAlso stringvars.IBIS_Delay_gruen <> "" Then
Return New TimeSpan(0, CInt(stringvars.IBIS_Delay_gruen.Split(":"c)(0).Trim.TrimStart("+"c)), CInt(stringvars.IBIS_Delay_gruen.Split(":"c)(1).Trim))
End If
If stringvars.Faremaster_Delay_state IsNot Nothing AndAlso stringvars.Faremaster_Delay_state <> "" Then
Dim min As Integer = CInt(stringvars.Faremaster_Delay_min)
Dim sec As Integer = CInt(stringvars.Faremaster_Delay_sec)
Return New TimeSpan(0, min * If(stringvars.Faremaster_Delay_state = "-", -1, 1), sec * If(stringvars.Faremaster_Delay_state = "-", -1, 1))
End If
If stringvars.almex_s_versp IsNot Nothing Then
If stringvars.almex_s_versp = "--:--" Then Return New TimeSpan(0)
Dim min As Integer = CInt(stringvars.almex_s_versp.Split(":"c)(0).Trim)
Dim sec As Integer = CInt(stringvars.almex_s_versp.Split(":"c)(1).Trim)
Return New TimeSpan(0, min, sec * (If(stringvars.almex_s_versp.Trim.StartsWith("-"), -1, 1)))
End If
If stringvars.atron_D_aktdelay_omsi2 IsNot Nothing Then
If stringvars.atron_D_aktdelay_omsi2.Trim = "" Then Return New TimeSpan(0)
Dim min As Integer = CInt(stringvars.atron_D_aktdelay_omsi2.Split(":"c)(0).Trim)
Dim sec As Integer = CInt(stringvars.atron_D_aktdelay_omsi2.Split(":"c)(1).Trim)
Return New TimeSpan(0, min, sec * (If(stringvars.atron_D_aktdelay_omsi2.Trim.StartsWith("-"), -1, 1)))
End If
If stringvars.IBIS_Delay_min IsNot Nothing AndAlso stringvars.IBIS_Delay_min.Trim.Length > 0 Then
Dim d As New TimeSpan(0, CInt(stringvars.IBIS_Delay_min.Trim), If(stringvars.IBIS_Delay_sec = "", 0, CInt(CDbl(stringvars.IBIS_Delay_sec.Trim) / 10 * 60)))
If stringvars.IBIS.Contains("@") = False OrElse stringvars.IBIS.Split("@"c)(1).Chars(3) <> "/"c Then
Return If(stringvars.IBIS_Delay_state = "-", -d, d)
Else
Return If(stringvars.IBIS_Delay_state = "-", d, -d) 'Sonderfall MVG-Lionscity
End If
End If
Return New TimeSpan(0)
End Get
End Property
Alles anzeigen