過去の桐井戸端BBS (桐ver.8)
6247 日付型への変換方法 daimatu 2000/06/03-11:39

桐v8 sp5です。

[生年元号] [生年] [生月] [生日] (いずれも文字列型)の項目が設定してありますが,
これを日時型に変換するにはどうしたら良いでしょうか。

現在は,昭和enter10年enter10月enter10日のように項目ごとに入力していますが,
これを昭和10年10月10日のようにつなげて,日付型[生年月日]の項目で表示できるようにしたいのです。

ついでに、この場合の年齢計算の計算式はどうしたらいいのでしょうか。

T.Daimatu
6249 Re:日付型への変換方法 悲しげ 2000/06/03-20:31
記事番号6247へのコメント
どもっ、daimatuさん

文字列型項目なら
 [生年号]+#STR([生年])+"年"+#STR([生月])+"月"+#STR([生日])+"日"

日時型項目にしたければ
 #日時値([生年号]+#STR([生年])+"/"+#STR([生月])+"/"+#STR([生日]))
のようになると思いますが、ただしこの場合、全て西暦で表示されるようです。
日時型のデータ型は一種の数値系なので、元号=文字列は扱わないと云うことなのでしょうかね。
どうしても元号表示させたいのなら、前者の方が簡単だと思います。

年齢は(上記項目を[誕生日]とすれば)
 #年齢([誕生日],#年月日)
で出るはずです。
普通はこれでいいのですが、誕生日の何時の時点をもって年齢が繰り上がるかで、異論はあるようです。
6250 Re:日付型への変換方法 daimatu 2000/06/03-20:59
記事番号6249へのコメント
悲しげさん
早速、ご回答ありがとうございます。
早速、やってみたいと思っています。
今後ともよろしくお願いします。

6255 Re:日時型の表示 bonito 2000/06/04-19:16
記事番号6249へのコメント
悲しげさん、こんにちは。

>のようになると思いますが、ただしこの場合、全て西暦で表示される
>ようです。日時型のデータ型は一種の数値系なので、元号=文字列は扱
>わないと云うことなのでしょうかね。

日時型は一種のシリアル値(?)ですよね、ですから必ず(?)どう表示するかがついてくると思います。
(生のままでは一般人には意味不明ですから)
WFM・RPTはもちろんですが、表編集でも「項目の表示条件」の(何故か?)
「表示幅」タブ中に「表示形式」という欄があって元号付きとかも選べるようです。

ps
 日時値については思うところがあって、ついさっき【多遊】さんのところ
 に書き込みをさせて頂きました。ご批評頂ければ…と思っています。
 (こんな事書くのはマナー違反なのでしょうか? > all)

6257 Re:日時型の表示 悲しげ 2000/06/04-21:43
記事番号6255へのコメント
どもっ、bonitoさん、

>WFM・RPTはもちろんですが、表編集でも「項目の表示条件」の
>(何故か?)「表示幅」タブ中に「表示形式」という欄があって元号付き
>とかも選べるようです。

あ、どうもありがとうございます。
表の場合は項目の表示条件でしたか。これは知りませんでした。
いえ、実は私、日時型は結局、殆ど使っていないのです。
その便利さを享受する前に、何だか余計に面倒になった部分だけが気になって。
特に、DOS版を忠実に移植している場合などでは。(^^;)



あとは、daimatuさん宛に、前回書き忘れたことを書きます。
項目計算式にて年齢を算出する場合、年齢値はリアルタイムに更新されません。
そのレコードで訂正等を行うか、置換を行わない限り、永遠に年を取らないってことも起こり得ます。
ですから、このことを承知の上で、頻繁に置換して値を更新させるような使い方をするか、
計算式を表の項目に持たせないでフォーム上のテキストで計算式を設定して参照する
(この場合はおそらくリアルタイムに更新された筈)ような方法もご検討下さい。
6276 Re:日時型の表示 daimatu 2000/06/06-02:20
記事番号6257へのコメント
悲しげさん、ありがとうございます。

>項目計算式にて年齢を算出する場合、年齢値はリアルタイム
>に更新されません。そのレコードで訂正等を行うか、置換を
>行わない限り、永遠に年を取らないってことも起こり得ます。
>ですから、このことを承知の上で、頻繁に置換して値を更新
>させるような使い方をするか、計算式を表の項目に持たせな

このことは、旧桐時代から承知していますので、そのように注意いたします。

>いでフォーム上のテキストで計算式を設定して参照する(こ
>の場合はおそらくリアルタイムに更新された筈)ような方法
>もご検討下さい。

注意いたします。

なお、日時型に置換するときに[生年月日]の文字列型項目で置換後、
日時型に変更する必要がありました。これでいいのでしょうか。
いまのところ支障はないように思います。

戻る