# Convert number to absolute value using VISION:Results

**Document ID :**KB000024382

**Last Modified Date :**14/02/2018

To generate the absolute value of a numeric field to be compatible which character edit patterns, use the COMBINE BITS function.

For example:

Dataname is defined as **POSNEG 3 NU**

A value of POSNEG is read in as hex F0F1D2', which is a negative 12. If moved to a character field, this would display as '01K'.

What we want is to manipulate the field to hex'F0F1F2', so it displays as '012'.

You can't just multiply the field by -1 because the input data from another record may already be positive.

However, if you use COMBINE BITS where the first parameter is positive 0 (x'F0') defined for the length of your dataname, and logically 'OR' it with your dataname, you will always get the absolute value of your data.

In our example, because POSNEG is 3 bytes long we pad with 2 bytes of 0's and use this command:

**COMBINE BITS X'0000F0' OR POSNEG**

This performs a OR on the 2 parameters:

0000 0000 0000 0000 1111 0000 < x'0000F0' 1111 0000 1111 0001 1101 0010 < x'F0F1D2' ------------------------------------------- 1111 0000 1111 0001 1111 0010 < x'F0F1F2'

This achieves the desired results of converting POSNEG to display as '012' which can be successfully moved into a character edit pattern.

For more information please see the section on COMBINE BITS in Chapter 10 of the *VISION:Results Reference Guide*.