C# Crystal Reports Formula Field

The following C# - Crystal Reports section describes how to add a formula field in the Crystal Reports .

All C# Crystal Reports Tutorial in this website is based on the following database - crystaldb. So before you begin this section , please take a look at the database structure of crystaldb - Click Here C# crystaldb

If you are new to Crystal Reports and do not know how to create Crystal Reports from C# , please take a look at the section step by step tutorial for creating a Crystal Reports from C#.

The situations when formula field is using :

If you possess a Crystal Reports document featuring Quantity (Qty) and Price fields, and you find the requirement for an additional field that calculates the Total (TOTAL = QTY X PRICE), you can conveniently achieve this by utilizing the Formula Field functionality within Crystal Reports.

Within this comprehensive C# Crystal Reports tutorial, we demonstrate the process of displaying all orders, including the quantity and price, alongside the corresponding total for each row. This entails showcasing the cumulative result of multiplying the quantity and price values within each individual row.

Before starting this tutorial Create a new Crystal Reports with fields CustomerName , Order Date , Product Name and Product Price . If you do not know how to create this report , just look the previous tutorial C# Crystal Reports from multiple tables . In that report selecting only four fields , here we need one more field Product->Price and one formula field Total.

After you create the above Crystal Reports, your CR designer screen is look like the following picture :


Next step is to create a Formula Field for showing the result of Qty X Price .

Right Click the Formula Field in the Field Explorer and click New. Then you will get an Input Message Box , type Total in textbox and click Use Editor.


Now you can see the Formula Editor screen . Here you can enter which formula you want . Here we want the result of Qty X Price . For that we select OrderDetails.Qty , the multipy operator (*) and Product.Price . Double click each field for selection.


Now you can see Total Under the Formula Field . Drag the field in to the Crystal Reports where you want to display Total.


Now the designing part is over and the next step is to call the Crystal Reports in C# and view it in Crystal Reports Viewer control .

Select the default form (Form1.cs) you created in C# and drag a button and a CrystalReportViewer control to your form .

You have to include CrystalDecisions.CrystalReports.Engine in your C# Source Code.

using CrystalDecisions.CrystalReports.Engine; using CrystalDecisions.Shared;

Copy and paste the following source code and run your C# project.

Full Source C#
using System; using System.Windows.Forms; using CrystalDecisions.CrystalReports.Engine; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { ReportDocument cryRpt = new ReportDocument(); cryRpt.Load(PUT CRYSTAL REPORT PATH HERE\\CrystalReport1.rpt"); crystalReportViewer1.ReportSource = cryRpt; crystalReportViewer1.Refresh(); } } }

cryRpt.Load(PUT CRYSTAL REPORT PATH HERE\\CrystalReport1.rpt");.

The Crystal Reports file path in your C# project files location, there you can see CrystalReport1.rpt . So give the full path name of Crystal Reports file like c:\projects\crystalreports\CrystalReport1.rpt

When you run this program you will get your screen like the following picture.