Autor Thema: Type Missmatch  (Gelesen 2777 mal)

Offline stitze

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
    • kleisterbande
Type Missmatch
« am: 16.02.05 - 11:04:16 »
Hallo,

ich hab heut wieder mal einen Type missmatch Fehler und kann mir wieder mal nicht erklären woran es liegt

For i = 0 To Ubound(profileDocument.GetItemValue("rpRaumbez"))
If Left( profileDocument.GetItemValue( "rpRaumbez")(i),";" ) = cdoc.GetItemValue( "rpRaum" ) Then
               strTelNummer = Right(profileDocument.GetItemValue("rpRaumbez")(i),";")
End If
Next

rpRaumbez ist ein Textfeld mit Mehrfachwerten.

Hat jemand eine Lösung?
When i loaded my cap gun , i'm ready for action.

Saying that Java is nice because it works on all OS's is like saying anal sex is nice because it works on all genders.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Type Missmatch
« Antwort #1 am: 16.02.05 - 11:08:36 »
GetItemValue gibt immer ein Array zurück. Daher muss auch der Rückgabewert von rpRaum mit einem Index (hier sicherlich 0) angesprochen werden.

Bernhard

Offline stitze

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
    • kleisterbande
Re: Type Missmatch
« Antwort #2 am: 16.02.05 - 11:21:12 »
Mh,danke erstmal, klingt logisch, funktioniert aber auch nicht :(
 Übrigens bekomme ich in der IF Bedingung und in der Anweisung den Type Missmatch Fehler
When i loaded my cap gun , i'm ready for action.

Saying that Java is nice because it works on all OS's is like saying anal sex is nice because it works on all genders.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Type Missmatch
« Antwort #3 am: 16.02.05 - 11:26:12 »
Left und Right erwarten als zweiten Parameter eine Zahl - da ist also bei Dir auch noch ein Fehler.

Bernhard

Offline stitze

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
    • kleisterbande
Re: Type Missmatch
« Antwort #4 am: 16.02.05 - 11:28:19 »
Achso, ja das könnte es sein, ich bin jetzt von der Formelsprach ausgegeangen, wo ich als zweites Argument einen Suchstring angeben kann, k, danke. Könntest du mir vieleicht noch sagen, wie ich die Stelle eines Zeichen in einem String herrausbekomme?
When i loaded my cap gun , i'm ready for action.

Saying that Java is nice because it works on all OS's is like saying anal sex is nice because it works on all genders.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Type Missmatch
« Antwort #5 am: 16.02.05 - 11:29:46 »
Mit Instr bekommst Du die Position heraus. Aber: Warum erwartest Du in den Elemnten Deines Arrays ein Semikolon ? Könnte da noch ein weiterer Denkfehler drin sein ?

Bernhard

Offline stitze

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
    • kleisterbande
Re: Type Missmatch
« Antwort #6 am: 16.02.05 - 11:32:17 »
Nein, es ist einfach eine Konevention die wir hier getroffen haben. Es werden in dieser Liste Räume und die dazugehörigen Telefonnummern gespeichert (mit Semikolon getrennt), da mir keine andere Methode einfiel à la relationalen Datenbanken eine Beziehung zwischen zwei Feldern herzustellen.
Und da die Länge der Raumbezeichnung variert brauchten wir halt ein Trennzeichen und das Semikolon war eins der wenigen Zeichen die in einer Raumbeschreibung definitiv nicht vorkommen.
When i loaded my cap gun , i'm ready for action.

Saying that Java is nice because it works on all OS's is like saying anal sex is nice because it works on all genders.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Type Missmatch
« Antwort #7 am: 16.02.05 - 11:42:47 »
Dann hat also rpRaumbez nur ein Element ? Dann kannst Du Dir ja das ganze Looping sparen und gleich auf das eine Element zugreifen ...

Bernhard

Offline stitze

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
    • kleisterbande
Re: Type Missmatch
« Antwort #8 am: 21.02.05 - 14:47:41 »
Da hätte ich mich glaub ich genauer ausdrücken sollen, es sind Mehrfachwerte zugelassen.
When i loaded my cap gun , i'm ready for action.

Saying that Java is nice because it works on all OS's is like saying anal sex is nice because it works on all genders.

Marinero Atlántico

  • Gast
Re: Type Missmatch
« Antwort #9 am: 21.02.05 - 15:08:41 »
If Left( profileDocument.GetItemValue( "rpRaumbez")(i),";" ) = cdoc.GetItemValue( "rpRaum" )

wie bernhard schon richtig meinte, wird hier ein String (linke Seite) mit einem Array (rechte Seite) verglichen.
Du müsstest also vielleicht sowas wie:
If Left( profileDocument.GetItemValue( "rpRaumbez")(i),";" ) = cdoc.GetItemValue( "rpRaum" ) (i) ' oder (0) schreiben.

Glombi

  • Gast
Re: Type Missmatch
« Antwort #10 am: 21.02.05 - 15:11:47 »
Und wie Bernhard bereits gesagt hatte, will Left und Right als 2. Parameter ein Integer.
Damit die Formel funktioniert musst Du anstelle von Left ein Strleft und anstelle von Right ein Strright verwenden. Dann klappt's auch mit dem ";"

Andreas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz