メールマガジン【アクセスで作るシリーズ】


バックナンバー 【会計ソフト編】 Vol.16
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

    ACCESSで作るシリーズ  【会計ソフト編】

    発 行 : Yoshihisa Fukuda          2000.07.22 Vol.16

■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------

今回は仕訳入力のフォーム作成ですが、ちょっとその前に、前回のテーブル定義で
一つだけ、抜けがありました。
先に、その設定をやってからフォーム作成に入ります。

== ◇ 第2章 帳簿入力     ====================

--------------------------------------
2-1 仕訳入力
--------------------------------------
--------------------------------------
2-1-1 テーブル作成(補足)
--------------------------------------
1.仕訳テーブル[SiwakeTable]の伝票日付フィールド[DenpyoDate]の[書式]プロパ
  ティに[yyyy/mm/dd]と設定します。

--------------------------------------
2-1-2 フォーム作成
--------------------------------------
今回もフォームは、ウィザードを使用します。

【フォーム作成手順】
1.[フォーム]タブで[新規作成]ボタンを押して[フォームウィザード]を選びます。
2.[元になるテーブル/クエリーの選択]で[SiwakeTable]を選択して[OK]ボタン
  を押します。
3.[選択可能なフィールド]から全てのフィールドを選択し[次へ]ボタンを押します。
  [>>]ボタンで全てのフィールドが選択出来ます。
4.[フォームの表示形式]は今回は[表形式]を選び[次へ]ボタンを押します。
5.[スタイル]は[BestStyle]を選択し[次へ]ボタンを押します。
6.[フォーム名]を[SiwakeForm]とします。
7.[フォームを作成した後に行うこと]で[フォームのデザインを編集する]を選び
  [完了]ボタンを押します。
8.フォームを選択してフォームのプロパティを以下の様に設定します。
 (1)標題 ・・・・・・・・・・・ 仕訳入力
 (2)コントロールボックス ・・・ いいえ
9.フォームフッタに閉じるボタンを追加します。
  今までと同じ要領でフォームフッターに[閉じる]ボタンを作成します。
10.次は、クエリーの作成です。
 (1)フォームを選択して、[レコードソース]プロパティへカーソルを移動し、
    右端の[...]ボタンを押し、クエリービルダーを起動します。
 (2)メニューの[クエリー]-[テーブルの表示]を選択すると、テーブルの表示
    と言うダイアログが開くので、そこでまず[KamokuTable]を選択し、[追加]
    ボタンを押します。
    すると、クエリービルダーの上段に[KamokuTable]が表示されます。
 (3)[KamokuTable]を選択したまま、もう一度[追加]ボタンを押すと、もう一つ
    [KamokuTable]が表示されます。(この時、後から追加した[KamokuTable]
    のタイトルバーには[KamokuTable_1]と表示されます)
 (4)同じ要領で、[SubKamokuTable]も2つ追加しましょう。
 (5)追加し終わったら、[閉じる]ボタンでテーブルの表示ダイアログを閉じます。
 (6)ここから、少し複雑なので、皆さん落ち着いて間違えない様にして下さい。
    まず、クエリービルダーの上段には、5つのテーブルが表示されている事を
    確認して下さい。
    [SiwakeTable]、[KamokuTable]、[KamokuTable_1]、[SubKamokuTable]、
    [SubKamokuTable_1]の5つです。
 (7)次に、[KmaokuTable]の[KamokuID]をドラッグして、[SiwakeTable]の
    [KarikamoID]にドラッグします。
    すると、線で結ばれます。
 (8)同様に[KmaokuTable_1]の[KamokuID]をドラッグして、[SiwakeTable]の
    [KasikamoID]にドラッグします。
 (9)[SubKamokuTable]の[SubKamokuID]は[SiwakeTable]の[KariSubkamoID]に、
    [SubKamokuTable_1]の[SubKamokuID]は[SiwakeTable]の[KasiSubkamoID]に
    それぞれ、ドラッグ&ドロップで結びつけます。
 (10)次に、[SubKamokuTable]の[SubKamokuID]と[SiwakeTable]の[KariSubkamoID]
    の結びつけた線を選択します。(すると線が太線になります)
 (11)選択した状態で、メニューの[表示]-[結合プロパティ]を選ぶと、結合プロ
    パティのダイアログが開くので、そこで「3: 'SiwakeTable'の全レコードと
    'SubKamokuTable'の同じ結合フィールドのレコードだけを含める。」を
    選択し、[OK]ボタンでダイアログを閉じます。
 (12)同じ要領で、[SubKamokuTable_1]の[SubKamokuID]と[SiwakeTable]の
    [KariSubkamoID]の結合プロパティを設定します。(「3: 'SiwakeTable'の
    全レコードと'SubKamokuTable_1'の同じ結合フィールドのレコードだけを
    含める。」を選択)
 (13)以下のフィールドをダブルクリックして、下段のフィールドに設定します。
    [SiwakeTable]の[*]
    [KamokuTable]の[KamokuCode]と[KamokuName]
    [KmaokuTable_1]の[KamokuCode]と[KamokuName]
    [SubKamokuTable]の[SubKamokuCode]と[SubKamokuName]
    [SubKamokuTable_1]の[SubKamokuCode]と[SubKamokuName]
 (14)[×]ボタンでクエリービルダーを閉じて、クエリーを保存します。
11.仕訳IDは、勘定科目設定や、補助科目設定のIDと同様にプログラムで自動連番を
  振ります。従って、画面上では非表示にします。
 (1)仕訳IDのテキストボックス[SiwakeID]をクリックして選択します。
 (2)[可視]プロパティに[いいえ]を設定します。
    手順は勘定科目設定や、補助科目設定の時と同じです。
12.次は、レイアウトを整えましょう。
  ウィザードでは、全てのフィールドが1行になっていますが、これを2行の
  レイアウトにします。
  以下の様な感じです。
  ---------------------------------------------------------------------
  詳細セクション
  ---------------------------------------------------------------------
  [DenpyoNo] [KariKamoID]  *1[KariAmount][KasiKamoID]  *3[KasiAmount]
  [DenpyoDate][KariSubKamoID]*2[KariTax]  [KasiSubKamoID]*4[KasiTax]
  ---------------------------------------------------------------------
  何処でも構いませんが、[SiwakeID]のテキストボックスを重ねておきます。
  私の場合、[DenpyoNo]と重ね合わせています。

  *1,*2,*3,*4の所は、後からテキストボックス(科目名称表示用)を入れます。
  後でも良いのですが、少しスペースを空けておくと良いでしょう。

 ※ちょっと判りづらいかも知れませんが、ホームページに画像を載せておくので
  そちらも参考にして下さい。

--------------------------------------
今回は、ここまでです。
仕訳入力は、画面のレイアウトなど、今までより少し複雑です。
ホームページに画像を載せていますので、参考にして下さい。
次回は仕訳入力のフォーム作成の続きです。
______________________________________
◆◇ ワンポイントコーナー ◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

【注意事項(重要)】

 Vol.15のワンポイントコーナーで触れました、インデックスの自動生成フィールド
 に関しての、注意事項です。

 このメールマガジンを読みながら、実際に会計ソフトを作成されている方で、この
 メールマガジンとは、違ったフィールド名を付けられている方は、インデックスの
 設定が異なる事があります。

 注意点として、特にメールマガジン上で記載が無い場合、フィールド名にIDと付い
 ていれば、インデックスは「はい(重複あり)」になります。
 それ以外はインデックスは「いいえ」となります。

 オプションを変更されていない方で、テーブルのフィールド名に日本語を使用され
 ている方は、フィールド名に「コード」「番号」が付くと、インデックスが「はい
 (重複あり)」となってしまうので、注意して下さい。

 例えば、基本情報設定で電話番号フィールドを[TEL]でなく[電話番号]とすると、
 インデックスが「はい(重複あり)」になります。
 その場合、自分で「いいえ」にする必要があります。

 インデックスの設定違いによる影響ですが、インデックスはデータの検索、抽出等
 に用いられるため、検索、抽出の処理速度の低下などがあります。
 また、一部のプログラムで関数などによっては、インデックスの指定が正しくない
 と正常に動作しない場合があります。

 このメールマガジンでは、オプションの設定がインストール時のままで、メール
 マガジン通りに作成されている事を前提としていますので、初心者の方や、この辺
 の事が、まだよく理解されていない方は、注意して下さい。
______________________________________
◆◇ Q&Aコーナー    ◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

Q1.
 データ型「数値型」で長整数型と整数型を使い分けておられるようですが、
 使い分けの判断基準は?
A1.
 整数型は、-32,768~32,767 の整数値です。
 長整数型は、-2,147,483,648~2,147,483,647 の整数値となります。
 ただ単に、扱える範囲が違うだけで、その範囲内で通用する値なら、できるだけ
 小さい方が、メモリの節約になり、処理速度の向上にも繋がります。
 このメールマガジンでは、年間伝票数が32,767以内を想定しています。
 年間仕訳数も32,767以内と考えていますが、自動連番のIDに関しては、オートナン
 バーを使用した場合を考慮して、長整数型にしてあります。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

◇ ACCESSで作るシリーズ 【会計ソフト編】
◇ 発 行 元  :Yoshihisa Fukuda(福田 義久)
◇ ご意見・ご要望
  ご質問等   :y.fukuda@ro.bekkoame.ne.jp

◇ このメールマガジンは、インターネットの本屋さん『まぐまぐ』を利用して発行
  しています。(まぐまぐID:0000030446)
◇ バックナンバー:http://www.bekkoame.ne.jp/ro/y.fukuda/
◇ 登録・解除  :http://www.bekkoame.ne.jp/ro/y.fukuda/

 Copyright(C) 2000 Yoshihisa Fukuda All rights reserved.

◇転載について
 このメールマガジンの無断転載などは、一切禁止です。
 転載をご希望の方は、事前にメールで連絡をください。
◇免責
 このメールマガジン及びホームページの内容による、いかなる損害、障害などに
 関して発行者は一切の責任を負いません。
 掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□