=== FC 155: HMSchleuse_TrolleyID  [STL] ===
INTERFACE:
  Input:
    Schleuse : Int
  Output:
    TrolleyID : DInt
    Ok : Bool
  InOut:
  Temp:
    Schleusen_DB : Int                                  // Schleuse-DB
    Schleusen_DW : Int                                  // Schleuse-DW
    AR1Zeiger : DWord                                   // Statt AR1 (ging nur bis DB-Länge <= 8191 Bytes)
    AR1Start : DInt                                     // Startwert mit Offset 0
  Constant:
  Return:
    Ret_Val : Void

--- NW 1: Rückmeldung ---
      SET
      R      Ok
      L      DINT#0
      T      TrolleyID


--- NW 2: Zeiger von gewolltem Schleuse ermitteln ---
      L      Schleuse
      T      "MW200"                                         // Search-Daten

CALL FC "DatenOut" (SSDB:=274, SSDW:=0, PARA:=WORD#16#0000, SEARCHDATEN:=P#M200.0, RE_VAL:="MB219", OUTDATEN:=P#M220.0, Position:="MW298")   // Datenlisten-DB

      JBI    ok2

      BEU

ok2:  L      "MW224"
      T      Schleusen_DB
      L      "MW226"
      T      Schleusen_DW


--- NW 3: TrolleyID-Schleuse lesen ---
      L      Schleusen_DW
      ITD
      T      AR1Start                                        // Startwert mit Offset 0

// TrolleyID-Schleuse:
      L      AR1Start                                        // Startwert mit Offset 0
      +      DINT#72                                         // Offset für TrolleyID_Schleuse
      SLD    3
      T      AR1Zeiger                                       // Statt Dyn.Bereichsstop (ging nur bis DB-Länge <= 8191 Bytes)
      OPN    DB[Schleusen_DB]                                // Schleuse-DB öffnen
      L      DBD [AR1Zeiger]                                 // Schleuse-ID
      T      TrolleyID

      L      DINT#0
      <>D
      =      Ok


--- NW 4: Ende ---
      BE

