Skip to main content

LOW values and High values set blank in Linux

  • December 13, 2022
  • 3 replies
  • 0 views

We are using Microfocus Visual Devhub Cobol 6.0 with patch 20 and RHEL 8.3 and database is Microsoft SQL Server 2019.

When LANG variable is set as en_US.utf8 by default, then both LOW-VALUES and HIGH-VALUES are being populated as blank, so table browse is getting failed. 

But when the LANG variable is changed to en_US, then LOW-VALUES and HIGH-VALUES are having the expected values of X"00" and X"FF". Please note that all other environment setting remain unchanged. 

Need help to understand the LOW-VALUES and HIGH-VALUES behavior change due to this LANG setting.

Please let us know if any other inputs are required.


#VisualCOBOL
#MicroFocus
#COBOL

3 replies

Blair McDonald
Forum|alt.badge.img+1

We are using Microfocus Visual Devhub Cobol 6.0 with patch 20 and RHEL 8.3 and database is Microsoft SQL Server 2019.

When LANG variable is set as en_US.utf8 by default, then both LOW-VALUES and HIGH-VALUES are being populated as blank, so table browse is getting failed. 

But when the LANG variable is changed to en_US, then LOW-VALUES and HIGH-VALUES are having the expected values of X"00" and X"FF". Please note that all other environment setting remain unchanged. 

Need help to understand the LOW-VALUES and HIGH-VALUES behavior change due to this LANG setting.

Please let us know if any other inputs are required.


#VisualCOBOL
#MicroFocus
#COBOL

Hi Priya,

 

Regarding the fields that are showing blanks where you expect LOW-VALUES or HIGH-VALUES, how are the values being set? It is from a VALUE clause on the field definition within the COBOL program? Or are the field's contents perhaps being retrieved from a database or file?


Hi Priya,

 

Regarding the fields that are showing blanks where you expect LOW-VALUES or HIGH-VALUES, how are the values being set? It is from a VALUE clause on the field definition within the COBOL program? Or are the field's contents perhaps being retrieved from a database or file?

Hi Blair,

LOW-VALUES and HIGH-VALUES are not defined in the COBOL program. I hope these values are defined in program collating sequence. 

Below are thr codesnippet where LOW-VALUES/HIGH-VALUES are moved to browse table keys.

MOVE MIR-CO-ID TO WAPPL-CO-ID.
MOVE LOW-VALUES TO WAPPL-CTRY-CD.
MOVE LOW-VALUES TO WAPPL-CRCY-CD.
MOVE WAPPL-KEY TO WAPPL-ENDBR-KEY.
MOVE HIGH-VALUES TO WAPPL-ENDBR-CTRY-CD.
MOVE HIGH-VALUES TO WAPPL-ENDBR-CRCY-CD.

PERFORM APPL-1000-READ-MIN
THRU APPL-1000-READ-MIN-X.


Blair McDonald
Forum|alt.badge.img+1

Hi Blair,

LOW-VALUES and HIGH-VALUES are not defined in the COBOL program. I hope these values are defined in program collating sequence. 

Below are thr codesnippet where LOW-VALUES/HIGH-VALUES are moved to browse table keys.

MOVE MIR-CO-ID TO WAPPL-CO-ID.
MOVE LOW-VALUES TO WAPPL-CTRY-CD.
MOVE LOW-VALUES TO WAPPL-CRCY-CD.
MOVE WAPPL-KEY TO WAPPL-ENDBR-KEY.
MOVE HIGH-VALUES TO WAPPL-ENDBR-CTRY-CD.
MOVE HIGH-VALUES TO WAPPL-ENDBR-CRCY-CD.

PERFORM APPL-1000-READ-MIN
THRU APPL-1000-READ-MIN-X.

Hi Priya,

 

I haven't been able to reproduce this on a RHEL 8 system here at Micro Focus. Using the default LANG=en_US.UTF-8, I get the expected values with your version of Visual COBOL.

 

If you would, please open a Support Case for this, so that we can dig into it further. You can ask that the case be placed in my name.