Results 1 to 9 of 9

Thread: Waarde doorgeven naar Fastreport

  1. #1

    Waarde doorgeven naar Fastreport

    Hallo,

    Ik probeer waarden door te geven naar Fastreport.
    Ik heb 2 variabelen aangemaakt in FR.
    Nu vul ik deze met volgende code :

    Code:
     
      frxReport1.Variables['Report_Month'] := Combo_Month.Text; // Bevat de gekozen maand voor het rapport
      frxReport1.Variables['Report_Year'] := IntToStr(CurrentYear);
      frxReport1.ShowReport();
    Als ik het rapport oproep waarbij de variable Report_Month wordt opgevuld krijg ik een foutmelding.
    Click image for larger version. 

Name:	delphi_error_18022020.png 
Views:	125 
Size:	6.8 KB 
ID:	8063
    De maand wordt nochtans goed doorgegeven.


    Als ik enkel het jaar doorgeef werkt het wel.
    Enig idee wat er verkeerd loopt?

    Alvast bedankt

    Lainkes
    Last edited by alain.janquart; 18-Feb-20 at 15:09.

  2. #2
    Er lijken nog extra quotes rondom te moeten. Zie hier

  3. #3
    Bedankt voor de tip.
    Daar kon ik nog lang naar zoeken.

    Dit is dus de oplossing :

    Code:
    frxReport1.Variables['Report_Month'] := '''' + Combo_Month.Text + '''';

  4. #4
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Daar bestaat, voor betere leesbaarheid, ook een standaard Delphi functie voor:
    Delphi Code:
    1. frxReport1.Variables['Report_Month'] := QuotedStr(Combo_Month.Text);
    TMemoryLeak.Create(Nil);

  5. #5
    Let op dat QuotedString meer doet dan alleen kwootjes om je string zetten. Het zal ook eventuele aanhalingstekens in je string verdubbelen. Waarschijnlijk is dat juist wat je wilt...
    1+1=b

  6. #6
    Reader
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,382
    @VideoRipper: en veel liever zou ik zien:
    Code:
    frxReport1.Report_Month := Self.SelectedMonth;

  7. #7
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Quote Originally Posted by EricLang View Post
    Code:
    frxReport1.Report_Month := Self.SelectedMonth;
    En hoe had je dat gezien willen hebben dan?

    Voor zover ik weet (maar het is voor mij alweer even geleden) heeft FastReports geen "Report_Month" property en zou je dat ook niet willen hebben aangezien het een generieke rapportgenerator is en geen statistiekengenerator.
    Zelf gebruikte ik eigenlijk (vrijwel) alleen FastReports icm datasets en liet ik variabelen en scripting links liggen, maar ik had dan ook het geluk dat het vrij eenvoudige rapporten waren.
    TMemoryLeak.Create(Nil);

  8. #8
    Reader
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,382
    Ik houd niet van script-achtige contructies. Ik zou altijd een afgeleide maken van een report die dan onderwater de (onvermijdelijke) scriptachtige contructies afhandelt.

  9. #9
    ik zou in het geval van fastreport gewoon hun virtuele dataset oplossing gebruiken. Dan kun je ze net als alle andere data in je report gebruiken.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •