Zeilenumbruch definieren

Allgemeines zu Diving Log 6.0 - Fragen und Hinweise
Post Reply
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Zeilenumbruch definieren

Post by Chrispy81 »

Hallo,

nachdem ich die letzten Tage eifrig mit dem Designer rumgespielt habe um zu sehen was möglich ist, muß ich sagen: Ich bin beeindruckt, sehr cooles Programm (das ich mir jetzt kaufen werde)!

Zwei kleinere Sachen hab ich trotz Lesens der Anleitung und Herumspielens nicht hinbekommen, deshalb poste ich das jetzt hier, in der Hoffnung auf Hilfe.

1. Ich nutze das Kommentarfeld für eine Aufzählung, getrennt durch Kommazeichen. Der Designer macht einen Zeilenumbruch bei Leerzeichen, wodurch die einzelnen Punkte (wenn sie aus mehreren Wörtern bestehen) u.U. getrennt werden, was unschön ist. Ich möchte aber einen Zeilenumbruch nur nach einem "," erlauben. Eine Möglichkeit wäre (die ich hier im Forum gefunden habe) ein spezielles Zeilenumbruchszeichen zu definieren und dann per StrSubtr$ durch den Zeilenumbruch ersetze. Dann muss ich aber bei jedem Tauchgang genau sicherstellen, dass ich den Zeilenumbruch richtig setze, was nicht so benutzerfreundlich ist. Daher meine Frage: Kann man irgendwo den Zeilenumbruch eines Textobjekts genauer definieren?

2. Die zweite Sache, die mich ein bisschen nervt, ist das Signaturfeld. Ich wollte meine alten Signaturen einscannen und dann als Bilder einfügen und eine Logik in mein Layout implementieren die nur den Buddy Namen zeigt, wenn keine Signatur vorhanden ist für den Tauchgang. Das geht aber leider nicht, da man nur das Signaturfeld benutzen kann und außerdem die Signatur standardmäßig auf ein Bild mit leerer Signatur verweist. Außerdem scheint es nicht mit dem DiveMateUSB zu funktionieren, der die Signatur ebenfalls als Bild abspeichert. Aus meiner Sicht wäre es besser, wenn die Signatur standardmäßig leer ist (also nicht wie jetzt auf eine Graphik ohne Signatur verweist) und man dann die Auswahl hat ein Bild reinzuladen oder eben das Signaturfeld zu benutzen.

Ansonsten bin ich persönlich wunschlos glücklich!

Beste Grüße,

Christoph

PS: Wenn Interesse an meinem Layout besteht, schicke ich es gerne zu (sobald ich die implementierte Logik ausreichend überprüft hab)
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Re: Zeilenumbruch definieren

Post by divinglog »

Hallo Christoph

Ich bin nicht sicher ob ich den ersten Punkt richtig verstanden habe, aber warum machst du im Kommentarfeld selbst nicht direkt einen Zeilenumbruch bei der Eingabe, z.B. so?
- Aufzählung 1
- Aufzählung 2
- Aufzählung 3
Mit dieser Formel ersetzt du Kommas durch Zeilenumbrüche:

Code: Select all

StrSubst$(LogCommentsTXT,",","¶")
Wenn du das Kommentarfeld doppelt anklickst, kannst du rechts in den Feldeigenschaften unter "Line Wrap" noch weitere Optionen einstellen, sogar mit einer weiteren Formel abhängig von bestimmten Bedingungen. Ich denke damit lässt sich alles abdecken.

Die Signatur ist in Diving Log als eine Textfolge von Koordinaten gespeichert, nicht als Grafik. Beim Drucken wandelt Diving Log diesen Text in eine Grafik um. Für deinen 2. Punkt müsste ich ein neues Boolean Feld "LogSignatureAvailable" hinzufügen, wie bei den Profil Grafiken auch.

Du kannst mir dein Druck Layout gerne schicken, wenn es fertig ist.

Schöne Grüße,
Sven
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

erstmal vielen Dank für die prompte Antwort!

Vielleicht hätte ich mein Problem etwas genauer beschreiben sollen, so einfach, wie Du vorschlägst, lässt es sich leider nicht lösen. Ich kann, wie von Dir vorgeschlagen ein Zeilenumbruchszeichen (z.B. ",") definieren und dann umwandeln mit der Funktion. Das Problem: Ich habe zwei verschiedene Kommentar-Textboxen und je nach LogBild1 (Hoch- oder Querformat) wird eine gedruckt, die andere nicht. Ich weiß also erst nachdem ich das LogBild1 kenne, welche gedruckt wird und wo ich daher den Zeilenumbruch setze. Daher wäre es schön, den Zeilenumbruch so zu definieren, dass er bei einem "," passieren darf(!) aber nicht muss, so wie er standardmäßig bei einem Leerzeichen passieren darf aber nicht muss. Mit Formeln im Zeilenumbruchsfeld geht es glaub ich nicht, da das Ergebnis einer Formel nur festlegt, ob umgebrochen, abgeschnitten, usw. wird, nicht wann.

Zu der Signatur: Wäre es nicht besser, das Feld standardmäßig als Bildobjekt zu setzen, so dass z.B. das Signaturfeld von DivemateUSB genutzt werden kann (welches als Bild abgespeichert wird)? Die Umwandlung des Schreibfelds in ein Bild könnte doch direkt passieren und nicht erst beim Drucken, oder nicht? Nur als Vorschlag.

Eine boolean Variable, um abzuchecken ob ein Bild existiert oder nicht, brauch man glaub ich generell nicht. Ich frage einfach per Drawing$(LogBild1) <> "" ab, ob es existiert und es scheint zu funktionieren. Nur laufzeitmäßig könnte es einen Unterschied machen.

Beste Grüße,

Christoph
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Re: Zeilenumbruch definieren

Post by divinglog »

Hallo Christoph

Klingt sehr kompliziert, vielleicht kann ich es mir besser vorstellen wenn ich den fertigen Report sehe. Es kann aber sein das dieses Szenario nicht umsetzbar ist. Der Report Designer ist ein externes Produkt und ich kann nur die Daten für den Druck liefern, eine direkte Funktionalität innerhalb des Designers.

Die Signatur nicht als Bild zu speichern hat Vorteile, u.a. die verlustfreie Skalierung, verschiedene Darstellungsarten auf verschiedenen Geräten, Änderung der Stiftfarbe etc.

Schöne Grüße,
Sven
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

hab jetzt erst gesehen, dass LogProfile und LogSignature keine einfachen Bilder sind, sondern dass es jeweils noch speziell definierte Eigenschaften gibt. Dann macht es natürlich Sinn, es nicht als Bild zu definieren. Dennoch wäre es schön, wenn man als Alternative einfach ein JPEG hochladen könnte, dann könnte man bspweise die Buddies auf dem Smartphone per Divemate unterschreiben lassen, anstatt den Laptop zu jedem Tauchgang mitzuschleppen (oder sich hinterher extra zu treffen).

Das Logbook Layout schicke ich gerne zu, sobald es einwandfrei funktioniert. Ich hab dazu noch eine Merlwürdigkeit festgestellt, die das Tiefenprofil betrifft. Wenn ich das auf der oberen Hälfte der Seite platziere, passiert einer der folgenden 3 Dinge beim Exportieren in ein pdf:

-Die obere Linie des Profilrahmens färbt sich goldgelb
-Die roten Linien des Profils (warnungen) werden teilweise nicht angezeigt
-Das Profil wird überhaupt nicht dargestellt (nur der Rahmen)

Was passiert, hängt dabei mit der exakten Position des Profils zusammen. Da ich das Problem auf einer komplett leeren Layout-Seite reproduzieren konnte, hat es nichts mit meinem Profildesign zu tun. Ich hab auch den PDFCreator benutzt und mit dem Standardtreiber jpgs erstellt, mit dem gleichen Ergebnis. Ist Dir das schon mal untergekommen?

Viele Grüße,

Christoph
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

noch eine kleinere Sache zum Thema Profil. Ich hab versucht (nachdem ich von meinen Vyper und ZOOP Computern die Daten direkt in den DL reingeladen hab) nachzuvollziehen, woher die Abweichungen bzgl. Max./Durchschnittstiefe und der Tauchzeiten herkommen zu dem was der Computer angibt bzw. im Suunto DM angegeben wird. Die meisten Ungereimtheiten sind dabei auf die Abtastrate und unterschiedliche Rundungsweisen zurückzuführen. Allerdings ist mir bei der Tauchzeit aufgefallen, dass die beim DL immer genau zwei Abtastschritte (2 * 0:30 beim ZOOP, 2 * 0:20 beim Vyper) zu groß ist, was glaube ich damit zusammen hängt, dass die beiden 'Null-Einträge' im Profil (der erste und der letzte) dazugezählt werden. Ist das beabsichtigt?

Schöne Grüße,

Christoph
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Re: Zeilenumbruch definieren

Post by divinglog »

Hallo Christoph
Chrispy81 wrote:-Die obere Linie des Profilrahmens färbt sich goldgelb
-Die roten Linien des Profils (warnungen) werden teilweise nicht angezeigt
-Das Profil wird überhaupt nicht dargestellt (nur der Rahmen)
Ja, der integrierte PDF Export hat leider ein paar komische Eigenheiten in der aktuellen Version (die vorherige Version hat noch problemlos funktioniert). Darauf hab ich leider nur bedingt Einfluß weil der PDF Export Teil des Report Designers ist. Ich hab gute Erfahrungen mit dem FreePDF Drucker gemacht, damit schaut das Profil in Ordnung aus.
Chrispy81 wrote:Ich hab versucht (nachdem ich von meinen Vyper und ZOOP Computern die Daten direkt in den DL reingeladen hab) nachzuvollziehen, woher die Abweichungen bzgl. Max./Durchschnittstiefe und der Tauchzeiten herkommen zu dem was der Computer angibt bzw. im Suunto DM angegeben wird. Die meisten Ungereimtheiten sind dabei auf die Abtastrate und unterschiedliche Rundungsweisen zurückzuführen. Allerdings ist mir bei der Tauchzeit aufgefallen, dass die beim DL immer genau zwei Abtastschritte (2 * 0:30 beim ZOOP, 2 * 0:20 beim Vyper) zu groß ist, was glaube ich damit zusammen hängt, dass die beiden 'Null-Einträge' im Profil (der erste und der letzte) dazugezählt werden. Ist das beabsichtigt?
Die Maximal Tiefe wird in der Regel vom Tauchcomputer aus den Header Daten ausgelesen und kann von der max. Tiefe des Profils abweichen, z.B. wenn man genau zwischen 2 Profilpunkten nochmal etwas abgesackt ist und gleich wieder nach oben ist. Der Tauchcomputer speichert dann eine tiefere max. Tiefe ab als im Profil angezeigt wird. Für die Durchschnittstiefe ignoriert Diving Log alle 0m Tiefenwerte des Profils (wurde aufgrund von Feedback so geändert).

Schöne Grüße,
Sven
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

danke für den Tip mit FreePDF, werde ich ausprobieren.
Die Maximal Tiefe wird in der Regel vom Tauchcomputer aus den Header Daten ausgelesen und kann von der max. Tiefe des Profils abweichen, z.B. wenn man genau zwischen 2 Profilpunkten nochmal etwas abgesackt ist und gleich wieder nach oben ist. Der Tauchcomputer speichert dann eine tiefere max. Tiefe ab als im Profil angezeigt wird. Für die Durchschnittstiefe ignoriert Diving Log alle 0m Tiefenwerte des Profils (wurde aufgrund von Feedback so geändert).
Das klingt Alles logisch, meine Frage bezog sich auch eher auf die Tauchzeit, die von DL (soweit ich es beurteilen kann) auf dem Profil beruht. Beim Suunto DM ist das nicht anders, jedoch ist die 2 Abtastungsschritte kürzer (da die 0m-Einträge nicht mitreinzählen) und damit koheränt mit dem, was der Computer am Ende des Tauchgangs auf dem Display anzeigt. Beispiele:

Tauchgang Nr. 1 (Vyper mit Abtastrate 20 Sek.):
Suunto DM: 56:40
Vyper Display: 56 (scheint immer auf volle Minuten abzurunden)
Diving Log: 57:20, wird abgerundet zu 57

Tauchgang Nr. 2 (Zoop mit Abtastrate 30 Sek.):
Suunto DM: 37:30
Zoop Display: 37
Diving Log: 38:30, wird aufgerundet zu 39

Tauchgang Nr .3
Suunto DM Vyper/Zoop: 49:00
Vyper/Zoop Display: 49
Diving Log: 49:40 für Vyper, 50 für Zoop, (gerundete) Tauchzeit 50

Momentan korrigiere ich dementsprechend alle Tauchzeiteinträge nach dem Einlesen, so dass es wieder passt.

Beste Grüße,

Christoph

PS: Wie kann ich Dir am Besten das Logbook-Layout zukommen lassen?
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Re: Zeilenumbruch definieren

Post by divinglog »

Hallo Christoph

Wie importierst du denn die Suunto Tauchgänge (Suunto Downloader, Universal Downloader oder SDM Import)? Das Layout kannst du mir per Email schicken an info (at) divinglog.de

Schöne Grüße,
Sven
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

ich hab das einfach über die Funktion Datei-Download-Suunto gemacht, also nicht vom DM importiert.
Um den Unterschied nochmal deutlich zu machen, hier die ersten und letzten Profileinträge eines Tauchgangs

Erst im DL
Time Depth
00:20 0,00
00:40 7,32
01:00 13,41
...
43:40 4,88
44:00 0,00

(Tauchzeit also 44 min)

Suunto DM
Time Depth
00:00 0,0
00:20 7,3
00:40 13,4
...
43:20 4,9
43:40 1,2 (entspricht Ankunft an der Oberfläche, also 0,0)

(Tauchzeit also 43:20, abgerundet 43 min, was der Angabe auf dem Vyper-Display entspricht)

Der Unterschied rührt also daher, dass DL bei 00:20 statt 00:00 startet und den letzten Schritt noch zur Tauchzeit hinzuzählt, was eine erhöhte Tauchzeit um 2 * 00:20 = 00:40 ergibt.

Schöne Grüße,

Christoph
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo nochmal,

habs gerade noch mal per Import vom Suunto DM3 getestet mit dem selben Resultat: Die Tauchgänge sind bei DL 40 Sekunden länger als im Suunto DM. Die Import-Methode scheint also unerheblich.

Grüße,

Christoph
divinglog
Site Admin
Posts: 5768
Joined: Sat Feb 08, 2003 21:02
Location: Coburg
Contact:

Re: Zeilenumbruch definieren

Post by divinglog »

Beim SDM 3 Import wird die Tauchzeit direkt so aus der Datenbank importiert. Beim Suunto Download bekomme ich die Tauchzeit ebenfalls so von dem Download Programm mitgeteilt. Du kannst auch noch den Universal Downloader ausprobieren (mit dem blauen Pfeil Icon), dort wird die Tauchzeit ebenfalls direkt aus dem Header ausgelesen. Ich würde mir jetzt wegen 40 Sekunden nicht wirklich Gedanken machen. Diving Log rundet immer auf ganze Minuten, da können alleine schon 30 Sekunden Unterschied entstehen.

Nochmal zur Klärung, wir reden über die Tauchzeit auf der Hauptseite, nicht die Spalte in den Profildaten? In den Profildaten fängt Diving Log mit der Numerierung anders an und fügt bei Bedarf ein 0 m Profilwert am Ende hinzu, damit das Profil auch wirklich an der Oberfläche endet. Das ist so mit Absicht.
Chrispy81
Posts: 9
Joined: Fri Feb 14, 2014 13:03

Re: Zeilenumbruch definieren

Post by Chrispy81 »

Hallo Sven,

habs jetzt nochmal mit dem Universal-Downloader getestet und alle Tauchzeit-Werte (Hauptseite) verglichen. Ergebnis: Die Zeiten beim SDM Import und beim Universal-Downloader passen zu denen im DM bzw. auf dem Display. Nur beim Suunto Downloader sind die Zeiten zu lang! Ich würde dementsprechend den Universal-Downloader verwenden, aber der lädt scheinbar nicht die Warnungen (rote Profillinien) mitrein, die ich persönlich ganz nett finde, also bleibt vorerst doch nur die Zeiten nach dem Import zu korrigieren.

Beste Grüße,

Christoph
Post Reply