Jump to content
  • 0

Links en plaatjes exporteren naar HTML bestand.


mikezwet

Question

Hallo,

Ik kreeg van een gebruiker de vraag of het mogelijk was om een klikbare link mee te exporteren naar een HTML bestand.

 

Heb toen wat geprobeerd met het toevoegen van een veld "link" met daarin en een veld "link", die de naam van de link opgeeft (wat overigens ook een geexporteerd html bestandje vanuit fmp is).

 

Dit gaf als resultaat dat ik gewoon Link zie in de geexporteerde colom.

 

Dit geld ook voor een plaatje, a href zal dan alleen img worden.

 

Ik gaf de tip om de broncode aan te passen en de link handmatig in te voegen waarop de gebruiker vertelde dat dat niet lukte omdat er steeds weer opnieuw geimporteerd moet worden.

 

 

Omdat ik er zelf niet uitkom is mijn vraag of jullie een oplossing zouden weten en of het uberhaupt mogelijk is. Desnoods met een ander formaat.

 

Alvast Bedankt, Groetjes, Mike

Link to comment

23 answers to this question

Recommended Posts

  • 0

Hoi,

 

Dit zal niet zeer eenvoudig gaan. Dit komt omdat FM bij de export iets te veel zijn best doet om het eindresultaat goed in een browser te kunnen tonen.

 

Wat je wel kan doen is een berekend veld maken en daarin alle velden en tags zetten die je nodig hebt. Wanneer je dit enkele veld exporteerd (in tab-formaat), dan kun je tonen wat je maar wilt. Let er wel op dat je forceert dat de extentie .htm of .html is, ondanks de tab-export.

 

Voorbeeldje:

ctHTMLCode = ""&test1&""&test2&""&test3&""

 

Exporteer ctHTMLCode als "test.htm" (tab-formaat).

 

Groet,

 

Wouter

Link to comment
  • 0

Okey dit lukt goed!

 

Nu wil ik in het te exporteren bestand een linkje naar een ander html bestand die ik al eerder heb geexporteerd. op zich geen probleem maar de gebruiker moet nu exporteren naar html, bestandsnaam opgeven en invullen in een veld hoe dit bestand heet om hem later weer te linken.

 

Nu is mijn vraag: kan ik het te exporteren bestand automatisch de naam geven van een bepaald veld? (voor zover ik kan zien niet)

Link to comment
  • 0

Nu is mijn vraag: kan ik het te exporteren bestand automatisch de naam geven van een bepaald veld? (voor zover ik kan zien niet)

 

Als we een lijst opstellen van de meest gestelde vragen, staat deze op twee waarschijnlijk :lol: . Op de eerste plaats staat nog altijd : het triggeren van een script.

Het zal je wel duidelijk zijn : het kan jammer genoeg (nog) niet.

Link to comment
  • 0

Mike,

 

Een simpel DOS batchbestandje werkt dan natuurlijk ook.

Stappen:

 

1. Exporteer bestand naar een vaste locatie en met een vaste naam (bijv. c:\expHTML.htm)

2. Maak een batchfile met daarin een rename of copy. inhoud:

 

@echo off
REN c:\expHTML.htm %1

 

3. Run een send message commando waarin je deze batchfile aanroept met als parameter de locatie+bestandsnaam naar keuze . Je moet hiervoor het gehele commando in een berekend veld zetten. (inhoud berekend veld bijv: "c:\renexp.bat "&&".htm")

 

Stap 1 en 3 in een script en voila. Doel bereikt.

 

Groet,

 

Wouter

Link to comment
  • 0

Nog een raar iets: ik exporteer een container veld door de scriptstap Veldinhoud exporteren, het jpg bestandje komt netjes met de aangegeven bestandnaam in een map, als ik deze vervolgens oproep in onderstaande regel die geexporteerd word zie ik een kruisje.

 

"

 

Door in het html bestand op het plaatje te klikken zie ik niet wat er nogmaal zou moeten staan. zo is "Type" niet beschikbaar en is het url file:///C:/DVDCollectie2/Escapefromalcatrez.jpg

 

Is het dan niet mogelijk om deze foto op te roepen in een html bestand?

 

Ps, met BMP lukt het wel, als het niet anders kan doe ik dit gewoon.

Link to comment
  • 0

Ik werk nu gewoon met BMP omdat dit beter lukt.

 

Nog een klein vraagje: ik ben nu met de autoit scripts bezig, opzich zijn ze goed te combineren met filemaker. Ik roep deze soms aan midden in een FM script om bijv een bestand te openen, de inhoud te kopieeren en terug te keren naar fm die vervolgens de inhoud in een veld plakt.

 

Volgens mij is het zo dat filemaker gewoon doorwalst en niet wacht tot het script klaar is? Ik heb om dit tegen te gaan op plekken waar het mis gaat het script laten onderbreken voor 1a2 seconden zodat het script dan even zijn gang kan gaan.

 

Is het niet mogelijk om filemaker te laten wachten op iets externs?

Link to comment
  • 0

Dit werkt zoals je beschrijft. Filemaker wacht niet op een extern programma. Dit komt omdat de "send message" stap in FM alleen iets afvuurt, er is geen interactie.

 

Er zijn (in ieder geval) drie manieren om dit aan te pakken:

 

1. Wacht standaard X seconden voor je verder gaat. Dit is wat je nu doet. Is wel foutgevoellig omdat je geen volledige controle hebt.

2. Zorg zelf voor interactie. Dit kun je doen door je externe programma bijv. een bestandje te laten aanmaken met een waarde erin aan het einde van executie. In FM kun je dan een script maken met "error capture on". Dit script probeert in een loop om dit bestandje in te lezen in een veld. Als dat gelukt is, of wanneer een timeout bereikt is stopt de loop.

3. Gebruik een plug-in om dit te doen. Dit zou mijn keuze zijn. Mijn favoriet hiervoor is de "shell" plugin van abstrakt. Een gratis plugin die zorgt voor de interactie terug in FM. Hier kun je overigens veel leuke dingen mee doen.

 

Succes,

 

Wouter.

 

P.S. "BMP" en het internet. Lijkt me geen gelukkige combinatie.

Link to comment
  • 0

Dat van die interactie is allemaal duidelijk.

 

Over het BMP gebeuren: Als ik dus opsla als JPG en wil dit bestandje later oproepen in een webpagina zie ik alleen een kruisje. Op een 1 of andere manier doet fmp iets met die jpg zodat die onbruikbaar word.

 

Miscchien kunnen het zelf eens proberen (een containerveld > rechtermuisknop > veldinhoud exporteren (export field content)) > als jpg opslaan en die oproepen in een html.

 

Als je dan een kruisje ziet kun je weer rechtsklikken op die afbeelding, je zal zien dat er niet staat wat er zou moeten staan. Tenminste als het niet aan mij ligt.

Link to comment
  • 0

Mike,

 

Dat " opslaan als BMP" is me niet helemaal duidelijk. Voor zover ik weet converteert Filemaker niet bij het exporteren. M.a.w. als het bronbestand een BMP is dan moet je als BMP op slaan, en als het bronbestan een JPG is dan moet je als JPG op slaan. Het wijzigen van een extentie is niet genoeg. Is het soms zo dat al je bron bestanden in BMP formaat zijn?

Bij mij werkt het prima om een geexporteerde JPG in een webbrowser te bekijken.

 

In het geval van bronbestanden in BMP formaat zou ik overwegen om deze te converteren voordat je ze op het web gebruikt. Je hebt hiervoor gratis tools die het zelfs vanaf de command line (lees: FM) doen.

 

Een voorbeeld converter zal ik bij voegen. Syntax:

 

bmptojpg.exe 

 

Groet,

Wouter.

BMPtoJPG.zip

Link to comment
  • 0
Je hebt hiervoor gratis tools die het zelfs vanaf de command line (lees: FM) doen.

Een voorbeeld converter zal ik bij voegen. Syntax:

 

bmptojpg.exe 

Schrik niet, Wouter, maar ik zit momenteel achter een Windows-computer. Ik wil nu toch wel eens snappen hoe dat zit met het aanroepen van dit soort dingen: dus ik heb BMPtoJPG.exe op "c" staan, ik heb daar ook een bmp-je gezet.

 

Ik heb een veld gemaakt "Locatie exe" en daarin heb ik gezet "c:\BMPtoJPG.exe"

 

Ik heb een calculatie gemaakt:

Locatie exe & " 50 test.bmp"

Die levert als eindresultaat

c:\BMPtoJPG.exe 50 test.bmp

 

Die heb ik eerst geprobeerd via Start > Run en daar werkte het prima

 

Ik heb in FileMaker een script gemaakt met de scriptstap "Send Message". Die send the "open document/applicatie" message met het veld "Runexe_c".

 

En ook dat werkt prima!

 

Vraagjes die overblijven:

- Kun je ook bepalen wat de bestandsnaam van de ontstane jpg wordt?

 

- Kan ik dit op het bureaublad laten plaatsvinden? Welke locatie moet ik dan invullen? Want als ik kijk naar de properties van BMPtoJPG.exe op het bureaublad, dan geeft die daar aan dat hij de locatie "D:\Documents and Settings\support\Desktop" heeft. Maar als ik dat als locatie invul bij het run-commando, dan krijg ik de melding "Cannot find the file 'D:\Documents' (or one of its components)."

 

Sanne-in-de-wondere-wereld-van-Windows

Link to comment
  • 0

Hoi Sanne,

 

- Kun je ook bepalen wat de bestandsnaam van de ontstane jpg wordt?

 

Natuurlijk. Het hangt alleen af van het aangeroepen programma of dit in 1 keer kan. Met dit tooltje lukt dit niet omdat het daarvoor geen optie heeft. Wel kun je een batchfiletje maken die de twee stappen combineert.

 

BMPtoJPG 50 %1%.bmp
ren %1050.jpg %2.jpg

 

Dit bestandje noem je "maak.bat" in FM roep je dit aan met een berekening:

 

_ctMaakJPG="c:\maak.bat 50 "&&" "&

 

- Kan ik dit op het bureaublad laten plaatsvinden? Welke locatie moet ik dan invullen? Want als ik kijk naar de properties van BMPtoJPG.exe op het bureaublad, dan geeft die daar aan dat hij de locatie "D:\Documents and Settings\support\Desktop" heeft. Maar als ik dat als locatie invul bij het run-commando, dan krijg ik de melding "Cannot find the file 'D:\Documents' (or one of its components)."

 

Ja, ook dit kan. Je verwijst hier alleen naar een folder met een lange bestandsnaam (>8 karakters). In dat geval moet je het commando tussen "' zetten. Je kunt dit overigens ook standaard doen om er zeker van te zijn dat het werkt. In jouw geval dus letterlijk:

_ctMaakJPG=""""&"d:\Documents and Settings\support\Desktop\BMPtoJPG.exe 50 Test.bmp"&"""". Overigens is de desktop hier niet zo'n gelukkige keuze omdat iedere gebruiker die inlogt een eigen dekstop folder heeft. Dit commando zal dus alleen werken als je als gebruiker "Support" bent ingelogd.

 

Groet,

Wouter

Link to comment
  • 0

Wouter, het is een beetje puzzelen geweest, maar ik heb het werkend.

 

Op de c-schijf staat het programmaatje BMPtoJPG.exe en daar staat ook een bmp-bestand genaamd "testbmp.BMP".

 

Met WordPad heb ik een bestandje gemaakt, bewaard als tekst met als naam "maak.bat":

BMPtoJPG 50 %1%.bmp
ren %1050.jpg %2.jpg

 

Het staat op dezelfde plek als BMPtoJPG.exe en het bmp-bestand.

 

Vervolgens heb ik "maak.bat" aangeroepen via de scriptstap "Send Message" met de inhoud van een veld waarin stond:

c:\maak.bat testbmp testjpg

(let op dat je de compressiefactor "50" hier dus niet nog een keer meestuurt)

 

Dit leverde inderdaad een mooi jpg-bestand op met als naam "testjpg.JPG"

 

Kan ik dit op het bureaublad laten plaatsvinden?

Ja, dat lukt inderdaad, maar je moet alleen het padnaam naar het programma tussen dubbele aanhalingstekens zetten, de parameters die daarachter staan moeten buiten de aanhalingstekens blijven.

"D:\Documents and Settings\support\Desktop\BMPtoJPG.exe" 50 testbmp.BMP

 

Je beveelt aan om dit niet op het bureaublad te laten plaatsvinden omdat het zo gebruiker-afhankelijk wordt. Wat beveel je wel aan? Dit soort bewerkingen standaard op rootlevel van de c-schijf?

Link to comment
  • 0

Sanne,

 

Je beveelt aan om dit niet op het bureaublad te laten plaatsvinden omdat het zo gebruiker-afhankelijk wordt. Wat beveel je wel aan? Dit soort bewerkingen standaard op rootlevel van de c-schijf?

 

Dit is eigenlijk meer een kwestie van persoonlijke voorkeur. Op rootlevel zou ik zelf niet snel doen omdat dit zo slordig staat. Als je het toch graag op het bureaublad terug wilt zien dan zou ik in gebruik maken van de speciale gebruiker genaamd "All Users" ipv " Support". Je output verschijnt dan ongeacht welke inlognaam jhe hebt gebruikt.

 

Daar naast zullen er genoeg mensen zijn die je tips kunnen geven over het organiseren van je bestanden. Ik zelf ben daar niet zo'n ster in (rommelig karakter).

 

Groet,

Wouter

Link to comment
  • 0

Het probleem was: ik plak een plaatje in een container veld vanuit bijv internet explorer, exporteren lukt dan niet naar jpeg.

 

Als ik een plaatje vanaf de harde schijf invoeg in een container veld onthoud fm de naam en extensie en is exporteren geen probleem.

 

Ik haal dus het plakken knopje onder het container veld weg zodat er altijd een plaatje vanaf de schijf moet worden gekozen.

Link to comment

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