Jump to content
  • 0

Oude applicaties herbouwen: struikelblokken


Nicky

Question

Posted

Beste mensen,

Ik ben al lange tijd bezig een oude applicatie, gebouwd in FMP 2 (!) en tjokvol herhalende velden (!!), te herbouwen. Het project nadert zijn eerste definitieve test. Maar met name in de user interface duiken nogal wat struikelblokken op. Ik vraag me af of een van jullie inventieve geesten daar suggesties over heeft.

 

Het zou te ver voeren de hele applicatie uit te leggen (dat wil ik overigens via backchannel best doen). Maar het hoofddoel is het berekenen van prijzen voor material handling systemen (lopende banden, distributie centra apparatuur etc.)

 

Ten grondslag aan alles ligt een soort produkt catalogus. Bij ieder produkt, dat een unieke code heeft, hoort een lijst van componenten. De gebruiker kies in een andere file op basis van de unieke code een produkt. In de oude situatie resulteerde dit in 1 record per produkt, de componenten 'woonden' in enkele herhalende velden.

 

Inmiddels heb ik dit deel van de applicatie omgebouw naar line items files. Afhankelijk van het produkt en de bijbehorende componenten zal; zijn nieuwe file niet slechts 1 record per produkt bevatten, maar zoveel records als er componenten zijn gekozen.

 

Voorbeeld:

een stukje lopende band van type aA heeft 22 componenten. De gebruiker kiest aA op grond van die type code, ziet een lijst in een portal waaruit hij kan kiezen. Als hij 1 motor, een noodstop en een frame kiest, zal zijn file bestaan uit drie records. Vergelijk met vroeger: toen zou dit 1 record zijn geworden met de complete lijst componenten, waarvan bij slechts 3 de gewenste aantallen werden ingevuld.

 

De gebruiker vindt het prachtig dat hij nu al die componenten separaat in zijn file heeft. Hij kan nu immers snel een analyse maken van hoeveel motoren er van een bepaald type inzitten. Hij kan ook bepaalde componenten isoleren etc. Maar hij kent ook situaties waarin hij een lijst wil zien van uitsluitend de hoofd produkten, zonder alle bijbehorende items. In een layout is dit te realiseren via subsummaries en een print preview, maar ik vraag mij af of het ook mogelijk is om het in browse mode te doen.

 

Een portal laat evenveel objecten zien als er zijn, dus van uniekheid komt dan niks terecht. Ik heb het nu tijdelijk opgelost door aan een global een lijst toe te kennen gebaseerd op de waarden van het unieke produktveld. Zo is dan toch een radio buttons lijst te realiseren die redelijk overzichtelijk is.

 

Maar de hamvraag is: zijn er alternatieve mogelijkheden?

 

ter info en bijna tot slot:

Een van de voornaamste opdrachten aan mij bij de herbouw was: niet meer files dan strikt noodzakelijk. Hoewel ik niet zonder meer mij in allerlei bochten wil wringen om alles in 1 file te proppen, is deze opdracht wel degelijk iets om rekening mee te houden. Klant is immers koning! En er zit ook wel een element van redelijkheid in, want deze applicatie draait in al onze vestigingen ter wereld en daar is de expertise niet altijd in gelijke mate aanwezig en riekt een groot aantal files naar gecompliceerdheid. Zelfs als dat niet klopt...

 

Tot slot nog een paar details:

een produkt heeft een unieke code. Aan die code hangen component items. Die items hebben ook een unieke code. Wat voor type component het is (een motor, een steun, een stuk geleideband) wordt aangegeven met keywords. Op die manier kunnen alle typen componenten in een en dezelfde file worden ondergebracht, in plaats van in zoveel tabellen als er typen componenten zijn. De programmeur die streng in de leer is zal wellicht geneigd zijn om te kiezen voor losse tabellen, maar in mijn geval is dat niet zo gebeurd, onder meer vanwege de stricte wensen van de opdrachtgever.

 

Elk advies is welkom!

 

Vriendelijke groet en bedankt voor uw aandacht,

Nicky

6 answers to this question

Recommended Posts

  • 0
Posted

Ik wil even reageren op het zinnetje "Klant is immers koning! ".

Dit is zeer zeker niet het geval. Lees daarover maar eens hoofdstuk V (Aansprakelijkheid van de leverancier) in Informaticacontracten (Uitg. Kluwer Rechtswetenschappen). Kort samengevat komt het erop neer dat de informatica-leverancier (de developer, dus) uit hoofde van zijn professionaliteit door de rechtbanken geacht wordt beter te weten dan zijn klant welke technologieën e.d. moeten gebruikt worden om de software op maat te programmeren. Er werd reeds gevonnist dat de verantwoordelijkheid voor mislukte informaticaprojecten bij de leverancier moest gelegd worden wanneer deze nagelaten had de klant voldoende te informeren. Één zinnetje als voorbeeld: "De verplichtingen die worden opgelegd aan de professionele informaticaleverancier gaan zeer ver en sommige rechtbanken hebben zelfs geoordeeld dat de leverancier moet nagaan of de inlichtingen die hem door de klanten worden gegeven wel correct zijn." (Ibid., p. 28).

 

Met vriendelijke groet

  • 0
Posted

Dat is een lang verhaal, en ik wil graag even reageren op het technische aspect vd zaak.

 

Als ik het even mag samenvatten zoek je waarschijnlijk een soort 'Portal Filter' systeem.

Je wil de informatie in die Portal laten varieren aan de hand van bepaalde settings?

 

Als je overweg kunt met de Engelse taal, dan kan je hier al iets meer vinden.

 

http://forum.filemakerworld.com/viewtopic.php?t=1117&highlight=filter

 

Zoniet laat je maar iets weten, ik moet dan wel een en ander vertalen.

  • 0
Posted

Engels is no problem voor mij als halve Australier (Australische echtgenoot en hebbende geleefd daar gedurende enkele jaren).

 

Een conditional portalfilter werkt niet in mijn situatie. Althans, ik zie niet hoe.

 

Aan alle produkten in de lijst van het bestand zijn zogenaamde positienummers toegekend. Dat is een nummer op de technische tekening dat 1 bepaald stuk of enkele stukken lopende band beschrijft. Die nummers zijn per positie dus uniek, en in de nieuwe line items file kan het zijn dat er 1 of meer records tot die positie behoren.

 

Filteren in de zin van: toon mij alle unieke markcodes per positie zou mogelijk zijn. Maar een lijst gelijkend op een sub summary (met alleen maar vermelding van alle unieke 'occurences' van zo'n positienummer) kan volgens mij niet op die wijze. Wat zou je immers als filter kenmerk moeten intikken? Ik wil juist iets dat hetzelfde biedt als een lijst, zonder dat de gebruiker een filterend kenmerk behoeft in te tikken.

 

Als ik het mis heb hoor ik het graag!

 

Nicky

  • 0
Posted

Natuurlijk is de klant niet altijd koning in dat hij zijn wil compleet en volkomen aan je kan en mag opleggen. Het zou niet verstandig zijn als je nooit tegengas zou geven als programmeur.

 

Echter, ik heb te maken met een interne klant, zijnde mijn voorlopige werkgever. Ik ben op corporate basis aan dit avontuur begonnen. En als er twee wegen zijn naar Rome, waarvan de een minder files oplevert dan de andere, is de strikte voorkeur van mijn interne klant: een oplossing met zo min mogelijk files. Voor de andere oplossing, een meer klassieke database benadering, vind ik geen draagvlak, tenzij het de enige mogelijkheid is om een bepaalde functionaliteit te realiseren.

 

 

Nicky

  • 0
Posted

Beste Nicky,

 

ik vermoed dat je voorlopig nog de kracht van een portal filter onderschat.

 

je kan calculation fields hebben die via interne relaties een bepaalde marker aan of af zetten (in je gerelateerde record)

Je kan dan in je portal enkel die 'marker' records tonen zonder dat de user daar ook maar iets moet voor doen.

Je kan dat volledig dynamisch doen, zonder tussenkomst van de user.

 

De portal filter is inderdaad vooral bedoeld voor het dynamisch laten varieren van de inhoud van je portal adhv parameters.

Zo kan je bvb in een portal een lijst tonen van alle producten en in die zelfde portal een lijst van enkel de producten die nog in stock zijn.

 

Wat jij wil bekomen is misschien te realiseren door het maken van een nieuwe relatie, met de techniek die voorkomt in de portal filter, maar dus met een nieuwe portal op een nieuwe layout ?

Zaak is om de informatie die op je summary report staat voorkomt in de records die je wil tonen in je portal. Dat moet kunnen via interne relaties en calculation fields die summary functions gebruiken op die interne relatie.

:?:?:

  • 0
Posted

Danny, goeiemorgen again!

 

Ik geloof best dat het wellicht kan, maar eerlijk gezegd weet ik niet hoe.

Hoe zie je dat voor je? IK zou op dit moment even niet weten hoe ik via een calculatie voor elkaar kan krijgen dat een veld ervoor zorgt dat de portal begrijpt dat hij alleen de unieke positiecodes weergeeft.

 

Als je zin tijd en inspiratie hebt hoor ik graag meer van je...

 

Nicky

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