![]() |
DEUTSCHE VERSION |
|
![]() |
Links | | | Forums | | | Comments | | | Report news |
![]() |
Chat | | | Polls | | | Newsticker | | | Archive |
![]() |
amiga-news.de Forum > Amiga, AmigaOS 4 > ARexx Fehler | [ - Search - New posts - Register - Login - ] |
-1- | [ - Post reply - ] |
2006-03-19, 12:37 h julius Posts: 2255 User |
Ich benutze auf allen Amigas das Programm NetClock V1.4 zum stellen der internen Uhr entspreched der Internet Zeit. Seit 1 Woche meldet das Probramm netclock.rexx die Fehler 47 und 12 in bestimmten Zeilen des ARexx-Programms, und zwar nur auf dem A4000T. Das Progamm wird durch MiamiDX gestartet. Miami geht auch online, ich kann mit AWEB surfen. Auch der manuelle Aufruf des Programmsrx netclock.rexx brimgt dieselben Fehlermeldungen. Gibt es für ARexx-Programme auch einen Befehl ähnlich SET Echo ON, mit dem ich den Programmablauf verfolgen kann und mit Space unterbrechen und Return fortführen kann? Snoopdos meldet nichts. [ - Answer - Quote - Direct link - ] |
2006-03-19, 12:59 h thomas Posts: 7719 User |
@julius:Zitat: Und was bedeuten die ? Warum schreibst du nicht den Fehlertext dazu ? Die Zahlen sagen so ziemlich gar nichts aus. Und was in den "bestimmten Zeilen" steht, ist auch nicht unwichtig. Zitat: Trace r ist wie echo on und trace ?r ist EInzelschritt (nach jedem Befehl muß Return gedrückt werden). Du kannst auch global trace ?r einschalten, indem du in der Shell ts eingibst (und mit te wieder ausschalten). Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Answer - Quote - Direct link - ] |
2006-03-19, 13:28 h julius Posts: 2255 User |
Hier die Fehler-Details: +++ Error 47 in line 1225: Arithmetic conversion error +++ Error 47 in line 625: Arithmetic conversion error +++ Error 12 in line 1: Error return from function Command returned 10/12: Error return from function rx fehlgeschlagen Rückgabewert 10 Erfolgt die Eingabe trace ?r in das ARexx-Programm oder in der Shell? [ - Answer - Quote - Direct link - ] |
2006-03-19, 13:32 h thomas Posts: 7719 User |
Zitat: Dann bräuchten wir noch den Text, der in Zeile 1225 und drumherum steht. DIe anderen beiden Fehler sind nur Folgefehler. Zitat: Trace ?r kommt in das Programm. Stattdessen kannst du aber auch in der Shell ts eingeben. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ Dieser Beitrag wurde von thomas am 19.03.2006 um 13:33 Uhr geändert. ] [ - Answer - Quote - Direct link - ] |
2006-03-19, 13:58 h julius Posts: 2255 User |
Das Problem ist, dass das ARexx-Programm netclock.rexx sehr viele Kommentarzeilen enthält, sodass ein Finden der Zeile 1225 im Editor kaum möglich ist. Ich versuche mich jetzt mit Trace ?r und Retrurn-Taste ran zu tickern. [ - Answer - Quote - Direct link - ] |
2006-03-19, 14:15 h Palgucker Posts: 1342 User |
@ juliusZitat: Die Kommentarzeilen und sonstiges werden mitgezählt, also ist auch die Zeile gemeint, die ausgegeben wird. mfg Palgucker [ - Answer - Quote - Direct link - ] |
2006-03-19, 14:21 h julius Posts: 2255 User |
So, die Zeile 1225 lautet: IF DATATYPE(TZ.2,'N') & DATATYPE(TZ.2,'N') THEN TZ.9 = TZ.4 - TZ.2 Der Apostroph vor oder hinter N geht im Programm von rechts oben nach links unten. [ - Answer - Quote - Direct link - ] |
2006-03-19, 14:38 h thomas Posts: 7719 User |
Klarer Fall: Zitat: Eins von den zwei TZ.2 muß TZ.4 lauten. Die Zeile, so wie sie jetzt ist, prüft, ob TZ.2 numerisch ist und ob TZ.2 numerisch ist und wenn ja, wird TZ.2 von TZ.4 subtrahiert. Es ist klar, daß das so nicht gemeint war, sondern eigentlich soll die Subtraktion nur dann durchgeführt werden, wenn beide Seiten numerisch sind. TZ.4 ist in deinem Fall nicht numerisch, deshalb tritt bei der Subtraktion der Fehler auf. Man kann halt mit Buchstaben nicht rechnen. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Answer - Quote - Direct link - ] |
2006-03-19, 15:26 h julius Posts: 2255 User |
Das verstehe ich. Auf den anderen beiden Amigas läuft das Programm ohne Probleme. Und die Zeile 1225 ist identisch. Ich poste mal den ganzen Block: IF ~DATATYPE(LEFT(tzstr,1),'N') THEN DO /* New STD/DST values, */ /* reset the old ones */ TZ.1 = '' TZ.2 = '' TZ.3 = '' TZ.4 = '' TZ.9 = '' tzword = WORD(tzstr,1) tzstr = DELWORD(tzstr,1,1) tzword = gettzo(tzword) PARSE VAR tzword TZ.1','TZ.2','TZ.3','TZ.4 IF DATATYPE(TZ.2,'N') & DATATYPE(TZ.2,'N') THEN TZ.9 = TZ.4 - TZ.2 END [ - Answer - Quote - Direct link - ] |
2006-03-19, 15:40 h thomas Posts: 7719 User |
Da müßte man jetzt wissen, wo tzstr herkommt, und was gettzo daraus macht. "TZ" steht wahrscheinlich für Time-Zone. Ich vermute, tzstr wird aus einer Env-Variablen gelesen und du hast auf den anderen Amigas diese Variable gesetzt und auf diesem nicht. Den Fehler in Zeile 1225 solltest du aber trotzdem korrigieren. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Answer - Quote - Direct link - ] |
2006-03-19, 16:03 h julius Posts: 2255 User |
Ich habe die zweite auf TZ.4 geändert. Jetzt klappt es. Aber erklären ich mir das nicht.Ich habe auch auf keinem der Rechner eine Variable gefunden. [ - Answer - Quote - Direct link - ] |
2006-03-19, 16:28 h Palgucker Posts: 1342 User |
Es kann auch sein, das dieser String aus Env:Sys/locale.prefs gebildet wird. mfg Palgucker [ - Answer - Quote - Direct link - ] |
2006-03-19, 16:33 h Gazelle Posts: 151 User |
@julius: Mit Variable ist in dem Fall eine globale Umgebungsvariable von DOS gemeint. Diese stehen in ENV: Probier mal in einer Shell: Type ENV:TZ Wenn das auf den Rechnern unterschiedliche Ergebnisse liefert, weißt Du woher der Fehler kam. [ - Answer - Quote - Direct link - ] |
2006-03-19, 17:47 h julius Posts: 2255 User |
Auf dem Rechner, wo die Probleme bestehen, existiert die Variable TZ. Sie hat den Wert Sys-1. Auf dem Rechner ohne Probleme existiert die Variable nicht. Nachdem ich die Variable TZ gelöscht habe, klappt alles bestens. Ich weis nur nicht, wo die Variable TZ herkam. [ - Answer - Quote - Direct link - ] |
2006-03-19, 19:37 h Palgucker Posts: 1342 User |
@ juliusZitat: Könnte eventuell von FACTS herstammen, wobei FACTS eigendlich den Bindestrich weglässt. Meine jetzige TZ lautet SYS-1BST. Aber ich weiss auch nicht mehr, mit welchen Programm ich mir die "aufgegabelt" habe. mfg Palgucker [ - Answer - Quote - Direct link - ] |
-1- | [ - Post reply - ] |
amiga-news.de Forum > Amiga, AmigaOS 4 > ARexx Fehler | [ - Search - New posts - Register - Login - ] |
![]() |
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2025 by amiga-news.de - all rights reserved. |
![]() |