CSPro
はじめに
Version 4.0

International Programs Center
Population Division
U.S. Census Bureau
Washington DC 20233-8860
Phone: 1-301-763-1451
Fax: 1-301-763-4282
E-mail: CSPro@lists.census.gov
11 June 2010

（翻訳：独立行政法人統計センター 研究主幹）

目次
入門 .............................................................................................................................................................................. 1
CSPro とは？ ................................................................................................................................................................ 1
CSPro の機能…………………………………………………………………………………………………………………1
インストール ............................................................................................................................................................... 3
必要なハードウェア、ソフトウェア .......................................................................................................................... 3
CSPro のインストール方法 ...................................................................................................................................... 4
CSPro のアンインストール方法 ............................................................................................................................. 7
新しいバージョンのインストール ............................................................................................................................ 7
言語やコンポーネントの変更 .................................................................................................................................. 7
CSPro チュートリアル.............................................................................................................................................. 8
チュートリアルについて ............................................................................................................................................. 8
課題 1：データ入力アプリケーションの作成 ...................................................................................................... 8
ステップ 1：チュートリアル調査票について ................................................................................................... 8
ステップ 2：CSPro の起動..................................................................................................................................10
ステップ 3：新規アプリケーション作成のためのウィザードの利用 ....................................................11
課題 2：データ辞書の作成 .....................................................................................................................................12ステップ 1：ＩＤ項目 ................................................................................................................................................12ステップ 2：レコード...............................................................................................................................................13
ステップ 3：項目の作成 ......................................................................................................................................15
ステップ 4：項目の値の作成 .............................................................................................................................16
課題 2：データ入力フォームの作成 ....................................................................................................................18
ステップ 1：ＩＤと世帯項目のフォームへの配置 .........................................................................................18
ステップ 2：テキストとボックスの追加 ...........................................................................................................19
ステップ 3：フォームの自動作成 .....................................................................................................................21
課題 4：データ入力....................................................................................................................................................22
ステップ 1：データ入力アプリケーションの実行 ........................................................................................22
ステップ 2：ケース追加の開始 .........................................................................................................................24
ステップ 3：ケース追加の終了 .........................................................................................................................25
ステップ 4：ケースの修正...................................................................................................................................26
課題 5：データの集計 ...............................................................................................................................................27
ステップ 1：集計アプリケーションの作成 .....................................................................................................27
ステップ 2：集計項目の選択 .............................................................................................................................29
ステップ 3：集計の実行 ......................................................................................................................................31
課題 6：表の修正 .......................................................................................................................................................32iステップ 1：パーセントの追加

32

ステップ 2：範囲の追加 ......................................................................................................................................33
ステップ 3：タイトルフォントの変更……………………………………………….............................................35
課題 7：データ入力アプリケーションへのエディット規則の追加..............................................................36
ステップ 1：エディットのロジック作成 .............................................................................................................36
ステップ 2：ロジックのコンパイル ....................................................................................................................38
ステップ 3：エディット規則のテスト .................................................................................................................39
ステップ 4：ケース入力の終了 .........................................................................................................................40
課題 8：バッチアプリケーションの実行

41

ステップ 1：バッチアプリケーションの作成

41

ステップ 2：ロジックの作成とコンパイル

43

ステップ 3：バッチアプリケーションの実行

44

ステップ 4：出力レポートの確認

46

索引

ii

入門
CSPro とは？
Census and Survey Processing System (CSPro)は、センサスや調査のデータの入力、エディティン
グ、クロス集計、公開のためのソフトウェアパッケージです。CSPro は、Integrated Microcomputer
Processing System （IMPS）と Integrated System for Survey Analysis （ISSA）の機能を Windows
環境において統合したものです1。
CSPro により、単独の統合開発環境で、データ入力、エディティングのバッチ処理、クロス集計のためのアプリケーションを作成、修正、実行することができます。データはケース（単一または複数の調査票）ごとに処理され、それぞれのケースは１つあるいは多くのデータレコードで構成されます。データはデータ辞書によって定義された（アスキー）テキストファイルに保存されます。CSProには、データ入力の制御やエディット規則を実装するための強力な共通手続き型言語があります。
CSPro は、データや他のテキストファイルのビューアー、CSPro で作成した集計表や主題図のビューアーなどのツールや、IMPS や ISSA データ辞書を CSPro 向け及び CSPro から変換するツール、
ESRI シェープ形式ファイル（マップ）を CSPro マップファイルへ変換するツールを含みます。
CSPro は、米国国際開発局の資金を受け、米国センサス局、Macro International、Serpro SA によって共同で開発されました。
CSPro はパブリックドメイン（公有財産／著作権を放棄したソフトウェア）に属します。無料で入手でき、自由に再配布できます。http://www.census.gov/ipc/www/cspro からダウンロードできます。
このガイドでは、CSPro のインストールとアンインストールの方法の後に、CSPro を使った一連の課題によるチュートリアルが続きます。

CSPro の機能
目的と機能
データ入力 - ケース（調査票）の追加、入力、ベリファイ、表示。フォーム（画面）の作成（数の制約なし）。コンピュータの画面より大きい、スクロールが必要なフォームの作成。異なる物
1

訳注：IMPS と ISSA は、CSPro の前身にあたるシステムである。

-1-

理レコードからのフィールドを含むフォームの作成。登録簿からのデータ入力。整合性チ
ェックやスキップパターンの作成（複雑さの制約なし）。入力の前後の処理手続きの実行。
ユーザー定義メッセージの表示。複数の外部参照ファイルへのアクセス。二次的なファ
イルからの読み込みや書き出し。重複排除のためのケースのインデックス作成。オペレーターに関する統計の作成。スタンドアロン型のデータ入力環境の作成。
エディティングのバッチ処理 - 調査票データの構造、値、整合性エラーの識別や報告。単純または複雑な方法による値の変更（補定）。エラーや修正に関するサマリーや詳細なレポートの作成。複数の外部参照ファイルへのアクセス。二次的なファイルからの読み込みや書き出し。
集計 - 作表のために変数を定義し選択。集計範囲の選択。値やウェイトの集計。表示または印刷用作業のフォーマット。さまざまなフォーマットでの表の保存。スプレッドシートやワー
プロ書類へのコピー。地域ごとの表の作成。地域ごとの結果のマップ作成。
データ辞書 - 単純または複雑な階層的ファイル構成の定義。階層レベル、識別項目、レコード、
項目（フィールドまたは変数）、値集合（値のカテゴリ）、値の定義。書類化のための記述書作成。繰り返し項目の作成。ファイル構成に関するレポート作成。
テキストビューアー - データや他のテキストファイルの表示（変更不可）。任意の長さで、最大32,000 文字の幅が可能。ファイル中の文字列の検索。ファイル中の行と文字の位置の識別。表レポートのスプレッドシートへのコピー。ファイルの選択部分のコピー、保存、印刷。
表ビューアー - CSPro による集計結果を含むファイルの表示（変更不可）。ワープロソフトへの表のコピー。表の印刷。HTML、RTF、タブ区切りフォーマットでの表の保存。選択したセルの主題図の作成と表示。
マップビューアー - 選択された地域レベルによる選択された変数の主題図の作成。２つの変数間の差、変化率、比、比（％）。階級の数、階級の大きさ、色、タイトル、凡例の変更。表示される最低地域レベルの変更。ワープロへのマップのコピー。GIF フォーマットでのマップの保存。
表検索 - 表や、大規模なドキュメントデータベース上の他の前もって作成されたドキュメントを地理、主題、タイトルに基づいて検索と表示。

-2-

度数 - データファイル中の選択した変数とレコードについて度数分布を作成。
データのソート - データのケースを ID によってソート。２GB の大きさのデータファイルまでソート可能。
データのエクスポート - 選択されたデータ変数をタブ区切り、SAS、SPSS のデータファイルへエク
スポート。
データ形式の変換 - データをあるファイルフォーマットから別のフォーマットへ変換。入力と出力の両方のファイルのフォーマットは、データ辞書によって定義される。
データの比較 - ２つのデータファイルの比較と、差異の特定。１つの共通データ辞書により、両方のデータファイルのフォーマットを定義。
データの連結 - ２つ以上のデータ（または、その他のテキスト）ファイルの連結。
表検索セットアップ - CSPro ツールにより使用する地理的な地域、主題、タイトルで組織される表
その他の文書を作成し修正する。
辞書変換 - IMPS や ISSA のデータ辞書から CSPro のデータ辞書への変換、CSPro のデータ辞書から IMPS や ISSA のデータ辞書への変換。ISSA 辞書から CSPro データ辞書とデータ
入力フォームへの変換。
シェープからマップへの変換 - ESRI シェープファイルから CSPro マップファイルへの変換。マップの座標点数の間引き。
パックアプリケーション – 他のコンピュータへ転送するために、一つのアプリケーションを構成するファイルをパックして単一の ZIP ファイルにする。

インストール
必要なハードウェア、ソフトウェア
最小構成：

33MHz の 486 プロセッサ

16MB の RAM

VGA の解像度のモニタ

-3-



マウス



45MB の空きハードディスク容量

Microsoft Windows 98se

推奨構成：


Pentium プロセッサ

512MB の RAM



SVGA の解像度のモニタ



マウス



100MB の空きハードディスク容量

Microsoft Windows 98、Me、NT 4.0、2000、XP、Vista

CSPro のインストール方法
Web サイトからダウンロードした”cspro40.exe”からインストールする場合：


タスクバーの[スタート]ボタンを押し、[ファイル名を指定して実行]を選択します。

drive:\folder\CSPro40.exe と入力します。（例えば、c:\download\CSPro40.exe）[OK]をクリックします。セットアップに必要な情報は、ダイアログボックスに表示されるメッセージに従って入力していきます。

CD からインストールする場合：
CD を CD-ROM ドライブに挿入します。



しばらく待つと、インストールプログラムが自動的に起動します。

セットアップの手順に従って進みます。セットアップに必要な情報は、ダイアログボッ
クスに表示されるメッセージに従って入力していきます。

フロッピーディスクからインストールする場合：


タスクバーの［スタート］ボタンを押し、［ファイル名を指定して実行］を選択します。



CSPro Disk 1 をフロッピードライブにセットします。

［ファイル名を指定して実行］のダイアログボックスの［名前］に、“a:\setup”と入力します。

［OK］をクリックします。セットアップに必要な情報は、ダイアログボックスに表示されるメッセージに従って入力していきます。

インストール時の言語の選択：
CSPro では、システムのいくつかの部分で使用する言語を選択することができます2。インストール
中、次の言語選択の画面が表示されます。
2

訳注：日本語は選択できない。

-4-

言語の設定では、以下の事柄が決定されます。


表やマップで生成される短い単語（Table, and, by, Legend など）



データ入力画面や表の出力で、ロシア語、ウクライナ語、アルメニア語などをサポートするためのフォント

CSPro のメニューオプション、ダイアログボックス、ヘルプは英語のみです。言語設定はインストー
ルプログラムを再度実行して［Modify］を選択することで、いつでも変更できます。
インストールするコンポーネントの選択：
CSPro では、インストールするコンポーネントを選択することができます。インストール中、次のコンポーネント選択の画面が表示されます。

-5-

以下の選択肢があります。


CSPro (all components) アプリケーション開発を考えている場合に選択します。

Data Entry Operator (only) データ入力アプリケーションをデータ作成用 PC にインストールする場合に選択します。オペレーターは、既定のデータ入力アプリケーショ
ンを実行することができますが、アプリケーションを変更することはできません。デー
タ入力、データ比較、テキストビューアー、表ビューアーのコンポーネントがインスト
ールされます。



Data Dissemination (only)

データ公開のツールとしてユーザーが CSPro で作成した統計データを利用することができるようにインストールする場合に選択します。マップビューアー、表検索、表ビューアー、テキストビューアー、データ比較のコンポーネントがインストールされます。
Custom Installation 上級ユーザーが特定の目的のツールとして、コンポーネントを選択してインストールすることができます。

インストールするコンポーネントは、インストールプログラムを再度実行することで、後で変更することができます。

-6-

CSPro のアンインストール方法
以下は、Windows 2000 に基づいて説明します。オペレーティングシステムが違う場合は、手順が異なることがあります。


タスクバーの[スタート]ボタンから[コントロールパネル]を選択します。

[プログラムの追加と削除]を選択します。

[現在インストールされているプログラム]の一覧で、［CSPro4.0］をクリックします。

[変更と削除]ボタンをクリックします。



インストールの種類を選択するメッセージが表示されます。[Remove]を選択して、[Next]をクリックします。



CSPro 4.0 の削除を行うことを確かめて、[OK]をクリックします。アンインストールはレジストリの登録と CSPro システムファイルをすべて削除します（つまり、CSPro 4.0のフォルダや Examples サブフォルダの中のすべてのファイルを削除します）。作成
したアプリケーションやファイルは削除されません。



ファイルの削除が終わると、プロセスが完了したことを示すメッセージが表示されます。[Finish]をクリックします。

新しいバージョンのインストール
CSPro 3.3 から CSPro 4.0 へのアップデート
CSPro 3.3 がすでにインストールされている場合、CSPro 3.3 に影響を与えずに CSPro 4.0 をイン
ストールすることができます。CSPro 4.0 へのアプリケーションの変換が終了したら、CSPro 3.3 をアンインストールすることができます。
CSPro 4.0 の内部変更のため、いったん CSPro 4.0 で読み込んだファイルは、CSPro 3.3 では使えなくなることに注意してください。
CSPro 4.0 の前のバージョンからのアップデート
CSPro 4.0 の前のバージョンからアップデートする場合、新しいバージョンで古いバージョンを置き換えます。インストールプログラムで、インストールの種類を選択するメッセージが表示されたとき、［Repair］を選択し、［Next］ボタンを押します。CSPro 4.0 の新しいバージョンが古いバージョンの上にコピーされます。作成したアプリケーションや他のファイルは変更されません。

言語やコンポーネントの変更
インストールされている言語やコンポーネントは、再びインストールを実行することによって変更することができます。インストールプログラムで、インストールの種類を選択するメッセージが表示されたとき、［Modify］を選択し、［Next］ボタンを押します。
必要な変更を行って、［Next］ボタンを押すと、インストールが変更されます。新しいコンポーネント-7-

が追加され、不要なコンポーネントが削除されます。CSPro のアプリケーションとデータファイルは一切影響を受けません。

CSPro チュートリアル
チュートリアルについて
このチュートリアルでは、一連の課題を通して、CSPro の使い方を説明していきます。
課題では、Windows の基本的な操作以外の特別な知識は必要としません。課題は短いステップに分かれています。それぞれのステップは、標準的には、数分しかかかりません。
全部で８つの課題があります。それぞれの課題でファイルを作成し、そのファイルを後の課題で使っていきます。課題１から６では、簡単なデータ入力とクロス集計を説明します。課題７と８ではエディティングのための CSPro 言語を説明します。
課題１：データ入力アプリケーションの作成（3 ステップ）
課題２：データ辞書の作成（4 ステップ）
課題３：データ入力フォームの作成（3 ステップ）
課題４：データ入力（4 ステップ）
課題５：データ集計（3 ステップ）
問題６：表の修正(3 ステップ)
課題７：データ入力アプリケーションへのエディット規則の追加（4 ステップ）
課題８：バッチアプリケーションの実行（4 ステップ）

課題１：データ入力アプリケーションの作成
ステップ 1：チュートリアル調査票について
８つのチュートリアル課題は、サンプル調査票に基づいています。


課題１から６では、データ入力アプリケーションを作成し、いくつかのデータを入力し、その後、データを集計します。



課題７と８では、前に戻って、整合性チェックを付け加えます。

-8-

サンプル調査票については、以下のとおりです。


それぞれの調査票は、１つの世帯に対応します。



それぞれの調査票（世帯）には、一意な４桁の数字が上部に記載されています。



世帯の中の最大１０人について、age（年齢）、sex（性別）、marital status（配偶の関係）を調べます。



世帯（household information の欄）について、type housing（居住形態）と type roof（屋根の種類）を調べます。

次のステップへ続きます。

-9-

ステップ 2：CSPro の起動
はじめに、このチュートリアルで使用するファイルを保存するためのフォルダを新規作成します。
［エクスプローラ］を開きます。

“c:\CSProTutorial”と名前を付けたフォルダを作成します。

これで、CSPro を起動する準備ができました。


デスクトップの[CSPro4.0]アイコンをダブルクリックするか、又は［すべてのプログラム］をポイントします。

[プログラム]の中の[CSPro]をポイントします。

［CSPro4.0］の中の［CSPro4.0］を選択してクリックします。

CSPro のメイン画面が表示されます。

次のステップへ続きます。

- 10 -

ステップ 3：新規アプリケーション作成のためのウィザードの利用
データ入力アプリケーションを作成します。これには以下の 3 つが含まれます。


データ辞書 データ辞書はデータファイルの構造を記述します。辞書には調査票のすべての質問と回答に関する情報を保存します。

フォーム フォームはデータ入力アプリケーションを起動したときに画面に表示されます。データ入力フィールド、テキストや図形を含みます。

ロジック（オプション） CSPro 言語を使ってプログラムの流れを制御すること、データ
入力中のエラーチェックのロジックを書くこと、外部参照ファイルにアクセスすることなど、多くのことが可能です。課題６まではロジックを使いません。

ウィザードを使ってデータ入力アプリケーションに必要なファイルを作成していきます。
[Create a new application]というラジオボタンをクリックします。次のダイアログボックが表示されます。

[Data Entry Application]を選びます。

[OK]を押します。

開いたダイアログボックスで。


アプリケーションのファイル名に“MyEntry”と入力します。



課題を作成したフォルダがどこにあるかを確かめます。
(‘c:\CSProTutorial’)- 11 -

“create”を押します。

次の画面で、入力辞書を選択します。


名前を”c:\CSProTutorial\MyDic.dcf”に変更します。

[OK]をクリックします。

新しいデータ入力アプリケーションを作成しました。
これで、この課題は終了です、次の課題へ進んでください。

課題 2：データ辞書の作成ステップ 1：ＩＤ項目
最初に辞書を作成し、次にフォームを作成します。CSPro はデータ辞書のスケルトンを自動的に作成します。それを変更して独自の情報を追加していきます。
データ辞書には少なくとも１つ（しばしば２つ以上）のＩＤ項目が必要です。ＩＤ（identification）項目はCSPro で個別の調査票を識別するための一意な数字（または数字の組）です。CSPro は少なくとも１つのＩＤ項目を必要とします。


画面の左側の［(Id Items)］をクリックし、その隣の［＋］をクリックしてツリーを展開します。
CSPro がすでに１つのＩＤ項目を作成していることが分かります。画面の右側に［Len］の列があり、この項目は１文字分の長さであることを示しています。これを４文字分の長さに変更します。



ツリーの［(Id Items)］の下の［MyDict identification］を右クリックして、［Modify Item］を選
択します。



Enter キーを 3 回押すと、長さのところが青くハイライトされます。

“4”と入力し Enter キーを押して、この行の下の何もないところをクリックすると、変更作
業が終わります。

このステップが終わると、次のような画面になります。

- 12 -

次のステップへ続きます。

ステップ 2：レコード
レコードは、通常、調査票の 1 つのセクションに対応し、関連のある質問の集まりからなります。
CSPro はデフォルトで 1 つのレコードを作成します。このチュートリアルのアプリケーションでは、2つのレコード、「Person Record」と「Housing Record3」を使います。CSPro が作成したレコードを「Person Record」に変更し、次に「Housing Record」を追加します。
最初に、CSPro が作成したレコードを「Person record」に変更します。

3



左側のツリーの［MyDict record］を右クリックし、［Modify Record］を選択します。

［Record Label］として“Person Record”と入力し、Enter キーを押します。

［Record Name］として“PERSON_RECORD”と入力し、Enter キーを押します。

Enter キーを押して、［Type value］をそのままにします。

“N”を押して、［Required］を Yes から No へ変更し、Enter キーを押します。このアプリケ

訳注：サンプル調査票の、Household Information の欄に対応するレコード。

- 13 -

ーションでは、人のいない住宅を扱うことができるようにします。Person Record は必須ではありません。


このアプリケーションでは、1 つの世帯に 10 人までデータを持つことができるように、［Max］に“10”を入力し Enter キーを押して変更します。このレコードへの変更は完了です。

次に、「Housing Record」を追加します。


左側のツリーの［Person Record］を右クリックし、［Add Record］を選択します。

［Record Label］として“Housing Record”と入力し、Enter キーを押します。

Enter キーを押して、［Record Name］を“HOUSING_RECORD”とします。

Enter キーを押して、［Type value］をそのまま残します。

Enter キーを押して、［Required］を Yes のままにします。

Enter キーを押して、［Max］を 1 のままにして、新しいレコードに移ります。



空白のレコードの上で Esc キーを押して、変更を終了します。

このステップが終わると、次のような画面になります。

次のステップへ続きます。

- 14 -

ステップ 3：項目の作成
最初に、Person Record の「Age」、「Sex」、「Marital Status」の項目を作成します。


ツリーの Person Record を右クリックして、［Add Item］を選択します。

［Item Label］として“Age”を入力し、Enter キーを押します。

Enter キーを押して、［Item Name］を AGE とします。

Enter キーを押して、［Start］位置を決定します。

［Len］に“2”を入力して Age が２桁の文字であることを指定します。これは、このアプリケーションでは、最高で 99 歳まで入力するからです。

Enter キーを６回押して、Age の他の属性をデフォルト値で決定します。

Sex 項目の属性を入力します。ラベルと名前を入力したら、その他の属性はすべてデフ
ォルト値のまま Enter キーを押して決定します。



Marital status 項目の属性を入力します。ラベルと名前を入力したら、その他の属性はすべてデフォルト値のまま Enter キーを押して決定します。



Esc キーを押して、項目の作成を終了します。

次に、Housing Record の「Type household4」項目と「Type roof」項目を作成します。


Housing Record を右クリックして、［Add Item］を選択します。

Type Household 項目の属性を入力します。ラベルと名前を入力したら、その他の属性はすべてデフォルト値のまま Enter キーを押して決定します。

Type Roof 項目の属性を入力します。ラベルと名前を入力したら、その他の属性はすべてデフォルト値のまま Enter キーを押して決定します。



Esc キーを押して、項目の作成を終了します。

このステップが終わると、次のような画面になります。

4

訳注：サンプル調査票の Type housing に対応。

- 15 -

次のステップへ続きます。

ステップ 4：項目の値の作成
値集合はデータの各項目に想定される値を定義します。値集合は、データ入力時の妥当な値の範囲を指定するためや、クロス集計のカテゴリーを指定するために利用されます。
最初に、「Age」の値集合を作成します。ここでは１０歳ごとのグループを使います。
［Person record］の隣の［＋］をクリックし、その項目をツリーに表示します。

［Age］を右クリックして、［Add Value Set］を選択します。

Enter キーを２回押して、デフォルトの［Value Set Label］と［Value Set Name］を決定します。カーソルは、その下の行の［Value Label］欄に移動します。

[Value Label]に”0 to 9”と入力して、Enter キーを押します。

［From］の値に“0”を入力して、Enter キーを押します。

［To］の値に“9”を入力し、次に Enter キーを２回押して［Special］欄をスキップします。



次の[Value Label]に”10 to 19”と入力して、Enter キーを押します。

［From］の値に“10”を入力して、Enter キーを押します。

［To］の値に“19”を入力し、次に Enter キーを 2 回押して［Special］欄をスキップします。

- 16 -



同様に、90-99 まで繰り返します。

次に、「Sex」の値集合を作成します。
［Sex］を右クリックして、［Add Value Set］を選択します。

Enter キーを２回押して、デフォルトの［Value Set Label］と［Value Set Name］を決定します。カーソルは、その下の行の［Value Label］欄に移動します。



最初の［Value Label］に“Male”と入力します。

［From］の値に“1”を入力して、Enter キーを押します。

Enter キーを２回押して［To］欄と［Special］欄をスキップします。



２番目の［Value Label］に“Female”と入力します。

［From］の値に“2”を入力して、Enter キーを押します。

Enter キーを２回押して［To］欄と［Special］欄をスキップします。



Esc キーを押して Sex の値集合の作成を終了します。

さらに。
「Marital Status」に値集合を追加します。「1」を「Married」、「2」を「Not married」とします。

「Housing Record」項目に調査票の housing information5から値を追加します。



重要：ここまでの作業を保存しましょう。メインメニューの File/Save を選択するか、ツー
ルバーのボタンをクリックします。

このステップが終わると、次のような画面になります。

5

訳注：調査票の household information を指す。

- 17 -

これで、この課題は終了です。次の課題へ進んでください。

課題３：データ入力フォームの作成
ステップ 1：ＩＤと世帯項目のフォームへの配置
ここでデータ辞書の話からフォームの話に変わります。
重要な注意：一般に、データ入力フォームを調査票そのものと同じレイアウトで作ることは、良いア
イデアです。CSPro では、簡単にそうすることができます。しかし、ここでは、もっとほかの機能を説明し、時間を節約するため、簡略化します。
辞書の項目をデータ入力フォームに配置します。



ツールバーの

ツリーの項目を展開して、すべての項目を見ることができるようにします。項目の隣に＋ボタンを押します。空白の灰色のフォームが画面右側に出ます。

印があれば、［＋］をクリックします。
［MyDict identification］をツリーからフォームの上部にドラッグアンドドロップします。

- 18 -

（［MyDict identification］をクリックして、マウスボタンを押したままフォームの上部まで移動させて、マウスのボタンを離します。）
［Housing Record］をツリーからフォームへドラッグアンドドロップして、［ID_ITEM］の下に置きます。[Drag Options]設定のまま[OK]をクリックします。

次に、列を揃えます。


３つのテキストを選択します。Ctrl キーを押したまま Id Item をクリックして、次に Typehousehold をクリック、Type roof をクリックし、Ctrl キーを離します。



メインメニューの Align/Left を選択します。



3 つのデータ入力ボックスを選択します。

Align/Right を選択します。

このステップが終わると、次のような画面になります6。

次のステップへ続きます。

ステップ 2：テキストとボックスの追加

6

訳注：実際の画面はツリー部分の表示が異なる。この図と同じように表示するためには、メインメニューの［View］で［Names in Tree］にチェックを付ける。

- 19 -

最初に、画面の一番上に独自のテキストのラインを加えていきます。


フォームの［Id Item］のあたりで右クリックします。



メニューから［Add Text］を選択します。

“My First Application”と入力して Enter キーを押します（または［OK］をクリックします）。



テキストを適当な位置に配置します。そのためには、テキストを選択（テキストをクリック）
して矢印キーを使うか、テキストを新しい位置へドラッグアンドドロップします。

次にデータ入力フィールドの周りを枠で囲みます。



ツールバーの

そのツールバーの右から 2 番目の箱をクリックします。



マウスのポインターを［Id Item］の左に移動します。

左クリックしてボタンを押したままにします。



マウスを右下へドラッグします。



必要な大きさの枠ができたら、マウスボタンを離します。



メインのツールバーのボタンをクリックします。小さなツールバーが画面上に現れます。

ボタンをもう一度クリックして小さなツールバーを閉じます。

このステップが終わると、次のような画面になります。

- 20 -

次のステップへ続きます。

ステップ 3：フォームの自動作成
CSPro はデータ辞書のすべての項目を含んだ完全なフォームを一度の操作で作成することができます。この機能を使って、時間を短縮します。


メインメニューの Edit/Generate Forms を選択するか、Ctrl-G7を押します。

ステップ 1 と 2 で作成したフォームを置き換えるメッセージが出ます。［はい］をクリックして続けます。

［Drag Options］ダイアログボックスが表示されます。［Roster Options］が［Horizontal］になっていることを確認します。［OK］をクリックし、［Drag Options］ダイアログックスを閉じます。



左側のツリーに３つのフォームがあることを確認します。ツリーのいくつかの部分の隣にある［＋］をクリックしてツリー全体を開きます。



ツリーの PERSON_RECORD_FORM8の上でクリックします。CSPro が作成した一覧を確
認します。

7

訳注：Ctrl キーを押しながら G キーを押すことを意味する。以下、同様。
訳注：メインメニューの［View］で［Names in Tree］にチェックが入っている場合は、PERSON_RECORD_FORM と表示される。チェックが入っていない場合は、黄色の四角の横にある Person Record を指す。
8

- 21 -



CSPro が作成したフォームを確認するためにツリーのあたりをクリックします。



重要：ここまでの作業を保存しましょう。メインメニューの File/Save を選択するか、ツー
ルバーのボタンをクリックします。

このステップが終わると、次のような画面になります。

これで、この課題は終了です。次の課題へ進んでください。

課題４：データ入力
ステップ 1：データ入力アプリケーションの実行
データ入力アプリケーションを実行する準備ができました。CSEntry という名前のプログラムでこのアプリケーションを実行し、データを入力することができます。



ツールバーのボタンをクリックするか、Ctrl-R を押して、CSEntry を実行します。（作- 22 -

業をまだ保存していない場合、保存を促すメッセージが出ます。［はい］をクリックして保存します。）


データファイルを選択します。入力したデータは選択したファイルに入ります。この課題で作成した“c:\CSProTutorial”にフォルダを変更し、ファイル名に“MyData.dat”と入力して、Enter キーを押します。



新しいファイルの作成を確認するメッセージが表示されたら、［はい］をクリックします。

［Operator ID］の確認に対しては、任意に入力してください。



1 番目のデータの入力フォームが表示され、データの入力を始める位置にカーソルがあります。

このステップが終わると、次のような画面になります。

次のステップへ続きます。

- 23 -

ステップ 2：ケース追加の開始
最初のケース（調査票）のデータを入力していきます。架空の４人の家族を使います。


Id 項目に“1”を入力し、Enter キーを押します。次に個人を登録するフォームが表示されます。

Age 欄に“48”を入力します。カーソルが Sex 欄に移動します。



Sex 欄に“3”を入力すると、この値が範囲外であることを警告するメッセージが出ます。
この値はデータ辞書に作成した Sex の値集合の中に存在しないからです。



OUT OF RANGE のメッセージが表示されている状態で、“1”を入力します。メッセージが消えて、カーソルが Marital Status 欄に移動します。



下記に示す家族のデータを入力します。

Tips：


前の欄に戻るときは、Shift-Tab、左向き矢印、上向き矢印を使います。



次の欄に進むときは、Enter キー、Tab、右向き矢印、下向き矢印を使います。

（すでに入力されている数字を消さずに）新しい数字を入力するだけで、欄の内容を変更できます。



スペースバーを使って欄の内容を消すことができます。

- 24 -

次のステップへ続きます。

ステップ 3：ケース追加の終了
個人の登録を終了します。
Ctrl キーを押したままにします。



テンキーのスラッシュ“/”を押します。画面に次のフォームが表示されます。ノートパソコ
ンの場合などで、このキーの組み合わせを使うことが難しければ、メインメニューのFunctions9/End Group を選択します。

次に、世帯のフォームにデータを入力して、このケースを終わらせます。
Type Household 欄に“1”を入力します。

Tyep Roof 欄に“1”を入力します。



このケースの確認を求めるメッセージが表示されます。［いいえ］を選択すると、フォームに戻ってデータを変更できます。データが正しいことを確認できていれば、Enter キーを押すか、［はい］を選択します。

9

訳注：実際の画面では、Navigation メニューのこと。

- 25 -



最初のフォームが再び表示され、別のケースを入力する位置にカーソルがあります。こ
こで、ケースの追加を中止します。ツールバーのボタンをクリックするか、Esc キー

か Ctrl-S を押すか、メインメニューの Mode/Stop を選択します。
このステップが終わると、次のような画面になります。

次のステップへ続きます。

ステップ 4：ケースの修正
ここで、この世帯の最初の人が４８歳ではなくて４５歳であることが分かったとします。データに戻って、この値を変更します。



ツールバーのボタンをクリックするか、Ctrl-M を押して修正モードに入ります。１番

目のフォームの ID 項目の値の 1 が表示されます。

- 26 -



PgDn キーを押して、次のフォームへ進みます。

（48 が入っている１行目の）Age 欄に“45”を入力します。



F12 を押して、変更作業を終了します。



以下のような画面が表示されます。前のステップと同様に、このケースの確認のメッセー
ジが表示されます。［はい］を選択します。

CSEntry は変更を保存して、修正モードを終わります。

ウィンドウの右上隅の X をクリックして、CSEntry を閉じるか、メインメニューの File/Exit
を選択します。

これで、この課題は終了です。次の課題へ進んでください。

課題５：データの集計
ステップ 1：集計アプリケーションの作成
この課題では、前の課題で入力したデータについて、単純なクロス集計を行います。
前の課題からの続きで、データ入力アプリケーションが開いていたら、ここで閉じてください。メイン
メニューの File/Close を選択します。変更の保存を促すメッセージが表示されたら、［はい］を選択- 27 -

して保存します。
ここでは、課題 2 と同様に、ウィザードを用いて、クロス集計アプリケーションを作成していきます。



メインメニューの File/New を選択するか、ツールバーの［Tabulation Application］を選びます。

[OK]を押します。

ボタンをクリックします。

開いたダイアログボックスの中のファイルにおいて

アプリケーションの名前に”MyTab”と入力します。



この課題で作成したフォルダ名“c:\CSProTutorial”を入力します。

Create を押します。

次の画面で “Input Dictionary”を選びます。


名前を”c:\CSProTutorial\MyDic.dcf”に変更します。

[OK]を押します。

これで表を設計する準備ができました。
このステップが終わると、次のような画面になります。

- 28 -

次のステップへ続きます。

ステップ 2：集計項目の選択
Age と Sex をクロスした表を作成していきます。Age を表側、Sex を表頭に表示します。
［Person record］の隣の［＋］をクリックして、項目をツリーに表示させます。

［Age］をツリーから表の左側へドラッグアンドドロップします。（［Age］をクリックしてマウスボタンを押したまま表の横にマウスを移動してマウスボタンを離します。）ドロップする場
所は、横の灰色の四角のとなりの白いスペースです。

［Sex］をツリーから表の上側へドラッグアンドドロップします。（［Sex］をクリックしてマウスボタンを押したまま表の上にマウスを移動してマウスボタンを離します。）ドロップする場
所は、上側の灰色の四角の下の白いスペースです。

Tips：


辞書のツリーからドラッグする項目は、ドロップする場所によって、表側の項目にも表頭の項目にもなります。表の左上から右下にかけての対角線に対して、対角線の左下にドロップすると表側の項目となり、右上にドロップすると表頭の項目になります。



項目のラベルの上でクリックして、それを辞書のツリーにドラッグアンドドロップすると、その項目を表から削除することができます。また、ラベルを右クリックして［Delete］を選択し- 29 -

ても削除できます。
このステップが終わると、次のような画面になります。

次のステップへ続きます。

- 30 -

ステップ 3：集計の実行
ここで、集計を実行します。前の課題で作成したデータファイルを使用します。



ツールバーのボタンをクリックするか、Ctrl-R を押します。CSPro が変更の保存を促したら、Yes をクリックします。


表を作成するためデータファイルの選択のメッセージが表示されたら、“MyData.dat”を選択します。このダイアログボックスでは、これまでの課題で作成したフォルダ“c:\CSProTutorial”になっていることを確認します。



集計値が表に表示されます。これで終わりです。

このステップが終わると、次のような画面になります。

これで、この課題は終了です。次の課題へ進んでください。

- 31 -

課題６：表の修正ステップ 1：パーセントの追加
この課題では前の課題で作成した表を修正します。「Sex」変数の値の次の表頭にパーセントを付け加えて始まります。


表内の“Male”の上の”Sex”の語の上で右クリックします。



右クリックメニューから Tally Attributes(Sex)を選びます。



リスト左側にある Available の印のあるダイアログボックスで、Percents をクリッ
クしてから、Add..>ボタンをクリックします。リスト右側にある Selected の印のあるダイアログボックスに Percents が見えます。

[OK]をクリックします。パーセントには表上に三つの新しい表頭が入ります。



ツールバーのボタンをクリックするか、Ctrl-R を押します。CSPro が変更を保存するように促したなら、Yes をクリックします。



前の課題でしたように、表を作るデータファイルとして’MyData.dat’を選びます。

このステップが終わると、次のような画面になります。

- 32 -

次の課題へ進んでください。

ステップ 2：範囲の追加
表に範囲を追加します。範囲は”フィルター”です。すなわち、表をある条件に合うデータレコ
ードの部分集合に制限する方法です、このステップでは、結婚している人々の表を作成します。


表上でどこでも右クリックします。



右クリックメニューから、Tally Attributes ( Table )を選びます。



Universe の印のあるダイアログの部分に、”marital_status=1”と入力します。

重要な注意：これは正確に入力してください。でないと、”Invalid Universe Syntax”というメッセージがあらわれます。

- 33 -

[OK]をクリックします。



ツールバーのボタンをクリックするか、[Ctrl-R]を押して表作成を実行し変更を保存するように CSPro が促して来たら、Yes をクリックします。



前と同じように、データファイルとして’MyData.dat’を選びます。

このステップが終わると、次のような画面になります。未婚の人を数えてないので、前のステップより値が小さくなっています。

- 34 -

次の課題へ進んでください。

ステップ 3：タイトルフォントの変更
CSPro は表のフォーマットの制御に大きな力を発揮します。例えば、このステップで表の題名のフォントを大きく見えるように変更してみます。


表の上部の “ Table1.Age by Sex”を右クリックします。



右クリックメニューから Format ( Title )を選びます。

Font and Color の印のあるダイアログの部分で、Change ボタンをクリックします。

- 35 -



出て来たフォントダイアログボックスで、Size を 12 から 16 に変更します。

[OK]をクリックして、フォントダイアログボックスを閉じます。

[OK]をクリックして、Format ( Title )ダイアログボックスを閉じます。

このステップを終えると、表題は大きくなっています。
これで、この課題は終了です。次の課題へ進んでください。
課題７：データ入力アプリケーションへのエディット規則の追加
ステップ 1：エディットのロジック作成
ここでは、データ入力アプリケーションに戻ります。チェックの 1 つとして、既婚者は少なくとも１２歳以上であることを確認するものを紹介していきます。データ入力アプリケーションの中では、配偶関係を入力した後すぐにこのチェックを実行します。


前の課題からの続きで、クロス集計アプリケーションが開いていたら、ここで閉じてください。メインメニューの File/Close を選択します。変更の保存を促したら、Yes を選択します。

- 36 -



前に作成したデータ入力アプリケーションを開きます。ツールバーのボタンをクリック す る か 、 メ イ ン メ ニ ュ ー か ら File/Open を 選 択 し ま す 。 ア プ リ ケ ー シ ョ ン 名
MYENTRY.ENT をクリックし、さらに、［open］をクリックします10。
ロジック作成の準備として、ツールバーのボタンをクリックするか、Ctrl-L を押すか、メインメニューから View/View Logic を選択します。


Ctr+T を押すと、フォームのツリーのラベルの代わりに名称が表示されます。

［PERSON_RECORD_FORM］の隣の［＋］をクリックし、次に、［PERSON_RECORD000］の隣の［＋］をクリックし、［MARITAL_STATUS］をクリックします11。画面の右側のフレームの一番上に、「PROC MATIRAL_STATUS」と表示されます。

「 PROC 」 は procedure （ ＝ 処 理 手 続 き 、 手 続 き ） の 略 で す 。 こ の ロ ジ ッ ク をMARITAL_STATUS についての手続きとして入れることにより、オペレーターがその欄に入力してすぐに処理することができます。



ロジックを正確に入力して、次の図と同じようにしてください。

10

訳注：フォーム作成の確認のメッセージが表示された場合、［いいえ］を選択する。
訳注：メインメニューの［View］で［Names in Tree］にチェックが入っている場合の表示に合わせて記述されている。チェックが入っていない場合は、それぞれ順番に、黄色の四角の横の［Person record］、緑の四角の横の［Person record］、［Marital Status］を指す。
11- 37 -

次のステップへ続きます。

ステップ 2：ロジックのコンパイル
CSPro 言語でロジックを入力しました。すべての手続き型言語と同様に、システムは文法のエラーがないことを確認しなければなりません。これをコンパイルと呼びます。


すべての CSPro ロジックを明らかにするため、フォームツリー内の[MYDICT_FF]をクリッ
クします。



ロジックをコンパイルするために、ツールバーのボタンをクリックするか、Ctrl-K を押すか、メインメニューから File/Compile を選択します。


ロジックを正しく入力していれば、Compile Successful というメッセージがロジックの下の［Compiler Output］に表示されます。



ダイアログボックスに Compile Failed と表示される場合は、なにか間違って入力しています。赤い丸がエラーのある辺りの余白に表示されます。画面下部の［Compiler Output］
タブにエラーメッセージが表示され、エラーの特定に役立ちます。入力したロジックが前のステップで示したものと正確に同じであるか、注意深く確認してください。

このステップが終わると、次のような画面になります12。

12

訳注：左側のツリーで[MyEntry]がハイライトされている場合の画面である。

- 38 -

次のステップへ続きます。

ステップ 3：エディット規則のテスト
データ入力アプリケーションを実行する準備ができました。ロジックが適切に動作することを確認します。

CSEntry を実行するために、ツールバーのボタンをクリックするか、Ctrl-R を押します。


変更の保存を促すメッセージが表示されたら、[はい]を選択して保存します。



データファイルの選択のメッセージが表示されます。ファイル名として“MyData.dat”を入力して、Enter キーを押します。



任意の Operator ID を入力します。



ツールバーのボタンをクリックするか、Ctrl-A を押して、追加モードに入ります。最初のフォームが表示され Id item にカーソルがある状態になっています。


Id item に“2”を入力し、Enter キーを押します。次のフォームが表示され、個人の登録簿- 39 -

が示されます。
Age 欄に“10”を入力します。

Sex 欄に“1”を入力します。

Marital Status 欄に“1”を入力します。



下図のように、エラーメッセージが画面に表示されます。

次のステップへ続きます。

ステップ 4：ケース入力の終了
２番目のケースは、誤った状態のままにしてデータ入力を終了し、次の課題でその誤りのチェックができるようにします。


F8 を押して、メッセージを消去する。

Ctrl キーを押したまま、テンキーのスラッシュ/を押します。画面に次のフォームが表示されます。

Type Household 欄に“1”を入力します。

Type Roof 欄に“1”を入力します。



このケースの確認を求めるメッセージが表示されたら、[はい]を選択します。

- 40 -



ツールバーのボタンをクリックするか、Esc キーまたは Ctrl-S を押すか、メインメニュ

ーの Mode/Stop を選択します。
CSEntry を閉じるために、右上隅の X をクリックするか、メインメニューから File/Close13を選択します。

これで、この課題は終了です。次の課題へ進んでください。

課題８：バッチアプリケーションの実行
ステップ 1：バッチアプリケーションの作成
前の課題では、ロジックを作成し、エディットを対話形式、つまり、データ入力のときに実行できる
ようにしました。この課題では、同じロジックをバッチアプリケーション、つまり、データ入力後の処理として適用します。


前の課題からの続きで、データ入力アプリケーションが開いていたら、ここで閉じてください。メインメニューの File/Close を選択します。変更の保存を促すメッセージが表示されたら、［はい］を選択して保存します。

課題２や５と同じように、ウィザードを使ってバッチアプリケーションを作成します。

13

メインメニューから File/New を選択するか、ツールバーの［Batch Application］をクリックします。



アプリケーションの名前として、“MyBatch”と入力します。



これまでの課題で作成したフォルダ名を入力します（“c:\CSProTutorial”）。

訳注：CSEntry のメニューから File/Exit を選択する操作が正しい。

- 41 -

ボタンをクリックします。

[次へ]をクリックします。



データ辞書を選択します。“c:\CSProTutorial\MyDict.dcf”と入力して、[次へ]をクリックします。



チェッカーフラッグが表示されます。[完了]をクリックして完成です。

このステップが終わると、次のような画面になります。

- 42 -

次のステップへ続きます。

ステップ 2：ロジックの作成とコンパイル
前の課題と同じロジックを作成します。


エデットツリー内のラベルの代わりに名前を明らかにするため、Ctrl+T を押します。

［PERSON_RECORD_FORM］の隣の［＋］をクリックし、次に、［MARITAL_STATUS］をクリックします14。画面の右側のフレームの一番上に、「PROC MATIRAL_STATUS」と表示されます。



次の図と同じになるように、ロジックを正確に入力します。

「 marital_status 」 の代わ りに 「 $」 を使 っていることに 気 をつ けます 。このロ ジック は
marital_status の手続きの内側にあるので、２つは同じものを意味します。CSPro 言語では、「$」は、「this item」を意味する省略形です。



ロジックをコンパイルするため、ツールバーのボタンをクリックするか、Ctrl-K を押す

か、メインメニューの File/Compile を選択します。
14

訳注：メインメニューの［View］で[Names in Tree]にチェックが入っている場合の表示に合わせて記述されている。
チェックが入っていない場合は、それぞれ、緑の四角の横の［Person record］、黄色の四角の横の［Marital
Status］を指す。

- 43 -



エラーがあれば修正して、Compile Successful が表示されるようにします。

次のステップへ続きます。

ステップ 3：バッチアプリケーションの実行
バッチアプリケーションを実行する準備ができました。CSBatch がこのアプリケーションを実行するプログラムの名前です。前の課題で作成したデータファイルを使います。



CSBatch を実行するため、ツールバーのボタンをクリックするか、Ctrl-R を押します。


変更の保存を促すメッセージが表示されたら、［はい］を選択します。



データファイルの名前を入力します。［Input Data File］の隣の空のボックスをクリックして、“MyData.dat”と入力し、［OK］をクリックします。

- 44 -

CSBatch がこのプログラムを実行します。
次のステップへ続きます。

- 45 -

ステップ 4：出力レポートの確認
出力レポートが CSPro Text Viewer に表示されます。次のような表示になります。

最初の数行はファイル名やデータや実行時間を示します。
「CSPro Process Summary」ボックス


２行目は、データファイルの構造には問題がないことを示します。



３行目は、user メッセージがロジックの中で１回発生したことを示します。警告やエラーは発生しませんでした。



１行目は、データファイルが 7 レコードあることを示します。



最終行は、データファイルには 2 つのケースがあることを示します。

「Process Message」- 46 -



このセクションは１件ごとに示されます。



この例では、メッセージは１回だけ発生したので、その１件だけが表示されます。

Case[2]はケースの ID を示します。この例では、２番目のケースがエラーを含むことを意味します。

「User unnumbered messages」


このセクションはメッセージの要約です。



ロジックの中で１つだけ errmsg コマンドを使っているので、１行だけ表示されます。

「Line」の下の数字 8 は、ロジック中で errmsg コマンドが存在する行の番号を示します。

「Freq」の下の数字 1 は、そのメッセージがデータファイル処理中に１回だけ発生したことを示します。

レポートの確認が終わったら、Esc キーを押すか、メインメニューの File/Exit を選択して、Text
Viewer を閉じます。
おめでとうございます。あなたは、CSPro のチュートリアルを完了しました。これで、自分のアプリケーションを作成して実行することができるでしょう。詳細は User’s Guides を参照してください。
CSPro のどのモジュールからでも、メインメニューの Help/Help Topics を選択すれば、User’s
Guides を参照できます。

- 47 -