Autor Thema: Kann man "in Ansichten berechnete Felder" (Spaltensummen) nach Excel exportier  (Gelesen 7040 mal)

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Hallo,
beschäftige mich gerade mit dem Excel-Export aus Notes. Folgendes Problem: Ich habe eine Ansicht in der Dokumente nach Zeit kategorisiert angezeigt werden; will sagen: es handelt sich um eine Hotline-Anwendung, in der irgendwelche Meldungen eingetragen werden, auf die dann irgendwie reagiert werden muß. Um nun Aussagen über die Nützlichkeit dieser DB zu bekommen möchte der Kunde gern eine Art Statistik haben, wo drinsteht: Im Jahr 2003 wurden im dritten Quartal 150 Anfragen gestellt davon waren im Juli 70, im August 30 und im September 50 Anfragen. Also haben wir eine entsprechende Ansicht gebastelt(siehe Bildchen) Nun möchte der Kunde aber diese Ansicht nach Excel exportiert haben. Ich habe keine Vorstellung, wie ich es anstelle, daß ich diese Werte, die ja eigentlich erst in der Ansicht entstehen(Spaltensumme), nach Excel übergeben könnte?
Als Beispiel(siehe Bild): in der Kategorie "Anmietung" gab es zwei Vorfälle, davon 1 in 2002 und 1 in 2003, der 2002 war im 1. Quartal der 2003 war im 3.Quartal, der 2002 im ersten Quartal war im Januar ...usw...
Gibts da Möglichkeiten/Ideen ?
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Glombi

  • Gast
Hi,
im Prinzip willst Du eigentlich nur die Kategorien und nicht die einzelnen Dokumente exportieren, korrekt?
Versuch mal folgendes:
Öffne die Ansicht
Wähle "Ansicht - Anzeigen - Nur Kategorien"
Markiere alles (Strg + A)
Wähle "Datei - Exportieren": Als Dateityp "Lotus 123" und als Dateiname "export.wk3" (wichtig ist .wk3)
oder als Dateityp "Tabular Text" und als Endung .txt

Dann exportiert Notes nur die Kategorien (mit den Summen).
In Excel kannst Du die Datei dann öffnen.

Andreas

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Danke, Glombi, interessanter Ansatz, haut aber leider nicht hin. Die Summen werden NICHT exportiert! (siehe Bildchen).
Außerdem wäre das wohl für unsere verwöhnten Kunden zu kompliziert. Ich habe in dieser DB ja schon andere Ansichten(bzw. die Dokumente) nach Excel exportiert und das geht immer schön einfach per Knopfdruck. Aber da hab ich eben immer Werte aus den in der Ansicht angezeigten Doks rausgegeben und keine Spaltensummen. Gibts noch andere Ideen?  ??? :'(
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
... du kannst die Dokumente deiner Ansicht auswerten und die Ergebnisse dann zum Beispiel in eine Excel-Vorlage importieren.

... ich mach das in der Regel so, daß ich die Vorlage in einer Vorlagen-DB pflege. Rufe ich die Aktion auf, so wird diese Vorlage aus dem Vorlage-Doc gelöst, per LS geöffnet und die Werte an die bestimmte Stelle geschrieben.

... du kannst per LS dann auch Formeln in der EXCEL-Tabelle hinterlegen...

ata
Grüßle Toni :)

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Danke ata.
Genauso mache ich das, mit allen von Dir beschriebenen Features.
Das entsprechende Excel-Formular(*.xlt) liegt in derselben Datenbank und wird dann per Script geöffnet und mit den entsprechenden Daten aus dem jeweils markierten Dok gefüllt bzw. es werden irgendwelche @Formeln ausgewertet. Ich habe jedoch keinen Plan, wie ich da irgendwelche Dokument-Anzahlen zurechtgebastelt kriege!
Oder wie kriege ich diese Spaltensummen "nachgebildet"?
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
ich habe das mal für unsere Personalabteilung gemacht. Auch da habe ich Spaltensummen. Der Export sollte auch in ein Formular ( Summenbildung ) erfolgen.
Da du an die Spaltensummen nicht rankommst, musst du wohl oder Übel beim export "Mitzählen"

In meinem Fall war das dann ungefähr so

DocCollection bilden über einen Betrachtungszeitraum
Doc für Doc sequentiell durchgehen und bestimte Felder Abfragen ; z.B. Leiharbeitnehmer. Gefunden ? Ok, Zähler für LA eins rauf.

Dann hatte ich die entsprechenden Werte in den einzelnen Variablen.
Und die wurden dann per Script an die entsprechenden Zellen (A10B12) im Excel Sheet geschrieben. Dann gab es noch ein bisschen Rechnerei 8 GesamtGeplant - Leih oder so ) und die Ergebnisse werden in die Zellen geschrieben.

eknori
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Danke eknori.
Ich hatte sowas befürchtet; kannst du vielleicht den Lösungsansatz noch ein wenig tiefer erläutern?
Der Kunde will ja nur bestimmte(markierte) Dokumente exportieren. Da ich nicht weiß, welche er denn gerade markiert, habe ich keinen Plan, wie ich denn jetzt in meinem Script die notwendigen Kategorisierungen erzeuge. Nach dem Feld "Kategorie" (s. o. hotl1.jpg) könnte ich ja noch suchen, aber wie krieg ich das mit den Jahren, Quartalen und Monaten hin? Ich weiß ja nicht, aus welcher Zeit die selektierten Docs stammen, also wie soll ich meine Collections spezifizieren um da irgendwas zählen zu können?  ???
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
OK, bei mir wurde die Collection über zwei eckdaten gefüllt.
In deinem Fall ist es unprocessedDocuments Eigenschaft der NotesDatabase Klasse

Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments

dann hast du nur alle angehkten Dokumente in der Collection
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Danke, aber: jetzt kommt das entscheidende: Wie kann ich jetzt nach Zeitraum selektieren? Das Datum nachdem ich kategorisieren + summieren will, steht in einem Feld des Typs Date/Time mit Namen "AufnahmeTagDT"; da ich jedoch nicht weiß, welche Doks der Kunde selektiert hat, weiss ich jetzt nicht wie ich die Dokumente sinnvoll durchzählen kann. Also: Zähle ich jetzt gerade alle Dokumente des x-ten Quartals des Jahres Y? Wie zähle ich denn nun, und was zähle ich? Ich brauche ja nun z. B. Anzahl der Dokumente die im zweiten Quartal des Jahres 2003 aufgenommen wurden (Ich hoffe man versteht, was ich sagen will!)                              
BTW: In welcher Reihenfolge werden die Sachen aus der Ansicht eingelesen? In der Reihenfolge, wie ich sie in der Ansicht sehe?                ???
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
so ganz verstehe ich das jetzt nicht

..wenn der kunde auswählt greift unprocessedDocuments, egal , ob du das in einer Ansicht Datumsmäßig eingrenzt.

Dann ist die Menge der Dokumente, die der Kunde sieht die Grundgesamtheit und die Wahl des Kunden eine Teilmenge der Grundgesamtheit.

Oder meinst du, daß du dem Kunden mehrere Grundgesamtheiten vorgibst und der Kunde nur die Wahl zwischen den Grundgesamtheiten hat ?

Dann hast du ja schon die Ansicht entsprechend mir SELECT  aufbereitet.

Für den Fall hatte ich heute schon mal was gepostet

Set col = db.Search(" (@Date(PostedDate) - @Today) /(60*60*24) < -365",Nothing,0)

.. besetzt die Collection mit den Dokumenten, die älter sind als 365 Tage.
Die Formel zwischen den "" musst du dann nur noch mit deiner Ansichtenformel ersetzen.
Jetzt musst du überlegen: Machst du eine Schaltfläche für den Export, und die Formel ist dann gemaß der View "hardcodet" oder gestaltest du das dynamisch und übergibst die Formel in einer Variablen.

Ulrich
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Ich hatte ja bereits vermutet, daß es schwer zu verstehen ist. Es ist klar, daß ich mit "unprocessed documents" alle ausgewählten Dokumente greife. Mir fehlt jetzt der Ansatz, wie ich dann aus dieser Collection meine entsprechenden Untergruppen bilde. Wenn wir mal von dem Bildchen hotl1.jpg(s. o.) ausgehen: Ich habe in meiner Collection jede Menge Doks, die der Anwender ausgewählt hat; u. a. auch die zwei in der Kategorie "Anmietung". Wie komme ich jetzt dazu, dass ich aus meiner Collection eine Unterauswahl treffe und dann rauskriege, dass es bei "Anmietung" insgesamt 2 Vorfälle gab und von diesen zwei war einer im 3.Quartal 2003 und einer im 1.Quartal 2002. Desweiteren muss ich dann noch unterteilen, daß es im 3.Quartal 2003 der Monat Juli war sowie im 1.Quartal 2002 der Monat Januar. Also, wie treffe ich innerhalb der ausgewählte Dokumente die entsprechende Unterauswahl um dann die entsprechenden Zahlen (Summen) bilden zu können?
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Glombi

  • Gast
Hi,
ich hätte noch einen anderen Ansatz zu bieten. Du verzichtest auf die summierte Spalte, sondern zählst in der Kategorie die Dokumente.
Dazu musst Du die Formeln für die Kategoriespalten ändern.
Hänge einfach folgendes dran:
... + "Summe: " + @DocDescendants

Dann summiert er die Anzahl aller Dokumente, die unterhalb der Kategorie stehen.

Das kann dann auch exportiert werden.

Andreas

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
... ansonsten hätte ich mir ne Klasse gebaut, die zuerst die Dokumente erfasst und auswertet, und dann die Daten nach Excel schiebt...

ata
Grüßle Toni :)

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Danke.
@ata: Ich bin aber nicht der grosse Script-Guru!  :'(
@Glombi: Klingt interessant, aber: Wie genau meinst du das? Bisher funktioniert die Sache so(s.o. hotl1.jpg): Die Spalten "Jahr","Quartal" und "Monat" beinhalten eine Formel (z. B. @Year(AufnahmeTagDT)) und sind sortiert/kategorisiert, die Summenspalte enthält nur "1" . Das ergibt, wie man sieht, jeweils eine (Dokument-) Anzahl pro Kategorie. Wenn ich jetzt das "....@DocDescendants" da reinhänge, ergibt sich immer "Summe:0".  ???
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Glombi

  • Gast
Hi,
mach mal eine Kopie der View zum Testen. Lösche dort die Spalte mit der Summierung.
Schreibe in den Formeln für die Kategorien sowas:
@Text(@Year(AufnahmeTagDT)) + " Summe: " + @DocDescendants

Das mit dem @DocDescendants geht nur für Text, daher alles in Text umwandeln. Damit die Sortierung die gleiche ist, vor den Kategoriespalten eine versteckte sortiere Spalte einfügen, die die ursprüngliche Formel beinhaltet - aber wie gesagt. nur nötig, falls kein Text geliefert wird

Andreas
« Letzte Änderung: 06.08.03 - 11:30:30 von Glombi »

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Schade, wäre schön gewesen.
in der Spalte "Jahr" steht jetzt:
"@If(@IsTime(AufnahmeTagDT);@Text(@Year(AufnahmeTagDT))+ "Summe: " + @DocDescendants;"")"
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Glombi

  • Gast
Ist das im Designer Client? Da funktionier @DocDescendants nicht (liefert immer 0).
Sieh Dir mal die View im Notes Client an.

Hoffe, das war's. Denn sonst wüsste ich auch nicht, warum es nicht geht.

Andreas

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Ist das im Designer Client? Da funktionier @DocDescendants nicht (liefert immer 0).
Danke, du hattest natürlich Recht, das war im Designer. Im Client sieht es schon ganz gut aus. Jetzt brauch ich dann "nur noch" das Exportieren scripten. Wenn ich das nicht hinkriege, schreie ich wieder nach Hilfe.
(seltsam: Jetzt zeigt es auch im Designer die richtigen Werte an
 ???)
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

Glombi

  • Gast
Hi,
der Designer verwendet jetzt wohl den bestehenden Ansichtsindex.

Das Exportieren können wie folgt gehen:
@Command([ViewExpandAll]);
@Command([ViewShowOnlyCategories]);
@Command( [FileExport] )

oder
@Command( [FileExport];"Lotus 1-2-3";"c:\\export.wk3")  

oder
@Command( [FileExport];"ASCII";"c:\\export.txt")  

Andreas

Offline g202e

  • Senior Mitglied
  • ****
  • Beiträge: 361
  • Geschlecht: Männlich
  • Was nicht tötet, härtet ab!
Gute Idee! Wenn ich mir die Ansicht noch ein wenig zurechtschiebe (Spaltenbreite), dann kann man das tatsächlich so machen! Ist zwar dann nicht ganz so komfortabel, wie der Kunde es bei anderen Exports gewöhnt ist(wo eben nur Daten aus den Dokumenten ausgelesen/exportiert werden), aber ich denke sowieso, daß diese Funktion eher wenig benutzt wird.
Ich spare mir die LotusScript-Quälerei und wenn dem Auftraggeber das nicht passt, dann wirds für ihn eben teuer, weil aufwändig!
Danke an alle
Domino 5.0.11/LN 5.011(german)/NT4 + SP6a

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz