Ga naar inhoud
  • 0

Web-detectie


hbrendel

Vraag

In FM11 had ik een oplossing: Het bestand werd geopend op een layout waar geen objecten aanwezig waren, die contact maakten met een gehoste database. Er werd geen fout gegenereerd. Daarna deed ik een Set Field in de gehoste database. Wanneer daarbij een fout optrad was de user kennelijk niet online en dan kon ik de user de keus geven om off-line te werken.

 

Nu in FM12 wordt de als externe bron aangewezen file direct herkend als niet aanwezig. Nog voordat er enig venster is geopend staat de gehate foutmelding al op het scherm. Die moet ik bevestigen, vervolgens komt het scherm waarin de user het bestand kan zoeken. Dat moet hij cancelen, maar krijg hem maar eens zover, hij zit in verwarring naar zijn scherm te kijken.

 

Hoe kan ik op een user-vriendelijke manier detecteren of er contact is met de server?

Link naar reactie

Aanbevolen berichten

  • 0
Het probleem is dat bij openen FM naar de allereerst in de DB aangemaakte layout springt.
Negative sir :wink: We spreken over een lokale file. Als je niets anders instelt, is de getoonde layout bij opstarten, die layout waarin je laatst een wijziging hebt uitgevoerd. Dat kan je makkelijk testen.

Je kan dit overrulen via de File Options zoals gezegd.

 

Opgelet: het is niet voldoende om alle objecten van een layout te halen om te vermijden dat FileMaker een connectie fout geeft. De layout zelf moet zijn gebaseerd op de TO van een lokale tabel. Als je met zo'n layout opstart krijg je dus géén melding van FileMaker. Zal ik een demo bestand in elkaar boksen met een externe tabel uit een gehoste file?

Link naar reactie
  • 0
Het probleem is dat bij openen FM naar de allereerst in de DB aangemaakte layout springt.
Negative sir :wink: We spreken over een lokale file. Als je niets anders instelt, is de getoonde layout bij opstarten, die layout waarin je laatst een wijziging hebt uitgevoerd. Dat kan je makkelijk testen.

En heb je dat ook getest? In de test die ik zelf heb uitgevoerd wordt namelijk altijd eerst naar de eerst aangemaakte layout gesprongen en pas dan naar de laatst geopende layout. Daarna wordt het script voor het eerst geopende venster gestart.

Heb je een switch to layout bij de file opties aangegeven dan wordt wél direct naar die aangegeven layout geswitched waarmee het hier besproken probleem kan worden omzeild.

 

De volgorde van de procedures bij openen is daarom volgens mij:

 

- Indien aangevinkt, switch naar de layout die is aangegeven in de file opties

- is dat niet aangevinkt ga dan naar de eerst aangemaakte layout (dit kan ook de eerste layout in de lijst van layouts zijn, dat heb ik niet getest)

- Vul de gegevens op de layout (objecten, velden, etc). Wanneer dit een object bevat waarvoor gegevens uit een ander bestand nodig zijn wordt dat bestand geopend. Hier krijg je dan de hier besproken foutmelding indien dat bestand niet kan worden gevonden.

- Indien geen switch is aangegeven, ga dan naar de layout waarop het bestand het laatst was afgesloten en vul de gegevens

- presenteer het venster en voer de openings script uit.

 

In de tweede stap zit het probleem. Dit zou de laatst gebruikte layout moeten zijn en niet de eerst aangemaakt.

Link naar reactie
  • 0
In de test die ik zelf heb uitgevoerd wordt namelijk altijd eerst naar de eerst aangemaakte layout gesprongen en pas dan naar de laatst geopende layout. Daarna wordt het script voor het eerst geopende venster gestart.

Heb je een switch to layout bij de file opties aangegeven dan wordt wél direct naar die aangegeven layout geswitched waarmee het hier besproken probleem kan worden omzeild.

Hi Felix, volgens mijn ervaring heeft Joris wel degelijk gelijk.

Een bestand opent altijd op de de layout waarop het bestand , "bij stand-alone/lokaal gebruik", is afgesloten op het moment dat er werkelijk wijzigingen in dat bestand hebben plaatsgevonden. Plaats je dat bestand daarna op een server dan zal altijd die layout eerst worden geladen en daarna wordt pas de inlog/script/goto-layout uit de bestandinstellingen uitgevoerd.

In de tweede stap zit het probleem. Dit zou de laatst gebruikte layout moeten zijn en niet de eerst aangemaakt.

Dit gebeurt ook, maar alleen wanneer je aan 2 voorwaarden voldoet:

1) Je werkte er de vorige keer lokaal/stand-alone in

2) Je hebt toen werkelijk iets gewijzigd

probeer het maar ;-)

 

Overigens was in FM6 en -6 het zo dat de layout waarop je afsloot altijd werd gebruikt om op te starten en sinds FM7+ de manier zoals Joris die beschrijft ..

Link naar reactie
  • 0

Aha, dan is dat hier het probleem. Ik heb nog even een vereenvoudigde test uitgevoerd en het klopt wat jullie zeggen. In mijn eerdere tests had ik geen wijziging aangebracht waardoor FM telkens naar dezelfde layout sprong. Dank jullie voor de verduidelijking en sorry voor de verwarring. De oplossing is dan dus duidelijk.

 

TS moet een wijziging aanbrengen op de layout zonder gerelateerde objecten/velden of naar die layout switchen bij de open file opties. Voorheen werd volgens mij de layout geopend waarop je het bestand had afgesloten.

Link naar reactie
  • 0

Ik bedacht nu trouwens dat dit een ernstig beveiligingsprobleem zou kunnen opleveren wanneer je het laatst een layout hebt gewijzigd waarop informatie staat die voor de gewone gebruiker niet beschikbaar moet zijn. Denk aan bijvoorbeeld gegevens voor jou als ontwikkelaar. Door dan in FMPA de scriptdebugger aan te zetten, waardoor deze vòòr uitvoeren van het openingsscript om je credetials vraagt kun je de laatst bewerkte layout wellicht inzien. :oops:

Link naar reactie
  • 0
En heb je dat ook getest?
Ik plaats niks op een forum dat ik niet eerst heb getest 8)
Ik bedacht nu trouwens dat dit een ernstig beveiligingsprobleem zou kunnen opleveren wanneer je het laatst een layout hebt gewijzigd waarop informatie staat die voor de gewone gebruiker niet beschikbaar moet zijn.
Dat leek me sterk want de beveiliging van FileMaker steekt écht wel goed in elkaar. Ik heb het daarom ook even getest :wink: Je kan op je twee oren slapen: er is helemaal niks te zien. FileMaker wil eerst weten wie je bent.
Link naar reactie
  • 0
Je kan op je twee oren slapen: er is helemaal niks te zien. FileMaker wil eerst weten wie je bent.

Bedankt voor de test. Dat stelt mij idd weer helemaal gerust en excuses wanneer je je door mijn eerdere opmerking tekort gedaan voelt. Ik had het bij het verkeerde eind omdat ik zelf de test niet goed heb uitgevoerd. :oops:

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