Herhalende subformulieren en subformulieren met meerdere pagina's maken

U kunt een subformulier overal op een pagina plaatsen. Wanneer een formulier met een grote hoeveelheid gegevens wordt samengevoegd, kan het echter gebeuren dat het subformulier wordt vergroot tot voorbij de onderste rand van de gegenereerde pagina. Om dit te voorkomen kunt u de optie Pagina-einden binnen inhoud toestaan selecteren, waardoor het subformulier in tweeën wordt gedeeld. Of u maakt de selectie van deze optie ongedaan, zodat het gehele subformulier boven aan de volgende gegenereerde pagina begint. Als u een subformulier op deze manier op de volgende pagina laat beginnen, worden eventueel geneste subformulieren samen op dezelfde pagina weergegeven. Selecteert u de optie Pagina-einden binnen inhoud toestaan niet, dan kan het goed zijn om een subformulier voor overloop bovenaan en onderaan te maken. (Zie Informatie over overloop bovenaan en onderaan.)

Bij het samenvoegen van gegevens wordt de inhoud van een subformulier door de server uitsluitend binnen de grenzen van inhoudsgebieden geplaatst. Wanneer een grote hoeveelheid gegevens wordt samengevoegd met een van de objecten op een subformulier, kan het subformulier meerdere formulierpagina's beslaan. Als een formulierpagina vol is, wordt automatisch nog een identieke pagina gegenereerd en wordt het plaatsen van het subformulier voortgezet op de nieuwe pagina, tenzij u de stroom expliciet naar een ander inhoudsgebied of een basispagina stuurt. Wanneer een formulier meerdere inhoudsgebieden of basispagina's bevat, kunt u aangeven of een subformulier in een bepaald inhoudsgebied moet worden geplaatst of overeenkomstig de opgegeven basispagina.

Een herhalend subformulier maken

  1. Selecteer in het palet Hiërarchie het bovenliggende subformulier van het subformulier dat u wilt herhalen. (Zie Subformulieren.)

  2. Klik in het palet Object op het tabblad Subformulier en selecteer Overlopen in de lijst Inhoud.

  3. Selecteer het subformulier dat moet worden herhaald.

  4. Klik in het palet Object op het tabblad Subformulier en selecteer Geplaatst of Overlopen in de lijst Inhoud.

  5. Klik op het tabblad Binding en selecteer Subformulier herhalen voor elk gegevensitem.

  6. Als u een minimumaantal herhalingen wilt opgeven, selecteert u Min. aantal en typt u een aantal in het bijbehorende vak. Als deze optie is ingesteld op 0 en er geen gegevens zijn opgegeven voor de objecten in het subformulier wanneer de gegevens worden samengevoegd, wordt het subformulier niet geplaatst wanneer het formulier wordt gegenereerd.

  7. Als u een maximumaantal herhalingen van het subformulier wilt opgeven, selecteert u Max en typt u een aantal in het bijbehorende vak. Als u geen waarde opgeeft in het vak Max, is het aantal herhalingen van het subformulier oneindig.

  8. Als u een setnummer van subformulierherhalingen wilt opgeven, ongeacht de hoeveelheid gegevens, selecteert u de optie Eerste telling en typt u een aantal in het bijbehorende vak. Als u deze optie selecteert en er geen gegevens beschikbaar zijn of er minder gegevensvermeldingen zijn dan opgegeven bij Eerste telling, worden lege exemplaren van het subformulier toch in het formulier geplaatst.

    Opmerking: De waarde in het vak Eerste telling moet liggen tussen de waarden voor Min. aantal en Max. Als er geen waarde is opgegeven voor Min. aantal of als de waarde 0 is, krijgt Eerste telling standaard de waarde 0.

Een subformulier opgeven dat meerdere pagina's bevat

Subformulieren kunnen overal in een formulierontwerp worden geplaatst. Wanneer echter een grote hoeveelheid gegevens wordt samengevoegd, is het mogelijk dat het subformulier meer ruimte in beslag neemt en verder loopt dan de onderkant van de pagina die wordt weergegeven.

Om een dergelijke situatie aan te pakken, kunt u ofwel een pagina-einde invoegen in het midden van het subformulier ofwel ervoor zorgen dat het volledige subformulier moet verschijnen bovenaan op de volgende pagina die wordt weergegeven. Als u een subformulier op deze manier op de volgende pagina laat beginnen, worden eventueel geneste subformulieren samen op dezelfde pagina weergegeven.

Wanneer de gegevens worden samengevoegd, wordt de inhoud van een subformulier alleen geplaatst binnen de grenzen van de inhoudsgebieden. Wanneer een relatief grote hoeveelheid gegevens wordt samengevoegd met een van de objecten op een subformulier, kan het subformulier meerdere formulierpagina's beslaan.

Wanneer een formulierpagina vol raakt, wordt automatisch een extra identieke pagina gegenereerd. Het vervolg van het subformulier wordt op de nieuwe pagina geplaatst, tenzij u de overloop expliciet doorstuurt naar een ander inhoudsgebied of een andere basispagina. Wanneer een formulier meerdere inhoudsgebieden of basispagina's bevat, kunt u aangeven of een subformulier in een bepaald inhoudsgebied moet worden geplaatst of overeenkomstig de opgegeven basispagina.

Instellen dat een subformulier meerdere pagina's kan beslaan

 Klik in het palet Object op het tabblad Subformulier en selecteer Pagina-einden binnen inhoud toestaan.

Als deze optie niet is ingeschakeld, worden de objecten in het subformulier op dezelfde pagina geplaatst.

Informatie over overloop bovenaan en onderaan

Aangezien de lengte van een formulier met een flexibele indeling varieert, afhankelijk van de hoeveelheid gegevens die met het formulier worden samengevoegd, zijn formulieren met een flexibele indeling vaak langer dan één pagina. In dergelijke gevallen is het heel effectief om subformulieren die op meerdere pagina's worden herhaald, te laten beginnen en eindigen met een subformulier voor overloop bovenaan en onderaan. Elk subformulier dat is ingesteld op Positie-inhoud kan voor overloop bovenaan of onderaan worden gebruikt. In onze inkooporder bijvoorbeeld, is het subformulier detail ingesteld op Positie-inhoud en Herhalen voor elk gegevensitem. Wanneer het formulier wordt samengevoegd met gegevens en er op de eerste pagina onvoldoende ruimte is voor alle exemplaren van het detailsubformulier, wordt er een nieuwe pagina toegevoegd en stromen de gegevens verder naar het volgende inhoudsgebied.

Als gegevens op deze manier over meerdere pagina's stromen, kan het zijn dat u op elke nieuwe pagina een bepaalde tekst wilt zien, bijvoorbeeld 'Vervolg van vorige pagina' of specifieke opmaak zoals een kolomkopregel met de omschrijvende labels voor elke gegevenskolom. Met kolomkopregels op elke volgende pagina is het uiteindelijke formulier veel makkelijker te volgen voor de gebruikers. U kunt dit bereiken door een subformulier voor overloop bovenaan te maken dat zal fungeren als kolomkopregel voor elke extra pagina. In het voorbeeld van de inkooporder is het subformulier detailHeader ingesteld als overloop bovenaan. Het resultaat is dat boven aan elke nieuwe pagina een kopie van het subformulier detailHeader wordt geplaatst vóór het eerste detailsubformulier.

Zo kan het ook zijn dat u na het laatste herhaalde subformulier onder aan de pagina informatie wilt opnemen, behalve op de laatste pagina. U wilt bijvoorbeeld de tekst 'Vervolg op volgende pagina' onder aan deze tussenliggende pagina's invoegen. Hiertoe maakt u een subformulier voor overloop onderaan voor het herhaalde subformulier, op dezelfde manier als u het subformulier voor de overloop bovenaan hebt gemaakt.

Wanneer een subformulier naar de nieuwe pagina stroomt, worden de volgende bewerkingen uitgevoerd door de server:

  • De overloop onderaan wordt op de huidige pagina geplaatst.

  • De overloop bovenaan wordt op de volgende pagina geplaatst.

  • Het dynamische subformulier en de rest van de herhaalde objecten worden op de nieuwe pagina geplaatst.

Een subformulier voor overloop bovenaan is een speciaal soort subformulier met positie-inhoud dat boven aan de volgende pagina wordt weergegeven als er zich een overloop voordoet.

Overloop bovenaan is vergelijkbaar met de koptekstrij in een standaardtabel. De koptekstrij wordt boven aan de tabel weergegeven en bevat een omschrijving voor elke kolom in de tabel. U kunt de tabel zo opmaken dat, wanneer de tabel overloopt naar de volgende pagina, de koptekstrij bovenaan op de nieuwe pagina wordt herhaald. Op deze manier is de informatie in de tabel gemakkelijker te begrijpen voor lezers die door de pagina's bladeren.

De werking van een subformulier voor overloop bovenaan is hiermee vergelijkbaar. Als u opgeeft dat een specifiek subformulier moet worden gebruikt als overloop bovenaan voor een subformulier dat wordt herhaald, wordt het subformulier voor overloop bovenaan één keer weergegeven aan het begin van het herhalende subformulier, boven aan de huidige pagina en op elke volgende pagina.

Het herhalende subformulier wordt zo vaak als nodig toegevoegd wanneer de gegevens worden samengevoegd. Als er geen ruimte meer is op de eerste pagina, wordt er een nieuwe pagina toegevoegd en worden de gegevens voortgezet op de volgende pagina tot alle gegevens zijn verwerkt. Het subformulier voor overloop bovenaan wordt eenmaal boven aan elke pagina weergegeven.

U ziet een voorbeeld van hoe een subformulier voor overloop bovenaan wordt gebruikt in het voorbeeldformulierontwerp waarvan de indeling wordt aangepast aan de gegevens die worden opgenomen met Designer. Het voorbeeld, Purchase Order.xdp, bevindt zich in de map Samples, waar Designer is geïnstalleerd op uw systeem. In dat voorbeeld fungeert het subformulier met de naam detailHeader als subformulier voor overloop bovenaan voor het herhalende subformulier genaamd detail.

Een voorloop is een subformulier dat wordt weergegeven voor een herhalend subformulier. Als u een nevengeschikt subformulier definieert net boven een herhalend subformulier en het vervolgens opgeeft als overloop bovenaan, hebt u het gedefinieerd als voorloop en als overloop bovenaan.

Een subformulier voor overloop onderaan wordt weergegeven onder aan de volgende pagina als er zich een overloop voordoet. Gebruik een overloop onderaan om informatie op te geven die slechts eenmaal wordt weergegeven, nadat alle gegevens zijn geplaatst.

Een naloop is een subformulier dat net onder een herhalend subformulier wordt weergegeven. Als u een subformulier definieert net onder een herhalend subformulier en het vervolgens opgeeft als overloop onderaan, hebt u het gedefinieerd als naloop en als overloop onderaan.

Overlopen bovenaan en onderaan maken en toewijzen

Een overloop bovenaan of onderaan is een subformulier met positie-inhoud dat u aan elk herhalend subformulier kunt toewijzen. Doorgaans maakt u eerst het subformulier dat als overloop bovenaan of onderaan zal worden gebruikt. Vervolgens wijst u het toe aan een herhalend subformulier en stelt u de overloopeigenschappen in.

Als het subformulier voor overloop bovenaan ook wordt behandeld als voorloop, wordt het in het palet Hiërarchie net boven het subformulier geplaatst. Als het subformulier voor overloop onderaan ook wordt behandeld als naloop, wordt het in het palet Hiërarchie net onder het subformulier geplaatst.

Een subformulier als overloop bovenaan of onderaan maken

  1. Maak een formulierontwerp met alle subformulieren die u nodig hebt.

  2. Zoek in uw formulierontwerp het subformulier dat u wilt gebruiken als overloop bovenaan of onderaan, selecteer het en voer een van deze handelingen uit:

    • Kijk in het palet Object op het tabblad Subformulier. Controleer of in het vak van de vervolgkeuzelijst Inhoud de optie Geplaatst wordt weergegeven. Klik in het palet Object op het tabblad Subformulier en zorg ervoor dat Geplaatst is geselecteerd in de lijst Inhoud.

    • Kijk in het palet Object op het tabblad Binding. Klik in het palet Object op het tabblad Binding en selecteer Subformulier herhalen voor elk gegevensitem om de overlopen bovenaan en onderaan te laten weergeven voor meer dan één overloop. Voorlopen en nalopen worden niet meegeteld in dit getal.

Een overloop bovenaan of onderaan toepassen op een subformulier

  1. Selecteer de subformulieren die u wilt herhalen.

  2. Klik in het palet Object op het tabblad Binding en stel het subformulier in op herhalen door de optie Subformulier herhalen voor elk gegevensitem in te schakelen.

  3. Klik in het palet Object op het tabblad Paginering en geef in het vak Overloop een inhoudsgebied of een pagina op waar de overloopsubformulieren moeten worden geplaatst.]

  4. Als u een overloop bovenaan wilt instellen, selecteert u in de lijst Overloop bovenaan het subformulier dat u wilt gebruiken als het subformulier voor overloop bovenaan voor het huidige herhalende subformulier. U kunt ook Nieuw selecteren in de lijst Overloop bovenaan om een nieuw subformulier voor overloop bovenaan te maken en toe te wijzen.

  5. Als u een overloop onderaan wilt instellen, selecteert u in de lijst Overloop onderaan het subformulier dat u wilt gebruiken als het subformulier voor overloop onderaan voor het huidige herhalende subformulier. U kunt ook Nieuw selecteren in de lijst Overloop onderaan om een nieuw subformulier voor overloop onderaan te maken en toe te wijzen.

    Opmerking: Het is niet noodzakelijk om zowel een overloop bovenaan als onderaan te hebben. Het hangt volledig af van het formulier of u een van beide, beide of geen overlopen nodig hebt.