Domino 9 und frühere Versionen > ND7: Entwicklung

Meldung "Could not create field %1

(1/2) > >>

Lancelot:
Hi Leute,

ich bekomme diese Meldung wenn ich per LS eine Listenvariabele mit mehreren Werten
in ein normales Textfeld "Mehrfachwerte erlaubt und Trennung wie Anzeige auf Leere Zeile"
eintragen möchte.

Auf der IBM Seite steht was von einer Größe von 64, aber ich komme nicht an diese Grenze hin.
Bei den Werten der Variabelen handelt es sich um Textstring mit max 10 Zeichen.

Hier mein Script:

   i = 0
   y = coll.Count
   Redim vlieferant(y-1)
   Redim vwarenbereich(y-1)
   
   While Not (doc Is Nothing)
      
      For x = 1 To coll.Count
         vlieferant(i) = doc.LieferKuBz
         vwarenbereich(i) = doc.modell
         
         i = i + 1               
         Set doc = coll.GetNextDocument(doc)
      Next
   Wend   
   
   newdoc.form = "sk"
   newdoc.lieferant = vlieferant   
   newdoc.warenbereich = vwarenbereich


Hoffe jemand kann mir helfen.

m3:
For x=0 to (y-1) .....

Und "doc.LieferKuBz" sowie "doc.modell" liefern Dir NICHT den String zurück, der in dem Feld steht. Bitte schau dir NotesDocument.GetItemValue in der Designer-Hilfe an.

dirk_2909:
Du solltest Deine Variablen erst einmal ordentlich deklarieren.
Dann dem Array nur die einzelen STrings zuweisen. Momentan sind deine Arrays vom Typ Variant und DU weißt jedem Arrayindex ein Variant (Array) zu. Das kann bei der Zuweisung nicht gut gehen (2 DImensional).
Das Sollte gehen (ohne Test):

 i = 0
   y = coll.Count
   dim vlieferant(y-1) as String
   dim vwarenbereich(y-1) String
  
   While Not (doc Is Nothing)
      
      For x = 1 To coll.Count
         vlieferant(i) = doc.LieferKuBz(0)
         vwarenbereich(i) = doc.modell(0)
        
         i = i + 1              
         Set doc = coll.GetNextDocument(doc)
      Next
   Wend  
  
   newdoc.form = "sk"
  call newdoc.ReplaceItemValue( "lieferant , vlieferant   )
   newdoc.ReplaceItemValue( "warenbereich" , vwarenbereich )

m3:
Dirk, die "for x" Schleife wirds aufhauen, wenn Du bei 1 anfangst, bis coll.Count (==y) zählst, das Array aber nur bis y-1 (also coll.Count-1) definiert ist. OK, ich lass es bis heute. Ich kann nicht mal mehr grad schaun. Sorry, passt so schon.

dirk_2909:

--- Zitat ---Dirk, die "for x" Schleife wirds aufhauen, wenn Du bei 1 anfangst, bis coll.Count (==y) zählst, das Array aber nur bis y-1 (also coll.Count-1) definiert ist.
--- Ende Zitat ---

Ich habe mich mehr auf das eigentliche  Problem des Fragenstellers bezogen, und habe nicht den gesamten Code analysiert.
Ich habe lediglich die betroffenen Zeilen angepasst.

Hab ja auch was anderes zu tun....

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln