Autor Thema: Problem beim Zugriff über ColumValue auf Viewinhalt  (Gelesen 1640 mal)

Offline just.do.it

  • Junior Mitglied
  • **
  • Beiträge: 61
  • Geschlecht: Männlich
Hallo,

mein Plan war es eigentlich den Inhalt einer Ansicht nach Excel zu exportieren. Dafür gibt es ja schon ein super Script im Tips und Tricks Bereich.
Jetzt hab ich allerdings folgendes Symptom:

Bei einer Ansicht, bei der in eine Spalte ein Feld mit Mehrfachwerten angezeigt wird und bei der die Option "Mehrfachwerte getrennt anzeigen" gesetzt ist, werden die Werte zwar korrekt in der Ansicht dargestellt (zwei Zeilen je Dokument, da im Feld immer zwei Werte enthalten sind), aber beim Export wird immer dann, wenn die Zeilen in der Ansicht, die zu einem Dokument gehört, direkt hintereinander stehen im Excel in beiden Zeilen jeweils der erste Feldwert angezeigt.
Stehen die beiden Zeilen eines Dokumentes NICHT unmittelbar hintereinander in der Ansicht, so werden die Inhalte auch korrekt ins Excel importiert.

Das riecht für mich schwer nach ein Bug. Ich setzte z.Z. den Client 6.5.5 HF 623 ein.

Hat jemand eine Idee, wie ich dieses Problem umgehen kann?

Gruß
Dirk
« Letzte Änderung: 27.04.07 - 07:29:11 von just.do.it »

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Problem beim Zugriff über ColumValue auf Viewinhalt
« Antwort #1 am: 27.04.07 - 00:28:33 »
... dazu sollte man den genauen Code haben, mit dem du exportierst - ansonsten halte ich deine Aussage für wage...

Toni
Grüßle Toni :)

Offline just.do.it

  • Junior Mitglied
  • **
  • Beiträge: 61
  • Geschlecht: Männlich
Re: Problem beim Zugriff über ColumValue auf Viewinhalt
« Antwort #2 am: 27.04.07 - 07:28:55 »
Hallo,

wie gesagt, der Code entspricht weitgehend dem, welcher unter Tips & Tricks (http://atnotes.de/index.php?topic=15203.0) zu finden ist. Der genau Codeteil ist dieser hier:

   Do While Not (viewentry Is Nothing)
      For iCols=1 To iColQuantity
         vColValues=viewentry.ColumnValues(iCols-1)
         '---> Implode
         strColValue = AtImplode(vColValues, Chr(10))
         '<--- Implode
         '---> Remove square wordwrap - chars ()
         While Instr ( strColValue, Chr(13) ) > 0
            strColValue = Left$(strColValue, Instr ( strColValue,Chr(13) ) - 1) & "" & Right$(strColValue, Len(strColValue) - Instr ( strColValue, Chr(13) ))
         Wend
         '<---
         vExcelSheet.Cells(iRows,iCols).Value = strColValue
      Next iCols
      '---> ProgressBar
      Call pb.SetText("Exporting documents to Excel","Line " & iRows-1 & " of " & lDocQuantity & " exported")
      Call pb.SetProgressPos(iRows-1) ' current integer
      '<---- ProgressBar
      iRows=iRows+1
      Set viewentry = vc.GetNextEntry(viewentry)
   Loop


Eigentlich liegt das Problem genau hier:

vColValues=viewentry.ColumnValues(iCols-1)

Ich habe das Programm durchgetraced und dabei festgestellt, daß die Eigenschaft "ColumnValues" den falschen Wert liefert.

Mitlerweile habe ich das Problem allerdings gelöst. Ich habe nicht die Eigenschaft "AllEntries" der View genommen, welche eine Instanz von "NotesViewEntryCollection" liefert, sondern mit der Methode "CreateViewNav" eine Instanz der Klasse "NotesViewNavigator" erzeugt.
Diese Klasse hat auch Methoden, um durch die View zu interieren, (GetFirst und GetNext) und die liefert auch eine "NotesViewEntry" zurück. Mit dem Unterschied, daß dann die Eigenschaft "ColumnValues" immer den richtigen Wert hat.

Gruß
Dirk
« Letzte Änderung: 27.04.07 - 07:31:16 von just.do.it »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz