Ga naar inhoud
  • 0

CSV import/export


Sumar

Vraag

Goedendag allemaal.

 

Waarschijnlijk is dit al een keer eerder gevraagd maar ik kon het nergens vinden.

 

Voor export naar en import van gegevens voor een webshop is een CSV bestand met ; (puntkomma) vereist. FM maakt een , (komma) gescheiden bestand aan en leest ook alleen dit type in.

 

Hoe kan ik FM zover krijgen dat dit wel lukt? Moet het via een XSLT bestand of externe tool (dat laatste natuurlijk liever niet ivm het werken op zowel Mac als Windows platform).

Link naar reactie

9 antwoorden op deze vraag

Aanbevolen berichten

  • 0

De ";" moet dus overal gewijzigd worden in "',"

 

Kan de functie Substitute hier iets voor jou betekenen? Bijv. Substitute (veld met importbestand ; ";" ; "," )

Dit zou een kommagescheiden bestand op moeten leveren waar je mee verder kunt.

Voor het exporteren kun je de truc andersom uithalen (van "," naar ";")

Link naar reactie
  • 0

Misschien een open deur, maar CSV staat voor Comma Separated Values, en niet voor Semicolon Separated Values.

Dat veel programma’s menen dat het een puntkomma zou moeten zijn is volgens mij te danken (in mijn opinie te wijten) aan Microsoft die met Excel bedacht heeft dat het een puntkomma zou moeten zijn.

 

Dus eerlijk gezegd... FileMaker doet het zoals het hoort.

Link naar reactie
  • 0

Je kan ook eens de MER proberen.

Deze is speciaal gemaakt voor mailmerge met MS-Word en heeft de puntcomma inclusief quotes ingebakken.

 

Als alternatief kan je ook zelf een string opbouwen met alle juiste tekens er in.

Pak een berekeningsveld en bouw alle informatie op van 1 regel in een CSV bestand.

Het exporteren als TAB maakt hem tot een goed bruikbare export bestand.

Link naar reactie
  • 0

Ik heb een keer een XSLT ergens vandaan gehaald om via de XML Export van FileMaker custom .csv formaten te maken.

Niet alleen de , en ; is soms een issue maar soms is ook endline charachter (windows of mac of beide), wel geen header regel of escape char (" of ' of geen) een probleem.

Je kunt deze customizen voor je eigen gebruik en vastleggen voor je script en geautomatiseerde exports etc.

 

<?xml version="1.0" encoding="utf-8"?>
    version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:fm="http://www.filemaker.com/fmpxmlresult"
    exclude-result-prefixes="fm">













,






Link naar reactie
  • 0

Op de Mac kun je na de export de unix functie translate (tr) aanroepen met FM via Applescript.

 

De unix opdracht is:

 

tr ',' ';' outputfile

 

Deze kun je door applescript uit laten voeren met de opdracht

 

do shell script "tr ',' ';' outputfile"

 

Dit Applescript kun je door FM laten uitvoeren met de script stap perform applescript.

Liggen inputfile en outputfile vast dan kan dat als native applescript. Gebruik hier wel de volledige padnaam, dus bv

/Users/MyHome/Desktop/inputfile.csv

 

Heb je het pad in een variabele $infile, $outfile staan en moet je dus de opdracht 'berekenen' dan krijg je als berekening zoiets als:

 

"do shell script \"tr ',' ';' <" & $infile & " >" & $outfile & "\""

 

Let op de dubbele dubbele quote aan het einde en de spaties. Een kleine typfout zal er al voor zorgen dat het niet werkt.

 

Werk je op windows dan is er wellicht iemand hier die je kan vertellen hoe je dit onder windows regelt. Naar mijn weten is daar ook zo'n functie als tr beschikbaar via de commandline.

 

(Ik ben het overigens eens met BBW; csv staat voor comma separated. Er is alleen geen enkele standaard voor hoe csv er uit moet zien, toch wordt dit helaas nog heel erg vaak als uitwisselingsformaat gebruikt, met alle problemen van dien. )

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...