忘備禄

2003.5.11 更新 「新規OBの追加」を更新

2003.1.21 更新 ファイルメーカー Pro 6 を導入し OS X に対応。AppleScript から正しく制御できるようになった(らしい)。perl 版の漢字コード変換フィルタ jcode.pl, pkf を導入し漢字コード変換と改行コード変換がスクリプトにより制御できるようになった。会費納入処理をそれに合わせて変更。process OBkaihi 1 と process OBkaihi 3 を変更。

2003.1.5 掲載


OB 会事務のうちパソコン関連のものの取扱方法を簡単に記したメモです。マニュアルというほど整理されていません。


Mac OS X 10.2 (Jaguar) 上での処理

以下の説明で [OBRF] は「OB会事務ルートフォルダ」を表し、 現在(2003.1.5)のところ home:Documents:MusicOffice:Huso-OB である。

会費納入処理

  1. 会費納入を知らせるメールを以下のフォーマットで [OBRF]:KaihiProc:work に paid_record.txt として sjis-LF で保存。
    》(振替/現金etcの別)(タブ)(名前スペースなし)(タブ)(金額)(タブ)
    》(日付)(改行)
    》
    》でお願いします。パートとか通信欄とかの情報はいれないでください。
    》夫婦会員の名前は旦那のみにしてください。
    》名前だけでなく各項目はスペースをいれずに記載してください。
    》(スペース文字をつかって項目に分割しているので)
    
  2. [OBRF]:KaihiProc の前回の日付けのフォルダから、[OBRF]:KaihiProc:work に会費納入状況ファイル bookfile.txt と履歴ファイル logfile.txt をコピー
  3. アップルスクリプトメニューから process OBkaihi 1 を実行。

    これにより、ファイルメーカーで「OB 名簿」が開かれ、スクリプト「会員番号ファイル作成」 が実行される。
    名簿のあるフォルダに ID.db ファイルが作成され、 [OBRF]:KaihiProc:work に移動されて
    Unix 上の pkf で sjis-LF に変換される。

    Unix で perl スクリプト chkid.pl が実行され、処理ログが [OBRF]:KaihiProc:work:check_log.txt に出力される。処理ログを確認。主に名前の不一致が報告される。名前が不一致の場合は名簿を参照して名簿上の名前を paid_record.txt に転記する。その他必要な処置をし再度 process OBkaihi 1 を実行。エラーがなくなるまで繰り返す。エラーがなくなると [OBRF]:KaihiProc:work に整理済み会費納入ファイル checked_record.txt が作成される。
    process OBkaihi 1 のソース chkid.pl のソース

  4. アップルスクリプトメニューから process OBkaihi 2 を実行。

    これにより Unix で perl スクリプト mod_book.pl がチェックモードで実行され、チェック用ログが [OBRF]:KaihiProc:work:mod_book_check.txt に出力される。これを入念にチェック。適宜必要な処置をし、不具合がなくなるまで繰り返す。
    process OBkaihi 2 のソース mod_book.pl のソース

  5. アップルスクリプトメニューから process OBkaihi 3 を実行。

    これにより Unix で perl スクリプト mod_book.pl が本書き込みモードで実行され、[OBRF]:KaihiProc:work に新しい会費納入状況ファイル bookfile.txt.new と履歴ファイル logfile.txt.new が作成される。
    さらに bookfile.txt.new の内容は、pkf により sjis-CR に変換されて新しい別のファイル bookfileCR.txt に保存され、「OB名簿」の存在するフォルダに移動される。
    [OBRF]:KaihiProc:work の bookfile.txt, logfile.txt, ID.db, check_log.txt, checked_record.txt が削除される。
    process OBkaihi 3 のソース mod_book.pl のソース

  6. [OBRF]:KaihiProc に処理日を名前に持つ保存用フォルダを作成し、上記の bookfile.txt.new を bookfile.txt として、logfile.txt.new を logfile.txt として移動する。また上記の paid_record.txt, mod_book_check.txt も移動する。
  7. OB 名簿のフォルダで、現在までの「会費納入状況」データベースファイルを「会費納入状況.0」などと名前を変更し、「会費納入状況テンプレート」を複製し名前変更して新しい「会費納入状況」データベースとする。ファイルメーカーで新しい「会費納入状況」データベースを開き、「レコード取り込み」によって bookfileCR.txt からデータを取り込む。

新規 OB の追加

  1. FileMaker 上で追加処理・会員番号付与
  2. 「作業用レイアウト」(「レコード作成日」が表示されるレイアウト)で、「レコード作成日」で検索。会員番号でソート
  3. スクリプト「現選択レコードのみの会員番号ファイル作成」実行。名簿ファイルのあるフォルダに ID.add が作成される。
  4. ID.add を [OBRF]:KaihiProc:work に移動。
  5. 最新の bookfile.txt、最新の logfile.txt を [OBRF]:KaihiProc:work にコピー
  6. [OBRF]:KaihiProc:work の adddates_def.txt を今回追加する OB に対応して書き換える。入会日付と会費支払済初期値。
  7. アップルスクリプトメニューから add New OB を実行。
    スクリプト内では csh スクリプト doAddOb が実行されて必要な準備の後 perl スクリプト addob.pl が呼ばれ、これにより [OBRF]:KaihiProc:work に新規 OB の分が追加された logfile_new.txt, bookfile_new.txt, bookfileCR.txt が作成される。
  8. [OBRF]:KaihiProc に処理日を名前に持つ保存用フォルダを作成し、上記の bookfile_new.txt を bookfile.txt として、logfile_new.txt を logfile.txt として移動する。
  9. 名簿ファイルのあるフォルダに bookfileCR.txt を移動する。OB 名簿のフォルダで、現在までの「会費納入状況」データベースファイルを「会費納入状況.0」などと名前を変更し、「会費納入状況テンプレート」を複製し名前変更して新しい「会費納入状況」データベースとする。ファイルメーカーで新しい「会費納入状況」データベースを開き、「レコード取り込み」によって bookfileCR.txt からデータを取り込む。

add New OB のソース doAddOb のソース addob.pl のソース FMスクリプト「現選択レコードのみの会員番号ファイル作成
(旧) 2001 4/17 現在の作業流れ図と 2003 対応へのコメント

OB 名簿差分ファイルの作成

準備中
2001 4/26 現在の作業流れ図と 2003 対応へのコメント
FMスクリプト「差分用データファイル作成

定演 OB 受付用の会費納入状況資料作成

準備中
2001 11/18 現在の作業流れ図と 2003 対応へのコメント
FMスクリプト「会費納入状況ファイル作成

印刷の OB 名簿のための原稿ファイル作成

2002 のときの作業流れ図と 2003 対応へのコメント 本体 索引
FMスクリプト「データファイル作成(本体)2000」「データファイル作成(索引)2000
データファイル作成(旧姓索引)2000

OB 会通信エッセイ Web ファイルの更新

  1. 新しいエッセイファイルを [OBRF]:InputTextsSjis に sjis-LF で作成。タグも、バックナンバーのファイルを参照して、正しくつける。
  2. アップルスクリプトメニューから update OB essays を実行。

    このスクリプトは以下の内容を自動的に実行する。update OB essays のソース

    Unix で [OBRF]/EssayBin/Makethem を実行。(csh スクリプト) Makethem 内では perl スクリプト mkessay と sumup_idxs が実行される。新しい HTML ファイル (バックナンバーを含む)が、[OBRF]/EssayHtmls にできるので、 「HP 関係」以下の当該フォルダ(OB 会 Web のファイル群を管理しているフォルダ)に上書き移動
    Makethem のソース mkessay のソース sumup_idxs のソース

    終了すると作成したインデックスページを Web ブラウザで開くので、チェックする。

  3. GoLive で nifty にアップロード。

    (essay-idx.htm と、最新号の essay??.htm のみでよい ←が、AppliScript では全ファイル更新する)

住所不明者 Web ファイルの更新

  1. ファイルメーカーで「OB 名簿」を開き、スクリプト「住所不明者ファイル作成」 を実行する。名簿のあるフォルダに lookfor.txt ファイルが作成される。
  2. アップルスクリプトメニューから make OB lookfor を実行。

    このスクリプトは以下の内容を自動的に実行する。make OB lookfor のソース

    1. Jedit で lookfor.txt を sjis-LF にする。
    2. lookfor.txt を [OBRF]:LookingBin に上書き移動する。
    3. Unix で perl スクリプト look.pl を実行し、lookfor.html を作成する。look.pl のソース
    4. lookfor.html を OB 会 Web の適切なディレクトリに上書き移動する。

    終了すると作成した住所不明者ページを Web ブラウザで開くので、チェックする。

  3. GoLive で nifty にアップロード。