It will grow and shrink based on the data. The height value, although available is always resized based on the barcode height. So it is not an option.
The only way to achieve what you want is to execute your barcode twice.
Once, outside of the printing area just to get the actual width of it once produce with the data. Then store that width into a global variable, from the
Press Talk After. Like this:
&globalVariable := &width
Now that you know what will be the width of you barcode, you can, in a second barcode that is shown in your printing area, use the
scale command to resize your barcode in the
PressTalk Before of your second barcode.
This way, you will ensure a fixed width. Note that changing the width of a barcode by scaling it can cause barcode reader to not read it properly if it goes outside of the barcode specifications.