[GastForen Programmierung/Entwicklung FileMaker Wörter (Namen) tauschen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Wörter (Namen) tauschen

Arthur
Beiträge gesamt: 87

20. Sep 2006, 18:37
Beitrag # 1 von 13
Bewertung:
(8697 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Leute
Ich habe da ein kleines Problem. In einer Datenbank gibt es ein Feld mit den Namen. Die normale Reihenfolge ist: Nachname, Vorname. Normalerweise bekomme ich die Daten in der richtigen Reihenfolge, aber es gibt auch Daten in der verkehrten Reihenfolge (hier sind alle "falsch". Da die Namen immer wiederkehren, könnte ich ja ein Script schreiben, aber es sind doch einige Tausend Namen vorhanden und alle möchte ich nicht abtippen. Kennt jemand in FM 8 eine Möglichkeit diese "falschen" Namen umzuwandeln.
X

Wörter (Namen) tauschen

JensTeich
  
Beiträge gesamt: 595

20. Sep 2006, 19:51
Beitrag # 2 von 13
Beitrag ID: #252141
Bewertung:
(8686 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hast du Vor- und Nachname in einem einzigen Feld?

Das ist meist keine gute Idee, zB kann man dann keine Briefanrede daraus bauen, in der ja nur der Nachname vorkommt.

Auf alle Fälle lassen sich die Teile vor und nach dem Komma einzeln ansprechen.

Die Position der Kommas ermittelst du mit
Position( Feld ; "," ; 1 ; 1 )

Den Teil vor dem Komma mit
Zeichenlinks( Feld ; Position(...) -1 ).

Den Teil rechts schaffst du dann selbst. Brauchst noch Länge(Feld)!

Vorsicht, falls du das Ganze in einem Schritt mit Ersetzen machen willst: Immer vorher an die Sicherheitskopie denken!

Jens


als Antwort auf: [#252123]

Wörter (Namen) tauschen

GoeGG-ArT
Beiträge gesamt: 2535

20. Sep 2006, 22:42
Beitrag # 3 von 13
Beitrag ID: #252176
Bewertung:
(8683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi,
oder er mein 2 Felder, Name, Vorname wo im Namen der Vorname steht und umgekehrt…
Ich hatte genau dies auch schon und habe es so gelöst(FMP5.5):
2 zusätzliche Felder.
name_temp (variable text)
vorname_temp (variable text)


dann ein Script:
-Gehe zu Datensatz/Abfrage/Seite [Erster]
-Schleife
- Berechnetes Ergebnis einsetzen [in Feld "name_temp" den Wert von "name"]
- Berechnetes Ergebnis einsetzen [in Feld "vorname_temp" den Wert von "vorname"]
- Berechnetes Ergebnis einsetzen [in Feld "name" den Wert von "vorname_temp"]
- Berechnetes Ergebnis einsetzen [in Feld "vorname" den Wert von "name_temp"]
- Text einsetzen [in Feld "name_temp" den Wert ""] (also nichts)
- Text einsetzen [in Feld "vorname_temp" den Wert ""] (also nichts)
- Gehe zu Datensatz/Abfrage/Seite [weiter, Option nach letztem beenden]
-Ende-Schleife


So braucht man nur die "falschrum" adressen zu suchen und das Script durchlaufen zu lassen.
BackUp wurde ja schon erwähnt…


als Antwort auf: [#252141]

Wörter (Namen) tauschen

JensTeich
  
Beiträge gesamt: 595

20. Sep 2006, 23:13
Beitrag # 4 von 13
Beitrag ID: #252183
Bewertung:
(8677 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Für diese Variante ist keine Schleife erforderlich, verwende Ersetzen!

Gruss
Jens


als Antwort auf: [#252176]

Wörter (Namen) tauschen

Arthur
Beiträge gesamt: 87

20. Sep 2006, 23:31
Beitrag # 5 von 13
Beitrag ID: #252187
Bewertung:
(8672 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Leider bekomme ich die Daten so angeliefert, dass nur ein Feld möglich ist. Dies ist im Prinzip auch ok, da keine Anrede usw. erstellt werden muss. Es handelt sich um die Auswertung von Wettkampfprotokollen von Sportveranstaltungen.
Ich werde morgen einmal die Vorschläge (auch denen aus Filemaker.de) testen und mich dann einmal melden

Gruss


als Antwort auf: [#252183]

Wörter (Namen) tauschen

Arthur
Beiträge gesamt: 87

24. Sep 2006, 20:20
Beitrag # 6 von 13
Beitrag ID: #252835
Bewertung:
(8642 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich glaub ich muss mir dafür etwas mehr Zeit nehmen. Im Moment hab ich zu viel um die Ohren. Werd mich melden


als Antwort auf: [#252187]

Wörter (Namen) tauschen

Arthur
Beiträge gesamt: 87

4. Okt 2006, 22:21
Beitrag # 7 von 13
Beitrag ID: #254698
Bewertung:
(8593 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sorry, dass es so lange gedauert hat. Habe am verregneten Feiertag das ganze mal getestet und habe es mittels des Vorschlags von Jens gepackt. Werde aber auch die Version von GöGG in den nächste Tagen testen.


als Antwort auf: [#252835]

Wörter (Namen) tauschen

Harald
Beiträge gesamt: 173

14. Jan 2007, 13:07
Beitrag # 8 von 13
Beitrag ID: #270646
Bewertung:
(8358 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jens,
ich bin auch gerade an der Stelle mit Vorname, Nachname und Komma.
Deine Art für unkomplizierte Darstellungen habe ich neulich am Chiemsee sehr gut gefunden. Auch was du hier im Forum schreibst, scheint so unkompliziert.
Bei den vier Zeilen unten habe ich das Problem, überhaupt nicht zu wissen, wo wir uns gerade befinden. Wo ermittle ich die Position des Kommas? Ich kann das Komma suchen, aber das meinst du ja sicher nicht. Verzeih, dass es so elementar zugeht.
Harald

Die Position der Kommas ermittelst du mit
Position( Feld ; "," ; 1 ; 1 )

Den Teil vor dem Komma mit
Zeichenlinks( Feld ; Position(...) -1 ).


als Antwort auf: [#252141]

Wörter (Namen) tauschen

JensTeich
  
Beiträge gesamt: 595

14. Jan 2007, 13:51
Beitrag # 9 von 13
Beitrag ID: #270649
Bewertung:
(8354 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Nehmen wir mal an, wir haben den String "Duck, Donald" im Feld LangNameUmgedreht.

Dann liefert Position( LangNameUmgedreht ; "," ; 1 ; 1 ) die Position des Kommas, in diesem Fall eine 5. Mit dieser Info kannst du den String in zwei Teile zerlegen.

Die rechte Hälfte ist leicht: ZeichenLinks( LangNameUmgedreht ; Position(...)-1 ).

Etwas schwieriger ist die rechte Hälfte, man braucht ZeichenRechts() und Länge() und dann müssen beide Teile noch wieder in verdrehter Reihenfolge montiert werden.

Gruss
Jens


als Antwort auf: [#270646]

Wörter (Namen) tauschen

Harald
Beiträge gesamt: 173

14. Jan 2007, 14:55
Beitrag # 10 von 13
Beitrag ID: #270654
Bewertung:
(8339 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sorry,
wir verstehen uns doch richtig: ich will einen Teil von "Duck, Donald" löschen bzw. ausschneiden. Dazu brauche ich ein Skript. Da gibt es z.B. "Auswahl festlegen" oder "Löschen". Hier komme ich nicht weiter. Vermutlich auf dem falschen Weg.

Harald


als Antwort auf: [#270649]

Wörter (Namen) tauschen

Harald
Beiträge gesamt: 173

14. Jan 2007, 17:48
Beitrag # 11 von 13
Beitrag ID: #270664
Bewertung:
(8323 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich habs hinbekommen.
Danke

Harald


als Antwort auf: [#270654]

Wörter (Namen) tauschen

JensTeich
  
Beiträge gesamt: 595

14. Jan 2007, 17:49
Beitrag # 12 von 13
Beitrag ID: #270665
Bewertung:
(8323 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Harald ] ...Dazu brauche ich ein Skript. ..


Nein mit der Ersetzen-Funktion geht es auch ohne Skript. Menue Datensätze.

Jens


als Antwort auf: [#270654]

Wörter (Namen) tauschen

Harald
Beiträge gesamt: 173

14. Jan 2007, 19:15
Beitrag # 13 von 13
Beitrag ID: #270679
Bewertung:
(8318 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jens,
ich hab es hinbekommen, dass "Duck, Donald" richtig getrennt wird:
Vorname = WörterRechts (AA ; Position(AA ;", ";1 ; -1)+1)
Nachname = ZeichenLinks(AA ; Position(AA ; "," ;1 ; 1)-1)

Noch einen schönen Sonntag.

Gruss
Harald


als Antwort auf: [#270665]
X