# CVAL() Function

**YouTube:** [How to Use the CVAL () Function in Report Custom Columns?](https://www.youtube.com/watch?v=iRL4Kw7SbS4)

## How to Use the CVAL () Function in Report Custom Columns?

In this tutorial, we will learn how to use the **`CVAL`** function to convert **string or text-based numeric values into decimal numbers**, enabling accurate mathematical calculations in reports.

***

### Accessing the Expression Designer:

* Navigate to the **Reporting** section.
* Open the **Sales Register Detailed Report** or any **"Report".**
* Go to **Setup Column Attributes**.
* Here, you'll see a list of available columns that can be used to build expressions.
* Click on **"Add/Edit Expression Columns"** where you can write your expression using predefined functions.

<figure><img src="/files/QqZlgPb7nJy0O1lsvxB5" alt=""><figcaption></figcaption></figure>

* Before adding the expression to the report, go to **Other Settings**.
* Ensure the **Script Editor** is set to **VBScript**.

<figure><img src="/files/US8rZzar6siLdptkuOMX" alt=""><figcaption></figcaption></figure>

* Click **Save**.
  * *Note: VBScript is the default for new configurations but always verify this setting.*

### Writing Your First Expression

* Every expression must start with the script header: **'#@LSCRIPT**

<figure><img src="/files/K37bBe9AvTCKOiLXaocU" alt=""><figcaption></figcaption></figure>

* Click the (+) Plus icon to create a new expression.
* Fill in the required fields:&#x20;
  * **Expression Name** – A unique name for your expression.
  * **Expression Type** – Choose either **Text** or **Numeric** depending on the expected output.

<figure><img src="/files/mBqGsTcwSc2tEAIz0ZRS" alt=""><figcaption></figcaption></figure>

### Creating a Simple CVAL() Expression

* Double-click the new expression name to insert it into the script editor.
* Define the expression using the syntax:
  * **Expression Name** = CVAL('TOTAL\_QTY')
    * `CVAL` converts the value to a **decimal**, which can then be used for calculations like sums or averages.
    * Replace `'TOT_QTY'` with the **string-based field** you want to convert (keep the field name in **single quotes**).

<figure><img src="/files/aZ6UhRcdmzOLWgX5Ncyy" alt=""><figcaption></figcaption></figure>

* Save the expression once defined.
* Scroll down and **check the box** beside the expression name to enable it.

<figure><img src="/files/lvmGGulDtjNiqgNQ3PtY" alt=""><figcaption></figcaption></figure>

* Save and proceed to check the effect.
* **Refresh the report** to view the final result.

<figure><img src="/files/bnqRMlTq0pn5umETdYYS" alt=""><figcaption></figcaption></figure>

***

### Output:

| Item Name | TOT\_QTY (Text) | CVAL Expression Result |
| --------- | --------------- | ---------------------- |
| Item A    | "10.50"         | 10.50                  |
| Item B    | "25"            | 25                     |

With the `CVAL` function, the system can now **treat these as numeric values** in totals, filters, or other numeric expressions.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kb.logicerp.com/logic-erp-learning-hub-tutorials-and-best-practices/defining-custom-columns-in-reports-and-grids-with-expressions/cval-function.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
