Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
Packages and Libraries
»
LazReport
»
LazReport help
Free Pascal
Website
Downloads
Wiki
Documentation
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Documentation (RTL/FCL/LCL)
Bugtracker
CCR Bugs
GIT
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
Forum Rules
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
« previous
next »
Print
Pages: [
1
]
Author
Topic: LazReport help (Read 6680 times)
SteenJorgensen
Jr. Member
Posts: 72
LazReport help
«
on:
August 01, 2021, 11:14:38 am »
I need to be able to make a report that sums up a field (Value) based on a unique field (Name). This should be done in Scrips with an array of variables.
SQL text is simple from the application as it must be used for many other purposes "Select * from MyTable where id ="2"
Database (MyTable) values:
ID Name Value
2 Anders J 4
2 Tove H 2
2 Tove H 4
2 Anders J 8
2 Anders S 3
3 Anders S 3
4 Anders J 8
Dataset have 5 rows because of id=2 and final result should be 3 lines because the unique Name:
Anders J 12
Tove H 6
Anders S 3
I have done this before many years ago for a customer but can no longer find this nor documentation for LazReport.
Thinking I'm need to create a array of variabler of all different name and for every row sum up???
Any hint? I will by so pleased.
«
Last Edit: August 01, 2021, 11:25:40 am by SteenJorgensen
»
Logged
----------------------------------------
Lazarus version 4.0 64-bit
FPC 3.2.2
korba812
Hero Member
Posts: 501
Re: LazReport help
«
Reply #1 on:
August 01, 2021, 12:19:18 pm »
This can be achieved in many ways. The easiest way to do this is to use "sum" and "group by" in your SQL query:
Code: SQL
[Select]
[+]
[-]
SELECT
Id
,
Name
,
SUM
(
VALUE
)
FROM
MyTable
WHERE
Id
=
"2"
GROUP
BY
Id
,
Name
«
Last Edit: August 01, 2021, 12:22:21 pm by korba812
»
Logged
SteenJorgensen
Jr. Member
Posts: 72
Re: LazReport help
«
Reply #2 on:
August 01, 2021, 02:11:24 pm »
Thanks for your answer.
But i have a const sql query named "select * from MyTable where....." So the customer can make new report in the furture without make changes in application.
So it must be programed in the script function in the report.
Logged
----------------------------------------
Lazarus version 4.0 64-bit
FPC 3.2.2
korba812
Hero Member
Posts: 501
Re: LazReport help
«
Reply #3 on:
August 01, 2021, 04:16:38 pm »
Another way would be to use group band, but then you have to provide sorted data according to the group key.
Logged
SteenJorgensen
Jr. Member
Posts: 72
Re: LazReport help
«
Reply #4 on:
August 02, 2021, 10:23:36 am »
WOW.... Thanks, just what i need.
Now all works. I must find the documentations for LazReport, there are so many functions i dont know.
Logged
----------------------------------------
Lazarus version 4.0 64-bit
FPC 3.2.2
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
Packages and Libraries
»
LazReport
»
LazReport help
TinyPortal
© 2005-2018