Ga naar inhoud
  • 0

Overzetten van gegevens naar bijgewerkte versie


moriz

Vraag

Ik heb me suf gezocht op het forum maar geen oplossing gevonden voor het volgende. Ik hoop dat iemand me kan helpen.

 

Ik heb een oplossing ontwikkeld voor één reclameburo. Daarna is dezelfde oplossing door een ander reclameburo eveneens in gebruik genomen. Ikzelf ben de 3e gebruiker van dezelfde oplossing. En er zit een goede kans in dat de 4e gebruiker binnenkort aan de slag wil met dit pakket.

 

Vanzelfsprekend hou ik bij het doorontwikkelen rekening met het feit dat ik maar één van de bestanden aanpas om dubbel werk te voorkomen. Ik bied de gebruikers dus op gezette tijden een update aan. Daartoe sturen ze mij hun bestand en ik laat dan voor de andere 2 gebruikers de gegevens in de aangepaste versie (lege kloon) lopen en stuur deze retour.

 

MAAR... dat gaat nu allemaal handmatig! 8O

 

Weliswaar heb ik een script gemaakt dat de import van de tabellen per tabel aanstuurt maar dan nog moet ik steeds handmatig de juiste brontabel van het te importeren bestand aankiezen (de doeltabel kan ik wel auto-instellen door in het script eerst de juiste layout te kiezen). Per tabel moet ik ook mijn admin login steeds opnieuw ingeven. Aangezien mijn oplossing zo'n 20 tabellen kent is dat veel typwerk... Dat moet toch makkelijker kunnen? Tenslotte zijn alle tabellen en veldnamen volledig identiek...

 

Ik zoek dus een oplossing waarbij ik met het aankiezen van een script (en maximaal één keer login ingeven) achterover kan gaan zitten en wachten tot alle tabellen zijn ingelopen en de update daarmee een feit is.

 

Iemand enig idee (en misschien zelfs een voorbeeldje) hoe dat aan te pakken? Ook als mijn aanpak gewoon verkeerd is: spaar mij niet! ;)

Link naar reactie

10 antwoorden op deze vraag

Aanbevolen berichten

  • 0

beste moriz,

 

Je hebt de concessie gevonden die Filemaker gedaan heeft om het gebruiksgemak voor de eindgebruiker zo groot mogelijk te laten zijn.

 

Wat je beschrijft is de puzzel van elke ontwikkelaar en ieder heeft zijn eigen idee over oplossingen.

 

Een paar tips (en ook ik houd me aanbevolen voor meer...):

- Je kan bestandsverwijzingen beheren in FM7+. Dat betekend dat je een vaste locatie kunt definiëren waar je de 'oude' bestanden neerzet. Die locatie kan je ook gebruiken in je import scripts.

- Hoewel FM bij het openen van een bestand probeert het met het account van het huidige bestand te openen, schijnt dat bij de import-script-stap achterwege te blijven. Probeer van te voren de bestanden te openen.

- Doordat FM7+ externe tabellen aan kan, kan je een los bestand maken om alle importhandelingen in te verzamelen. Dan is het niet nodig import scripts te maken in de oplossing zelf en kan je alles op 1 plek afhandelen.

 

doe er je voordeel mee

 

rmw

Link naar reactie
  • 0

Bedankt voor de tips rmw. :)

 

- Het aankiezen van een vast importplek is al onderdeel van het script, dus die stap sla ik al over, maar is een prima tip natuurlijk.

- Het open zetten van de bestanden is lastig omdat je dan 2 bestanden met identieke naam open hebt staan (plus voor elk hoofdbestand een aantal bijbestanden in dit geval, ook allemaal met identieke namen). Ik meen me te herinneren dat Filemaker dat niet lekker vindt...?

- Je 3e tip kan ik niet plaatsen. Ik begrijp eigenlijk niet wat je ermee bedoelt...? :oops:

Link naar reactie
  • 0

Goeie tips rmw!

 

Tip 3 betekent dat je een apart bestand gaat maken voor alle importhandelingen in plaats van de scripts te integreren in je applicatie-bestanden. In dat apart bestand (bijvoorbeeld 'migratie.fp7) haal je alle benodigde bron- en doeltabellen op. Daarvoor gebruik je twee bestandsverwijzingen (file references): één naar de nieuwe applicatie en één naar de oude.

 

Die aanpak levert een pak voordelen op:

_Je 'vervuilt' je applicatiefile niet met migratie-logica, die blijft netjes gescheiden: ik bedoel daarmee niet alleen de scripts maar ook de hulprelaties die je misschien nodig hebt

_je kan in je migratiefile bron- en doeltabellen (TO's bedoel ik) namen geven die meer betekenis hebben in de context van de migratie

Link naar reactie
  • 0

Oud nieuws natuurlijk maar scheiding van gui en data maakt dat updaten vaak alleen maar inhoudt dat de gui-file vervangen moet worden.

Als de update ook de aanmaak van nieuwe velden behelst lever je een nieuwe datafile mee waarin een importscript is opgenomen.

Je zou zover kunnen gaan door een installer te maken die de update geheel voor zijn rekening neemt.

Het mooiste zou natuurlijk zijn dat bestaande backend automatisch nieuwe velden aanmaakt....

Nu ik er over nadenk meen ik mij te herinneren dat er ooit een plugin beschikbaar was die met een script velden kon aanmaken. Dat zou het hele updategebeuren sterk vereenvoudigen.

 

gr.,

Arnoud

Link naar reactie
  • 0

Als de update ook de aanmaak van nieuwe velden behelst lever je een nieuwe datafile mee waarin een importscript is opgenomen. 

 

Daar gaat het juist om: het is mooi als je kan vermijden dat je data file 'clutter' bevat die enkel nodig is voor migratie van gegevens. Vaak heb je voor een migratie niet alleen scripts maar ook hulp-TO's nodig in je relatiediagram voor het omzetten van gegevens. Als die dingen kan je evengoed in een afzonderlijke en tijdelijke migratiefile stoppen.

 

Ik ben het volledig met je eens dat je dat procédé via een installer kan automatiseren. Dat werkt.

 

Veel groeten,

Joris

Link naar reactie
  • 0

Hmm ik krijg opeens zin om een heleboel overbodige tabelletjes op te gaan ruimen... ;)

 

Dat van die Installer klinkt super... Iemand een linkje waar ik daarover meer info kan vinden? Ik heb dáár nog geen kaas van gegeten. Dus als je voor mij een beginnetje hebt... Ik hou me aanbevolen.

Link naar reactie
  • 0

Helaas heb ik geen voorbeeldjes meer liggen.

Toen ik een half jaar geleden de betreffende DVD/RW in mijn PC-drive stak heeft Vista die maar meteen even geformatteerd. Ik wil eraf zijn of ik onbewust 1x op een knopje heb gedrukt, maar link is het wel.

 

Er zijn zat freeware installers te downloaden. Ik zou zeggen probeer er eens een paar uit dan krijg je vanzelf inspiratie. In beginsel zet die installer bestandjes op de juiste plek van je harde schijf en kan hij een file opstarten. Je kan zelf wat extra intelligentie toevoegen door een Visual Basic scriptje of een Batchfile door die installer aan te laten roepen die bijv. wat extra handelingen verricht, zoals het verplaatsen van oude files.

Met een VBS bestandje kan je in beginsel FMP scripts activeren zonder de file te openen (Zie site ConnectingData.com). Een installer heb je niet echt nodig, met een simpele batchfile en een FMP migratiebestandje kom je ook al een heel eind, v.z.v. het een PC betreft. Je zou zelfs een FMP bestandje als installer kunnen gebruiken d.m.v. SendEvents en evt. met batchfiles.

 

Voor de Mac zijn ongetwijfeld ook de nodige installers te krijgen en kan je gebruik maken van Apple-script.

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