初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2014-04-26 19:06:37

champ
Member

自動連番の作成

いつもお世話になっております。
早速ですが、FMP12PROを使用しており、見積書の作成管理を行いたいと考えております。
そこで、見積書Noを本日の日付と本日の発行番号を合算したものを考えました。

・・発行とは、新規レコードの追加分を想定

(例)
・2014/04/26と、発行01番の表示⇒2014042601
・2014/04/26と、発行02番の表示⇒2014042602
・2014/04/26と、発行03番の表示⇒2014042603
・2014/04/26と、発行04番の表示⇒2014042604
・2014/04/26と、発行05番の表示⇒2014042605
                ・
                ・
                ・
・2014/04/27と、発行01番の表示⇒2014042701

  以下、自動連番したいと考えております。

先ず、本日の日付は、日付フィールドに計算式で、GET(日付)より、2014/04/26は、表示できたのですが、
これを、どのようにすれば、20140426**と表示されるのでしょうか?
さらに、自動連番についても、ご指導をお願いします。

Offline

#2 2014-04-26 20:55:49

Traveller
Guest

Re: 自動連番の作成

日付で自己リレーションして、見積書Noは数字フィールドで計算値自動入力の既存値は置き換えるにして
計算値欄は
Let ( D=Year (日付) * 10000 + Month (日付)*100 + Day (日付) ;
Case ( IsEmpty ( T2::日付 ) ; D & "01"; SerialIncrement ( "01" ; Max ( T2::見積書No))))
だったっけ?
「日付」は見積日付フィールド、T2は自己リレーション先テーブル名。
途中の見積レコードを削除したら欠番になる。

#3 2014-04-26 22:01:03

Hiro
Member

Re: 自動連番の作成

日付で自己リレーション「自己テーブル 2」を作っておき、
求める「見積No」は数字フィールドとし、計算値自動入力+既存値置換のオプション設定して、
その計算式は、

  Let(
    #srl=Year(Get(日付))*10^6+Month(Get(日付))*10^4+Day(Get(日付))*10^2;
    SerialIncrement(#srl; Max(#srl;Max(自己テーブル 2::見積No))-#srl+1 )
  )

Offline

#4 2014-04-27 00:51:03

有難うございました。
Guest

Re: 自動連番の作成

Traveller様、Hiro様
大変、勉強になりました。(有難うございました。)
もっと、この掲示板で、勉強させて頂きます。

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 504.23 KiB (Peak: 514.95 KiB) ]