Autor Thema: "Variant enthält keinen Container"  (Gelesen 20587 mal)

Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
"Variant enthält keinen Container"
« am: 05.08.05 - 09:16:45 »
Set doc = docs.GetFirstDocument()
Do While Not doc Is Nothing
   Set doc2 = doc
   If doc.HasItem("TimeExtract") Then
      zeiten = doc.TimeExtract(0)         

Beim Zuweisen dieses Feldes an zeiten tritt der Fehler (s.T.) auf. Woran liegt das? Zeiten hat den Datentyp String. TimeExtract ist ein Feld vom Typ Text.
Ich wüßte nicht was ich da sonst noch prüfen soll. Wenn der Fehler auftritt, haben alle Variablen laut Debugger, genau die Werte die sie haben sollen. Das ist skuril :|

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: "Variant enthält keinen Container"
« Antwort #1 am: 05.08.05 - 09:19:02 »
evtl. könnte mehr code helfen.

gruss
umi
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #2 am: 05.08.05 - 10:49:27 »
Immer die gleichen Anmerkungen :P Nein, könnte es nicht.

Das Document wurde ohne Fehler der Variable doc zugewiesen.
Der Fehler tritt in der Zeile auf:

zeiten = doc.TimeExtract(0)

Der Rest ist unwichtig. Was vorher in zeiten stand ist uninteressant. Doc wurde erfolgreich zugewiesen, im Debugger sieht man, dass es ein Document ist und auch entsprechende Daten enthällt. Es enthällt auch das Feld TimeExtract. Einmal laut Debugger und das andere mal ist aus dem Quelllcode weiter oben ersichtlich. Ansonsten wäre das Script sicher nicht bis zu der Zeile mit dem Fehler vorgedrungen.

Ich habe es alternativ mal mit doc.GetItemValue() probiert, hat aber den gleichen Fehler ausgeworfen. Deswegen versteh ich das ganze auch nicht.

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: "Variant enthält keinen Container"
« Antwort #3 am: 05.08.05 - 10:54:26 »
schon mal ein Recompile versucht?
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #4 am: 05.08.05 - 10:58:34 »
müsste zeiten nicht ein Variant sein ??

Text or text list (includes Names, Authors, and Readers item types)  returns Array of strings
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: "Variant enthält keinen Container"
« Antwort #5 am: 05.08.05 - 11:11:09 »
Nope, er greift ja auf das erste Element des Arrays zu, bekommt also den gewünschten Skalar. Ausserdem ist die Fehlermeldung eine, die rechts von der Zuweisung auftritt, nicht links. Wenn Variant hilft, was nicht auszuschliessen ist, dann hätte sich Notes hier in der Fehlermeldung vergriffen, was auch nicht auszuschliessen ist.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Glombi

  • Gast
Re: "Variant enthält keinen Container"
« Antwort #6 am: 05.08.05 - 11:20:53 »
Hast Du es schon mit

zeiten = doc.GetItemValue("TimeExtract")(0)   

versucht?
TimeExtract ist vielleicht ein Keyword und dann geht die Extended Syntax nicht.

Andreas

Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #7 am: 05.08.05 - 11:50:59 »
"Ich habe es alternativ mal mit doc.GetItemValue() probiert, hat aber den gleichen Fehler ausgeworfen. Deswegen versteh ich das ganze auch nicht."

In den restlichen 4500 Dokumenten davor klappt es ja auch, nur in dem nicht -.-

http://nopaste.php-q.net/151613

Ich glaube kaum das du damit mehr anfangen können wirst, außer das es dich vermutlich eher verwirrt ;)
« Letzte Änderung: 05.08.05 - 11:52:51 von 0xse »

Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #8 am: 05.08.05 - 12:08:59 »
Hier mal ein Screenie vom Debugger:


Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #9 am: 05.08.05 - 12:13:13 »
Set notesItem = doc.GetFirstItem("TimeExtract")
Print "TimeExtract: " & notesItem.text

Könnte das klappen? Kann es grad nicht ausprobieren, Notes rattert wieder ^^

Glombi

  • Gast
Re: "Variant enthält keinen Container"
« Antwort #10 am: 05.08.05 - 12:16:20 »
Also laut dem Screenshot ist das nie und nimmer ein Textfeld !

Type = 1
und dann gibt es noch EmbeddedObjects

Ein Textfeld hat den type 1280.

Du solltest Dir mal das Dokument genauer anschauen.

Andreas

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: "Variant enthält keinen Container"
« Antwort #11 am: 05.08.05 - 12:19:24 »
Type 1 ist Richttext und damit dürfte der Fehler da liegen. RT kannst du so nicht ansprechen.
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 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #12 am: 05.08.05 - 12:27:37 »
das ist aber definitiv ein text feld in der maske OO

mal angenommen es wäre keins, warum geht das dann bei allen anderen dokumenten?

Driri

  • Gast
Re: "Variant enthält keinen Container"
« Antwort #13 am: 05.08.05 - 12:29:09 »
Maske != Dokument

Evtl. hat da mal einer dran rumgespielt und in dem einen Dokument ist das Feld jetzt Richtext ?

Glombi

  • Gast
Re: "Variant enthält keinen Container"
« Antwort #14 am: 05.08.05 - 12:29:47 »
das ist aber definitiv ein text feld in der maske OO

mal angenommen es wäre keins, warum geht das dann bei allen anderen dokumenten?
Was in der Maske steht ist irrelevant. In dem einen Dokument ist es ein Rich Text Feld. Weiss der Geier wie es da hereinkommt.

Du kannst ja mal einen Blick in die Dokumenteigenschaften werden.

Andreas

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: "Variant enthält keinen Container"
« Antwort #15 am: 05.08.05 - 12:44:09 »
das ist aber definitiv ein text feld in der maske OO

mal angenommen es wäre keins, warum geht das dann bei allen anderen dokumenten?
Du kannst dich eben bei Notes im Gegensatz zu anderen, wie auch immer, Datenbank Systemen nicht darauf verlassen das in einem Feld wirklich das drin ist was auf der Verpackung (Maske) draufsteht.
Das ist so ähnlich wie bei manchen Seifen. Die Verpackung zeigt eine grüne Seife, drin ist aber eine weisse.
Du musst wenn so was vorkommen kann hergehen und erst einmal ein
Notesitem = doc.getfirstitem("TimeExtract") machen. Dann kannst du (und das funktioniert immer, auch bei Richtext) mit
Zeiten = Notesitem.text direkt auf den Textwert des Items zugreifen.
du könntest auch mit
if notesitem.type = 1280 then
Zeiten = doc.TimeExtract(0) arbeiten
Else
Fehlermeldung
End if
« Letzte Änderung: 05.08.05 - 12:47:55 von Thomas Schulte »
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 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #16 am: 05.08.05 - 12:45:00 »
Mir ist schon klar, dass die Maske nur der Anzeige des Dokumentes dient. Aber die ganzen Dokumente wurden über ein LS erstellt mit dieser Maske. Also müsste doch dieser Datentyp dadrin sein.

Laut DB Log war niemand außer mir in der DB... Notes spricht mal wieder Sumpfantilopisch. Ich lasse einen Design Refresh über alle Dokumente laufen. Mal gucken ob das Problem danach immer noch besteht.

Der Datentyp von dem doc.TimeExtract(0) ist übrigens 8192 ^^

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: "Variant enthält keinen Container"
« Antwort #17 am: 05.08.05 - 12:47:19 »
Immer die gleichen Anmerkungen :P Nein, könnte es nicht.
Du siehst also das immer die gleichen Anmerkungen durchaus einen Sinn haben können. In diesem Fall wäre das Ganze schon vor drei Stunden einer Lösung deutlich näher gekommen wenn du den Auszug aus deinem Debug mit gepostet hättest.
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 flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: "Variant enthält keinen Container"
« Antwort #18 am: 05.08.05 - 13:00:54 »
Der Datentyp von dem doc.TimeExtract(0) ist übrigens 8192 ^^
Das ist ein Fixed Array des Datentyps EMPTY?
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline 0xse

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 507
  • Geschlecht: Männlich
Re: "Variant enthält keinen Container"
« Antwort #19 am: 05.08.05 - 13:20:06 »
Die Hilfe fand ich an dieser Stelle nicht eindeutig formuliert, deswegen habe ich mir nicht "angemaßt" diese Zahl zuzuordnen.

Nach einem Designrefresh und Einbau des NotesItem funktioniert es. Aber warum vorher nicht? Oo

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz