cubalibre Geplaatst: 8 juli 2008 Delen Geplaatst: 8 juli 2008 Hoe krijg ik het voor elkaar om in een script een bepaald veld zo te kopieren dat het naar de eerste legen veld bij een herhalend veld word geplaatst. De bedoeling is dat in een herhalend vel de laatste 25 leveringen zichtbaar zijn en zodra er 25 vol zitten de laatste leeg gehaald kan word. Weet niet of dat laatste mogelijk is maar met met het eerste gedeelte ben ik al heel blij. Thanks Quote Link naar reactie
0 JeanWM Geplaatst: 8 juli 2008 Delen Geplaatst: 8 juli 2008 Alhoewel een aanpassing van de structuur van je toepassing mer aangewezen zou zijn, zodat je de lijst in een portal kunt tonen.... Dit script maakt het eerste lege repeating veld actief. De rest plak je er gewoon achteraan.... Go to Field Loop If[ Left(RightWords(Status(CurrentAppVersion);1);1)="4" ] // Ik weet niet welke versie lager dan 6 je hebt, dit maakt een check om de juiste functie te kunnen gebruiken Exit Loop If[ IsEmpty(GetRepetition(Repeating; Status(CurrentRepetitionNumber))) or FieldRepetitions(Status(CurrentFileName); Status(CurrentLayoutName); Status(CurrentFieldName)) = Status(CurrentRepetitionNumber) ] Else Exit Loop If[ IsEmpty(GetRepetition(Repeating; Status(CurrentRepetitionNumber))) or Status(CurrentRepetitionNumber) = 10 // Pas dit cijfer aan volgens het aantal reps dat je hebt in het veld ] End If Go to Next Field End Loop Rest van de actie Quote Link naar reactie
0 cubalibre Geplaatst: 9 juli 2008 Auteur Delen Geplaatst: 9 juli 2008 Hey thanks, ga het even proberen Alhoewel een aanpassing van de structuur van je toepassing mer aangewezen zou zijn, zodat je de lijst in een portal kunt tonen.... Dit script maakt het eerste lege repeating veld actief. De rest plak je er gewoon achteraan.... Go to Field Loop If[ Left(RightWords(Status(CurrentAppVersion);1);1)="4" ] // Ik weet niet welke versie lager dan 6 je hebt, dit maakt een check om de juiste functie te kunnen gebruiken Exit Loop If[ IsEmpty(GetRepetition(Repeating; Status(CurrentRepetitionNumber))) or FieldRepetitions(Status(CurrentFileName); Status(CurrentLayoutName); Status(CurrentFieldName)) = Status(CurrentRepetitionNumber) ] Else Exit Loop If[ IsEmpty(GetRepetition(Repeating; Status(CurrentRepetitionNumber))) or Status(CurrentRepetitionNumber) = 10 // Pas dit cijfer aan volgens het aantal reps dat je hebt in het veld ] End If Go to Next Field End Loop Rest van de actie Quote Link naar reactie
0 cubalibre Geplaatst: 9 juli 2008 Auteur Delen Geplaatst: 9 juli 2008 Volgens mij werkt het wel maar het is niet helemaal wat ik wil. De bedoeling is zodra men een print maakt van een formulier het script diveren velden in een veld "samenvatting" zetten achter elkaar. Dit is het probleem nog niet voor mij maar het gaat erom dat het in een herhalend veld komt te staan en dat telkens de meest recente bovenaan staan. Voorbeeld. Veld 1 = 10.000 Veld 2 = CubaLibre Veld 3 = Klant 1 Veld 4 = huidige tijd en datum Na het volgens van een sript moet er een herhalend veld komen met bovenaan. Samenvatting - 10.000 - CubaLibre - Klant 1 - 11:10-07-012-2008 Zodra er een volgend script word gestart moet de deze weer boven aan in het herhalende veld "Samenvatting" komen. Zodra het samenvattingveld het maximum bereikt heeft moet vanzelf de laatste worden verwijdert zodat er weer plek is. Hoop dat het zo duidelijk is. Ik heb geen ervaring met herhalende velden de rest komt ik wel uit. Quote Link naar reactie
0 JeanWM Geplaatst: 9 juli 2008 Delen Geplaatst: 9 juli 2008 Een duidelijke design flaw. Alhoewel ik enkel een vermoeden heb van het mogelijk gebruik van je toepassing, is het aangewezen om het geheel relationeel te maken. Repeating fields zijn hier niet aan te raden, eerder af te raden. Wat je wil bereiken kan eenvoudig met een omgekeerd gesorteerde portaal op een relatie. Quote Link naar reactie
0 cubalibre Geplaatst: 9 juli 2008 Auteur Delen Geplaatst: 9 juli 2008 Een duidelijke design flaw. Alhoewel ik enkel een vermoeden heb van het mogelijk gebruik van je toepassing, is het aangewezen om het geheel relationeel te maken. Repeating fields zijn hier niet aan te raden, eerder af te raden. Wat je wil bereiken kan eenvoudig met een omgekeerd gesorteerde portaal op een relatie. Ik zal eens kijken of ik eruit kom binnenkort, heb zo vermoeden dat ik hier ook even hulp voor nodig heb om de juiste richting om te gaan. Thanks in ieder geval. Quote Link naar reactie
0 cubalibre Geplaatst: 5 augustus 2008 Auteur Delen Geplaatst: 5 augustus 2008 Voor zover ben ik er redelijk uit maar nu het volgende. Is het mogelijki op bepaalde herhalende velden te tonen zoals jij dat wil. Ik heb nu dus 50 herhalende velden en deze moeten ik tonen maar 50 naast en onder elkaar word erg veel. Is het mogelijk dat ik twee rij afzondelijk van elkaar maak en daar in een deel herhalend veld 1 t/m 25 en bij de andere herhalend vel 26 t/m 50 weergeef. Ook vroeg ik me af of het volgende ook naar een herhalend veld kan verwijzen. Vel en dan herhalend vel 1. If(PatternCount( "Vel" &Machine_1_velnr &"¶" , "Vel" & "1" & "¶")>0,Vel_1, If(PatternCount( "Vel" &Machine_1_velnr &"¶" , "Vel" & "2" & "¶")>0,Vel_2, If(PatternCount( "Vel" &Machine_1_velnr &"¶" , "Vel" & "3" & "¶")>0,Vel_3, If(PatternCount( "Vel" &Machine_1_velnr &"¶" , "Vel" & "4" & "¶")>0,Vel_4, Groetjes Ed Quote Link naar reactie
0 AvD Geplaatst: 5 augustus 2008 Delen Geplaatst: 5 augustus 2008 Je blijft dus bij die herhalende velden. Dat is niet slim. Je zou beter Jean's advies volgen en je erbij neerleggen dat FileMaker in het verre verleden repeating fields gebruikte omdat er toen nog geen relationele structuren mogelijk waren: het kon gewoon niet anders. Om een aantal vreemde redenen zijn de repeating fields blijven bestaan nadat FileMaker "go relational" gehoord had, maar het is uiterst zelden een goed idee om die vandaag nog te gebruiken. Je bent dus VERKEERD bezig. Ik herhaal: je bent VERKEERD bezig. Quote Link naar reactie
0 cubalibre Geplaatst: 5 augustus 2008 Auteur Delen Geplaatst: 5 augustus 2008 Je blijft dus bij die herhalende velden. Dat is niet slim. Je zou beter Jean's advies volgen en je erbij neerleggen dat FileMaker in het verre verleden repeating fields gebruikte omdat er toen nog geen relationele structuren mogelijk waren. Om een aantal vreemde redenen zijn de repeating fields blijven bestaan, maar het is uiterst zelden een goed idee om die te gebruiken. Je bent dus VERKEERD bezig. Ik herhaal: je bent VERKEERD bezig. Het is zo dat ik een programma gemaakt heb zonder herhalende velden alleen word er gezegd dat die langzaam is omdat er vrij veel velden instaan. Dat is de reden dat ik het programma wil opzetten, echt langzaam is die niet maar sneller kan die wel al ligt dit ook deels aan het netwerk. Dus niet aan beginnen? Quote Link naar reactie
0 cubalibre Geplaatst: 5 augustus 2008 Auteur Delen Geplaatst: 5 augustus 2008 Nee. Oke, thanks Quote Link naar reactie
0 JeanWM Geplaatst: 6 augustus 2008 Delen Geplaatst: 6 augustus 2008 Is het mogelijki op bepaalde herhalende velden te tonen zoals jij dat wil. Ik heb nu dus 50 herhalende velden en deze moeten ik tonen maar 50 naast en onder elkaar word erg veel. Is het mogelijk dat ik twee rij afzondelijk van elkaar maak en daar in een deel herhalend veld 1 t/m 25 en bij de andere herhalend vel 26 t/m 50 weergeef. Dit kan vanaf FileMaker Pro 7, maar kon niet in versie 6. ...zonder herhalende velden alleen word er gezegd dat die langzaam is omdat er vrij veel velden instaan. Veel velden zal bijna geen invloed hebben op de snelheid van de toepassing. Wel de manier waarop die velden worden gebruikt achter de schermen, bij berekeningen, het type van veld, de onderlinge nodige acties tussen die velden, enz. Quote Link naar reactie
Vraag
cubalibre
Hoe krijg ik het voor elkaar om in een script een bepaald veld zo te kopieren dat het naar de eerste legen veld bij een herhalend veld word geplaatst.
De bedoeling is dat in een herhalend vel de laatste 25 leveringen zichtbaar zijn en zodra er 25 vol zitten de laatste leeg gehaald kan word.
Weet niet of dat laatste mogelijk is maar met met het eerste gedeelte ben ik al heel blij.
Thanks
Link naar reactie
11 antwoorden op deze vraag
Aanbevolen berichten
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.