メインコンテンツまでスキップ
バージョン: 20 R7 BETA

QR SET INFO COLUMN

QR SET INFO COLUMN ( area ; colNum ; title ; object ; hide ; size ; repeatedValue ; displayFormat )

引数説明
areaIntegerエリア参照
colNumIntegerカラム番号
titleTextカラムタイトル
objectField, Variableカラムに割り当てられたオブジェクト
hideInteger0 = 表示, 1 = 非表示
sizeIntegerカラムサイズ
repeatedValueInteger0 = 繰り返ししない, 1 = 繰り返す
displayFormatTextデータの表示フォーマット

このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。

説明

リストモード

QR SET INFO COLUMN コマンドを使用して、既存のカラムに関するパラメタを設定できます。

areaには、クイックレポートエリアの参照を指定します。

colNumには、修正するカラムの番号を指定します。

titleには、カラムのヘッダに表示されるタイトルを指定します。

objectには、そのカラムの実際のオブジェクト (変数、フィールド、またはフォーミュラ) を指定します。

hideには、カラムを表示するか、あるいは非表示にするかを指定します。

  • 1を指定すると、カラムは非表示に設定されます。
  • 0を指定すると、カラムは表示に設定されます。

sizeには、カラムに割り当てるサイズをピクセル単位で指定します。-1はカラムのサイズを自動設定にします。

repeatedValueには、同一値印刷の有無を指定します。これは、フィールドまたは変数の値が連続するレコード間で同一値であった場合、同じ値を印刷するか、しないかを表します。

  • repeatedValueが0の場合、同一値は印刷されません。
  • repeatedValueが1の場合、常に印刷します。

displayFormatには、表示フォーマットを指定します。この表示フォーマットは、表示されるデータに対応した4Dフォーマットです。

次のコードは、カラム番号1のタイトルとしてTitleをセットし、カラムの内容としてField2をセットし、幅150ピクセルでカラムを表示してフォーマットを###.##に設定します。

 QR SET INFO COLUMN(area;1;"Title";"[Table1]Field2";0;150;0;"###,##")
クロステーブルモード

QR SET INFO COLUMN コマンドを使用して同様のパラメタを設定できますが、設定しようとするパラメタにより、適用するエリアの参照が異なります。
第一に、このコマンドをクロステーブルモードで用いた場合、引数titlehiderepeatedValueは使用されません。設定したい値がカラムサイズ、データソース、表示フォーマットのいずれであるかによって、colNumに使用する値が変わります。

  • カラムサイズ
    これは“視覚的”な属性であり、下図のようにカラムは左から右へと番号が付けられています。

次のコードは、クロステーブルレポートのすべてのカラムに対してサイズを自動に設定し、その他の要素は以前のまま変更しません:

 For($i;1;3)
    QR GET INFO COLUMN(qr_area;$i;$title;$obj;$hide;$size;$rep;$format)
    QR SET INFO COLUMN(qr_area;$i;$title;$obj;$hide;0;$rep;$format)
 End for

カラムサイズだけを変更したいため、QR GET INFO COLUMNを使用してカラムのプロパティを取得し、それをQR SET INFO COLUMNに渡してカラムサイズ以外の項目は変更していません。

  • データソース (オブジェクト) と表示フォーマット
    この場合、カラム番号は次の図のように作用します:

QR SET INFO COLUMNコマンドを使用しても、すべてのセルに対応できないことにお気付きでしょう。上図の中で番号が付けられていないセルに関しては、QR SET TOTALS DATAコマンドを用いて対処します。

次のコードは、基本的なクロステーブルレポートの作成に必要となる3つのセルに対し、データソースを割り当てます:

 QR SET REPORT TABLE(qr_area;Table(->[Invoices]))
 ALL RECORDS([Invoices])
 QR SET REPORT KIND(qr_area;2)
 QR SET INFO COLUMN(qr_area;1;"";->[Invoices]Item;1;-1;1;"")
 QR SET INFO COLUMN(qr_area;2;"";->[Invoices]Quarter;1;-1;1;"")
 QR SET INFO COLUMN(qr_area;3;"";->[Invoices]Quantity;1;-1;1;"")

この結果、レポートエリアは次のようになります:

無効なarea番号を渡した場合、エラー番号-9850が生成されます。
無効なcolNum引数を渡した場合、エラー番号-9852が生成されます。

参照

QR GET INFO COLUMN
QR Get info row
QR SET INFO ROW