Autor Thema: mal wieder ein Klassiker  (Gelesen 2873 mal)

Offline redspawn

  • Junior Mitglied
  • **
  • Beiträge: 76
mal wieder ein Klassiker
« am: 25.04.06 - 18:27:53 »
Hallo zusammen,

ich glaub dieses Problem hatte jeder schon mal, aber ich steh gerade echt auf dem Schlauch...

hier meine Formel, die in einem Textfeld berechnet wird:

zaehler := 0;
erg_temp :=0;

erg_temp := @If(PersonBUSchreiben = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonBUSchreiben));
erg_temp := @If(PersonBUInhalt = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonBUInhalt));
erg_temp := @If(PersonAusbildung = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonAusbildung));
erg_temp := @If(PersonRefZeug = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonRefZeug));
erg_temp := @If(PersonSkills = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonSkills));
erg_temp := @If(PersonSozialkompetenz = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonSozialkompetenz));

zaehler := @If(PersonBUSchreiben = "k. A."; zaehler; zaehler +1);
zaehler := @If(PersonBUInhalt = "k. A."; zaehler; zaehler +1);
zaehler := @If(PersonAusbildung = "k. A."; zaehler; zaehler +1);
zaehler := @If(PersonRefZeug = "k. A."; zaehler; zaehler +1);
zaehler := @If(PersonSkills = "k. A."; zaehler; zaehler +1);
zaehler := @If(PersonSozialkompetenz = "k. A."; zaehler; zaehler +1);

@If(zaehler = 0; quotient2 := "keine Angaben";quotient2 := @Text(erg_temp/zaehler));

@return(quotient2)

noch ne Info hinterher: die If-Abfrage mach ich weil der Fall 0 : 0 vorkommen könnte!

aber er bringt mir immer die eklige Fehlermeldung: "Falscher Datentyp für Operator oder @Funktion: Text erwartet"

Leute ich bin am verzweifeln, bitte nehmt mir mein Brett vor dem Kopf weg!!!!!!!

Gruß und Danke
Gruß Peter

ahnungslos und völlig talentfrei...

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: mal wieder ein Klassiker
« Antwort #1 am: 25.04.06 - 18:35:47 »
Code
erg_temp := @If(PersonBUSchreiben = "k. A.";erg_temp;erg_temp + @TextToNumber(@text(PersonBUSchreiben)));
wickel das Ganze noch in ein @text ein.

Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: mal wieder ein Klassiker
« Antwort #2 am: 25.04.06 - 18:39:18 »
ich würde mal vermuten, daß in einem der Person... Feldern Text steht, der <> "k.A." ist. Wie soll der in eine Zahl umgewandelt werden ?
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline redspawn

  • Junior Mitglied
  • **
  • Beiträge: 76
Re: mal wieder ein Klassiker
« Antwort #3 am: 25.04.06 - 18:46:19 »
@Thomas: hab ich mal versucht, bringt aber leider keine Besserung...

@eknori: ich habe jetzt alle Felder nochmal überprüft, da es Optionsschalftflächen sind, bei denen man entweder die Ziffern 1 - 5 oder eben "k. A." auswählen kann. Aber alles passt soweit.


wenn ich die letzte IF weg lasse und die else-action einfach so ausrechne, gibt er mir einen @error aus... ändere ich dann einen Schaltfläche auf eine Zahl, dann berechnet er mir den Wert wunderbar...
« Letzte Änderung: 25.04.06 - 18:50:19 von redspawn »
Gruß Peter

ahnungslos und völlig talentfrei...

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: mal wieder ein Klassiker
« Antwort #4 am: 25.04.06 - 18:47:32 »
und bei allen Feldern ist ein Vorgabewert eingetragen ?
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline redspawn

  • Junior Mitglied
  • **
  • Beiträge: 76
Re: mal wieder ein Klassiker
« Antwort #5 am: 25.04.06 - 18:48:53 »
genau: überall der Wert "k. A."   und ich hab auch schon überall nach dem Leerzeichen geschaut, das passt auch
Gruß Peter

ahnungslos und völlig talentfrei...

Offline diam

  • Frischling
  • *
  • Beiträge: 6
Re: mal wieder ein Klassiker
« Antwort #6 am: 25.04.06 - 18:52:33 »
Hallo!

Versuch mal:

quotient2 := @If(zaehler = 0; "keine Angaben"; @Text(erg_temp/zaehler));

@return(quotient2)

Dirk

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: mal wieder ein Klassiker
« Antwort #7 am: 25.04.06 - 18:57:27 »
Logisch; guter Einstieg ins Forum, Dirk  :D Wundert mich nur, daß Notes die Formel so annimmt, ohne schon beim Speichern zu Meckern
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline redspawn

  • Junior Mitglied
  • **
  • Beiträge: 76
Re: mal wieder ein Klassiker
« Antwort #8 am: 25.04.06 - 18:59:01 »
@dirk: Willkommen im Forum und danke für dein Posting

aber es hat auch nix geholfen... immer noch Error-Message
Gruß Peter

ahnungslos und völlig talentfrei...

Offline diam

  • Frischling
  • *
  • Beiträge: 6
Re: mal wieder ein Klassiker
« Antwort #9 am: 25.04.06 - 19:13:35 »
Hallo!

Kannst Du in der Maske nicht dem Wert k. A. den Wert 0 zu ordnen ( k. A. | 0 ), dann
kannst Du die Zeile:

   erg_temp := @If(PersonBUSchreiben = "k. A.";erg_temp;erg_temp + @TextToNumber(PersonBUSchreiben));

durch

    erg_temp := erg_temp + @TextToNumber(PersonBUSchreiben) ;

ersetzen. @TextToNumber(PersonBUSchreiben) gibt dann auf jeden Fall eine Zahl zurück!


Dirk

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: mal wieder ein Klassiker
« Antwort #10 am: 25.04.06 - 19:19:48 »
evtl. solltest du deinen Code zunächst einmal mit einem Feld testen. Das schließt dann aus, daß der Fehler irgendwo mittendrin auftritt
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline redspawn

  • Junior Mitglied
  • **
  • Beiträge: 76
Re: mal wieder ein Klassiker
« Antwort #11 am: 25.04.06 - 20:18:47 »
Also Leute... war wohl doch nur falscher Alarm, nachdem ich mir jetzt ewig den Kopf zerbrochen hab bin ich nur hergegangen hab das Feld gelöscht und neu erstellt, und siehe da... es ging.

Feld korrupt oder was auch immer... trotzdem danke für eure Hilfe!!!
Gruß Peter

ahnungslos und völlig talentfrei...

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: mal wieder ein Klassiker
« Antwort #12 am: 25.04.06 - 21:46:55 »
Zitat
Also Leute... war wohl doch nur falscher Alarm
wieso muss ein eh schon beschissener Tag so zu ende gehen  :P
« Letzte Änderung: 25.04.06 - 21:54:12 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz