Jump to content
  • 0

PDF bestanden openen met Event Verzenden


André1517653054

Question

Posted

Ik heb een filemaker (17) bestand met namen van pdf bestanden.
Nu wil ik door middel van een knop in een layout een pdf bestand kunnen openen.
Ik doe dat met Event Verzenden.
In Windows 11 is dat geen probleem.
In MacOS Sequoia wil dat maar niet lukken:
In het filemaker veld Bestand::PDF_Apple bewaar ik de formule van het pad naar het pdf bestand om in MacOS aan Event Verzenden mee te geven file://PDF/X/XXXX.pdf
De scriptregel ziet er dan als volgt uit: Event Verzenden [ "aevt" ; "odoc" ; Char (47) & "Users" & usernaam & Char (47) & Bestand::PDF_Apple ]

Als ik het script met bovenstaande regel voor Event Verzenden uitvoer krijg ik een foutmelding dat XXXX.pdf niet bestaat.
Maar het bestaat wel degelijk.
Wat doe ik verkeerd?

21 answers to this question

Recommended Posts

  • 0
Posted

Als je de foutmelding terugkrijgt dat het bestand niet bestaat kun je er vrij zeker van zijn dat het pad wat je opgeeft niet correct is.

Helaas geen ervaring (meer) met AppleScript, voor dit soort acties gebruik ik de MBS plug-in.

  • 0
Posted

Het gaat om een bestand in pCloud Drive (geinstalleerd via pCloud.com).
pCloud is als aparte drive (extern volume) geinstalleerd op de Mac maar gedraagt zich als een map.
pCloud staat zo te zien niet op de Macintosh HD.
Als ik het pdf bestand in de pCloud map kopieer als padnaam dan zie ik "/Users/<usernaam>/pCloud Drive/PDF/X/XXXX.pdf", zonder Macintosh HD dus.

Wordt het filepad dan "file:/Users/<usernaam>/pCloud Drive/PDF/X/XXXX.pdf" ?
Als ik dit aan Event Verzenden meegeef krijg ik iig weer dezelfde fout: Bestand bestaat niet.

  • 0
Posted (edited)

Wat je even zou kunnen proberen is te kijken wat macOS zelf aangeeft wat het pad is.

Als je de met de rechter muisknop + option op de map klikt kun je het pad kopiëren.

Als ik dat bijvoorbeeld voor een iCloud-map doe krijg ik dit pad:

/Users/gerard/Library/Mobile Documents/com~apple~Preview/Documents

Kans bestaat dat je pCloud een vergelijkbaar adres teruggeeft.

Edited by bigbadwolf
  • 0
Posted

Volgens de chatbot van pCloud is het Mac pad naar de pCloud bestanden "Macintosh/pCloud Drive//<map>/<bestand>"
Als ik dat meegeef aan Event Verzenden wordt Safari (heb ik voor gekozen bij Event Verzenden) wel geopend maar blijft het proces daarna hangen.
In de zoekbalk staat dan de URL "file:///Macintosh:pCloud%20Drive::<map> of <pad>:<bestand>"

Dat is al beter dan "bestand bestaat niet".

  • 0
Posted

Heb je het al geprobeerd met de scriptstap 'Open URL'? Met 'Open met externe browser' aangevinkt en een pad zoals: 

"file:/" & Get ( DesktopPath ) & "JouwBestand.txt"
"file:///Volumes/<gemounteNetwerkSchijf>/JouwBestand.txt" 

Door 'Open URL' te gebruiken pakt FM vanzelf het gekoppelde programma. Je kan een pad controleren, door een bestand dat je zou willen openen simpel in de adresbalk van Safari te droppen. Je ziet dan letterlijk wat je in 'Open URL' kan gebruiken :-) 

  • 0
Posted (edited)

Ik lees dat je de pdf met Safari wilt openen. Het pad wordt dan zoiets als "/Users/<usernaam>/<map>/<bestand>" en dit geef je op bij 'Berekening'. Dus geen  "file:/Macintosh HD" ervoor. Wanneer het bestand dan nog steeds niet geopend wordt moet ik het met BBB eens zijn: je pad naar het bestand is dan niet correct.

Dat is dus anders dan wanneer je geen programma opgeeft en FM zelf laat uitzoeken welk programma het moet openen. Dan  stuur je het event naar 'Document'. Het pad naar het bestand moet dan beginnen bij de naam van het volume, doorgaans /Macintosh HD.  Het wordt dan dus "/Macintosh HD/Users/<usernaam>/<map>/<bestand>". Het onderdeel "file:" mag je dan zelfs weglaten, dat zet FM er zelf voor je bij.

PS dit verschil is ook voor mij nieuw.

Edited by Banach
  • 0
Posted

Ik stuit alleen op de Mac op problemen.
In Windows openen de pdf bestanden probleemloos met de Event Verzenden scriptstap.
Ik test in het programma op welk platform het wordt uitgevoerd met Get(Apparaat).
1=Apple, 2=Windows
Dat gaat goed.

Als ik op de Mac de Event Verzenden Scriptstap gebruik:
Event Verzenden [ "onbekend" ; "aevt" ; "odoc" ; <berekende veldwaarde> ]

1. Uitgevoerd met
Doelprogramma: onbekend
Document: openen
Berekening: veldwaarde uit berekend veld (=wat je te zien krijgt als je het bestand in de zoekbalk van Safari dropt:
file:///Users/<usernaam>/pCloud%20Drive/<map>/<bestandsnaam.pdf>, opgeslagen in een veld.)
Doelprogramma naar voorgrond brengen: 
Resultaat: bestand "$PDF" niet gevonden, maar vereist om bewerking te voltooien
("$PDF" staat in het venster Opties "Event Verzenden" achter "Document", maar is niet opgegeven.

2. Uitgevoerd met
Doelprogramma: Safari (opgegeven)
Veldwaarde uit berekend veld: "(file:///)Users/<usernaam>/<map>/<bestandsnaam.pdf>"
Verder idem als bij 1.
Resultaat:
A. Safari opent met in de zoekbalk "file:///file:/:::Users:<usernaam>:pCloud%20Drive:<map>:<bestandsnaam.pdf>"
(berekende veldwaarde="file:///Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")
B. Safari opent met in de zoekbalk "file:///Users:<usernaam>:pCloud%20Drive:<map>:<bestandsnaam.pdf>"
(berekende veldwaarde="Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")
Bij zowel A als B blijft Safari hangen en blijft het venster leeg. De zoekbalk kun je niet wissen. Je kunt het Safari venster wel sluiten. Daarna is Safari weer gewoon te gebruiken.

3. Uitgevoerd met
Doelprogramma: Voorvertoning (opgegeven)
Verder idem als bij 2.
Resultaat:
A. Het bestand "////Users:<usernaam>:pCloud Drive:<map>:<bestandsnaam.pdf>" kon niet worden geopend omdat het bestand niet bestaat. Maar de pdf wordt vervolgens wel degelijk geopend in Voorvertoning!
(berekende veldwaarde="file:///Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")
B. Het bestand "Users:<usernaam>:pCloud Drive:<map>:<bestandsnaam.pdf>" kon niet worden geopend omdat het bestand niet bestaat. Voorvertoning opent wel, maar zonder venster.
(berekende veldwaarde="Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")

Ad 2,3: Als je eenmaal een doelprogramma hebt opgegeven, dan is dat niet meer te verwijderen in het venster "Opties Event Verzenden". Dat lukt alleen maar door de scriptregel uit het script te verwijderen en weer opnieuw toe te voegen.

4. Niet uitgevoerd met Event Verzenden maar met:
URL Openen [Met dialoogvenster aan ; <berekende veldwaarde>]
A. (berekende veldwaarde="file:///Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")
Voorvertoning opent, maar zonder venster. Kennelijk is Voorvertoning door stap 3 nog steeds geselecteerd als default.
B. (berekende veldwaarde="Users/<usernaam>/pCloud Drive/<map>/<bestandsnaam.pdf>")
Nu opent vreemd genoeg Safari met in de zoekbalk "users/<usernaam>/pCloud%20Drive/<map>/<bestandsnaam.pdf>"
In het Safari venster staat: "Safari kan de server niet vinden. Safari kan de pagina "users/<usernaam>/pCloud%20Drive/<map>/<bestandsnaam.pdf>" niet openen, omdat de server "users" onvindbaar is.

Het is een heel verhaal geworden, excuses daarvoor.
Ik hoop toch dat mijn probleem nu duidelijker is.
Wellicht speelt de spatie vam "pCloud Drive" een kwalijke rol.
Windows heeft daar geen last van, die gebruikt alleen de driveletter (P:/) van de pCloud map in de naamgeving  van bestandspaden. Wel zo handig!

  • 0
Posted

Als je specifiek safari wil gebruiken (of een andere specifieke app) dan kan je dat op de Mac inderdaad met send-event ook doen. Hou er dan rekening mee dat die stap er zelf e.e.a. aan toevoegt en dat je de mac het exacte pad moet meegeven. In jouw eigen verslaag is bij puntje 2 te lezen dat file::: aan het pad wordt toegevoegd, dus die moet je verwijderen en waarschijnlijk moet je het pad van 'root' meesturen (MacOS is tenslotte Unix). 

Als je nu eens file:// verwijdert uit die berekening die en /Volumes/Macintosh HD toevoegt zoals hier:

/Volumes/Macintosh HD/Users/<usernaam>/pCloud%20Drive/<map>/<bestandsnaam.pdf>

En dit dan met Send-Event naar safari stuurt, wat gebeurt er dan?

  • 0
Posted
Op 9-9-2025 om 22:34, Banach zei:

"/Macintosh HD/Users/<usernaam>/<map>/<bestand>"

 

6 uren geleden, menno zei:
/Volumes/Macintosh HD/Users/<usernaam>/pCloud%20Drive/<map>/<bestandsnaam.pdf>

en nog veel meer variaties heb ik geprobeerd.
Ze gaven allemaal als resultaat: het bestand "<onbekend>" is niet gevonden, maar is vereist om deze bewerking te voltooien.
Morgen verder....

  • 0
Posted

Probeer het eens met deze. Pas het pad even aan naar een bestand dat op jouw desktop staat, dus 'menno' vervang je voor jouw eigen username en vervang de bestandsnaam 'screenshot.png' voor die van een bestand dat werkelijk op je desktop staat.

Als het hiermee lukt kan je gaan kijken wat er anders is in wat jij zelf hebt gedaan. Als het hiermee niet lukt, dan heb ik geen ideeën meer.

SendEvent2Safari.fmp12

  • 0
Posted

Nu werkt het.
Ik had bij Event Verzenden "onbekend" staan waar dat "Safari.app" had moeten zijn.
Het berekeningsveld voor het pad was wél in orde.

Heel erg bedankt Menno en Banach.
Zonder jullie was dit niet gelukt!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...