Terminplaner

Rund um die LCL und andere Komponenten

Terminplaner

Beitragvon VB_Lazarus » 14. Feb 2020, 07:59 Terminplaner

Hallo,

ich bräuchte mal einen kleinen Denkanstoß.
Ich benutze als Terminplaner zur Zeit die TVPlanit in meinem Programm.
Leider hat die Komponente des Terminplaners keine Verbindung zu den Kontakten.
Jetzt bin ich am überlegen, ob ich so einen Terminplaner selbst erstelle.
Das ist natürlich eine kleine Mammutaufgabe.
Ich habe in den Foren gelesen, das sowas mit den StringGrid aufgebaut wird.
Hat jemand sowas schon gemacht?
Gibt es für die Grundlage der Darstellung etwas besseres als das StringGrid?
Danke im voraus.

Gruß
VB_Lazarus
 
Beiträge: 78
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 32/64bit, L 2.0.4 32bit, FPC 3.0.4 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon wp_xyz » 14. Feb 2020, 09:31 Re: Terminplaner

VB_Lazarus hat geschrieben:Ich benutze als Terminplaner zur Zeit die TVPlanit in meinem Programm.
Leider hat die Komponente des Terminplaners keine Verbindung zu den Kontakten.

Was soll den diese Verbindung können?
wp_xyz
 
Beiträge: 3083
Registriert: 8. Apr 2011, 08:01

Beitragvon VB_Lazarus » 14. Feb 2020, 09:42 Re: Terminplaner

Ein Termin soll mit einem Kontakt verknüpft werden.
Also nichts besonderes.
TVPlanit hat diese Möglichkeit leider nicht.
VB_Lazarus
 
Beiträge: 78
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 32/64bit, L 2.0.4 32bit, FPC 3.0.4 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon wp_xyz » 14. Feb 2020, 10:04 Re: Terminplaner

Was heißt hier "verknüpft"? Sollen die Termine des Kontakts angezeigt werden? Halte ich so für nicht sinnvoll, da Leute in der Kontakliste sein können, deren Termine in der DB nicht enthalten sind. Oder sollen, wenn der Termin z.B. "10:00 Zahnarzt" lautet, die Kontaktdaten des Zahnarztes abgerufen werden können? Dazu müssten die Felder des Termins (TVpEvent) um ein Feld "ContactID" erweitert werden. In der offiziellen Version müsste das aber so geschehen, dass existierende Datenbanken dadurch nicht geschädigt werden. Einfacher wäre es, wenn du einfach eines der TVpEvent-Reserve-Felder "UserField0"..."UserField9" für die ContaktID nimmst. Du müsstest dann lediglich ausfindig machen, wie die bestehenden Dialoge geändert/erweitert werden müssten, so dass die ContactID eingegeben und abgefragt werden kann.
wp_xyz
 
Beiträge: 3083
Registriert: 8. Apr 2011, 08:01

Beitragvon VB_Lazarus » 14. Feb 2020, 10:27 Re: Terminplaner

Danke, für die schnelle Antwort.

wp_xyz hat geschrieben:Was heißt hier "verknüpft"? Sollen die Termine des Kontakts angezeigt werden?

Ja, z.B. Wenn ein Kontakt angewählt wird, dann soll eine Übersicht von vorhandenen Terminen angezeigt werden.
Es muss aber nicht zwingend notwendig ein Kontakt mit einem Termin verknüpft werden.

wp_xyz hat geschrieben:Dazu müssten die Felder des Termins (TVpEvent) um ein Feld "ContactID" erweitert werden. In der offiziellen Version müsste das aber so geschehen, dass existierende Datenbanken dadurch nicht geschädigt werden. Einfacher wäre es, wenn du einfach eines der TVpEvent-Reserve-Felder "UserField0"..."UserField9" für die ContaktID nimmst. Du müsstest dann lediglich ausfindig machen, wie die bestehenden Dialoge geändert/erweitert werden müssten, so dass die ContactID eingegeben und abgefragt werden kann.

Das hörrt sich schon mal nach einem guten Plan an.
Werden die TVPlanit eigentlich von jemanden aktiv weiterentwickelt?
VB_Lazarus
 
Beiträge: 78
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 32/64bit, L 2.0.4 32bit, FPC 3.0.4 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon wp_xyz » 14. Feb 2020, 10:58 Re: Terminplaner

VB_Lazarus hat geschrieben:Werden die TVPlanit eigentlich von jemanden aktiv weiterentwickelt?

Das bin wohl ich. Wobei "weiterentwickeln" zu hochgegriffen ist. Ich habe den existierenden Lazarus-Port auf die aktuellen Versionen angepasst, ein paar kleinere Features neu aufgenommen, den wiki-Artikel geschrieben (https://wiki.freepascal.org/Turbopower_Visual_PlanIt) und schaue ab und zu nach, ob das ganze noch läuft. Du kannst gerne fragen, wenn etwas unklar - ist aber nicht sicher, ob ich alles beantworten kann (BTW: Hab selten so schlechten Code gesehen wie das, was TurboPower da damals produziert hat!)
wp_xyz
 
Beiträge: 3083
Registriert: 8. Apr 2011, 08:01

Beitragvon VB_Lazarus » 14. Feb 2020, 12:32 Re: Terminplaner

Erst mal Lob an die Arbeit die du für die Portierung reingesteckt hast.

D.h. eine Weiterentwicklung gibt es nur, a) wenn du Lust / Zeit hast, b) wenn es eine Anforderung gibt, welche Sinn macht.

Da habe ich gleich mal eine Frage, wie merke ich, ob ein Event geändert / neu erstellt worden ist?
VB_Lazarus
 
Beiträge: 78
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 32/64bit, L 2.0.4 32bit, FPC 3.0.4 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon wp_xyz » 20. Feb 2020, 19:03 Re: Terminplaner

Oje, entschuldige. Deine Frage habe ich ganz vergessen...

TVpEvent, die Klasse, die die Termine und Ereignisse definiert, hält nur Daten vor, keine Events wie OnChange o.ä., signalisiert also nicht, dass etwas geändert worden ist. Da das alles nicht sehr flexibel zusammengestöpselt ist, wird deine Erweiterung wahrscheinlich sehr "hackermäßig" ausfallen. Wenn du Glück hast, kannst du von TDlgEventEdit eine erweiterte Klasse ableiten und dort deine Änderungen einpflegen. Wenn dafür Methoden von "private" nach "protected" verschoben oder als "virtual" deklariert werden müssten, sehe ich da kein großes Problem - wenn es Sinn macht, kann ich das offizielle Package entsprechend abändern.
wp_xyz
 
Beiträge: 3083
Registriert: 8. Apr 2011, 08:01

• Themenende •

Zurück zu Komponenten und Packages



Wer ist online?

Mitglieder in diesem Forum: KreuzBlick und 2 Gäste

porpoises-institution
accuracy-worried