Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Programm für Datenbaustein-Export nach Excel

  1. #1
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich musste letztens mal aus mehreren Datenbausteinen eine Schnittstellenliste zum PLS in Excel zusammenstellen.
    Da man per Copy&Paste die Adressangaben nicht mitbekommt, habe ich mir mal ein kleines (Konsolen-)Programm geschrieben (in C++), welches die Adressdaten generiert.

    Dazu muss man vorher aus dem Datenbaustein eine Quelle generieren. Entweder man exportiert diese Quelle dann in eine AWL-Datei, oder kopiert den Text in Notepad und speichert es dann dort.

    Das Programm ruft man dann z.B. mit:

    S7DBExport.exe DB2.AWL.txt DB2.csv

    auf.

    Im Anhang das übersetzte Testprogramm sowie der Quellcode.

    Die Adresse kann einmal im Format +1.0 (wie in Step7) oder DB50.DBX1.0 exportiert werden.
    Version 1 ist jetzt fest einkompiliert.

    Unterstützt werden alle elementaren Datentypen bis auf CHAR!.
    Hier wird nämlich schon im Deklarationsteil initialisiert, also
    char_56 : CHAR := 'a';"
    Warum das nur hier so ist weiß nur Siemens. Ich hatte jedoch keine Lust hierfür eine Ausnahme zu Programmieren.

    Eigene Datentypen (UDTs) können in der Struktur im Quellcode eingetragen werden. Hierbei ist zu beachten, dass die Namen der UDTs keine
    Leerzeichen enthalten dürfen.

    Vielleicht kann ja jemand anderes noch was damit anfangen, oder strickt sogar noch eine kleine GUI drumrum

    PS:
    Ich hoffe mal nicht ich habe eine einfache Möglichkeit übersehen, wie man die Adressen sonst aus Step7 rausbekommt.
    Den Umweg über ein pdf finde ich doch ziemlich umständlich.

    Erst wollte ich es ja in Perl schreiben, was wegen der Zeichenkettenverarbeitung sicher kürzer gewesen wäre.
    Aber es will sich nicht jeder Kollege den Perl-Interpreter installieren...

    Gruß
    Thomas
    Angehängte Dateien Angehängte Dateien
    Zitieren Zitieren Programm für Datenbaustein-Export nach Excel  

  2. Folgender Benutzer sagt Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    Tenlegs (10.10.2007)

  3. #2
    Registriert seit
    28.11.2007
    Beiträge
    51
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo

    Der Ansatz ist gut, leider aber funktioniert das Tool noch nicht richtig.
    Sobald Strukturen im DB sind funktioniert der Export nicht.
    Schön wäre auch wenn bei der Adresse nicht nur 2 oder 4.1 steht sondern der ganze Text wie DB1.DBW2 oder DB1.DBW4.1.

    Wäre toll wenn jemand das Programm erweitern und korrigieren könnte.

    Liebe Grüsse
    Isha
    Zitieren Zitieren Wer macht das Tool fertig?  

  4. #3
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Hi
    für die einfachere Verwendung habe ich Programm auch in Excel mit VBA geschrieben:

    http://www.sps-forum.de/showpost.php...78&postcount=6

    (oder auch im Anhang).

    Strukturen oder UDTs habe ich dort aber auch noch nicht eingebaut da ich das bisher noch nicht benötigt habe. Für ein UDT könnte man die Bezeichnung als Datentyp eintragen (mit der entsprechenden Länge an Datenworten) um wenigstens die Anfangsadresse zu erhalten.

    Bei einer Struktur stellt sich die Frage, welche Adressangaben dann letzendlich sinnvoll sind.
    Die Offsetangabe zur Startadresse der Struktur wie Step7 das macht halte ich nicht für besonders nützlich. Man könnte aber Angaben im Feld "Datentyp" wie STRUCT und END_STRUCT einfach ignorieren, dann werden die Adressen fortlaufend weiter vergeben.
    Oder wie hast du dir das vorgestellt?

    Gruß
    Thomas

    P.S.
    In dem C-Programm lässt sich auch das Exportformat einstellen. Er ist in dem Beispielprogramm lediglich fest einkompiliert (steht in der main.cpp).
    Angehängte Dateien Angehängte Dateien

  5. #4
    Registriert seit
    28.11.2007
    Beiträge
    51
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank für das Excel File.
    Im Moment habe ich leider keine Zeit, aber wenn ich dazukomme werde ich das Programm erweitern und Dir eine Kopie senden.

    Gruss
    Isha

  6. #5
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.862
    Danke
    78
    Erhielt 805 Danke für 548 Beiträge

    Standard

    ich verweise diesbezüglich auch noch mal hierauf
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  7. #6
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Zitat Zitat von volker Beitrag anzeigen
    ich verweise diesbezüglich auch noch mal hierauf
    Mit der Druckerlösung habe ich auch schon rumprobiert, auch über ein PDF. Leider kann man die gedruckten Daten nicht so in Excel reinkopieren, sodass diese auch in einzelne Spalten übernommen werden.
    Hast du da einen Tip wie das auch geht?

  8. #7
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.862
    Danke
    78
    Erhielt 805 Danke für 548 Beiträge

    Standard

    kann das problem nicht wirklich nachvollziehen.
    der mit dem generic gedruckte db liegt doch als stinknormale textdatei vor.
    den kannst du doch ohne probleme mit excel öffnen.
    beim öffnen natürlich 'feste breite' wählen und die trenner an die richtige stelle schieben. den db-kopf musst du dort ignorieren.

    im anhang mal ein gedruckter db und das zugehörige excel-dokument
    Angehängte Dateien Angehängte Dateien
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  9. #8
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Zitat Zitat von volker Beitrag anzeigen
    kann das problem nicht wirklich nachvollziehen.
    der mit dem generic gedruckte db liegt doch als stinknormale textdatei vor.
    den kannst du doch ohne probleme mit excel öffnen.
    beim öffnen natürlich 'feste breite' wählen und die trenner an die richtige stelle schieben. den db-kopf musst du dort ignorieren.
    Aso, noch nie genutzt
    Aber warum einfach wenns auch schwer geht...

    Gruß

  10. #9
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard


    Überarbeitet sodass auch Arrays und (verschachtelte) Strukturen verarbeitet werden können.
    Angehängte Dateien Angehängte Dateien

  11. Folgende 5 Benutzer sagen Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    daywalker1180 (29.06.2009),malloc (24.01.2014),mp (21.11.2008),Waelder (27.12.2010)

  12. #10
    Registriert seit
    05.11.2010
    Beiträge
    1
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute

    Ich hab da meinen ganz eigenen Trick, um Adressen zu generieren:

    1.) markiere die betreffenden Zeilen deines Dbs und kopiere in Excel
    2.) Schreibe in einer Spalte den Namen deines DBs in Anführungszeichen mit Punkt am Schluss Bsp: "SendeDB".
    3.) Verkette die DB-Namens Zelle und die Symbolik Zelle mit
    Bsp: =verketten(A1;F1)

    4.) öffne in Simatic Manager -> Zielsytem -> "Variable beobachten/steuern"
    5.) kopiere diesen gebildeten String in die Steuertabelle --> Die Adressen werden automatisch erzeugt!

    Geht relativ schnell und für alle gängigen Datentypen!

    mfg
    Daniel
    Zitieren Zitieren Adresse generieren  

Ähnliche Themen

  1. Export von Maschine nach China
    Von Integer im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 1
    Letzter Beitrag: 19.08.2008, 16:33
  2. Werte aus Datenbaustein nach Excel exportieren
    Von Lordogg im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 19.11.2007, 20:55
  3. Antworten: 1
    Letzter Beitrag: 15.01.2007, 07:30
  4. Protool Meldungen mit Excel bearbeiten (Im-/Export)
    Von volker im Forum Werbung und Produktneuheiten
    Antworten: 4
    Letzter Beitrag: 02.10.2005, 16:50
  5. Export DB aus Step7 nach Excel
    Von Anonymous im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 22.09.2005, 12:02

Lesezeichen

Berechtigungen

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