Jump to content
  • 0

Herhalend veld,


cubalibre

Question

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 to comment

11 answers to this question

Recommended Posts

  • 0

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

Link to comment
  • 0

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

Link to comment
  • 0

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.

Link to comment
  • 0

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.

Link to comment
  • 0
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.

Link to comment
  • 0

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

Link to comment
  • 0

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.

Link to comment
  • 0
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?

Link to comment
  • 0

 

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.

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