Jump to content
  • 0

Alternatieve afbeelding


Stardust

Question

Na eindeloos zoeken en dankzij heel veel hulp van verschilende gebruikers van dit forum is het me uiteindelijk gelukt een foto op de layout te tonen en ondertussen werkt dit systeem nu toch al enkele jaren. Maar nu zoek ik me reeds geruime tijd te pletter naar een volgende oplossing:

 

Wanneer er van betrokkene geen foto bestaat, zou ik graag toch een afbeelding op de layout willen tonen, dit staat nu eenmaal veel netter dan de foutboodschap die Filemaker in het (berekende) containerveld plaatst 'Dit bestand kan niet worden gevonden: bestandsnaam.jpg'.

 

Aangezien de foto geplaatst wordt aan de hand van allerlei berekeningsvelden die gebaseerd zijn op de inhoud van de veldwaarden van het record, kan er geen test gedaan worden op het betrokken (berekende) containerveld daar hoe dan ook er altijd inhoud is in dit veld, hetzij de bedoelde afbeelding en indien er geen afbeelding bestaat de tekst 'Dit bestand kan niet worden gevonden: bestandsnaam.jpg'.

 

Vanzelfsprekend voelt u mij reeds komen ... kan ik dit ondanks toch nog oplossen zodat wanneer er geen foto van het record (slechts één afbeelding per record) bestaat er een andere afbeelding i.c. een containerveld dat via een relatie getoond wordt?

 

Ik kijk graag uit naar alle antwoorden maar zonder ondankbaar te willen tonen wil ik het gebruik van plugins ten zeerste vermijden.

 

 

Met dank bij voorbaat en vriendelijke groet,

 

 

Danny 8)

 

PS: ik stem morgen tegen de brug ... dan nog liever meer (gratis!) tunnels!

Link to comment

Recommended Posts

  • 0

Harry,

 

 

Bedankt voor de snelle reactie ... maar dit kan ik inderdaad niet ...

 

De fotos staan elders op externe server en d.m.v. een samenvoeging (berekening) wordt de link gemaakt en vervolgens de foto getoond in het betrokken containerveld.

 

Het probleem is dat ik op geen enkele wijze kan controleren (via FM vanzelfsprekend) of dat deze al of niet echt bestaat. :roll:

 

Wanneer ik een controle doe op dat bewuste containerveld (rekenveld met als resultaat container) krijg ik altijd hetzelfde resultaat daar deze inhoud altijd gebaseerd is op de inhoud van de velden van het record. Concreet wordt de samenstelling gemaakt d.m.v. :

 

"imagewin:/" & path & "/" & Veld:Achternaam & " " & Veld:Voornaam & " .jpg"

 

Voor alle duidelijkheid, het gaat hier om FM 8.5 en Windows XP (of VISTA of 7).

 

 

Alleszins bedankt voor het mee denken!!

 

 

MVG,

 

Danny 8)

Link to comment
  • 0
... wil ik het gebruik van plugins ten zeerste vermijden.

Waarom eigenlijk?

 

Wel dit is héél eenvoudig dan moet ik deze aankopen op eigen kosten, testen en uitvoerig testen en maar hopen dat het allemaal werkt binnen de bestaande configuratie en dan heel hard bidden dat ik het terug betaald krijg en gezien ik atheist ben, is mijn geloof in de overheid niet echt groot te noemen vandaar dat ik liever geen gebruik maak van plugins 8O

 

MVG,

 

Danny

Link to comment
  • 0
Knutselen:

 

plaats achter je "imageveld" een globaalveld met en standaard plaatje, dit wordt automatisch afgedekt door een wél aanwezige image.

 

Gr

Harry

 

 

Beste Harry,

 

Geloof me, de knutselfase ben ik reeds voorbij en ook hier haalde ik geen bevredigend resultaat als ik het me nog goed kan herinneren ... de tekst 'Dit bestand kan niet worden gevonden: bestandsnaam.jpg', blijft steeds verschijnen, helaas, en een andere kleur van tekst brengt evenmin soelaas :?

 

Maar toch bedankt voor de tip! 8)

Link to comment
  • 0
... dan moet ik deze aankopen op eigen kosten, testen en uitvoerig testen en maar hopen dat het allemaal werkt binnen de bestaande configuratie en dan heel hard bidden dat ik het terug betaald krijg ...

Het lijkt me dat iemand die bepaalde functionaliteit wenst, die alleen met een plug-in bereikt kan worden, hier gewoon voor betaalt. Zo niet, dan geen functionaliteit.

Testen en uitvoerig testen moet je altijd, met of zonder plug-ins.

 

Met plug-ins zijn soms bijzondere dingen mogelijk en sinds de gratis ScriptMaster (http://www.360works.com/scriptmaster/) ben ik geneigd te denken dat alles mogelijk is.

 

Ik heb zelf developer licenses van 24U SimpleDialog, Troi File Plug-in, CNS SMTPit, CNS FTPit, Dacons MenuControl en MyFmButler PrinterSwitch. Deze gebruik ik bijna allemaal in elke toepassing die ik maak en ze hebben zichzelf allang terugbetaald.

 

Henk

Link to comment
  • 0

Als je nu de melding krijgt bestandsnaam.jpg niet gevonden betekend dit dat er geen file gevonden wordt met de naam "bestandsnaam.jpg".

Als je een standaard foto of plaatje maakt met zoiets als photoshop en je bewaart dat als bestandsnaam.jpg op de plaats waar alle foto's staan laat fm dus dat plaatje zien als er niet iets anders is ingevoerd.

 

Of heb ik het helemaal mis?

 

Gr. Niels

Link to comment
  • 0

Ik weet natuurlijk niet wat er allemaal aan voorwaardes is om het plaatje op te halen maar ik zou het zo doen:

Maak een extra container veld aan met global opslag. Plaats deze onder het normale container veld. Het normale container veld maak je "doorzichtig"

Het global container veld vul je met het standaard plaatje. Dat is dus altijd zichtbaar tenzij je dus een plaatje invoeg.

Het container veld laat je leeg in je berekening als er dus geen plaatje aanwezig is. Mocht dit om de een of andere reden dit niet lukken werk dan met een berekening container als tussen oplossing. Die laat of het global plaatje zien of het plaatje wat via de berekening getoond wordt. Voorwaarde is dus wel dat als er geen plaatje aanwezig is de container leeg is.

Contact Management.fp7

Link to comment
  • 0
Ik weet natuurlijk niet wat er allemaal aan voorwaardes is om het plaatje op te halen maar ik zou het zo doen:

Maak een extra container veld aan met global opslag. Plaats deze onder het normale container veld. Het normale container veld maak je "doorzichtig"

Het global container veld vul je met het standaard plaatje. Dat is dus altijd zichtbaar tenzij je dus een plaatje invoeg.

Het container veld laat je leeg in je berekening als er dus geen plaatje aanwezig is. Mocht dit om de een of andere reden dit niet lukken werk dan met een berekening container als tussen oplossing. Die laat of het global plaatje zien of het plaatje wat via de berekening getoond wordt. Voorwaarde is dus wel dat als er geen plaatje aanwezig is de container leeg is.

 

Pjotter,

 

Bedankt, dit is zeer nuttig en ik kijk zo snel als mogelijk of ik dit kan integreren, jouw voorbeeldbestand werkt alleszins zoals ik het zou wensen. Ik houd je (en de anderen vanzelfsprekend) op de hoogte ...

 

Het lijkt me dat iemand die bepaalde functionaliteit wenst, die alleen met een plug-in bereikt kan worden, hier gewoon voor betaalt. Zo niet, dan geen functionaliteit.

Testen en uitvoerig testen moet je altijd, met of zonder plug-ins.

 

Met plug-ins zijn soms bijzondere dingen mogelijk en sinds de gratis ScriptMaster (http://www.360works.com/scriptmaster/) ben ik geneigd te denken dat alles mogelijk is.

 

Ik heb zelf developer licenses van 24U SimpleDialog, Troi File Plug-in, CNS SMTPit, CNS FTPit, Dacons MenuControl en MyFmButler PrinterSwitch. Deze gebruik ik bijna allemaal in elke toepassing die ik maak en ze hebben zichzelf allang terugbetaald.

 

Henk

 

Beste Henk,

 

Je hebt overschot van gelijk ... en ik hoop dat je het me niet kwalijk neemt, maar niet iedereen hier is zelfstandig ontwikkelaar en bijgevolg zijn plugins voor sommigen onder ons geen echt alternatief. Sommige broodheren zijn verdomd moeilijk te overtuigen van dergelike bijkomende functionaliteit zeker wanneer men er rekening met houdt dat Filemaker niet bepaald een lowcost programma te noemen is.

 

Tot spijt van de plugin ontwikkelaars (die ik zeer waardeer trouwens) vind ik het erg dat men relatief veel geld spendeert aan een product en dan achteraf nog bijkomende investeringen dient te doen om bijkomende functionaliteit te verkrijgen, die en dit weerom volgens mijn bescheiden mening, reeds in FM dient ingebouwd te zijn. Ik heb deze discussie reeds gevoerd en heb begrip voor alle standpunten maar eveneens voor m'n eigen standpunt vanzelfsprekend :wink:

 

Als zelfstandig ontwikkelaar vertrekt men van een andere en zeer begrijpbare basis, deze bijkomende kosten kunnen verrekend worden in het project, maar het hoeft geen betoog dat zeker ten tijde van recessie het idealer zou zijn dat dit niet hoefde en deze ontwikkelaars hetzij hun product goedkoper zouden kunnen plaatsen of hun eigen winst vergroten.

 

Alleszins toch bedankt voor je antwoorden en ik bekijk zeker de opgegeven links!! :lol:

 

 

Met vriendelijke groet en vooral dank aan al de geciteerden en aan al de andere topic deelnemers evenals aan de lezers ... nu maar hopen dat ik niemand vergeet :oops:

Link to comment
  • 0

Helaas maar geen soelaas ...

 

De oudste truc uit het boekje, we nemen de alternatieve afbeelding en plaatsen daar het afbeeldingsveld over werkt evenmin daar de tekst v/d berekening dan getoond wordt :?

 

Het voorbeeld van pjotter werkt evenmin binnen mijn situatie ... nochtans zou dit de oplossing moeten zijn, in geval er geen effectieve foto bestaat dient er een alternatieve afbeelding getoond worden. Maar dit lukt niet daar men steeds een resultaat in het veld Foto heeft. Dit veld is een berekening zoals in mijn eerste bericht bovenaan omschreven met als resultaat een container of in mensentaal een foto. Wordt er op dit pad niets gevonden, verschijnt de befaamde tekst (zie bovenaan) dus is er steeds een inhoud zodat de inhoud niet kan getest worden via een expressie als IsEmpty of Case(veld_Foto = "") want er is steeds een (niet gewenste) inhoud :evil:

 

Waarschijnlijk zal ik er maar met dienen te leven, weerom helaas ... maar misschien dat hiervoor in FM 17 of 18 hiervoor een oplossing aangereikt wordt :roll:

 

Desondanks toch iedereen bedankt voor het mee denken :D

 

Greetz 2 All,

 

Danny 8)

 

PS: hierna de combinatie van de 2 velden over elkaar, u ziet ongetwijfeld (de voor mij) ergerlijke tekst :evil:

Image1.jpg

Link to comment
  • 0

Het probleem zit dus in het opzetten van de database en het container veld. Ik ben dan ook zeer benieuwd naar de berekening die je maakt om de foto op te halen? Daar zul je het echt in moeten zoeken. Een ander alternatief maar niet zo mooi is om elke keer dat plaatje te plaatsen in elk record.

Je moet dan de pasfoto overschrijven. Dan is er dus altijd de foto en als er een pasfoto is overschrijf je die.

Link to comment
  • 0

Pjotter,

 

Hierna de gebuikte velden, ik hoop dat het niet te gecompliceerd is ... :roll:

Candidate_PathCalc

 

Case(

TypeExam = "SRC"

;

"imagewin:/" & Substitute( Candidate_Path; "\\"; "/") & "Photo_SRC/" & Left(Candidate_Name;1) & "/"

;

TypeExam = "VHF" or TypeExam = "G-VHF"

;

"imagewin:/" & Substitute( Candidate_Path; "\\"; "/") & "Photo_VHF/" & Left(Candidate_Name;1) & "/"

;l

""

)

 

Candidate_PhotoPath

 

If

(

not IsEmpty (Candidate_Name) or not IsEmpty (Candidate_Initials)

;

Candidate_PathCalc & Candidate_Photo_Name

;

""

)

 

 

Candidate_PathCalc

 

Case(

TypeExam = "SRC"

;

"imagewin:/" & Substitute( Candidate_Path; "\\"; "/") & "Photo_SRC/" & Left(Candidate_Name;1) & "/"

;

TypeExam = "VHF" or TypeExam = "G-VHF"

;

"imagewin:/" & Substitute( Candidate_Path; "\\"; "/") & "Photo_VHF/" & Left(Candidate_Name;1) & "/"

;

""

)

 

Candidate_Photo

 

Candidate_PhotoPath

 

 

MVG,

 

 

Danny 8)

Link to comment
  • 0

Ik ga niet te ver in op deze opdracht :D omdat ik er vanuit ga dat je dit na veel trial and error werkend heb gekregen op jouw systeem.

Ik werk sporadisch met windows en FM (kan het wel eventueel draaien maar windows is bij mij helemaal ingericht voor access :oops: )

ALs je systeem in de formule minimaal dus die tekst plaatst met dat het er geen plaatje op het path is, dan moet je daar dus eerst de oplossing voor hebben. Er moet dus ten alle tijden een foto staan of de container moet niet als laatst naar een leeg pad verwijzen? Maak dus de laatste voorwaarde niet leeg maar plaats dus het path van de dummy foto? of pas je veld aan met VHF of G-vhf of SRC met een 4e mogelijkheid 0? (zie voorbeeld bijgevoegd)

ContactManagement.fp7

Link to comment
  • 0

Danny

 

Is de foutcodes een oplossing. Ik heb het niet volledig getest en ik weet niet of de deze foutcode al in 8,5 zit, maar volgens mij werkt het voorbeeld van pjotter wel voor jouw met de vergelijking:

 

Case(Get ( LaatsteFout ) ≠ 114;Image Data Copy;Image Data)

 

Succes

 

Henk

Link to comment
  • 0
Waarschijnlijk zal ik er maar met dienen te leven, weerom helaas ... maar misschien dat hiervoor in FM 17 of 18 hiervoor een oplossing aangereikt wordt :roll:

 

Waarschijnlijk is het wel eerder opgelost :wink:

In FM10 zit al een functie Get( DocumentPathListing ) die voor im- en export controles in server side scripts kan worden gebruikt.

Maar FM heeft geheel volgens zijn eigen traditie 'als je het doet, doe het dan net niet volledig' de functies Get( DesktopPath ), Get( FilePath ) en Get( TemporaryPath ) NIET voorzien van een Listing variant.

Dus we er weer net niet.....

 

Bovendien moet ik toegeven dat de Listing functie voor een berekening in een database ook niet optimaal is, want je krijgt een lijst terug van alle, en dan ook echt alle, bestanden terug uit de documenten map. Inclusief alle submappen en op OS X zelfs met alle bestanden IN de eventueel aanwezige pakketten (de manier waarop applicaties zijn samengesteld).

Ze lijkt bedoelt voor een script...

 

We wachten af :roll:

 

Maar....

 

Voor je probleem is dus in een veldberekening geen oplossing, maar ik weet niet in hoeverre een scriptmatige check mogelijk soelaas kan bieden.

Als je de samengestelde bestandsnaam via een variabele gebruikt in de stap InsertFile in een globaal containerveld, dan geeft je script in elk geval een fout terug als het bestand niet bestaat. Bij een fout kan dan het record waar je zit gevlagd worden en met die vlag kan je een berekening maken die het juiste plaatje laat zien.

 

Maar je zult eens in de zoveel tijd het controle script moeten draaien over de hele database.....

 

rmw

Link to comment
  • 0
Waarom zet je die foto's eigenlijk niet direct in de database?

Het zou dan een stuk eenvoudiger zijn.

Gr.

 

Tackenco,

 

Ik begrijp heel goed wat je wil zeggen maar wanneer je tienduizenden records hebt is dat echt niet vanzelfsprekend hoor. Het is trouwens oude FM school dat je de afbeeldingen extern plaatst en enkel een verwijzing naar de afbeelding in je bestand verwerkt.

 

Het is helaas niet zo dat bij het effectief invoegen van een foto de grootte van je database exponentieel stijgt met de grootte van deze afbeelding maar dat deze per afbeelding veel groter wordt. Komt daarbij ook dat hoe groter je bestand wordt on 'onwerkbaarder' (foei wat een slecht woord :oops: ) het wordt!

 

Ik vrees dat rmw het bij het rechte eind heeft en dat het niet echt mogelijk is, rest me eventueel het 360 script eens te bestuderen dat Hendrik hiervoor aanhaalde ... Alleszins mocht ik een resultaat bekomen zal ik het met de (Clarify) wereld delen :wink:

 

 

Maar toch bedankt voor het meedenken hoor.

 

 

Met vriendelijke groet,

 

 

Danny 8)

Link to comment
  • 0

Ik heb de mooplugin ook even geprobeerd voor de ftp-functie.

Het lukt mij om een pagina aan te maken in FM en deze te uploaden naar de server. Alles gaat dus goed.

Echter, het lukt mij slechts 1 keer.

Dan moet ik FM afsluiten en opnieuw opstarten om het opnieuw te kunnen uploaden.

Dus per sessie is slechts 1 upload mogelijk.

 

Iemand een idee waar dit in kan zitten?

Alle scripts zijn nagekeken, daar zit het niet in.

Link to comment
  • 0

Ik heb geen ervaring met de Mooplugin, maar het kan zijn dat je FTP verbinding niet wordt afgesloten na de upload.

 

In je script zal je waarschijnlijk inloggen. Vaak is echter het aantal gelijktijdige connecties per account gelimiteerd, en kan je je dus niet opnieuw inloggen als je al een openstaande sessie hebt.

 

Heb dit ook voorgehad via AppleScript FTP upload... en dan moet je even wachten tot de FTP server je zelf er af gooit. Via AppleScript heb ik het dan opgelost door er een FTP close connection command achter te gooien, ik ga er vanuit dat dit ook bestaat voor de MooPlugin

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