Ga naar inhoud
  • 0

Pad naar importbestand per gebruiker??


marcelboot

Vraag

Ik gebruik een exportbestand (tab- gescheiden) voor een importactie binnen een script. Lokaal geen probleem, maar nu via FMServer klopt het pad niet meer. De file wordt wel aangemaakt (in documenten) maar wordt niet gevonden in de importstap.

Moet ik per gebruiker het pad apart aangeven (naar documenten) of is er een slimmigheidje (dat ik niet zie) aanwezig?

Alles draait onder OSX!

Link naar reactie

8 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Ik ga me liever verdiepen met het Script uitvoeren op de server.

Tips waar ik op moet letten??

 

Dit is het exportscript:

Ga naar lay-out [ “Maandstaat” (Factuurregels) ]

Records exporteren [ Bestandsnaam: “file:Naamloos.tab”; Tekenset: “Macintosh”; Veldvolgorde: Facturen::Factuurnummer Factuurregels::Nulregel

Facturen::Factuur-maand extra

Factuurregels::Factuurdatum exact

Factuurregels::Crediteurnr

Factuurregels::Referentie

Factuurregels::btwcode inkoop

Factuurregels::Factuur-maand

Factuurregels::Som ms_Afdracht export maandstaat; Resumeren op: Factuurregels::Factuurnummer Factuurregels::Som ms_BTW export maandstaat; Resumeren op: Factuurregels::Factuurnummer ]

[ Geen dialoogvenster; Uitvoer opmaken volgens actieve lay-out ]

 

En dit is het importscript:

Records importeren [ Bron: “file:Naamloos.tab”; Doel: “Exact inkoop”; Methode: Toevoegen; Tekenset: “Mac Romeins”; Veldtoewijzing: Bronveld 1 importeren in Exact inkoop::factuurnummer

Bronveld 2 importeren in Exact inkoop::1Regelnr Bronveld 3 importeren in Exact inkoop::7Omschrijving Bronveld 4 importeren in Exact inkoop::8Datum

Bronveld 5 importeren in Exact inkoop::11Crediteur Bronveld 6 importeren in Exact inkoop::12Referentie Bronveld 7 importeren in Exact inkoop::21btw code Bronveld 8 importeren in Exact inkoop::24Factuur-maand Bronveld 9 importeren in Exact inkoop::13Bedrag Bronveld 10 importeren in Exact inkoop::22btwbedrag ]

[ Geen dialoogvenster ]

Link naar reactie
  • 0

Waarom we nog steeds niet op FmServer direct in Fm-bestanden kunnen importeren is me een raadsel. Ik kan me dan nog wel iets voorstellen dat je niet direct vanuit een volledig apart bestand iets kan importeren, omdat je dan mogelijk in de knoop komt met sessies. Je kan echter een TOC van een ander bestand opnemen in jouw bestand, dus waarom we daar dan óók niet kunnen importeren? Echt raar!

 

Afgezien van die beperking, waar je zelf ook al tegenaan bent gelopen heb ik niet heel veel tips. Volgens mij is wat je doet wel OK. Alleen verwacht ik dat je het pad dat je aanroept op de server wel even moet uitbreiden.

"filemac:" & Get ( DocumentsPath ) & "Naamloos.tab"

maar mogelijk werkt

"file:Naamloos.tab"

ook wel goed.

 

Één tip heb ik wél: Je gebruikt spaties en min-tekens in de relatie- en veld-namen. Die kan je beter vervangen voor onderkast ("_") dat is net even wat duidelijker. Aan de andere kant is het ook een kwestie van smaak natuurlijk :D

Link naar reactie
  • 0

Menno, ik had al staan "file:Naamloos.tab", maar de export gaat goed (wordt lokaal opgeslagen) maar de import kan hem niet vinden en daar staat toch ook "file:Naamloos.tab". Je moet dan handmatig het bestand aanklikken en dan loopt alles weer. Waarom dus niet automatisch??

 

De tip van de veldjes neem ik over van je. dank.

Link naar reactie
  • 0

Ja dat is nou juist het probleem met FileMaker en is ook een beetje onlogisch vind ik. Wat ik altijd doe bij lokale bestanden is het pad óók voor de export te bepalen:

Let ( [ 
file = Get ( FileName ) ; 
path = Get ( FilePath ) ; 
pos1 = Position ( path ; "/" & file ; 1 ; PatternCount ( path ; "/" & file ) ) ; 
file = Left ( path ; pos1 ) & "Naamloos.tab"
] ; 
file
)

Op de server kan je niks lokaal opslaan, want de bestanden staan (standaard) in de map "..../Data/Databases/" en daar mag je niks in schrijven etc. Je kan daar alleen maar de map "..../Data/Documents/" gebruiken.

Let ( [ 
file = Get ( FileName ) ; 
path = Get ( DocumentsPath ) ; 
file = "file:" & path & "Naamloos.tab"
] ; 
file
)

Zoals je ziet is FileMaker ook hier weer niet consequent: Get ( FilePath ) geeft als resultaat:

file:/Macintosh HD/Users/Menno/Documents/Bestand.fmp12

maar Get ( DocumentsPath ) geeft:

/Macintosh HD/Users/Menno/Documents/

dus daar moet je

file:

er zelf vóór plaatsen. Anyway je hebt hier dus wel een paar aandachtspunten wanneer je lokaal iets ontwikkelt dat laten op een server wilt laten draaien :)

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...