Report Builder
Report Builder
Inhoudsopgave INLEIDING................................................................................................................................. 5 VOORSTELLING ...................................................................................................................... 6 Beschrijving van het scherm ..................................................................................................... 6 Beschrijving van de iconen ....................................................................................................... 8 De verschillende tabellen van BOB .......................................................................................... 9 AANMAKEN VAN EEN RAPPORT...................................................................................... 10 Aanmaken van de hoofding van het rapport ........................................................................... 10 ♦ Gegevens van de firma................................................................................................ 10 ♦ Logos........................................................................................................................... 12 ♦ Gegevens van de klant ................................................................................................ 13 ♦ Factuur gegevens......................................................................................................... 14 ♦ Kolomtitels.................................................................................................................. 14 ♦ Aanmaken van groepen............................................................................................... 15 Aanmaken van de detaillijnen van het rapport ....................................................................... 17 ♦ Het subrapport............................................................................................................. 17 ♦ De lijnen van de factuur .............................................................................................. 18 Aanmaak van de voettekst ....................................................................................................... 19 ♦ Aanmaak van gebieden ............................................................................................... 19 ♦ Weergavevoorwaarden................................................................................................ 20 De factuur ............................................................................................................................... 24 Andere functies.......................................................................................................................... 25 Toevoegen van een procedure aan een zone DbTekst............................................................. 25 ♦ Procedures ................................................................................................................... 26 ♦ Fouten bij procedures.................................................................................................. 26 Uitvoering van berekeningen met gegevens............................................................................ 29 Toewijzen van een procedure aan een band ........................................................................... 30 De variabelen.......................................................................................................................... 31 Globale variabelen.................................................................................................................. 32 ♦ Defenitie van een globale variabele ............................................................................ 32 De memo zones........................................................................................................................ 36 Procedure om een spatie i.p.v. een nul weer te geven ............................................................ 38 De basisvaluta weergeven i.p.v. een spatie............................................................................. 40 Resultaat.................................................................................................................................. 41 Tips & tricks .............................................................................................................................. 42 Het huidige saldo weergeven in de layout van een aanmaning of een factuur ....................... 43 Een bedrag weergeven in letters ............................................................................................. 44 Functie 'BlancoBijNul' ............................................................................................................ 45
Report Builder
2
Uitvoeren van berekeningen op bepaalde velden ................................................................... 46 Weergave van de hoofding enkel op de eerste pagina ............................................................ 47 Weergave van de beschrijving van tabellen............................................................................ 48 Importeren en exporteren van documenten............................................................................. 49 De afrondingen ....................................................................................................................... 50 ♦ Eenheidsprijs ............................................................................................................... 51 ♦ Hoeveelheid ................................................................................................................ 51 ♦ Netto prijs.................................................................................................................... 51 De gedefiniëerde layout toepassen voor de hergroeperingsteksten ........................................ 52 ♦ Geen hergroeperingstekst............................................................................................ 53 ♦ Hergroeperingstekst en commentaarlijnen.................................................................. 54 ♦ Parameters voor de layout........................................................................................... 54 Het BTW nummer formateren ................................................................................................. 55 Volgorde van de Variabelen.................................................................................................... 56 Decimalen weergeven in een variabele................................................................................... 59 Eén op twee lijnen inkleuren in de details van de factuur ...................................................... 60 ‘Kopie’ weergeven vanaf het afdrukken van het 2e exemplaar ............................................... 61 Probleem bij het afdrukken van een layout op kettingpapier met een hoofding :................... 62 Printproblemen veroorzaakt door windows............................................................................ 63 Het saldo van de klant weergeven........................................................................................... 63 De omschrijving van een algemene rekening weergeven........................................................ 64 DE omschrijving van een tabelcode weergeven...................................................................... 65 De nog te leveren hoeveelheid weergeven .............................................................................. 66 De waarde weergeven van een veld uit de hoofding van het originele document .................. 67 Een aantal minuten omzetten in uren...................................................................................... 68 Een aantal uren omzetten in minuten...................................................................................... 69 Een bankrekeningnummer formateren .................................................................................... 70 hoeveelheden omzetten naar uren ........................................................................................... 71 De waarde van een veld uit een bestand weergeven ............................................................... 72 De landcode ‘BE’ uit de postcode verwijderen....................................................................... 73 Het bestaan van een bestand controleren ............................................................................... 74 Een bedrag formateren ........................................................................................................... 75 Weergave van het schooljaar (vb : 2006-2007) ...................................................................... 76 De artikelreferentie bij een klant weergeven .......................................................................... 77 De artikelreferentie bij een leverancier weergeven ................................................................ 78 Weergave van informatie uit de hoofding van een klantenbestelling in een leveranciersbestelling (voor directe bestellingen) .................................................................. 79 Weergave van detailinformatie van een klantenbestelling in een leveranciersbestelling (voor directe bestellingen) ................................................................................................................ 80 De maand in letters weergeven ............................................................................................... 81
Report Builder
3
Weergave van de omschrijving van een contract.................................................................... 83 Weergave vaan een prijs uit een prijslijst ............................................................................... 84 Weergave van de omschrijving van een standaardcode (stdcode).......................................... 85 Weergave van de omschrijving van een vak in de BTW aangifte............................................ 86 Nullen toevoegen links van een getal ...................................................................................... 87 Weergeven van commentaar bij artikels over meerdere lijnen............................................... 88 Personaliseerbare rapporten.................................................................................................... 89 Voorbeeld van een personaliseerbaar rapport : de balans van de algemene rekeningen ...... 91
Report Builder
4
INLEIDING Report Builder biedt de mogelijkheid om zowel rapporten als facturen of betalingherinneringen te ontwerpen. De gegevens van BOB evenals andere nuttige functies zijn geïmplementeerd, om het ontwerp zo eenvoudig mogelijk te maken. BOB stelt u een reeks voorgeprogammeerde documenten van elk type ter beschikking (herinneringen en facturen). Deze kunnen aangepast of verbeterd worden naargelang uw behoeften. In deze handleiding beginnen we met een blanco document om zo uiteindelijk tot een typische factuur te komen. Natuurlijk kunnen volgens ditzelfde principe alle mogelijke documenten gemaakt worden.
Report Builder
5
VOORSTELLING De Report Designer, hieronder afgebeeld, is het hoofdscherm voor het ontwerp van een rapport.
BESCHRIJVING VAN HET SCHERM
Het scherm bestaat uit 3 tabbladeren : Calc : hier kunnen de gegevens nodig om een rapport te maken geselecteerd en aangepast worden. Ook kunnen hier procedures aangemaakt worden in de programmeertaal Pascal. Ontwerp : Dit scherm bestaat uit 2 delen. Het eerste bestaat uit taakbalken, menubalken en linialen. Het tweede is het gebied waarin het rapport aangemaakt wordt. Het is in dit gedeelte dat de verschillende banden en elementen van het rapport zullen geplaatst worden. Er zijn standaard drie banden: Koptekst, Details en Voettekst. Koptekst : alle gegevens die in deze band geplaatst worden, verschijnen in de hoofding van elke pagina van het rapport (vb. de gegevens van de klant,….) Detail : bevat de details van het rapport (vb. de lijst van de artikels en hun prijs op een factuur,…)
Report Builder
6
Voettekst : alle gegevens die in deze band geplaatst worden, verschijnen onderaan elke pagina van het rapport. Opmerking : Er zijn nog andere banden zoals Titel of Samenvatting. Hun gebruik en functionaliteit zullen later in deze handleiding worden uitgelegd. Voorbeeld: geeft de mogelijkheid om het rapport de bekijken of af te drukken.
Report Builder
7
BESCHRIJVING VAN DE ICONEN Icoon
Beschrijving Selecteer onderwerp : selectiecursor. Label : een tekstveld invoegen. Memo : voegt een memo veld in (niet zichtbaar op het document). Uitgebreide Tekst: geeft geformatteerde tekst weer. Systeem variabele: geeft een variabele weer (uur, paginanummer, datum,…) Variabele: voegt een variabele voor gebruik in procedures toe. Afbeelding: voegt een afbeelding van het type bitmap, GIF of JPEG toe. Vorm: voegt een vorm (recthoek, cirkel,…) toe. Lijn : voegt een lijn toe (horizontaal, verticaal,…) BarCode: Bar code (klik rechts om een bar code toe te wijzen). DBTekst : voegt een veld vanuit een database toe. DBMemo: geeft een memo veld vanuit een database weer. DBUitgebreide Tekst: geeft geformatteerde tekst weer, afkomsting uit een memo veld van een database. DBCalculator: laat eenvoudige berekeningen met gegevens toe (optelling, aftrekking, …) DBAfbeelding: geeft een afbeelding uit een database weer.. DBBarCode: converteert een gegeven uit een database naar een bar code. Gebied: groepeert verschillende elementen. SubRapport: maakt een subrapport aan in de band : Details Verplaatst een groep van elementen met één pixel. Maakt de afmetingen van alle geselecteerde elementen dezelfde. Lijnt alle geselecteerde elementen uit. : :
Maakt de afstand tussen alle geselecteerde elementen gelijk.. Centreert de geselecteerde elementen. Nieuw Rapport
:
Naam van het datakanaal, -veld: de eerste lijst geeft de naam van de database aan (tabel) , de tweede geeft de name van het veld in deze tabel.
Report Builder
8
DE VERSCHILLENDE TABELLEN VAN BOB Zoals hierboven vermeld, zijn de tabellen opgeslagen in het datakanaal. Ze zijn beschikbaar wanneer een zone voor het weergeven van waarden uit een tabel is geselecteerd. Beschikbare tabellen : Db_Selectie : bevat informatie gerelateerd tot de af te drukken documenten zoals aantal af te drukken exemplaren of ook de lay out code. Db_Artikel : bevat de gegevens met betrekking tot de artikels. (IART.DB). Db_Hoofding : bevat informatie over de hoofding van de documenten (IHDDOC.DB). Db_Detail : bevat gegevens over de details (details band) van de documenten (IHISTO.DB). Db_Klant : bevat gegevens over de facturatie van klanten (COMPAN.DB). Db_Derde_Adr_Lev : bevat gegevens over de leveringen van klanten (COMPAN.DB). Db_Totalen : bevat gegevens over de totalen van documenten (IDOCT.DB). Db_BTW_Ventilatie : bevat gegevens over de BTW ventilatie (ISPTVA). Db_Layout: bevat informatie over het ontwerp van documenten (ILDEF.DB). Db_Detail_Derde: bevat bijkomende informatie over de facturatie van klanten (COMPAN.DB). Db_Config: bevat informatie over het dossier (CONFIG.DB). Db_Prestaties : bevat informatie over de prestaties (USERS.DB). Db_Contact : bevat informatie over de contactgegevens van klanten (CUCCTC.DB)
Report Builder
9
AANMAKEN VAN EEN RAPPORT Om een nieuw rapport aan te maken, klik op Bestand | Nieuw Rapport of op het icoon .
AANMAKEN VAN DE HOOFDING VAN HET RAPPORT Ter herinnering, de hoofding van een rapport komt overeen met de band 'koptekst'. De hier geplaatste gegevens worden bovenaan elke pagina van het rapport weergegeven. In het algemeen bevat de hoofding van een factuur de gegevens van de firma en die van de klant.
♦ Gegevens van de firma. Om een veld uit een tabel in te voegen zijn er twee mogelijkheden :
Via Weergave | Knoppenbalk | Data Overzicht de lijst met tabellen en hun velden weergeven en hieruit het gewenste veld slepen.
Report Builder
10
invoegen. De drop-down menu’s Naam Een zone van het type DBTekst Datakanaal en Data Veld verschijnen vervolgens in de menubalk. Selecteer de tabel DB_Config en het veld ‘Dossiernaam (NAME)’ om de naam van de firma weer te geven.
De zone DB_Tekst geeft nu de inhoud van het veld ‘NAME’ van het bestand DB_Config uit het dossier weer. In de zone DB_Tekst kan u of de inhoud van het geselecteerde veld laten verschijnen, of enkel de naam van het veld. Hiervoor moet de optie Weergave Data uit het menu Weergave al dan niet worden aangevinkt.
Report Builder
11
of Op dezelfde manier voegt u de volgende zones in :
Adr. dossier (ADDR1) Postcode dossier (ZIPCODE) Plaats dossier (LOCALITY) Een tekst (icoon ) « TVA » Landcode BTW dossier (VATCODE) BTW-nr dossier (VATNO)
Voorbeeld :
Het BTW nummer kan geformatteerd worden via de optie Schermformaat in het contextmenu (rechtsklik) van de zone DB_Tekst. Gebruik de code « 000\-000\-000 ;0 ; » voor de zone BTW-nr dossier (VATNO) Om het volgende resultaat te verkrijgen.
♦ Logos In Report Builder is het mogelijk om het logo van de firma toe te voegen via een zone Afbeelding (icoon
).
Om een afbeelding toe te wijzen aan een zone afbeelding, volstaat het om via de rechtermuisknop het contextmenu op te roepen en het menupunt Afbeelding te kiezen.
Report Builder
12
Er zal een zoekvenster verschijnen dat toelaat het afbeeldingsbestand te selecteren. .
Alle zones kunnen geformatteerd worden via de menubalken ‘Formaat’ en ‘Tekenen’. Menubalk Formaat
Menubalk Tekenen
♦ Gegevens van de klant De gegevens van de klant zijn opgeslagen in de tabel DB_Klant. Het toevoegen van een nieuwe zone ‘DB_Tekst’ geeft de mogelijkheid deze tabel te selecteren. Voeg de volgende klantgegevens toe :
Naam 1 derden (CNAME1) Adres 1 derden (CADRESS1) Postcode (CZIPCODE) Plaats (CLOCALITY) BTW ref. (CVATREF) BTW nr (CVATNO), te formatteren via de optie SchermFormaat in het contextmenu.
Plaats de gegevens van de klant in een rechthoek (icoon achtergrond stuurt (via context menu)
) Die u naar de
Voorbeeld :
Report Builder
13
♦ Factuur gegevens De gegevens van de factuur bevinden zich in de tabel DB_Hoofding. Voeg de volgende gegevens toe :
Een label « Factuur nr : » N° document (DOCNO) Een label « Datum: » Documentdatum (DOCDATE) Een label « Vervaldatum : » Vervaldatum (DUEDATE)
Voorbeeld
♦ Kolomtitels De kolomtitels moeten boven de detaillijnen van het document verschijnen ( boven de band Detail). Ze maken dus deel uit van de hoofding en worden op de eerste pagina weergegeven.
Voeg met behulp van zones tekst (
) de volgende kolomtitels toe:
Omschrijving Eenheidsprijs Hoeveelh. % Prijs
U kan de titels formatteren, omkaderen of onderlijnen. Opmerking : u kan het resultaat altijd bekijken in het scherm 'voorbeeld'. Voorbeeld
Report Builder
14
♦ Aanmaken van groepen Een groep maakt het mogelijk om de gegevens op één of meerdere criteria te sorteren. Om een groep aan te maken moet u de band waarin de groep actief moet zijn selecteren en de optie Groepen kiezen in het menu rapport. Het volgende scherm verschijnt:
Het drop-down menu ‘groepen’ bevat alle beschikbare sorteringscriteria voor de geselecteerde band. Het is mogelijk op één of meerdere niveaus te sorteren. In dit voorbeeld gaan we de facturen sorteren op basis van 3 verschillende criteria en in een welbepaalde volgorde. Om een groep toe te voegen, selecteert u de gewenste groep in het drop-down menu en klikt u op de knop ‘Toevoegen’. De groep zal dan in de lijst verschijnen. Maak de volgende groepen aan :
Eénmaal de groepen aangemaakt zijn, bevestigt u de operatie door op de knop OK te klikken. Hierna zullen de banden Groep Koptekst en Groep Voettekst verschijnen. Deze laten toe hergroeperingen uit te voeren. In dit voorbeeld worden bij het afdrukken de facturen eerst gesorteerd op dagboek, dan op fiscaal jaar en tenslotte op documentnummer.
Report Builder
15
Voorbeeld :
Report Builder
16
AANMAKEN VAN DE DETAILLIJNEN VAN HET RAPPORT De detaillijnen van het rapport komen overeen met de band Details. Dit kan bestaan uit één of meerdere Subrapporten ( ). Het subrapport geeft u de mogelijkheid meerdere detailniveaus te creëren of om meerdere rapporten in één af te drukken.
♦ Het subrapport Klik één keer op het icoon subrapport Details.
en voeg het subrapport toe aan de band
De volgende zone voor het subrapport verschijnt :
Een subrapport met een geassocieerd worden met een datakanaal, dit wil zeggen met een database. De naam van deze database moet worden aangegeven in de zone Naam DataKanaal. Selecteer de tabel DB_Detail, de tabel met de factuurdetails. Eéns de tabel is geassocieerd, verschijnt deze in de zone Subrapport. Nadat het Subrapport is toegevoegd, verschijnen twee bijkomende tabbladen onderaan het scherm. Het eerste HoofdTab: DB_Selectie geeft toegang tot het hoofdscherm van het rapport, het tweede toont het Subrapport en geeft ook de mogelijkheid om dit te wijzigen. Het is steeds mogelijk om van het één naar het andere te gaan en omgekeerd.
Scherm subrapport
Het scherm Subrapport is hetzelfde als het hoofdscherm Ontwerp. Het bestaat uit 3 banden: Titel, Details en samenvatting.
Report Builder
17
♦ De lijnen van de factuur Voeg de zones met betrekking tot de lijnen van de factuur toe aan de band Details van het Subrapport. Deze gegevens bevinden zich in de tabel DB_Detail. Ze zullen zo vaak herhaald worden als er artikellijnen in de factuur zijn :
Commentaarlijn. (COMMENT) Eenheidsprijs (PU) Geleverde hoeveelheid (QTYDELIV) Disconto % (PRCDISC) Basis BTW in factuur (CURRBASEAMN)
Plaats de zones zo, dat ze onder hun kolomtitels staan (de kolommen aangemaakt in de hoofding van het hoofdscherm ontwerp.
Report Builder
18
AANMAAK VAN DE VOETTEKST Alle gegevens in deze band ingegeven, verschijnen onderaan elke pagina van het rapport. De voettekst van een pagina bestaat in het algemeen uit verschillende factuurtotalen, BTW of nog bijkomende gegevens over de firma (bankrekeningnummer,…)
♦ Aanmaak van gebieden Het eerste gebied dat we gaan aanmaken, bevat de verschillende totalen en andere BTW-gerelateerde informatie. Voeg een zone gebied
(Region1) aan de band voettekst toe en verander de naam
in ‘RegSummary’ via de zone Er moeten verschillende velden (van DB_Hoofding) toegevoegd worden aan het gebied ‘Regsummary’.
Een label « TOTAAL excl BTW : » Tot art.lijnen in fa (CURRTOTLINE) Een label « - Korting : » Bedr. Korting in bas (CURRDISCAMN) Een label « + BTW: » Bedr. BTW in factuur (CURRVATAMN) Een horizontale lijn Een label « TOTAAL te betalen : » Te betalen in factuur (CURRPAYAMN)
Voorbeeld :
Het gebied bevat ook de zones voor de BTW uitsplitsing van de factuur. De velden hiervoor bevinden zich in de tabel DB_BTW_Ventilatie
BTW-voet 1 (VATCMP_1) Een label « % » BTW-voet 2 (VATCMP_2) Een label « % » BTW-voet 3 (VATCMP_3) Een label « % » Basisbedrag1 (BASEAMN_1) Basisbedrag 2 (BASEAMN_2) Basisbedrag 3 (BASEAMN_3) Bedrag BTW 1 (VATAMN_1)
Report Builder
19
Bedrag BTW 2 (VATAMN_2) Bedrag BTW 3 (VATAMN_3)
Opmerking: via de iconen vorm worden.
en Lijn
kan de BTW tabel verder opgemaakt
Voorbeeld
Het volgend gebied bevat informatie die op de eerste pagina(‘s) van de factuur wordt afgebeeld, indien de factuur meerdere pagina’s bevat. toe in de band Voettekst en hernoem ze Voeg een zone Gebied naar 'RegFooterPage'. Voeg vervolgens een zone Tekst toe: “Zie volgende pagina”.
Nu moeten de gebieden op de juiste pagina’s geplaatst worden. De verschillende totalen moeten zich slechts op de laatste pagina bevinden. Om dit te bekomen voegen we een Systeem Variabele (icoon ) toe aan de gebieden 'RegSummary' en 'RegFooterPage' . Ken aan deze variabelen het type « PaginaNo » (paginanummer) toe. Voorbeeld : gebied
Systeem Variabele
♦ Weergavevoorwaarden In de huidige toestand zullen de twee gebieden die we net in de band Voettekst aangemaakt hebben, op alle pagina’s van de factuur verschijnen. Het is echter niet nodig om de totalen, of de tekst « zie volgende pagina » op elke pagina te zien. Het algemeen totaal moet enkel op de laatste pagina voorkomen en de tekst “zie volgende pagina” op alle andere pagina’s. Daarom moeten we bepaalde voorwaarden van weergave aan de band Voettekst’ toekennen, zodat de gebieden weergegeven worden
Report Builder
20
volgens bepaalde criteria. Deze criteria worden toegekend in de programmeertaal Pascal. Beschrijving Selecteer het tabblad Calc . Ter herinnering, dit gedeelte van het scherm geeft de mogelijkheid om de gegevens voor een bepaald rapport te selecteren en te manipuleren, alsook de optie om procedures in Pascal te maken. Dit scherm toont een ontleding van het geselecteerde rapport : het geeft alle banden in het rapport weer, evenals de objecten in deze banden. Om van het rapport naar het subrapport over te gaan wanneer u zich in het menu Calc bevindt, klikt u op het tabblad HoofdTab voor het hoofdrapport of het tabblad SubRapport voor het subrapport. Ter herinnering, deze tabbladeren bevinden zich onderaan het scherm. Het scherm Calc heeft drie verschillende weergavemodi. Hiertussen kan gewisseld worden door rechts te klikken in de zone Rapport Objecten. U hebt de volgende keuzes: Variabelen : lijst van de variabelen gegroepeerd per band van het rapport ; Gebeurtenissen : lijst van de verschillende beschikbare gebeurtenissen per band ; Module : geeft de verschillende modules weer. Selecteer de weergavemodus Gebeurtenissen en de band Footer. Hernoem de zones region1 et region2 naar RegSummary en RegFooterPage
Rapport Objecten: opsomming van de verschillende onderdelen van het rapport.
Report Builder
21
Gebeurtenis voor Voettekst: lijst van de gebeurtenissen waaraan Pascal code kan worden toegevoegd, naargelang het gekozen onderdeel in Rapport Objecten. Procedure zone: zone voor ingave van Pascal code. Code Knoppenbalk: Dit gedeelte is verdeeld in drie tabbladeren. De inhoud verschilt naargelang het geselecteerde tabblad: Data : opsomming, grootte en type van de beschikbare velden in de geselecteerde tabel. Als het tabblad Data geselecteerd is, ziet u onder Code knoppenbalk:Data een lijst van de beschikbare tabellen. Objecten : Lijst van de beschikbare eigenschappen in functie van het geselecteerde onderdeel. Als het tabblad Objecten is geselecteerd, toont Code knoppenbalk:Rapport Objecten een lijst van de verschillende onderdelen van het rapport. Taal : indien het tabblad Taal is geselecteerd, geeft Code Knoppenbalk : Taal een opsomming van de functies, operators en de verschillende gegevenstypes weer. De lijsten zijn gegroepeerd per categorie en de details worden getoond wanneer ze worden geselecteerd. Er zijn vier gebeurtenissen met Footer geassocieerd : AfterGenerate : betekent dat de toegewezen gebeurtenis zal worden uitgevoerd naa de aanmaak van het rapport. AfterPrint : Betekent dat de toegewezen gebeurtenis zal worden uitgevoerd na het afdrukken van het rapport BeforeGenerate : Betekent dat de toegewezen gebeurtenis zal worden uitgevoerd voor de aanmaak van het rapport. BeforePrint : Betekent dat de toegewezen gebeurtenis zal worden uitgevoerd voor het afdrukken van het rapport. Selecteer de gebeurtenis BeforeGenerate en klik in de procedure zone. DE volgende code verschijnt:
Geeft de volgende procedure in: Procedure FooterBeforeGenerate; Begin if Report.PageNo = Report.PageCount then Begin RegSummary.visible := True; RegFooterPage.Visible := False; end else Begin RegSummary.Visible := False; RegFooterPage.Visible := True; end; end;
Deze procedure geeft de zones RegSummary en RegFooterPage al dan niet weer naargelang het paginanummer. Beschrijving van de procedure: ALS het paginanummer van het rapport gelijk is aan het totale aantal pagina’s van het rapport
Report Builder
22
DAN Het gebied « RegSummary » is zichtbaar Het gebied « RegFooterPage » is niet zichtbaar ANDERS Het gebied « RegSummary » is niet zichtbaar Het gebied « RegFooterPage » is zichtbaar
Report Builder
23
DE FACTUUR
Report Builder
24
ANDERE FUNCTIES TOEVOEGEN VAN EEN PROCEDURE AAN EEN ZONE DBTEKST Bij de facturatie is het mogelijk om een lijn commentaar toe te voegen in het detail van de factuur. In Dit geval is het soms vervelend om een nul te zien op de plaats van de prijs of de hoeveelheid. Daarom gaan we een procedure toevoegen aan deze zones om om deze kleine problemen te vermijden. Toon het subrapport en klik vervolgens op het tabblad Calc. De boomstructuur van het subrapport (linkergedeelte van het scherm) geeft de verschillende onderdelen die ermee geassocieerd zijn weer. De verschillende velden die aangemaakt werden tijdens het ontwerp van het subrapport verschijnen in de vorm van zones, en kunnen hernoemt worden (X = chronologisch nummer, door het systeem toegevoegd aan het veld). Wanneer een van de onderdelen is geselecteerd worden de hieraan toegewezen gebeurtenissen zichtbaar (rechterdeel van het scherm). Voorbeeld
Kies de gebeurtenis OnGetText en klik vervolgens op de zone procedure. onderstaande code verschijnt.
De
'Text' komt overeen met de verkregen waarde bij uitvoering van de procedure. Opmerking: velden,objecten, procedures,… kunnen van het rechterdeel van het scherm rechtstreeks in de procedure gesleept worden.
Report Builder
25
♦ Procedures Schrijf de volgende procedure voor de zone DBTekst die overeenkomt het veld : Db_Detail['Eenheidsprijs (PU)']
De ze procedure toont wel of niet de eenheidsprijs van artikel naargelang van de zone met dezelfde naam. Beschrijving van de procedure : ALS het veld : Db_Detail['Eenheidsprijs (PU)'] gelijk is aan nul DAN, is de waarde van DBTekst17 blanco. ANDERS, is de waarde van DBTekst17 de eenheidsprijs Db_Detail['Eenheidsprijs (PU)']
Hetzelfde type procedure kan ook worden geassocieerd met de andere zones die niet moeten verschijnen als de lijn een commentaar bevat. Voor de geleverde hoeveelheid :
Voor de korting :
Voor het bedrag :
♦ Fouten bij procedures Indien de procedure die u gemaakt hebt niet juist is, geeft Report Builder dit direct aan door de gebeurtenis in het rood weer te geven. Wanneer de procedure correct is, zal dit in het groen worden weergegeven.
Report Builder
26
Een omschrijving van de fout zal worden weergegeven onderaan het procedure scherm:
Fout omschrijving
Alse r geen fouten zijn verschijnt de volgende melding:
Om de procedure te testen, klik met de rechtermuisknop in het procedurescherm om het contextmenu weer te geven. Vervolgens kiest u ‘Compileren’.
Report Builder
27
Voorbeeld voor procedure :
Voorbeeld na procedure :
Report Builder
UITVOERING VAN BEREKENINGEN MET GEGEVENS DBCALCULATOR laat toe om eenvoudige berekeningen (optelling, aftrekking,….) met gegeven te doen in het tabblad Ontwerp. In het subrapport geef de band Samenvatting weer via het menu Rapport | Samenvatting.
toen aan deze band en associeer Bij voorbeeld, voeg een zone DBCalculator hiermee het veld Geleverde hoeveelheid (QTYDELIV) om de totale hoeveelheid van de factuur te bekomen.
Voorbeeld :
Report Builder
29
TOEWIJZEN VAN EEN PROCEDURE AAN EEN BAND Wijs aan de gebeurtenis 'BeforeGenerate', van de band Detail in het Subrapport de volgende procedure toe :
Deze procedure zet de tekst van het onderdeel DBTekst16 (veld Commentaarlijn (COMMENT)) in cursief wanneer de eenheidsprijs, de basis van de BTW in de factuur, en de leveringshoeveelheden gelijk zijn aan nul. Voorbeeld :
Report Builder
30
DE VARIABELEN Voeg een variabele toe aan het gebied RegSummary in de band Voettekst van het hoofdrapport. Aan deze variabele kunnen we nu een procedure toewijzen. De variabele kan verschillende types hebben:
Boolean: waar of vals Datum Tijd DatumTijd : datum en uur Integer Enkel Dubbel Uitgebreid Valuta Karakter String: tekst
In dit geval gaan we een wettelijke tekst toevoegen in het geval er een medecontractant is. Het type van de variabele kan worden aangepast via het drop-down menu 'Data Type'. Selecteer de zone 'Variable1' en wijs er het type string aan toe :
Voeg de volgende procedure toe aan de gebeurtenis OnGetText van de Variabele :
De tekst komt overeen met de inhoud van de variabele. Deze procedure maakt het mogelijk om een bepaalde tekst weer te geven als de BTW code gelijk is aan « NSCS 0 » (BTW medecontractant).
Report Builder
31
GLOBALE VARIABELEN Door deze variabelen kunnen we een waarde definiëren die zowel in het hoofdrapport als in de subrapporten opvraagbaar is.
♦ Defenitie van een globale variabele Selecteer het tabblad Calc van het hoofdrapport. Selecteer in het contextmenu van de zone 'Rapport Objecten' de optie Module om de zone 'Module Weergave' weer te geven.
Wij gaan bv. een totaal maken van de prijzen excl. BTW van de artikels, in fukctie van hun type. Om te beginnen, dienen er twee variabelen, HAR en SOF, van het type valuta aangemaakt te worden: Om globale variabelen de declareren, klik op en geef in de procedure zone het volgende in:
van de module Declaraties
Na het afdrukken moeten de variabelen geherinitialiseerd worden naar nul. Om dit te verkrijgen associeer de onderstaande procedure met de gebeurtenis AfterPrint van het object Footer in Rapport Objecten.
Report Builder
32
Voeg in het gebied RegSummary vier labels toe en schik zoo p de volgende manier :
Een tekst «TOTAAL HARDWARE » Een tekst «TOTAAL SOFTWARE » Een tekst «LabelHAR» zal het totaal bevatten van artikels van de categorie « HAR » Een tekst « LabelSOF» zal het totaal bevatten van artikels van de categorie « SOF »
Hernoem, via Rapport Objecten, de labels die te totalen per categorie zullen bevatten naar ‘LabelHAR’ en ‘LabelSOF’
Opmerking: om te hernoemen, klik tweemaal langzaam op het te hernoemen onderdeel.
Report Builder
33
Voeg om het totaal van de basisprijzen excl. BTW van de artikels in functie van hun categorie te krijgen, de volgende procedure toe aan de gebeurtenis 'BeforeGenerate’ van Detail in het Subrapport :
Verklaring van de procedure : ALS de categorie van het artikel gelijk is aan « HAR » (HARDWARE) DAN is de variabele HAR gelijk aan de variabele HAR plus de basisprijs van het artikel ALS de categorie van het artikel gelijk is aan « SOF » (SOFTWARE) DAN is de variabele SOF gelijk aan de variabele SOF plus de basisprijs van het artikel
In het tabblad Calc van het hoofdmenu, moeten de variabelen HAR en SOF toegewezen worden aan LabelHAR en LabelSOF om hun waarden weer te geven:
Report Builder
34
Verklaring van de procedure : De tekst weergegeven door een zone van het type tekst is opgeslagen in de "Caption" (afbeeldbare zone van het object). Daarom moet men dit preciseren in de procedure. De « caption » van de zone labelHAR is gelijk aan de variabele HAR geconverteerd van type valuta naar type string. De « caption » van de zone labelSOF is gelijk aan de variabele SOF geconverteerd van type valuta naar type string.
Report Builder
35
DE MEMO ZONES Memo zones laten toe om een teks top meerdere lijnen toe te voegen. Bij voorbeeld, voeg een zone Memo volgende zone verschijnt :
toe onderaan het gebied 'Regsummary'. De
Om tekst toe te voegen, volstaat het om op de zone rechts te klikken en de optie lijnen…te kiezen in het contextmenu. De memo editor verschijnt dan:
Hier kunnen bv. de financiële gegevens van de firma worden ingegeven. Klik op OK om de tekst vast te leggen. Pas de zone Memo aan aan de hoogte van de tekst en de breedte van de pagina. Door middel van de menubalk Formaat kan de grootte van het lettertype veranderd worden, een achtergrondkleur toegekend,.... tot het volgend resultaat bekomen word:
Report Builder
36
Report Builder
37
PROCEDURE OM EEN SPATIE I.P.V. EEN NUL WEER TE GEVEN Soms verkiest men om niets weer te geven wanneer een zone gelijk is aan nul omdat dit niet mooi uitziet. In dit geval moet er een procedure gemaakt worden die een nul vervangt door een spatie. Bekijken web v. een factuur met slechts één enkel BTW percentage ( 21%). De tabel met de BTW uitsplitsingen geeft het volgende resultaat:
Om geen nullen meer weer te geven, wijst u de volgende procedure toe aan de gebeurtenis 'BeforePrint' van de Footer in het hoofdrapport :
Report Builder
38
Resultaat met de procedure :
Report Builder
39
DE BASISVALUTA WEERGEVEN I.P.V. EEN SPATIE BOB Software geeft geen valuta weer als de factuur opgemaakt is in de basisvaluta. Om de valuta te tonen (bv :EUR) wanneer de factuur opgemaakt is in de basisvaluta, moet de volgende procedure aan de gebeurtenis 'OnGetText' van de zone DBTekst van het veld 'Valuta van de factuur' (toe te voegen) :
Report Builder
40
RESULTAAT
Report Builder
41
TIPS & TRICKS Deze rubriek is toegevoegd om het gebruikt van Report Builder te vergemakkelijken. In het eerste deel van Report Builder, hebben we geleerd een document te maken vanuit een leeg document. Deze methode maakt het mogelijk om beter de werking van Report Builder te begrijpen. Wij raden u echter aan een vooraf gedefinieerd document aan uw noden aan te passen, in plaats van een nieuw document te creëren.
Report Builder
42
HET HUIDIGE SALDO WEERGEVEN IN DE LAYOUT VAN EEN AANMANING OF EEN FACTUUR Voeg een variabele OnGetText :
toe en wijs de volgende procedure toe aan de gebeurtenis
Deze functies vindt u terug in het tabblad Taal. Kies vervolgens BOB:
Report Builder
43
EEN BEDRAG WEERGEVEN IN LETTERS Indien u een bedrag in letters wilt weergeven, maak een nieuwe variabele aan in de lay-out en wijs de volgende procedure toe :
Amount : te vervangen door het veld dat de te converteren numerieke waarde bevat. Language : te vervangen door ‘FR’ voor Frans, ‘NL’ voor Nederlands of ‘DE’ voor Duits. Dev : te vervangen door de valuta code van het bedrag. De procedure wordt dus:
Report Builder
44
FUNCTIE 'BLANCOBIJNUL' Deze functie, beschikbaar in het contextmenu, geeft niets weer indien de inhoud van het veld nul is.
Report Builder
45
UITVOEREN VAN BEREKENINGEN OP BEPAALDE VELDEN Indien u berekeningen op bepaalde velden wilt uitvoeren en hieraan een schermformaat wilt toewijzen, moet u geen zone Tekst gebruiken maar een Variabele van het type Valuta :
De berekeningen kunnen worden uitgevoerd via het menu Calculaties in het contextmenu van de variabele. De volgende formule toon bij voorbeeld het reed betaalde bedrag van het totaal van de factuur.
Report Builder
46
WEERGAVE VAN DE HOOFDING ENKEL OP DE EERSTE PAGINA Indien u wil dat de hoofding enkel op de eerste pagina verschijnt, voegt u de volgende procedure toe aan de gebeurtenis BedorePrint in de Header:
De hoofding zal enkel op de eerste pagina afgedrukt worden. Om u te helpen is de procedure beschikbaar in een standaard lay-out.
Report Builder
47
WEERGAVE VAN DE BESCHRIJVING VAN TABELLEN De functie BOBTABLEDECODE wordt gebruikt om de verschillende beschrijvingen van bestanden van het type xxtabel.db. Bijvoorbeeld, om de beschrijving van de betalingsmethode op de lay-out weer te geven: Voeg een nieuwe variabele toe in de band waar u deze informatie wil tonen. Associeer vervolgens de onderstaande procedure met de gebeurtenis OnGetText van de variabele :
U vindt deze functie in het tabblad ‘Taal’ bij BOB:
Report Builder
48
IMPORTEREN EN EXPORTEREN VAN DOCUMENTEN Exporteren en Importeren van documenten gebeurt via de opties Laad van bestand… en Opslaan naar bestand… van het menu bestand.
Een bestand van het type .rtm wordt aangemaakt in de gekozen map.
Report Builder
49
DE AFRONDINGEN Drie nieuwe functies van Report Builder laten toe de eenheidsprijzen, de nettoprijzen en de hoeveelheden af te ronden op dezelfde wijze als BOB. Zonder deze functies zou Report Builder de bedragen afronden zoals ingesteld in de landinstellingen van het configuratiescherm. Deze functies zijn beschikbaar in het tabblad Calc onder de categorie BOB in het tabblad Taal
.
Report Builder
50
♦ Eenheidsprijs De functie FormatUnitPrice vraagt een valutacode als parameter en geeft de DisplayFormat in functie van deze valuta.
♦ Hoeveelheid De functie FormatQuantity vraagt geen parameter en geeft de DisplayFormat afhankelijk van de facturatieopties.
♦ Netto prijs De functie FormatNetPrice vraagt een valutacode als parameter en geeft de DisplayFormat in functie van deze valuta.
Report Builder
DE GEDEFINIËERDE LAYOUT TOEPASSEN VOOR DE HERGROEPERINGSTEKSTEN Via het menu extra |configuratie | opties | commercieel beheer | hergroepering kan u de hergroeperingstekst formatteren.
Om de geformatteerde tekst correct af te drukken in Report Builder, moet de volgende procedure aangemaakt worden en geassocieerd met de gebeurtenis ‘OnPrint’ van het veld DB_Detail (commentaarlijn)
Deze twee velden bevinden zich in het bestand xxIHISTO.db met een boolewaarde juist of fout voor de hergroeperingsteksten.
Report Builder
52
NORMALE COMMENTAARLIJNEN Het is mogelijk een procedure toe te wijzen aan commentaarlijnen. Bijvoorbeeld om de commentaarlijn van een document in het cursief te zetten.
♦ Geen hergroeperingstekst Als er geen hergroeperingstekst wordt gebruikt moet de volgende procedure toegekend worden aan de gebeurtenis ‘OnPrint’ van het veld:
Report Builder
53
♦ Hergroeperingstekst en commentaarlijnen Als in het document tegelijk commentaarlijnen en hergroeperingsteksten voorkomen, moet de volgende test uitgevoerd worden, na het lezen van de velden isbold en isunderline.
♦ Parameters voor de layout De meest gebruikte parameters voor de lay-out van velden zijn:
Normal: om elke andere lay-out te annuleren Bold: om tekst in het vet te zetten Italic: om tekst in het cursief te zetten Strikeout: om de tekst te doorstrepen Underline: om de tekst te onderlijnen
Report Builder
54
HET BTW NUMMER FORMATEREN De volgende procedure past de formattering van het BTW nummer aan in functie van de legislatuur van elk land. Als u werkt met meerdere buitenlandse ondernemingen, is het dus aan te raden deze procedure te gebruiken in plaats van de optie Schermformaat… in het contextmenu van de variabele. Om deze procedure te gebruiken, wijs de functie FormatVatNo(Country, VatNo) toe aan de gebeurtenis 'OnGet Text' van het betreffende veld Country : veld ‘Landcode BTW dossier (VATCODE)' van de tabel Db_Config. VatNo: veld 'BTW-nr dossier (VATNO)' van de tabel Db_Config.
Report Builder
55
VOLGORDE VAN DE VARIABELEN De procedure, gebruikt bij het aanmaken van de gebieden in het voorbeelddossier, toont ons de BTW tarieven in de volgorde waarin ze op de factuur voorkomen ( in de volgorde waarin de artikels zijn ingegeven). Indien de onderneming slechts enkele BTW tarieven gebruikt, kan ervoor gekozen worden om een tabel zoals hieronder te maken, die toelaat de verschillende BTW tarieven in een bepaalde volgorde weer te geven.
De tabel toont dus altijd het basisbedrag en de BTW van de artikels van 6%, 12% tot 21%. De laatste kolom geeft de verpakkingen met statiegeld weer (code LVP). Om het basisbedrag te verkrijgen, wordt de volgende procedure aan de gebeurtenis ‘OnGetText’ van elke variabele toegewezen:
Het is dus nodig om elk veld te testen op 6, 12 of 21%. Is dit het geval, dan wordt de variabele weergegeven.
Report Builder
56
Voor het bedrag van de BTW, associëren we de volgende procedure met de gebeurtenis ‘OnGetText’ van elke variabele:
Als laatste, voor de variabele voor verpakkingen met statiegeld doen we de volgende test : Db_BTW_Ventilatie['BTW-code 1 (VSTORED_1)'] = ‘NSPKS0 :
Report Builder
57
Resultaat:
Opmerking: Het gaat hier om een voorbeeld, de beschreven procedures kunnen worden aangepast aan andere BTW-tarieven.
Report Builder
58
DECIMALEN WEERGEVEN IN EEN VARIABELE Als u wil dat variabelen van het type valuta altijd met hetzelfde aantal decimalen worden weergegeven, moet u deze variabelen formatteren met de volgende procedure: begin Text := FormatCurr('0.00',’veld’) end;
Het aantal nullen komt overeen met het aantal decimalen, terwijl ‘veld’ overeenkomt met de te formatteren zone .
Report Builder
59
EÉN OP TWEE LIJNEN INKLEUREN IN DE DETAILS VAN DE FACTUUR Teken eerst een kader rond de detaillijn van de artikels. Kleur deze lijn in met behulp van de taakbalk Tekenen. Voeg vervolgens de onderstaande procedure toe aan de gebeurtenis BeforeGenerate van de zone Detail :
Resultaat:
Report Builder
60
‘KOPIE’ WEERGEVEN VANAF HET AFDRUKKEN VAN HET 2E EXEMPLAAR Voeg een tekst ‘kopie’ toe in de hoofding van het document.
Wijs de volgende procedure toe aan de gebeurtenis ‘BeforeGenerate’ of ‘BeforePrint’ van de Header:
Opmerking: De waarde van het veld NCOPY begint bij 0 voor het eerste exemplaar. U moet dus de test > 0 invoeren om de tekst 'COPIE' weer te geven vanaf het 2e exemplaar.
Report Builder
61
PROBLEEM BIJ HET AFDRUKKEN VAN EEN LAYOUT OP KETTINGPAPIER MET EEN HOOFDING : Tijdens het printen op kettingpapier (listing) wordt er geen rekening gehouden met hoofdingen en voetteksten, voorgedrukt op deze listing. De gebruiker moet dus aan de ene kant het formaat van het papier definiëren, aan de andere kant de boven- en ondermarges.
Report Builder
62
PRINTPROBLEMEN VEROORZAAKT DOOR WINDOWS Bepaalde printproblemen kunnen voorkomen door het gebruik van verschillende besturingssystemen zoals Windows 98, Windows 2000, Windows XP…op hetzelfde netwerk. Deze verschillende besturingssystemen hebben namelijk verschillende manieren om een naam toe te wijzen aan dezelfde printer.
U zult een andere naam in de lijst vinden, maar alleen de algemene naam moet in het veld van de printer staan. Deze printer moet dezelfde naam hebben op alle machines.
opmerking:
Windows XP geeft automatisch een naam aan de printer, die niet veranderd kan worden. Als dit besturingssysteem wordt gebruikt, is de naam door XP gegeven aan de printer, ook de algemene naam.
Report Builder
63
HET SALDO VAN DE KLANT WEERGEVEN De procedure CurCustOpenBal(CustomerID) laat toe het huidige saldo van een klant te tonen. Deze functie geeft een variabele van het type « valuta » in tegenstelling tot de functie CustOpenBal ,die een waarde geeft van het type « karakter ». CustomerID = Bedrijfsref.(derde) Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnCalc van de variabele (of OnGetText voor CustOpenBal) :
Report Builder
DE OMSCHRIJVING VAN EEN ALGEMENE REKENING WEERGEVEN De procedure GetAccountHeading(Imput, AltHeading) maakt het mogelijk de omschrijving van een algemene rekening weer te geven. Imput = de referentie van de algemene rekening AltHeading = « True » toont de alternatieve omschrijving « False » toont de primaire omschrijving
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
DE OMSCHRIJVING VAN EEN TABELCODE WEERGEVEN De procedure GetCodeHeading(TableId, Code, AltHead) geeft de omschrijving van een tabelcode. TableID : titel van de « tabel » in de categorie algemene rekeningen Code : veld dat de categorie of de referentie van de categorie bevat AltHead : « True » om de alternatieve omschrijving weer te geven « False » om de primaire omschrijving weer te geven
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat : Omschrijving van de categorie van een algemene rekening:
Report Builder
DE NOG TE LEVEREN HOEVEELHEID WEERGEVEN De procedure ActualQtyDelivSolde(aDbk, aFYear, aDocno, aLinkno) beeldt de nog te leveren hoeveelheid af. aDbk : code van het betreffende dagboek aFYear : jaar van het betreffende document aDocno : nummer van het betreffende document aLinkno: lijnnummer van het betreffende document
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnCalc van de variabele :
Resultaat :
Report Builder
DE WAARDE WEERGEVEN VAN EEN VELD UIT DE HOOFDING VAN HET ORIGINELE DOCUMENT De procedure GetDocOriHeader(aDbk, aFYear, aDocno, aField); kan de waarde weergeven van een veld uit de hoofding van het originele document. aDbk : code van het dagboek van het originele document aFYear : jaar van het originele document aDocno : nummer van het originele document aField : naam van het weer te geven veld Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat:
Report Builder
EEN AANTAL MINUTEN OMZETTEN IN UREN De procedure MinToStrTime(min, MaxLength) zet een aantal minuten om in uren. min : aantal minuten MaxLength : lengte van het afbeeldingsformaat van het uur
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
EEN AANTAL UREN OMZETTEN IN MINUTEN De procedure StrTimeToMin(StrTime) zet een aantal uren om in minuten. StrTime : duur
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnCalc van de variabele :
Resultaat : 01 :00 wordt … 60
Report Builder
EEN BANKREKENINGNUMMER FORMATEREN De functie Copy(S, Index, Count); geeft een string van karakters weer met een lengte «Count » vanaf een positie «Index». S : te verwerken waarde Index : positie vanwaar de verwerking begint Count : te verwerken lengte
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
HOEVEELHEDEN OMZETTEN NAAR UREN gebruik van de functie MinToStrTime en StrTimeToMin Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabale :
Resultaat :
Report Builder
DE WAARDE VAN EEN VELD UIT EEN BESTAND WEERGEVEN De functie BobAllTableDecode(TableName, IndexName, IndexKey, FieldName); wordt gebruikt om de waarde van een veld uit een bestand weer te geven. Zo is het bijvoorbeeld mogelijk om de naam en de titel van de contactpersoon weer te geven. TableName : tussen ‘ ‘) IndexName : IndexKey : (gescheiden FieldName :
Naam van de brontabel (zonder dossiercode en extensie, Naam van de index van de tabel ('' indien primaire index) waarde van de indexvelden van de referentietabel door punt-komma’s) naam van het weer te geven veld (tussen '')
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Uitleg van de procedure : Aanmaken van een variabele « temp » van het type String (tekst) . Deze variabele maakt de conceptie en de visualisatie van de functie eenvoudiger. Deze variabele wordt geïnitialiseerd met de waarde van de velden van de index van de referentietabel. Hier is de primaire index van de tabel ‘PERS’, STATIONID ;PERSID. De velden van de referentietabel (Db_Hoofding en facturatie) zijn respectievelijk PSTATIONID en PNUM. Deze variabele is de parameter « IndexKey ». TableName : 'PERS' (naam van de tabel die de titel van de contactpersoon bevat) IndexName : '' (naam van de index) IndexKey : Index (variabele die de indexwaarde bevat) FieldName : 'PTITLE' (Naam van het veld in de tabel PERS dat de titel van de contactpersoon bevat.)
Report Builder
DE LANDCODE ‘BE’ UIT DE POSTCODE VERWIJDEREN Gebruik de functie BeZipcode(Zipcode). Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
HET BESTAAN VAN EEN BESTAND CONTROLEREN Gebruik van de functie FileExists(FileName); FileName : volledig path van het bestand (tussen '')
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat : Teruggave van een booleaanse waarde (True/False).
Report Builder
EEN BEDRAG FORMATEREN Gebruik de functie FormatAmount(tfFormati, ACurrency, Alternate); TfFormati : aantal decimalen Acurrency : valuta Alternate : alternatieve valuta (True/False)
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnPrint van de variabele :
Report Builder
WEERGAVE VAN HET SCHOOLJAAR (VB : 2006-2007) Gebruik de functie Copy(S, Index, Count); Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
DE ARTIKELREFERENTIE BIJ EEN KLANT WEERGEVEN Gebruik de functie GetCustArtRef(ArtNum, CustId); ArtNum: intern artikelnummer (NUM) CustId: referentie van de klant
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
DE ARTIKELREFERENTIE BIJ EEN LEVERANCIER WEERGEVEN Gebruik de functie GetSuppArtRef(ArtNum, SuppId); ArtNum: inter artikelnummer (NUM) SuppId: referentie van de leverancier
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
WEERGAVE VAN INFORMATIE UIT DE HOOFDING VAN EEN KLANTENBESTELLING IN EEN LEVERANCIERSBESTELLING (VOOR DIRECTE BESTELLINGEN) Gebruik de functie GetDOrdCustHeader(aDbk,
aFYear,
aDocno,
aLinkno,
aField); Adbk: dagboekcode AFYear: fiscaal jaar Adocno: documentnummer Alinkno: link nummer Afield: op te halen veld
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
WEERGAVE VAN DETAILINFORMATIE VAN EEN KLANTENBESTELLING IN EEN LEVERANCIERSBESTELLING (VOOR DIRECTE BESTELLINGEN) Gebruik de functie GetDOrdCustLine(aDbk, aFYear, aDocno, aLinkno, aField); Adbk: dagboekcode AFYear: fiscaal jaar Adocno: documentnummer Alinkno: linknummer Afield: op te halen veld
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variable :
Resultaat :
Report Builder
DE MAAND IN LETTERS WEERGEVEN Gebruik de functie GetMonthHeading(MonthNum, LangId); MonthNum: maand in cijfers LangId: taal (F (Frans), N (Nederlands), E (Engels), D (Duits)
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele : Eenvoudig voorbeeld :
Resultaat :
Report Builder
Procedure om de volledige datum met maand in letters weer te geven (Gebruik van de functie Copy en GetMonthHeading):
Resultaat :
Report Builder
WEERGAVE VAN DE OMSCHRIJVING VAN EEN CONTRACT Gebruik de functie GetCtcInfo(CtcId, Field); CtcId : referentie van het contract Field : op te vragen veld
Deze functie geeft de mogelijkheid om informatie af te drukken van contractfiche als het om uit contracten ontstane factuur uit de module facturatie gaat. Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
WEERGAVE VAAN EEN PRIJS UIT EEN PRIJSLIJST Gebruik de functie GetPrice(ArtNum, PriceCode, PriceDate); ArtNum : intern artikelnummer PriceCode : code prijslijst PriceDate : datum prijslijst
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnCalc van de variabele :
Resultaat :
Report Builder
WEERGAVE VAN DE OMSCHRIJVING VAN EEN STANDAARDCODE (STDCODE) Gebruik de functie : GetStdCodeHeading(TableId, Code, Language); TableId : naam van de tabel ( TNAME van de Stdcode) Code : referentieveld van de code Language : taal van de omschrijving ( FRB, NLB, ENB en DEB)
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
WEERGAVE VAN DE OMSCHRIJVING VAN EEN VAK IN DE BTW AANGIFTE Gebruik de functie : GetVATCASEHeading(CodeLang, VatCase, YearB, MonthB, YearE, MonthE); CodeLang : taal van de omschrijving VatCase : nummer van het vak YearB : beginjaar van de geldigheid van de aangifte MonthB : beginperiode van de geldigheid van de aangifte YearE : eindjaar van de geldigheid van de aangifte MonthE: eindperiode van de geldigheid van de aangifte
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
NULLEN TOEVOEGEN LINKS VAN EEN GETAL Gebruik de functie : IntToStrZero(Num, Length); Num : te verwerken getal of veld van het type integer Length : lengte
Om de procedure aan te maken, voegt u een nieuwe variabele toe aan de band waar u deze informatie wil tonen. Voeg onderstaande procedure vervolgens toe aan de gebeurtenis OnGetText van de variabele :
Resultaat :
Report Builder
WEERGEVEN VAN COMMENTAAR BIJ ARTIKELS OVER MEERDERE LIJNEN Associeer de zone Db_Detail['Commentaarlijn (COMMENT)'] à met een veld van type DBMemo en kruis de volgende opties aan in het contextmenu van de het veld :
Op deze manier zaal er automatisch naar de volgende lijn worden gesprongen als de lengte van het commentaar langer is dan die van de memo zone. Resultaat :
Report Builder
PERSONALISEERBARE RAPPORTEN Vanaf de versie 3.1 kan het grootste deel van de rapporten gepersonaliseerd worden. U hebt de keuze tussen een nieuw rapport aanmaken of een bestaand aanpassen. De originele documenten blijven altijd behouden. De gepersonaliseerde rapporten worden toegevoegd aan de lijst met standaard rapporten van BOB. Om een rapport aan te passen, ga naar het tabblad « Selectie » van de betreffende lijst en klik op het icoon
:
geklikt te hebben, moet het scherm Na op verder ingevuld worden :
« Nieuw gepersonaliseerd rapport»
Lijst van standaard rapporten
Report Builder
Het gepersonaliseerde rapport is direct beschikbaar in het menu « Type » en is aanpasbaar via het icoon
:
Report Builder
VOORBEELD VAN EEN PERSONALISEERBAAR RAPPORT : DE BALANS VAN DE ALGEMENE REKENINGEN
Beschrijving van de « Header » : De header bestaat uit simpele labels en ook variabelen, doorgegeven in parameters zoals de code van het dossier (Folder Id,…) of ook selectiecriteria (begin, einde,…) De in parameters doorgegeven zijn vaste gegevens door het programma, ze kunnen niet aangepast worden.
Report Builder
Beschrijving van « Detail » : Het ‘Detail’ geeft de referenties en omschrijvingen van de algemene rekeningen, evenals de saldo’s van debiteuren en crediteuren, de gecumuleerde saldo’s, enz… In tegenstelling tot een factuur, is er hier geen subrapport nodig. De balans wordt gemaakt op basis van één bestand. Een factuur daarentegen, bestaat uit een hoofding (gegevens van de klant, dagboek, documentnummer, bijkomenden info, enz…) en één of meerdere detaillijnen. Het subrapport verzamelt dus alle details van een factuur op basis van de informatie in het hoofdrapport (dagboekcode, nummer, jaar, enz…)
De « Group Footer » : De subtotalen, volgens het scheidingsniveau (0,1,2,3 of 4), worden berekend « Group Footer » . Variabelen van het Type Db_Calc ,verbonden met de velden van de tabel TblResult maken het mogelijk om de subtotalen van de verschillende groepen te bekomen.
De « Footer » : Bevat de groeptekst van het rapport.
De « Summary» : Bevat de algemene totalen van het rapport. Variabelen van het type Db_Calc verbonden met de tabel TblResult realiseren de totalen en in parameters doorgegeven variabelen geven het resultaat van de rekeningen 6/7.
Report Builder
92