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

Ergebnis 1 bis 5 von 5

Thema: Datenbaustein variabl aus FC aufrufen

  1. #1
    Registriert seit
    07.06.2013
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich möchte gerne einen DB variabel aufrufen....und das klappt einfach nicht.

    Hintergrund ist dieser:

    Ich habe einen FB gebaut mit einem DB-Block Eingang, bei dem mein Kunde den DB frei wählen kann.
    Diesen DB muss ich dann aber innerhalb meines FB über den FC30 aufrufen, weil dort Daten als String abgelegt werden.
    Wenn ich das statisch mache, klappt das ohne Probleme, aber nicht mit einer Variablen....was mache ich falsch?

    das geht:

    CALL "R_STRNG"
    IN :=#Nachkomma
    RET_VAL:=DB1.DB_VAR1

    das geht nicht:

    CALL "R_STRNG"
    IN :=#Nachkomma
    RET_VAL:=#Data.DB_VAR1


    Vielen Dank für eure Hilfe.


    DB Auftruf.jpg
    Zitieren Zitieren Datenbaustein variabl aus FC aufrufen  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard

    Hallo,
    das System kann dir an dieser Stelle keine Variable zur Laufzeit zusammenbasteln - es steht hier in Wirklichkeit eine feste Adresse, die zur Entwicklungszeit (also während du den Code erstellst) erzeugt wird.
    Was du nun machen kannst wäre :
    - du läßt den R_String in eine temporäre Variable deines Bausteins hineinschreiben - diese Temp-Variable muß aber vor der ersten Verwendung initialisiert werden.
    - nun baust du dir einen Any-Pointer auf dein Datenziel zusammen
    - du überträgst mittels des SFC Blockmove die Temp-Variable auf die Adresse, auf die der Any-pointer zeigt.

    Gruß
    Larry

    Nachsatz : zum Thema ANY-Pointer (gerade auch in Verbindung mit Blockmove) findest du über die Forumssuche sehr viele Beiträge.

  3. #3
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    .
    Vielleicht hilft dir auch dies HIER weiter, Beispiele findest du dort auch.

    FC ruft FC auf: Es ist nicht möglich, einen BLOCK_DB Parameter zu übergeben
    FC ruft FB auf: Hier ist es möglich, einen BLOCK_DB Parameter zu übergeben
    FB ruft FC auf: Es ist nicht möglich, einen BLOCK_DB Parameter zu übergeben
    FB ruft FB auf: Hier ist es möglich, einen BLOCK_DB Parameter zu übergeben
    kind regards
    SoftMachine

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.189
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von SoftMachine Beitrag anzeigen
    .
    Vielleicht hilft dir auch dies HIER weiter, Beispiele findest du dort auch.

    FC ruft FC auf: Es ist nicht möglich, einen BLOCK_DB Parameter zu übergeben
    FC ruft FB auf: Hier ist es möglich, einen BLOCK_DB Parameter zu übergeben
    FB ruft FC auf: Es ist nicht möglich, einen BLOCK_DB Parameter zu übergeben
    FB ruft FB auf: Hier ist es möglich, einen BLOCK_DB Parameter zu übergeben
    Was hat das jetzt mit dem Problem des TE zu tun??? Wo will der TE denn BLOCK_DB Parameter durchreichen?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @Harald:
    Ich denke, SoftMachine hat den Block_DB-Ansatz (mit der Adresse) des TE etwas anders ausgelegt ...

Ähnliche Themen

  1. Datenbaustein aufrufen ?
    Von Techniker1907 im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 25.08.2011, 20:16
  2. DB aus einer Zahl aufrufen !
    Von scrabble im Forum Programmierstrategien
    Antworten: 5
    Letzter Beitrag: 02.07.2008, 09:51
  3. S5time aus dem DB aufrufen
    Von BastiMG im Forum Simatic
    Antworten: 28
    Letzter Beitrag: 23.08.2007, 09:35
  4. vbscript aus der Steuerung aufrufen?
    Von feeli im Forum HMI
    Antworten: 2
    Letzter Beitrag: 07.03.2007, 12:24
  5. SCL Funktion aus einem AWL FC aufrufen
    Von plant1 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 14.08.2006, 17:22

Lesezeichen

Berechtigungen

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