Steckbrief (Ahnenblatt Plugin): Unterschied zwischen den Versionen
MarcP (Diskussion • Beiträge) |
MarcP (Diskussion • Beiträge) |
||
Zeile 164: | Zeile 164: | ||
"Kinder von %name%: [$pl-ch$ %name%,]" | "Kinder von %name%: [$pl-ch$ %name%,]" | ||
>> "Kinder von Hans Dampf: Kind1, Kind2, Kind3" | >> "Kinder von Hans Dampf: Kind1, Kind2, Kind3," | ||
geht auch noch weiter mit Kinder der Kinder, also Enkel: | geht auch noch weiter mit Kinder der Kinder, also Enkel: | ||
"Enkel von %name%: [$pl-ch$[$pl-ch$ %name%,]]" | "Enkel von %name%: [$pl-ch$[$pl-ch$ %name%,]]" | ||
>> "Enkel von Hans Dampf: Enkel1, Enkel2, Enkel3" | >> "Enkel von Hans Dampf: Enkel1, Enkel2, Enkel3," | ||
es ist allerdings nicht ersichtlich welches Enkelkind vom welchen Kind stammt. Es könnten auch alle 3 von Kind 1 stammen und Kind2 und 3 sind Kinderlos | es ist allerdings nicht ersichtlich welches Enkelkind vom welchen Kind stammt. Es könnten auch alle 3 von Kind 1 stammen und Kind2 und 3 sind Kinderlos |
Version vom 2. Dezember 2014, 21:18 Uhr
Bezeichnung
- Steckbrief
Beschreibung
Zum erzeugen diverser Personenblätter Daten werden automatisch von Ahnenblatt übernommen. Das Programm stellt eine Personenliste und eine Vorlagenliste zur Auswahl
Vorlagen bearbeiten / neue erstellen
Hilfsprogramme
Datenformat der Vorlagen ist xaml. Dieses kann mittels eines normalen Texteditors (zb notepad) oder auch Graphisch per VisualStudio (ab 2013) oder MS Blend bearbeitet werden.
Download diverse Downloads kommen in Frage
- Express 2013 mit Update für Windows Desktop (kostenlos. enthält kein Blend)
- Community 2013 mit Update (kostenlos. mit Blend. noch sehr neu)
- Professional 2013 mit Update (90 Tage Testversion. inkl Blend)
nach 30 Tagen müssen die kostenlosen Versionen bei MS registriert werden (kostet nichts).
allgemein
Sämmtliche Vorlagen liegen im "\Plugins\Steckbrie\Briefe" Unterverzeichniss. Jede Vorlage stellt ein definiertes Layout dar. Hier sind diverse Anzeigeelemente/Steuerelemente wie Textfelder oder Bildboxen platziert. Diese werden je nach Personenauswahl dynamisch befüllt. Jedes Element besteht aus vielen weiteren Eigenschaften wie zb height (höhe),top (position von oben, fontcolor (farbe des textes) usw. ähnlich wie html. Alle diese Eigenschaften dürfen frei verändert werden.
Daten dynamisch eintragen lassen
Um Werte aus der Datenbank auf den Elementen anzuzeigen muss ein Anzeigesyntax definiert werden. Dieser kommt in die "tag" Eigenschaft.
zb ein Label:
im "tag" steht "%name%" >> auf dem Label wird der name der momentan ausgewählten Person angezeigt.
im xaml code sieht die definition zb so aus:
<Label Content="abcd" Tag="%name%" HorizontalAlignment="Left" Height="92" Margin="72,177,0,0" VerticalAlignment="Top" Width="454" FontSize="16"/>
beim Label stellt die "caption" Eigenschaft den Anzeigetext dar. Wurde auf dieser schon ein Text gelegt dann wird dieser überschrieben. (Im bsp "abcd")
Wurde im "Tag" nichts hinterlegt so wird es nicht bearbeitet und schon vorbelegter Text bleibt so auch stehen. Wird zb genutzt um einfache starre Beschriftungen anzulegen.
Elementtypen
Das Programm wählt anhand des Elementtyps aus, auf welche Eigenschaft der "tag" bzw diese Daten ausgegeben werden.
momentan berüchsichtigte Elemente:
Elementtyp | Eigenschaft | Ausgabeformat |
label | content | text |
textbox | text | text |
textblock | text | text |
image | imagesource | bild |
listbox | items.text | auflistung (nur text) |
Es kann zb keine Ausgabe vom "tag" auf die "Fontcolor" (textfarbe) Eigenschaft gelegt werden. Was auch nicht viel Sinn macht.
Es dürfen natürlich auch sämtliche anderen Elemente der Entwicklungsumgebung benutzt werden. Nur werden diese nicht verarbeitet.
Variablen
Alle Variablen werden von "%" Zeichen umschlossen
Variablen liefern Daten einer bestimmten Person. (Person je nach Auswahl und verwendeten Optionen)
Variablen auf Person bezogen
Name | Bedeutung |
%refnr% | Ref nr |
%name% | voller Name |
%gebort% | geburtsort |
usw |
sonstige Variablen
Name | Bedeutung |
%date-dmy% | aktuelles Datum im Format ddmmyyyy |
%date-d | aktueller Tag |
%time% | aktuelle zeit |
Die Tabellen sind nur Auszüge. Sämtliche aktuelle Variablen können im Programm mit der Schaltfläche "Variablen" angezeigt werden
Optionen
Alle Optionen werden von "$" Zeichen umschlossen.
Optionen haben Einfluss auf den eigenen "Bereich" (siehe nächsten Abschnitt)
Sie geben selbst keine Werte aus.
Name | Bedeutung |
$pl-ch$ | alle Kinder |
$pl-si$ | alle Geschwister |
$pl-sp$ | alle Partner |
$c-month$ | wandelt numerische Monatsangaben in Text zb ".01." >> ". Januar" |
Die Tabellen sind nur Auszüge. Sämtliche aktuelle Optionen können im Programm mit der Schaltfläche "Variablen" angezeigt werden
Bereich
Ein Bereich ist allgemein erstmal der komplette "tag" Bereich. Dieser wird hier als Hauptbereich bezeichnet.
Es können Unterbereiche mittels eckiger Klammern definiert werden. Hier gelten die für diesen Bereich geltenden Optionen.
Es darf unbegrenzt tief und breit kaskadiert werden Symbolisches Beispiel mit Ziffern um die Bereiche zu markieren (Sechs Bereiche. 1 ist der Hauptbereich)
111[222[333]222]1[444[5[666]555]44]111
Optionen in Unterbereichen können sich auf den darüberliegenden Bereich beziehen. zb Liste alle Kinder von <darüberliegenden Bereich> auf
Haben aber selbst nie Einfluss auf darüber oder darunterliegenden Bereiche.
einfacher Syntax
Textteile welcher keine Variable oder Option darstellt wird als Fliesstext behandelt und 1 zu 1 ausgegeben
allgemein darf gemischt werden
Alle Personenvariablem im Hauptbereich (also keine eckigen Klammern) beziehen sich auf den ausgewählten Probanden.
zb Hans Dampf wurde ausgewählt:
Beispiele:
"%name%" >> "Hans Dampf"
"%name% ist am %gebdat% geboren" >> "Hans Dampf ist am 12.1.2001 geboren"
Syntax mit Unterbereiche
dh eckigen Klammern.
zb um Monatskonvertierung nur auf eine Variable anzuwenden. Sicherstellen das der restliche Text so nicht bearbeitet wird.
"%name% ist am [$c-month$%gebdat%] geboren"] >> "Hans Dampf ist am 12.Januar 2001 geboren"
zb um Auflistungen durchzugehen.
die Option $pl-ch$ durchgeht alle Kinder der Person des darüberliegenden Bereiches.
Bsp wenn Hans Dampf ausgewählt. Dieser hat 3 Kinder haben hier einfach die Namen Kindx:
"[$pl-ch$ %name%,]" >> "Kind1, Kind2, Kind3"
"Kinder von %name%: [$pl-ch$ %name%,]" >> "Kinder von Hans Dampf: Kind1, Kind2, Kind3,"
geht auch noch weiter mit Kinder der Kinder, also Enkel:
"Enkel von %name%: [$pl-ch$[$pl-ch$ %name%,]]" >> "Enkel von Hans Dampf: Enkel1, Enkel2, Enkel3,"
es ist allerdings nicht ersichtlich welches Enkelkind vom welchen Kind stammt. Es könnten auch alle 3 von Kind 1 stammen und Kind2 und 3 sind Kinderlos
Lösung wäre zb dies:
"Nachfahren von %name%: [$pl-ch$ %name%:[$pl-ch$ %name%];]" >> "Nachfahren von Hans Dampf: Kind1: Enkel1, Enkel2, Kind2: Enkel3, Kind3:"
Man sieht hier das Enkel1&2 von Kind 3 stammten und Enkel 3 von Kind2. Kind 3 ist kinderlos.
Syntax mit Unterbereiche für Auflistungselemente
zb Listbox, Listview sind Auflistungselemente. D.h. sie anthalten mehrere Textfelder. Je nachdem wieviele gebraucht werden. zb für jedes Kind ein eigenes Textfeld(zeile)
Versionen
- aktuell x
Sprache
deutsch
Autor
- Marc Philipp
Anforderungen
- Windows Vista/7/8
- .net Framework 4.5
- min Ahnenblatt 2.50
- Einbindung als AB Plugin (muss unter ..\Ahnenblatt\Plugins\ abgelegt sein)
Preis
- kostenlos (Freeware)