Ahnenblattportal Forum Index
 •Portal  •Imprint  •Forum  •Search  •Profile  •Log in to check your private messages  •Log in   •Register  

 Personenblätter / Familientafeln / Zeitachsenberichte

Post new topicReply to topic
Author Message
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 10.06.2009, 20:26    (No subject)  Reply with quoteBack to top

Hallo Roger.
« Roger Paini » wrote:
Habe leider nichts von dir erhalten?!
das kommt davon, wenn man so blöd - wie ich - schreibt Crying or Very Sad

Die Snaps waren für Christian gemeint.

Mein Hilferuf an Dich bezog sich auf die Frage, ob Dir bekannt ist, dass die Zeichen < und > in Textfeldern von Access zu dem von Christian geschilderten Problem in Berichten führen können.

Sicher ist, dass die Probleme nicht immer auftreten und dass sie verschwinden, solbald man die Zeichen < und > aus den Texten entfernt. Als Beispiel ein Sterbedatum aus der Datei von Christian: "zwischen <1943> und <1945>"

Christian! Bist Du damit einverstanden, dass Deine Datei an Roger gebe, weil er der Access-Profi ist?

_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
christian




Gender:
Age: 65
Joined: 14 Feb 2006
Posts: 87
Topics: 19
Location: Wiesbaden


germany.gif

PostPosted: 11.06.2009, 10:35    (No subject)  Reply with quoteBack to top

Hallo Torquast,
selstverständlich kannst Du die Daten weitergeben. Ich denke dadurch wird uns allen geholfen.

Christian

OfflineView user's profileSend private message    
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 11.06.2009, 16:23    (No subject)  Reply with quoteBack to top

Hallo Christian,
« christian » wrote:
selbstverständlich kannst Du die Daten weitergeben. Ich denke dadurch wird uns allen geholfen.

die Datei ist auf dem Weg zu Roger. Mal sehen, ob der eine Idee dazu hat Crying or Very Sad

_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
Roger Paini
Administrator



Gender:
Age: 41
Joined: 12 Feb 2006
Posts: 942
Topics: 54
Location: Reinach BL


switzerland.gif

PostPosted: 12.06.2009, 11:38    (No subject)  Reply with quoteBack to top

Hallo zusammen

Ich werde mir das ansehen sobald ich dazu komme.

Gruss
Roger

_________________
Buchempfehlungen / Ahnenblatt Wissensdatenbank

OfflineView user's profileSend private message    
Roger Paini
Administrator



Gender:
Age: 41
Joined: 12 Feb 2006
Posts: 942
Topics: 54
Location: Reinach BL


switzerland.gif

PostPosted: 13.06.2009, 18:00    (No subject)  Reply with quoteBack to top

Hallo Christian & Torquatus

Das Problem sind Datumseintragungen wie diese "05.12.1882<1882>".
Beim Import der Daten wird das Geburtsjahr in ein separates Feld der Tabelle gespeichert. Hierzu werden die letzten 4 Zeichen des Datums verwendet. Bei dem oben genannten Datum sind die letzten vier Zeichen jedoch "882>" was dann im Bericht zu Problemen führt.

Jetzt kommt der technische Teil für Torquatus:

Beim Import der Daten wird das Geburtsjahr in ein separates Feld der Tabelle T02_Kinder gespeichert:

Der Bösewicht befindet sich in Abfrage "A21_Kinder_der_Mütter", Spalte 2:
(Kind_Geb_Jahr: Right([Geburts_Datum];4)

Ich bin mir ehrlich gesagt nicht ganz im klaren wie das Problem gelöst werden soll. Wir könnten mit einer Funktion testen ob es sich beim Eintrag um ein gültiges Datum handelt und nur dann das Jahr behandeln.

Was meinst du dazu?

Gruss
Roger

Nachtrag: weiss du noch für was du dieses Feld benötigst? Hat es vielleicht mit der Sortierung zu tun? Habe heute noch was vor und kann leider nicht weiterforschen...

_________________
Buchempfehlungen / Ahnenblatt Wissensdatenbank

OfflineView user's profileSend private message    
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 14.06.2009, 01:38    (No subject)  Reply with quoteBack to top

Hallo Roger,
« Roger Paini » wrote:

Das Problem sind Datumseintragungen wie diese "05.12.1882<1882>".
Beim Import der Daten wird das Geburtsjahr in ein separates Feld der Tabelle gespeichert. Hierzu werden die letzten 4 Zeichen des Datums verwendet. Bei dem oben genannten Datum sind die letzten vier Zeichen jedoch "882>" was dann im Bericht zu Problemen führt.

Jetzt kommt der technische Teil für Torquatus:

Beim Import der Daten wird das Geburtsjahr in ein separates Feld der Tabelle T02_Kinder gespeichert:

Der Bösewicht befindet sich in Abfrage "A21_Kinder_der_Mütter", Spalte 2:
(Kind_Geb_Jahr: Right([Geburts_Datum];4)
in der Abfrage "A22_Kinder_der_Väter" wird ebenso verfahren.

Ich habe mal als Test beide Abfragen wie folgt verändert:
Kind_Geb_Jahr: Wenn(Länge([Geburts_Datum])=10;Rechts([Geburts_Datum];4);"")

Dadurch wird in unserem speziellen Fall das Feld "Kind_Geb_Jahr" bei der Wilhelmine "leer" gelassen mit der Folge, dass die Wilhelmine im Unter-Formular "Kinder" an erster Stelle steht. Aber leider bleibt damit das Problem bestehen, im Personenblatt fehlen weiterhin die Kinder.
Quote:

Ich bin mir ehrlich gesagt nicht ganz im klaren wie das Problem gelöst werden soll. Wir könnten mit einer Funktion testen ob es sich beim Eintrag um ein gültiges Datum handelt und nur dann das Jahr behandeln.

Was meinst du dazu?
siehe oben Exclamation
Da damit das Problem nicht gelöst wird, ist es müßig dafür noch Zeit zu investieren.
Das Problem muss eine andere Ursache haben. Sicher ist, dass das Problem nicht mehr existiert, wenn man die Zeichen < und > durch Leerzeichen ersetzt.

Quote:

Nachtrag: weiss du noch für was du dieses Feld benötigst? Hat es vielleicht mit der Sortierung zu tun? Habe heute noch was vor und kann leider nicht weiterforschen...

Ja, diese Felder werden benötigt, damit die Kinder aufsteigend nach dem Geburtsdatum (Jahr, Monat) dargestellt werden. Nach der Programmänderung sieht die Tabelle "T02_Kinder" für die Mathilde Zielke wie unten aus; daran dürfte die Druckaufbereitung eigentlich nicht scheitern. Vielleicht fällt Dir noch was ein Wink



Zielke-01.jpg
 Description:
 Filesize:  61.76 KB
 Viewed:  6721 Time(s)

Zielke-01.jpg



_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
christian




Gender:
Age: 65
Joined: 14 Feb 2006
Posts: 87
Topics: 19
Location: Wiesbaden


germany.gif

PostPosted: 14.06.2009, 09:39    (No subject)  Reply with quoteBack to top

Hallo Torquatus, hallo Roger,

wenn das Problem in den < > liegt, sollte man mal grundsätzlich über die Eingabe von unsicheren Daten sprechen?
Ich habe die Form mit den <> aus ged Dateien übernommen die ich zB von meinen Verwandten aus Amerika bekam. Sie wird aber auch sonst sehr oft so gebraucht.

Gruß
Christian

OfflineView user's profileSend private message    
Hugo
Administrator



Gender:
Age: 60
Joined: 19 Jan 2006
Posts: 7170
Topics: 416
Location: Hamburg


germany.gif

PostPosted: 14.06.2009, 14:52    (No subject)  Reply with quoteBack to top

Guten Tag Christian
Du sprichst hier ein seeehr wichtiges Problem an

« christian » wrote:
wenn das Problem in den < > liegt, sollte man mal grundsätzlich über die Eingabe von unsicheren Daten sprechen?

Thumbup

« christian » wrote:
Ich habe die Form mit den <> aus ged Dateien übernommen die ich zB von meinen Verwandten aus Amerika bekam. Sie wird aber auch sonst sehr oft so gebraucht.

Stimmt, davon haben Isabelle und meine wenigkeit auch genügend liegen
In Gedcom-Dateien und in schriftlicher Form (Dokumenten-Abschriften)

Das Problem ist nur, das viele Nicht-Ahnenprogramme solche Zeichen als Steuerzeichen ansehen

Gruß Hugo

_________________
Das Gestern ist Geschichte
Das Morgen ist ein Rätsel

Das Heute ist ein Geschenk

OfflineView user's profileSend private messageSend e-mail    
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 16.06.2009, 00:47    (No subject)  Reply with quoteBack to top

Hallo Roger,

inzwischen ist mir klar, dass das Problem nicht unbedingt etwas mit den Zeichen < und > zu tun hat. Das Problem entsteht beim Aufbau des Unter-Berichtes "Kinder".

Meine heutige Antwort in der Newsgroup "microsoft.public.access", beschreibt das Problem näher. Nachstehend eine Kopie davon:

***********************
>> ein User benutzt in den Datenfeldern sehr oft die Zeichen < und >
>> (Beispiel: "geboren zwischen <1943> und <1945>").
>>
>> In den Berichten, die anhand seiner Daten erzeugt werden, fehlen zufällig
>> komplette Zeilen. Ersetze ich in seiner Datei < und > durch Leerstellen,
>> tritt dieses Problem nicht mehr auf.
>>
>> Was ist die Ursache und wie kann man das verhindern (außer die Zeichen >> zu entfernen)?

> Was sind das für Berichte?
> Wäre html beteiligt, würde ich auf ein Problem mit Html-Tags tippen.

Nein html ist nicht beteiligt.

Die Berichte sind Personalblätter aus einer Ahnen-Datei. Dabei werden u.a.
in Unter-Berichten Partner, Kinder und Geschwister aufgeführt. Das Problem
tritt allerdings nur beim Unter-Bericht Kinder auf.

Enthalten die Felder der Datei keine Zeichen < und/oder >, dann wird der
Unter-Bericht mit den Kindern bei allen Personen angezeigt.

Enthalten die Felder der Datei die Zeichen < und/oder >, dann wird der
komplette Unter-Bericht "nicht" angezeigt; es erfolgt aber keine
Fehleranzeige..

ABER: Wird eines der Kinder als Proband gewählt (dann sind die anderen
Kinder ja dessen Geschwister), wird das Unter-Formular mit den Geschwistern
immer angezeigt (trotz < und >).

Beim Testen ist mir noch folgendes aufgefallen:

Wechsle ich von der Entwurfsansicht der Berichtes in die Berichtsansicht,
dann meldet Access folgendes:

"Dieser Ausdruck wurde falsch eingegeben, oder er ist zu komplex, um
ausgewertet zu werden. Beispielsweise kann ein numerischer Ausdruck zu viele
komplizierte Elemente enthalten. Vereinfachen Sie den Ausdruck, indem Sie
Teile des Ausdrucks Variablen zuweisen."

Es ist aber nicht ersichtlich, welcher Ausdruck gemeint ist. Im dann
angezeigten Bericht ist anstelle des Unter-Berichtes "Kinder" lediglich der
Schiebebalken zu sehen, der allerdings bei der normalen Berichts-Ansicht
nicht zu sehen ist.

Wie komme ich dem Problem auf die Schliche?
***********************

Roger, kannst Du damit was anfangen?

_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
Roger Paini
Administrator



Gender:
Age: 41
Joined: 12 Feb 2006
Posts: 942
Topics: 54
Location: Reinach BL


switzerland.gif

PostPosted: 16.06.2009, 20:46    (No subject)  Reply with quoteBack to top

Hallo Torquatus

« Torquatus » wrote:
Ich habe mal als Test beide Abfragen wie folgt verändert:
Kind_Geb_Jahr: Wenn(Länge([Geburts_Datum])=10;Rechts([Geburts_Datum];4);"")

Dadurch wird in unserem speziellen Fall das Feld "Kind_Geb_Jahr" bei der Wilhelmine "leer" gelassen mit der Folge, dass die Wilhelmine im Unter-Formular "Kinder" an erster Stelle steht. Aber leider bleibt damit das Problem bestehen, im Personenblatt fehlen weiterhin die Kinder.


Seltsam, mache ich die Änderung manuell funktioniert es wie ich geschrieben hatte. Passe ich die Abfragen an ist es wie du schreibst.

.
.
.
10 Minuten später
.
.
.

So, ich habs glaub ich. Versuch mal anstatt deiner Formel diese hier einzubauen:
Kind_Geb_Jahr: IIf(Len([Geburts_Datum])=10;Right([Geburts_Datum];4);Null)

Das Problem scheinen nicht numerische Zeichen in diesem Feld zu sein.
Es ist übrigens wichtig, dass du die englischen Funktionsnamen verwendest damit es auch bei den Benutzern funktioniert die eine englische Access-Version haben wink .

Gruss
Roger

_________________
Buchempfehlungen / Ahnenblatt Wissensdatenbank

OfflineView user's profileSend private message    
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 17.06.2009, 01:08    (No subject)  Reply with quoteBack to top

Hallo Roger,
« Roger Paini » wrote:
So, ich habs glaub ich. Versuch mal anstatt deiner Formel diese hier einzubauen:
Kind_Geb_Jahr: IIf(Len([Geburts_Datum])=10;Right([Geburts_Datum];4);Null)

Das Problem scheinen nicht numerische Zeichen in diesem Feld zu sein.
Es ist übrigens wichtig, dass du die englischen Funktionsnamen verwendest damit es auch bei den Benutzern funktioniert die eine englische Access-Version haben wink

offenbar hast Du meinen letzten Beitrag übersehen, schau Dir den bitte mal an Crying or Very Sad

Das Problem hat m.E. nichts mit den Sortierbegriffen zu tun.

Access-2007 basiert auch in der deutschen Version auf Englisch. Benutzt man die englischen Funktionsnamen, werden diese "in der Anzeige" gedeutscht, gespeichert werden aber die englischen Funktionsnamen. Das zeigt die SQL-Ansicht der Abfrage "A21_Kinder_der_Mütter":

INSERT INTO T02_Kinder ( Elternteil_1_Index, Kind_Geb_Jahr, Kind_Geb_Monat, Elternteil_2_Index, Kind_Index, Kind_Geschlecht, Kind_Name, Kind_Vorname, Kind_Geb_Dat, Kind_Geb_Ort, Kind_Ste_Dat, Kind_Ste_Ort, Kind_Religion )
SELECT T01_Personen.Mutter_Index, IIf(Len([Geburts_Datum])=10,Right([Geburts_Datum],4),Null) AS Kind_Geb_Jahr, IIf(Len([Geburts_Datum])=10,Mid([Geburts_Datum],4,2),"") AS Kind_Geb_Monat, T01_Personen.Vater_Index, T01_Personen.Index, T01_Personen.Geschlecht, T01_Personen.Zuname, T01_Personen.Vorname, T01_Personen.Geburts_Datum, T01_Personen.Geburts_Ort, T01_Personen.Sterbe_Datum, T01_Personen.Sterbe_Ort, T01_Personen.Religion
FROM T01_Personen
WHERE (((([T01_Personen].[Mutter_Index])<>IsNull([Mutter_Index]))<>IsEmpty("Mutter_Index")))
ORDER BY T01_Personen.Mutter_Index, IIf(Len([Geburts_Datum])=10,Right([Geburts_Datum],4),Null), IIf(Len([Geburts_Datum])=10,Mid([Geburts_Datum],4,2),"");

_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
Roger Paini
Administrator



Gender:
Age: 41
Joined: 12 Feb 2006
Posts: 942
Topics: 54
Location: Reinach BL


switzerland.gif

PostPosted: 18.06.2009, 13:52    (No subject)  Reply with quoteBack to top

Hallo Torquatus

Ich habe deinen Beitrag gelesen glaube aber nicht dass die Zeichen "<" und ">" wirklich das Problem sind. Zumindest nicht wenn diese in Texten vorkommen.

Hast du meine Formel ausprobiert? Das wichtige ist nicht die englische Formulierung sondern der Begriff NULL den ich anstelle von "" verwende.

IIf(Len([Geburts_Datum])=10;Right([Geburts_Datum];4);Null)

Mit meiner Version 2003 von Access löst dies das Problem.

Das mit den englischen Funktionsnamen ist dennoch wichtig. Es mag sein, dass in der neusten Access-Version 2007 dies nicht mehr problematisch ist, in früheren Versionen war das aber absolut ein Problem!

Die Formel ist übrigens nicht ideal, denn wenn das Datum nicht vollständig vorhanden ist (10 Zeichen lang) wird nicht korrekt sortiert obwohl dies durchaus machbar wäre auch wenn nur die Jahreszahl vorhanden ist.

Gruss
Roger

_________________
Buchempfehlungen / Ahnenblatt Wissensdatenbank

OfflineView user's profileSend private message    
Torquatus




Gender:
Age: 74
Joined: 19 Jan 2006
Posts: 3801
Topics: 232
Location: Mannheim


germany.gif

PostPosted: 19.06.2009, 01:49    (No subject)  Reply with quoteBack to top

Hallo Roger,

« Roger Paini » wrote:
Ich habe deinen Beitrag gelesen glaube aber nicht dass die Zeichen "<" und ">" wirklich das Problem sind. Zumindest nicht wenn diese in Texten vorkommen.
Jein, zumindest nicht in Access 2003 (bei Dir) und Access 2002 (bei mir), denn wenn ich die unveränderte Anwendung mit Christians Datei hier unter Access 2002 laufen lasse, dann gibt es keine Probleme; ALLE Kinder erscheinen in den Berichten.

Lasse ich dagegen die Anwendung unter Access 2007 laufen, dann habe ich die bewussten Probleme. Entferne ich dann aus der Datei ab.csv die Zeichen < und >, dann gibt es auch mit Access 2007 keine Probleme.

Es scheint wohl ein Fehler von Access 2007 vorzuliegen.

Da ich aber eine Runtime-Version nur mittels Access 2007 erzeugen kann, bin ich derzeit nicht in der Lage das Problem für Christian zu beseitigen
Crying or Very Sad

Quote:


Hast du meine Formel ausprobiert? Das wichtige ist nicht die englische Formulierung sondern der Begriff NULL den ich anstelle von "" verwende.

IIf(Len([Geburts_Datum])=10;Right([Geburts_Datum];4);Null)

Mit meiner Version 2003 von Access löst dies das Problem.

Das mit den englischen Funktionsnamen ist dennoch wichtig. Es mag sein, dass in der neusten Access-Version 2007 dies nicht mehr problematisch ist, in früheren Versionen war das aber absolut ein Problem!
Seltsam, dass Du mit Dem englischen Access 2003 überhaupt das Problem nachvollziehen kannst und dass dann NULL (kein gültiger Inhalt) das Problem löst Question

Wenn ich bei Access 2007 NULL anstelle "" verwende, dann löst das dort leider nicht das Problem, die Kinder fehlen nach wie vor unter den bestimmten Umständen Crying or Very Sad
Quote:

Die Formel ist übrigens nicht ideal, denn wenn das Datum nicht vollständig vorhanden ist (10 Zeichen lang) wird nicht korrekt sortiert obwohl dies durchaus machbar wäre auch wenn nur die Jahreszahl vorhanden ist.
Dass man das besser machen kann, ist klar Wink

_________________
Gruß, Torquatus

C.c. - Übrigens stelle ich den Antrag, dass Ahnenblatt das beste aller Ahnenprogramme werden muss - frei nach Cato

OfflineView user's profilePersonal Gallery (2)Send private messageSend e-mail    
Display posts from previous:      
Post new topicReply to topic


 Jump to:   




Show permissions


Board Security

Powered by Orion based on phpBB © 2001, 2002 phpBB Group
CBACK Orion Style based on FI Theme
All times are GMT + 2 Hours



[ Page generation time: 0.1835s (PHP: 79% - SQL: 21%) | SQL queries: 49 | GZIP enabled | Debug on ]