Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Adresser börjar med ett mellanslag - hur får jag bort det?

Tråden skapades och har fått 16 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Stockholm
  • 2008-07-08 11:36

Hej,
Jag har importerat ett antal hundra adresser, där varje adress börjar med ett mellanslag,
- hur får jag bort detta mellanslag i mina fält?

Mvh
Magnus

Det finns flera sätt.

Om du inte vill förändra fältets innehåll så kan du skapa ett beräkningsfält som innehåller denna beräkning:

Trim(NamnetPåDittAdressFältPassarBraHär)

(Glöm inte att ha beräkningsresultat "Text".)

Trimfunktionen returnerar text utan inledande eller efterföljande blanksteg.

Vill du förändra fältets innehåll, så kan du använda den komplett livsfarliga funktionen som heter ersätt fältinnehåll. Det var den dom tänkte på när de kläckte uttrycket

Citat:

Det är mänskligt att fela, men för att verkligen soppa till det för sig behöver man en dator.

Sök fram de poster du vill påverka.

Placera pekaren i fältet ifråga.

Välj Poster > Ersätt fältinnehåll

Välj "Med beräkning"

Ange beräkningen:

Trim(NamnetPåDittAdressFältPassarBraHär)

Det finns även andra funktioner som tex Left, Right och Length som kan komma ifråga, tex skulle du kombinera, på samma sätt. Antingen i ett beräkningsfält eller genom "Ersätt fältinnehåll".

Exempelvis denna:

Right(Title; Length ( Title )-1)

Utläses: Plocka ut alla tecken från Titel-fältet utom det första.

Men denna variant bygger på att det i vartenda fält faktiskt är ett mellanslag först, är det istället en bokstav så försvinner den. Den andra funktionen Trim, har inte den nackdelen, den ger sig bara på mellanslag.

P.S. Jo, du svarade aldrig på hur det gick med detta:
http://www.99.se/filemaker/225146-spara-emails-till-filemakerpro-ifr-n-mail.html

eller detta

http://www.99.se/filemaker/220424-filemaker-9-0-koppla-ihop-webshop-mysql-med-filemaker-i-praktiken.html

Senast redigerat 2008-07-08 13:54
  • Medlem
  • Stockholm
  • 2008-07-08 14:55

Hej Taz_1999,
Tack för din support, -jag skall nu prova i en kopia av databasen..

En annan fråga; Om jag nu har ett "förnamns" och ett "efternamn" fält och vill lägga ihop dem i ett fält som heter "Namn", och sedan tvärtom....

Detta pga att databasen består av flera importerade källor....

Har du också problem att importera från ett .txt dokument av adresser till Adressbok?

Mvh
Magnus

Om du skapar ett beräkningsfält som heter

Namn_C (C för beräkning) med beräkningen

Förnamn & " " & Efternamn

och ett till som heter Namn_Omvänt_C med beräkningen

Efternamn & ", " & Förnamn

så kommer du att ha ha tillgång till varsitt fält som innehåller namnet på dessa två former

  • Ola Andersson

  • Andersson, Ola

Om du menar något annat som tex att du har tre fält för namn, ett med förnamn, ett med efternamn och ett tredje som redan innehåller både förnamn och efternamn, så får du hojta till. Det går att lösa det med, med beräkningsfält med ett villkor i.

Adressboksgrejen - du har möjligtvis inte stött på problemet som beskrivs i denna tråd?

http://www.99.se/apple-programvara/245735-hur-importera-textfil-i-adressboken.html

  • Medlem
  • Stockholm
  • 2008-07-08 15:53

Hej Taz_1999
Nu har jag provat:
Sök fram de poster du vill påverka.
Placera pekaren i fältet ifråga.
Välj Poster > Ersätt fältinnehåll
Välj "Med beräkning"
Ange beräkningen:
Trim(NamnetPåDittAdressFältPassarBraHär)

Och det fungerade perfekt! Tack för det! Nu skall jag använda ditt nästa tips!
Skall kolla upp detta med Adressboken...

Mvh
Magnus

  • Medlem
  • Stockholm
  • 2008-07-08 15:59

Hej Taz_1999,
Det stämmer, det var detta jag menade:

"Om du menar något annat som tex att du har tre fält för namn, ett med förnamn, ett med efternamn och ett tredje som redan innehåller både förnamn och efternamn, så får du hojta till. Det går att lösa det med, med beräkningsfält med ett villkor i."

Det med adressboken, det stämmer också att jag hade gjort fel, trodde att det bara var en .txt fil raktupponer!

Mvh
Magnus

Ok, om jag antar att det i en del poster så finns det förnamn och efternamn i varsina fält och i andra poster så är dessa fält tomma och istället finns namnet i fältet Namn. I vissa poster är det alltså på ena sättet och i andra poster är det på andra sättet.

I så fall kan du "titta" med ett villkor på fälten och göra ett beräkningsfält som heter enligt nedan (fetstil) och har den kursiva beräkningen. Detta fungerar på alla poster.

Namn_Sammanställt_Från_Flera_Fält_C =

If(IsEmpty(Namn); Förnamn & " " & Efternamn; Namn)

Vilket utläses: Om fältet Namn är tomt, så står namnen istället i fältet förnamn och fältet efternamn, så sätt ihop dessa två. I annat fall, om Namn innehåller något, så returnera då det fältet.

  • Medlem
  • Stockholm
  • 2008-07-08 16:14

Här är det snabba puckar! Det gillar jag...

Jag skall prova detta imorgon, när en ny arbetsdag börjar och det verkar vara så jag menar.

Nu en helt annan sak som jag tror kommer att efterfrågas med nya 3G iPhone....om du har en adress i FileMaker, kan man hämta upp GPS kordinaterna på något sätt i Google Earth eller på något annat sätt, och isåfall hur?

Mvh
Magnus

  • Medlem
  • Stockholm
  • 2008-07-08 16:52

Hej Taz_1999,
Jag kunde inte vänta....
Nu provade jag:
Namn_Sammanställt_Från_Flera_Fält_C =
If(IsEmpty(Namn); Förnamn & " " & Efternamn; Namn)
..och det fungerade.

Om jag nu har ett fält "Namn" med Magnus Agnwik, hur separerar jag dem i två fält;
"Förnamn" och i "Efternamn" ?

Mvh
Magnus

Funktionerna du letar efter heter LeftWords(Namn; 1) och RightWords(Namn; 1). Dessa plockar alltså ett ord från vänster, respektive höger. Detta fungerar jättebra om fältet inte innehåller dubbelnamn och annat jobbigt, som tex Anna-Klara Gudrun von Besswerwisser Ågren.

Även här kan du använda Ersätt fältinnehåll > Ersätt med beräkning, men var noga att först söka fram alla fält som faktiskt är tomma i förnamnet, så att du inte skriver för något, upprepa sökningen för efternamnet. Glöm inte klicka i rätt fält också, skall du hämta förnamnet från namnfältet så är det i förnamnsfältet du skall klicka i och sedan välja "Ersätt fältinnehåll".

Du kan söka på poster med tomt fältinnehåll genom att skriva ett = i fältet när du är i sökläge.

Eller så skapar du beräkningsfält här med som innehåller Förnamnet respektive efternamnet.

Vill du hitta namn som är längre än två ord kan du skapa ett beräkningsfält Namn_Antal_Ord_C som har beräkningen:

WordCount ( Namn )

Lägg ut fältet i layouten och så kan du söka i det och hitta alla namn med fler än två ord genom att skriva >2 i fältet i sökläge.

Har kollat upp det där med att konvertera adresser till GPS-koordinater. Självklart är det också möjligt med FileMaker. Det finns flera olika lösningar, en del gratis (tex Google), andra kostar. Alla tjänster jag hittat hitills när jag har letat efter tjänster att göra geocode som det heter så måste man registera sig och använda sin egen kod för att göra sökningar. Så det lämpar sig inte så bra att skriva om i ett forum. Men det går.

En URL att börja med:
Google Maps API - Google Code

  • Medlem
  • Stockholm
  • 2008-07-09 09:01

Tack Taz_1999,
Dagen är räddad!

Mvh
Magnus

  • Medlem
  • Stockholm
  • 2008-07-15 09:57

Hej Taz_1999,
Nu sitter jag med 6st fält med namn i, 3st beräkningsfält och 3st vanliga.
Hur för jag över LeftWord(Namn;1) vars namn jag har hämtat upp ifrån fältet Namn, och som skall in i ett vanligt fält kallat Förnamn (och sedan samma sak med Efternamn)?

Mvh
Magnus

Klicka i fältet du vill fylla i med något så att markören står där i.

Välj Poster > Ersätt fältinnehåll

Välj ersätt med beräkning.

Fyll i beräkningen, tex LeftWord(Namn;1)

Denna funktion är livsfarlig, så nu är du varnad.

  • Medlem
  • Stockholm
  • 2008-07-16 19:21

Tack Taz_1999, -skall prova det imorgon!
Mvh
Magnus

1
Bevaka tråden