Autor Thema: Kategorien in einer Ansicht  (Gelesen 2170 mal)

Offline michael-r

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.768
Kategorien in einer Ansicht
« am: 29.10.18 - 18:48:40 »
Hallo,

ich habe in einer Anwendung ein paar kleine Probleme mit Kategorien.
Die Anwendung ist zu Demozwecke.

In einer Ansicht werden Dokumente nach Kategorien angezeigt.
Die Kategorie oder auch andere Feldwerte werden über andere Masken vereerbt.
Ebene 1 ist eine Nummer, Ebene 2 und Ebene 3 ist der Dokumententyp.

Formel für ebene 2 ist:
data := Number;
txt := DocType;

data + "\\" + txt

Formel für Ebene 3 ist:
data := Categorie;
txt := DocType;

data + "\\" + txt

In dem erzeugten Dokument der Ebene 3 steht als Kategoriewert dann "\Ebene 1\Ebene 2\Ebene 3\Ebene 3\".
Warum wird Ebene 3 verdoppelt?


Hat jemand vielleicht eine Idee, wie ich mir eine Zeit anzeige beim anpassen aktualiseren lassen kann?

Ich habe zwei Zeitfelder, start und end, ähnlich wie im Kalender.
Wenn ich ein neues Dokument öffne dann wird die Zeit mit @Now im Start und das Ende mit @Adjust(WPTime; 0;0;0;1;0;0) also +1 Stunde berechnet. (13:00 - 14:00). Wenn ich aber die Startzeit anpassen muss, wie kann ich die Endzeit mit Startzeit + 1 Stunde berechnen. Im Kalender wird das ja gemacht, aber da bin ich mit dem was ich probiert habe nicht weitergekommen.

MFG Michael




Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Kategorien in einer Ansicht
« Antwort #1 am: 29.10.18 - 22:56:28 »
Deine Kategoriefrage habe ich mir jetzt 10 Minuten lang angesehen, und muss leider gestehen, dass ich nicht im Ansatz verstanden habe, was Du willst. Kannst Du die Frage noch mal konkretisieren? Was steht in  DocType und was in Categorie? Wie sieht die Ansicht aus? Wie sollte sie aussehen?

Zu der Zeitgeschichte:

Ich würde in das Exiting oder das OnChange des Startdatums ein kleines Script schreiben (Start sei das Feld mit dem Startdatum, Ende das mit dem Endedatum)

Code
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.CurrentDocument
Dim doc As NotesDocument
Set doc = uidoc.Document
If Isdate (doc.Start (0)) Then
   doc.Ende = doc.Start (0) + (1 / 24)
End If
Das ist nur so hingeschrieben und könnte Fehler beinhalten.

Offline michael-r

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.768
Re: Kategorien in einer Ansicht
« Antwort #2 am: 30.10.18 - 22:08:56 »
Hallo Peter,

danke für die Hilfe mit der Start/Endzeit, das funktioniert :).

Ok zur Erklärung habe ich mal das Bild mit der View und Beschreibung der Ebenen angehängt.
Im Doctype steht zum Beispiel Workpackage (Ebene 2) und Action (Ebene 3), Ebene 1 ist eine "Nummer".

Das Feld Categorie wird dann über die Formeln befüllt.
In dem Beispiel steht auf Ebene 1 - Feld Categorie:
"CO2018-002"

Auf Ebene 2 steht:
"CO2018-002\Workpackage"

Das Feld Categorie ergibt sich bei Ebene 2 aus:
data := Number;
txt := DocType;

data + "\\" + txt

Auf Ebene 3 steht:
"CO2018-002\Workpackage\Action\Action"

Das Feld Categorie ergibt sich bei Ebene 3 aus:
data := Categorie;
txt := DocType;

data + "\\" + txt

Wenn ich komplett falsch liegen würde ja eigentlich nicht bis Ebene 2 alles richtig sein, also der Teil "CO2018-002\Workpackage".
Ich verstehe nicht warum auf Ebene 3 zwei mal der DoyType Action angefügt wird. Da steht ja nicht data + "\\" + txt + "\\" + txt

Das einzige was ich bei den anderen Categorie Feldern anders mache, ist das ich nicht sage nimm den Wert aus Categorie und speichere diesen wieder in das Feld Categorie.

Ich hoffe das ist besser beschrieben.

MFG Michael

« Letzte Änderung: 31.10.18 - 08:37:19 von michael-r »

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Kategorien in einer Ansicht
« Antwort #3 am: 30.10.18 - 23:58:34 »
Verstehe ich das richtig, das im Dokument der Ebene 3 das Feld Categorie diese Formel enthält?

data := Categorie;
txt := DocType;

data + "\\" + txt

In der Maske ist eingestellt, dass Formeln die Werte der markierten (weiß gerade nicht, wie das richtig heißt) Dokumente übernimmt?

Im Dokument der Ebene 2 steht in Categorie "CO2018-002\Workpackage". Beim Erstellen der Ebene 3 wird Categorie übernommen und um Doctype verlängert?

Dann steht dort "C02018-002\Workpackage\Action"

Vermutlich ist das Feld Categorie vom Typ Berechnet. Bei jedem Speichern des Dokuments wird die Formel erneut ausgeführt, also Categorie + "\\" + DocType. Dann wird daraus "C02018-002\Workpackage\Action\Action". Wenn Du das Dokument noch ein paarmal speicherst, wird das wohl noch länger.

Stelle das Feld Categorie mal um auf "Berechnet beim Anlegen", dann wird es nur einmal berechnet.




Offline michael-r

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.768
Re: Kategorien in einer Ansicht
« Antwort #4 am: 31.10.18 - 06:37:31 »
Moin,

"Formel übernehmen Werte aus gewählten Dokument".
Du hattest recht, es stand nicht auf berechnet beim anlegen sondern bearbeitbar, das wurde aber schon bei dem ersten anlegen zwei mal eingetragen.
Nach erneutem editieren wurde sogar Action nochmal angehängt, heisst also "C02018-002\Workpackage\Action\Action\Action"

Im Workpackage stand das Feld auch auf bearbeitbar, kurioser Weise wurde aber selbst beim editieren und speichern nichts geändert.  ???


MFG Michael

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Kategorien in einer Ansicht
« Antwort #5 am: 31.10.18 - 07:18:55 »
Wenn das Feld bearbeitbar ist, wo ist dann die Formel, die das Feld berechnet?

Dass sich in Ebene 2 durch Editieren nichts ändert, ist nicht kurios, sondern logisch ;)

Das Feld heißt Categorie, es berechnet sich aus Number und DocType. Das kannst Du 1000 mal berechnen, das Ergebnis ist immer das gleiche, nämlich Number und DocType.

In Ebene 3 ist das anders

Das Feld heißt auch Categorie und berechnet sich aus Categorie und DocType. Jede Berechnung verändert Categorie und damit die Berechnungsgrundlage. "Formeln übernehmen Werte aus gewählten Dokument" bedeutet nicht, dass IMMER die Werte aus dem gewählten Dokument übenommen werden, sondern nur bei Anlage des Dokuments. Jede weitere Berechnung erfolgt dann mit den Daten des Dokuments (das ja die Werte aus dem gewählten Dokument bereits übernommen hat).

Categorie = "Apfel"
DocType = "Birne"

Categorie + DocType = "ApfelBirne"
Categorie + DocType = "ApfelBirneBirne"
Categorie + DocType = "ApfelBirneBirneBirne"

usw.

Vermutlich wird DocType während der Bearbeitung des Dokuments geändert. Bei einem Berechnet beim Anlegen wird Categorie nie aktualisiert. Damit kommst Du nicht weiter. Ich würde es daher für die Ebene 3 so umstellen:

Ein neues (verstecktes) Feld - berechnet beim Anlegen - CategorieE2, Formel für das Feld: Categorie

Beim Anlegen des Dokuments steht in CategorieE2 der Wert von Categorie aus dem Ebene 2-Dokument

Categorie berechnet sich dann

data := CategorieE2;
txt := DocType;

data + "\\" + txt

Offline michael-r

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.768
Re: Kategorien in einer Ansicht
« Antwort #6 am: 31.10.18 - 08:43:58 »
Moin Peter,

ja um 6 war noch etwas zu früh, die Erkentniss ist mit dem ersten Kaffee gekommen  ;D.
Ich fülle in Ebene 2 die Categorie aus 2 Feldern und auf Ebene 3 berechne ich es mit Categorie und dem Doctype, demnach wird der Doctype immer erneut angehängt :).

Danke das hilft, ich wollte den Fehler auch verstehen ;).

Da es nur zu Demozwecken ist, muss es nicht perfekt sein.
Aber wenn die Abhängigkeiten mehr werden (mehr Ebenen), dann muss das natürlich angepasst werden.

MFG Michael
« Letzte Änderung: 31.10.18 - 08:46:01 von michael-r »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz