Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Steffen_Albrecht am 15.01.03 - 06:40:42
-
Hallo,
ich habe eine Auswertung per Maske zusammengebastelt.
diese Auswertung zieht sich aus einer Ansicht "Arbeitsstundenauswertung"
bestimmte Daten (Datum, Kostenstelle, Dauer und Betreff).
Diese Daten habe ich jetzt schön in einer Tabelle Dargestellt.
Jede Zeile ein neuer Wert.
Mein Problem ist jetzt, dass die Betreffzeile aber bei einigen Datensätzen zu Lang ist.
Folge: Die Betreffangaben passen nicht mehr zu den anderen Angaben und am Ende,
nach dem letzten Datensatz setzt sich die Betreffspalte fort. (siehe Screenshot)
Hat vielleicht jemand ne Idee wie ich dieses Problem Lösen kann?
Die Formel hab ich vorsichtshalber auch mit reingepackt...
Gruß
Steffen
//////////////////////////////////////////////////////////////////////////////////////////////////////////
FIELD Date := Date;
FIELD KstSt := KstSt;
FIELD Dauer := Dauer;
FIELD Tätigkeit := Tätigkeit;
Key := zMonat + @If(man != ""; Bearbeiter; Author);
TempDate := @DbLookup("":"NoCache";"":"";"Arbeitszeitauswertung";Key;2);
TempKostenstelle := @Left(@DbLookup("":"NoCache";"":"";"Arbeitszeitauswertung";Key;3);4);
TempDauer := @DbLookup("":"NoCache";"":"";"Arbeitszeitauswertung";Key;4);
TempTopic := @DbLookup("":"NoCache";"":"";"Arbeitszeitauswertung";Key;5);
@If
(
@IsError(TempDate);
@Do
(
@SetField("Date";"");
@SetField("KstSt";"");
@SetField("Dauer";"");
@SetField("Tätigkeit";"");
@Prompt([OK];"Hinweis";"Die Suche hat keine Ergebnisse geliefert!")
);
@Do
(
@SetField("Date";TempDate);
@SetField("KstSt";TempKostenstelle);
@SetField("Dauer";TempDauer);
@SetField("Tätigkeit";TempTopic)
)
)
-
Hallo Steffen,
an dem Problem habe ich auch lage rumgebastelt - leider ohne Erfolg. :'(
Ich schneide jetzt ganz brutal den Text ab, also @Left(TEXT;xx). Aber selbst dabei mußt Du noch aufpassen und entweder mit "M"s testen, wieviel in die "Zeile" passt oder halt auf eine Nicht-Proportionalschrift stellen...
Du könntest natürlich auch prüfen, ob der Text zu lang ist, ihn in Teile zerlegen und dann mehrere Zeilen eintragen und bei den anderen Feldern eben leer lassen. Ist mit @@ aber glaub' ich nicht ganz einfach...
CPO
-
... der Ansatz von cpo geht in die richtige Richtung. Du musst den Umbruch der Betreff-Spalte manuell vornehmen, den Betreff-String in Stücke mit einer maximalen Länge zerlegen...
... je nachdem wieviele Stücke du erhälst, mußt du die anderen Spalten um leere Zeilen ergänzen. Und hier liegt eine Besonderheit, den leere Zeilen werden beim Refresh getrimmt - verschwinden. du mußt dir mit einem Bindestrich helfen. In Version 4 funktionierte das geschützte Leerzeichen, in Version 5 hatte ich damit aber schon Schwierigkeiten. Du kannst es ja ausprobieren, du erhälst es mit Alt+255...
ata
-
Hallo,
vielen Dank für die superschnellen Antworten!
Ich glaube, dass ich so auf jeden Fall weiterkomme.
Danke + Gruß
Steffen
-
Ok,
ich hab mich jetzt auch entschieden die Strings einfach abzuschneiden.
Vielen Dank nochmal für die Hilfe.
Danke + Gruß
Steffen
-
Und die vielen NoCaches in den ganzen DBLookups nach dem ersten würde ich auch noch schnell rausnehmen.
-
Hallo,
@harkpabst_meliantrop danke für den Tip, ich werd die "NoCache" 's rausnehmen.
Ich vermute mal wegen der Performance. Gelle??
Grüßle
Steffen
-
... bei den NoChache solltest du dir Gedanken machen, wo du aktuelle Daten benötigst, es könnte sonst sein, daß du aus Daten aus dem Cache zugreifst...
ata
-
Hallo,
die "NoCache" sind nicht wirklich wichtig.
Diese Auswertung wird nur ein bis zwei mal im Monat benötigt.
Ich glaube nicht, dass da die Daten noch im Cache sind.
Ich hab es nur aus Gewohnheit davor geschrieben.
Ciao
Steffen
-
... dann hat das natürlich seine Richtigkeit...
ata