データ ファイルを圧縮する場合には、ファイル ハンドラーは DATACOMPRESS コンパイラ指令で指定する圧縮ルーチンを呼び出します。
Micro Focus の圧縮ルーチンを呼び出すには、次の構文を使用します。
COBOL:
call "CBLDCnnn" using input-buffer,
                      input-buffer-size,
                      output-buffer,
                      output-buffer-size,
                      compression-type 
            	 C:
CBLDCnnn(input_buffer, &input_buffer_size,  
         output_buffer, &output_buffer_size,
         &compression-type); 
            	 パラメーターの内容は、次のとおりです。
| nnn | 001 ~ 127 のデータ圧縮ルーチン。 | 
| input_buffer | PIC X(サイズ) データ項目。ルーチンの入口で圧縮または圧縮解除するデータを記述する必要があります。最大サイズは 65,535 バイトです。 | 
| input_buffer_size | 2 バイトの (C では int、COBOL では PIC XX COMP-5) データ項目。入口で入力バッファーのデータ長を記述する必要があります。 | 
| output_buffer | PIC X(サイズ) データ項目。終了時に、結果データを格納します。 | 
| output_buffer_size | 2 バイトの (C では int、COBOL では PIC XX COMP-5) データ項目。入口で使用可能な出力バッファーのサイズを記述する必要があり、終了時にはバッファーのデータ長を格納します。 | 
| compression-type | 1 バイトの (C では char、COBOL では PIC X COMP-X) データ項目。入口で入力データを圧縮するか圧縮解除するかを指定する必要があります。
                            0 - 圧縮、1 - 圧縮解除  |  
                        			 
                     
RETURN-CODE 特殊レジスタは、操作が成功したかどうかを示します。圧縮または圧縮解除は、出力バッファーが小さく結果を受け付けられない場合のみに失敗します。0 は成功、1 は失敗を示します。