Domino 9 und frühere Versionen > Entwicklung

Type mismatch on external Function

(1/2) > >>

Jürgen Gerhold:
Ich habe eine eigene Script-Bibliothek angelegt und dort eigene Functionen erstellt.  Nun habe ich folgendes Problem:

Wenn ich die Function wie folgt declariere kann ich sie ohne Fehlermeldung aufrufen.

Function Ostern (Jahr As Integer) as Integer
Dim a,b,c,d,e,f,g,h As Integer
.....
    Ostern = i + j+22

Ändere ich die Function wiefolgt ab, bekomme ich eine Fehlermeldung beim Aufruf der Function.

Type mismatch on external Name : Ostern

Function Ostern (Jahr As Integer) as String
Dim a,b,c,d,e,f,g,h As Integer
.....
    Ostern = Str(i + j+22)


Ich kann mir nicht klären worum.

eknori:
hmm, habe dein Codefragment sowohl unter R5 als auch unter R6 getestet und erhalte keine Fehlermeldung.

Ist evtl die Variable, die den Wert von "Ostern" aufnimmt noch als integer deklariert ?

TMC:

--- Zitat von: Jürgen Gerhold am 28.03.05 - 10:42:55 ---Dim a,b,c,d,e,f,g,h As Integer
--- Ende Zitat ---

Hat jetzt wohl nichts mit der Fehlermeldung zu tun, aber damit deklarierst Du nur h als Integer. a,b,c,d,e,f,g sind so als Variant deklariert.

Besser:
Dim a As Integer,b As Integer,c As Integer,d As Integer,e As Integer,f As Integer,g As Integer, h As Integer

Und ja, ich vermute auch, dass die Variable "Ostern" nicht als String deklariert wurde.

eknori:
seltsam, selbst mit diesem CodeHorror kann ich keine FM erzeugen

Sub Click(Source As Button)
   Dim retval As Integer
   retval = Ostern("1999")
   Msgbox retval
End Sub

Function Ostern (Jahr As Integer) As String
   'Dim i,j As Integer
   
   Ostern = Str(i + j+22)
   
End Function

animate:
Die Fehlermeldung kommt immer dann, wenn du die Signatur einer Funktion änderst und die Funktionsaufrufe nicht anpasst. Nach dem Ändern der Signatur einer Funktion musst du alles Script, das die Funktion verwendet neu kompilieren. In R5 manuell (oder automatisch mit Klimmzügen) in Notes 6 automatisch mit der Funktionalität des Designers.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln