Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 54

Thema: Übergabe an Access

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registriert seit
    16.03.2002
    Beiträge
    110
    Hallo,

    das geht eigentlich sehr einfach. FMS32 im Server-Modus betreiben und in Access ein kleines VBA-Programm schreiben, das die Telegramme mit "WinSock" ausliest und in eine Tabelle schreibt. Das Telegrammformat ist im Web bei Heirue-Soft beschrieben.Die Daten sind ungefiltert!

    Gruß Ralf

  2. #2
    Registriert seit
    01.01.2006
    Beiträge
    230

    Gibt es schon

    Hi,

    wir nutzen www.BOS2WEB.de

    Hier wird alles mit einem Agenten in eine SQL-Datenbank geschrieben.

    Einfach mal auf deren Internetseite schauen.

    Holger

  3. #3
    inselhopper Gast
    @paeddy
    Würde dein kleines Prog gerne ausprobieren.

    @Ralf
    Ist das VBA-Skript groß? Magst du es vielleicht hier posten oder mir schicken?


    Gruß
    inselhopper

  4. #4
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    Zitat Zitat von Ralf Beitrag anzeigen
    Das Telegrammformat ist im Web bei Heirue-Soft beschrieben.
    Wo genau??? Kannst du mal den Link posten oder mir die Beschreibung per PN schicken???
    Felix
    felix[null][null][null]@funkmeldesystem.de

  5. #5
    Registriert seit
    18.12.2004
    Beiträge
    488
    @felix000

    Die Beschreibung findest du im Download Bereich von FMS32.


    Ist recht einfach, allerdings stört es mich, das die Filter etc. nicht wirken
    und er alles roh übergibt.


    MfG
    coastboy

  6. #6
    Registriert seit
    16.03.2002
    Beiträge
    110
    Hallo,

    @inselhopper
    ich werde mal eine kleine Beispieldatenbank erstellen, die ich dann zur Verfügung stelle, dauert aber 1-2 Tage (ist Access 2000, neuer habe ich nicht).

    @felix000
    der Link ist http://www.heirue-soft.de/servicefms...d/neues321.pdf
    (ist kennwortgeschützt, also nur für registrierte User, deshalb werde ich hier auch keine Details posten).
    Ist aber leicht zu durchschauen, da Klartext, Felder durch TAB (Chr$(9)) getrennt.


    Gruß Ralf

  7. #7
    Registriert seit
    09.01.2008
    Beiträge
    10

    FMSQL v0.20

    Hallo,

    so habe mal meine kleines Programm zum speichern in eine Mysql Datenbank unten mit angefügt. Wer keine Mysql Datenbankanbindung hat kann das Programm auch als Client für FMS32 benutzen.

    Würde mich freuen wenn ein bisschen Rückmeldung von euch kommen würde.

    FMSQL v0.20 -> http://paeddy.pa.funpic.de/FMSQL/fmsql0.20.zip

    Grüße

    Paetrick

  8. #8
    inselhopper Gast
    Freu mich schon auf deine Accessgeschichte. Ich komme zwar mit Access sehr gut klar, aber in VBA bin ich nicht allzu gut drin. Ich kenne nur noch einige Grundbefehle aus der C64-Basic Zeit, viele funktionieren da ja auch.


    Das FMSQL probier ich gleich mal aus. Rückmeldung bekommst du selbstverständlich!


    Gruss
    inselhopper

  9. #9
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    Zitat Zitat von Ralf Beitrag anzeigen
    @felix000
    der Link ist http://www.heirue-soft.de/servicefms...d/neues321.pdf
    (ist kennwortgeschützt, also nur für registrierte User, deshalb werde ich hier auch keine Details posten).
    Ist aber leicht zu durchschauen, da Klartext, Felder durch TAB (Chr$(9)) getrennt.
    Danke, in der Uni hatte ich das Passwort für den Downloadbereich nicht zu Hand...
    Felix
    felix[null][null][null]@funkmeldesystem.de

  10. #10
    inselhopper Gast
    Moin,
    ich hab mich mal selbst an der ACCESS Geschichte versucht, habs aber leider nicht hinbekommen.

    Zitat Zitat von Ralf Beitrag anzeigen
    FMS32 im Server-Modus betreiben und in Access ein kleines VBA-Programm schreiben, das die Telegramme mit "WinSock" ausliest und in eine Tabelle schreibt. Das Telegrammformat ist im Web bei Heirue-Soft beschrieben.
    Kann es sein dass der WinSock nicht unter VBA funktioniert, sondern nur unter VB?

  11. #11
    Registriert seit
    16.03.2002
    Beiträge
    110
    Hallo,

    ein Formular erstellen und ein Winsock-Steuerelement einfügen mit Namen "Winsock1"

    Private Sub Form_Load()
    Dim ServerIP As String
    ServerIP = "Hier kommt der Name des Computers im Netz rein, auf dem FMS32 läuft"
    Winsock1.Connect ServerIP, 9300
    End Sub

    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim Eingangstext As String
    Winsock1.GetData Eingangstext 'Die Variable "Eingangstext" enthält jetzt das Telegramm

    Dim Eingang() As String
    Eingang() = Split(Eingangstext, Chr$(9))
    'Die Variablen "Eingang(0)", "Eingang(1), "Eingang (...)" enthalten jetzt die einzelnen Felder

    'Quittungen überspringen, wenn gewünscht
    If Eingang(0) = "FMSTlg" Then
    If Eingang(6) = "14" Or Eingang(6) = "15" Then
    Exit Sub
    End If
    End If

    'Jetzt werden die Felder in die Tabelle "Eingangstabelle" mit den Feldern

    Eingangsdatum
    Art
    Richtung
    Adresse
    Status
    Eingangsmeldung

    schreiben

    Set FMS = CurrentDb.OpenRecordset("Eingangstabelle")
    FMS.AddNew

    If Eingang(0) = "ZVEI" Then
    FMS!Eingangsdatum = Now()
    FMS!Art = "Z"
    FMS!Richtung = "an"
    FMS!Adresse = Eingang(1)
    End If

    If Eingang(0) = "FMSTlg" Then
    FMS!Eingangsdatum = Now()
    FMS!Art = Eingang(9)
    FMS!Adresse = Eingang(1)
    If Eingang(8) = "0" Then
    FMS!Richtung = "von"
    Else
    FMS!Richtung = "an"
    End If
    FMS!Status = Eingang(6)
    FMS!Eingangsmeldung = Eingang(13)
    End If

    FMS.Update
    FMS.Close
    Set FMS = Nothing

    End Sub

    POCSAC habe ich nicht berücksichtigt, das haben wir hier nicht, lässt sich aber leicht
    einfügen.

    Viel Erfolg beim Ausprobieren, bei weiteren Fragen gerne melden.

    Gruß Ralf

  12. #12
    inselhopper Gast
    Hallo Ralf,
    danke für deinen Beitrag.

    Das ist soweit alles verständlich und gut beschrieben. Aber eins habe ich noch

    Zitat Zitat von Ralf Beitrag anzeigen
    ...
    ein Formular erstellen und ein Winsock-Steuerelement einfügen mit Namen "Winsock1"
    ...
    Ich hab mir dafür die VB6Runtimedateien runtergeladen, das Steuerelement erscheint auch bei Access, nur ..... ich kann es nicht benutzen. Woran kann das liegen?

  13. #13
    Registriert seit
    16.03.2002
    Beiträge
    110
    Hallo Inselhopper,

    ich vermute mal, dass der Verweis auf Winsock nicht gesetzt ist:

    Im Menü "Extras - Verweise"
    Microsoft Winsock Control 6.0 (SP6) anhaken

    Vorschlag zur Verbindungskontrolle:

    Im Formular ein Bezeichnungsfeld mit dem Namen "Verbindung" einfügen
    und folgenden Code:

    Private Sub Winsock1_Close()
    Verbindung.Caption = "- getrennt -"
    Verbindung.BackColor = RGB(255, 0, 0)
    End Sub

    Private Sub Winsock1_Connect()
    Verbindung.Caption = "- verbunden -"
    Verbindung.BackColor = RGB(0, 255, 0)
    End Sub

    Nun sollte es klappen. Das in FMS32 Server-Modus und Port 9300
    gesetzt sind, davon gehe ich mal aus.

    Viel Erfolg und Grüße
    Ralf

    PS.
    Für die Datenspeicherung muß der Verweis "Microsoft DAO 3.6 Object Library"
    gesetzt sein!

  14. #14
    inselhopper Gast
    Besten Dank!!

    War alles richtig, nur hatte ich Winsock nicht "angehakt"


    Manchmal sieht man den Wald vor lauter Bäumen nicht.

  15. #15
    Registriert seit
    16.03.2002
    Beiträge
    110
    Hallo,

    wenn man nun die Einsatzmeldungen in Access hat, stellt man betrübt fest, das die
    mühsam in FMS32 eingepflegten ZVEI- und Fahrzeugdaten nicht übertragen werden.

    Also eine Tabelle "Fahrzeuge" mit den Feldern "Kennung", "Rufname" und "Bezeichnung"
    anlegen und folgenden Code ausführen:

    Dim Dateiname As String
    Dim Dateilaenge As Long
    Dim Satzlaenge As Long
    Dim Saetzeanzahl As Long
    Dim Dateiposition As Long
    Dim Zaehler As Long
    Dim Eingang As String
    Dim FMS As DAO.Recordset

    Dateiname = "C:\Programme\Heirue-Soft\FMS32-Pro\Fahrzeug.dat"
    Satzlaenge = 515
    Dateiposition = 1

    Set FMS = CurrentDb.OpenRecordset("Fahrzeuge")

    Open Dateiname For Binary As 1
    Dateilaenge = LOF(1)
    Saetzeanzahl = Dateilaenge / Satzlaenge

    For Zaehler = 1 To Saetzeanzahl
    Eingang = String(Satzlaenge, " ")
    Get 1, Dateiposition, Eingang
    Dateiposition = Dateiposition + Satzlaenge
    FMS.AddNew
    FMS!Kennung = Left$(Eingang, 8)
    FMS!Rufname = Mid$(Eingang, 9, 30)
    FMS!Bezeichnung = Mid$(Eingang, 39, 40)
    FMS.Update
    Next Zaehler

    Close 1
    FMS.Close
    Set FMS = Nothing

    Und eine Tabelle "Ton5" mit den Feldern "Tonfolge" und "Klartext"

    Dim Dateiname As String
    Dim Dateilaenge As Long
    Dim Satzlaenge As Long
    Dim Saetzeanzahl As Long
    Dim Dateiposition As Long
    Dim Zaehler As Long
    Dim Eingang As String
    Dim FMS As DAO.Recordset

    Dateiname = "C:\Programme\Heirue-Soft\FMS32-Pro\TON5.dat"
    Satzlaenge = 323
    Dateiposition = 1

    Set FMS = CurrentDb.OpenRecordset("Ton5")

    Open Dateiname For Binary As 1
    Dateilaenge = LOF(1)
    Saetzeanzahl = Dateilaenge / Satzlaenge

    For Zaehler = 1 To Saetzeanzahl
    Eingang = String(Satzlaenge, " ")
    Get 1, Dateiposition, Eingang
    Dateiposition = Dateiposition + Satzlaenge
    If Left$(Eingang, 1) < "9" Then
    FMS.AddNew
    FMS!Tonfolge = Left$(Eingang, 5)
    FMS!Klartext = Mid$(Eingang, 6, 44)
    FMS.Update
    End If
    Next Zaehler

    Close 1
    FMS.Close
    Set FMS = Nothing

    Die Originaldaten vorher sichern!!!

    Jetzt die Tabellen verknüpfen und mit einer Abfrage in einem
    Formular anzeigen.

    Gruß Ralf

    PS.

    Heirue-Soft hatte vor Jahren eine Access-Version von FMS32 projektiert.
    Es gab auch eine funktionsfähige Demo-Version. Wurde aber nicht zu Ende
    gebracht, obwohl sich viele Anwender das gewünscht hatten. Herr Jahn
    befürchtete mangelnde Performance (bei den damaligen PC's und der
    damaligen AccessVersion sicher richtig).

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •