納品書NOを月毎に付番する

Pocket

納品書を月ごとに、「年月」と「その月に発行した納品書の枚数」で納品書NOを付番する方法です。

サンプルなので、簡単な納品書テーブルを作ります。

納品書NOは全てクエリで設定するので、テーブルでフィールドは作りません。

クエリのフィールドは以下の通りです。年月はFormat関数で簡単に変換できますが、
月毎の納品書の件数をカウントするのが結構しんどいです。

最初に日付の月の月初との日付と月末の日付を求めます。
次にその間の件数を数えるという流れです。

日付をFormat([日付],”yymm”)をDCount関数に当てはめて件数を数える方法も思いついた
のですが、上手く出来なかったのでこの方法に辿り着きました。

クエリ「付番」の納品書テーブル以外のフィールドは次の通りです。

開始日: DateSerial(Year([日付]),Month([日付]),1)

終了日: DateSerial(Year([日付]),Month([日付])+1,0)

件数: DCount(“*”,”納品書”,”日付>=#” & [開始日] & “#” & ” and ” & “日付<=#” & [終了日] & “#” & ” and ” & “納品書ID<=” & [納品書ID] & “”)

年月: Format([日付],”yymm”)

納品書NO: [年月] & “-” & [件数]

簡単そうに思えますが、いろいろなフィールドを組み合わせて作ります。
すぐにできると思ったら案外時間がかかりました。^^;

細かいフィールドの内容については、
2016/2013/2010/2007対応 Accessクエリ ビジネス活用事典をお読みください。

よろしくお願いします!

==========================================
久しぶりの投稿。
先日津市で税理士会の市民フォーラムの実行委員として参加して来ました。
大役を頂き、大変な思いをしましたが、無事終わりほっとしております。

本日も最後までお読みいただきありがとうございます。