Probleme mit IF-Abfrage / ELCAD
HRompel 04. Mrz. 2010, 11:19

Moin,

ich habe folgenden Code

Code:

24    1 Anlage              =0001
115 1004 Abfrage auf "="      IF(24[1]="=")
116 1005 Wenn ja              (24[2]>!(117)
117 1007 Wenn Nein            (24)>!(117)
117  51 Anlage ohne "="

Aber das Gleichheitszeichen bleibt erhalten.

Wenn ich das so mache:

Code:
106 1002 Anlage zerlegen  (24[2])>!(197)
107  51 Anlage ohne "`"


Klappte es.

Kann der 1004 nicht mit Eckigen Klammern umgehen?

MfG
Heiko

UKanz 04. Mrz. 2010, 11:37

 

Zitat:
Original erstellt von HRompel:
Kann der 1004 nicht mit Eckigen Klammern umgehen?

Hallo Heiko,

das kann der 1004er leider nicht. Du musst so vorgehen, wie in Deinem zweiten Beispiel:

Code:

100 | 1002 | Zeichen 1  | (24[1])>!(101)
101 | 1002 | Zeichen 1  |
102 | 1004 | Abfrage    | IF (101="=" | | 101="." | | 101="+")
103 | 1005 | Then       | (24[2,32])>!(105)
104 | 1007 | Else      | (24)>!(105)
105 | 51   |Anlage ohne |

UKanz 04. Mrz. 2010, 11:39

Das Leerzeichen zwischen den beiden | | gehört da nicht hin. Das hat mir das
Forum da einfach ungefragt eingefügt. 

HRompel 04. Mrz. 2010, 11:47

Hallo Uli,

ich habe das noch anders gelöst:
1004 IF("=" $ 24)
Damit geht es.

Gruss Heiko

UKanz 04. Mrz. 2010, 11:50

Hallo Heiko,

stimmt, so geht es auch.

Pelle Bootsmann 04. Mrz. 2010, 13:18

Hallo Heiko,

es geht doch!

Die Abfrage IF(24[1]="=") ist schlicht falsch.
[1] bedeutet nämlich : alles ab dem ersten Zeichen!
[1;1] bedeutet : ab erstem Zeichen, ein Zeichen lang. Das wäre richtig.

Siehe in der Hilfe unter
Übersetzungs-, Teilstring- und Längenoperator für Codes 1001, 1002, 1004, 1005, 1007 und 1015