エディットマスクコントロールの和暦データを西暦で取得する

PowerBuilder Tips

方法

エディットマスクコントロールに和暦で表示された日付を日付型のデータとして取得するにはデータウィンドウの GetData 関数を利用します。

エディットマスクの「マスク」プロパティに “ggnn/mm/dd” を指定することで元号に基づいた和暦の日付を入力/表示できますが、その値を Text プロパティから取得すると元号を含めた文字列となり、日付型への変換が困難となります。

このように、表示されているテキストではなく、設定されたデータ型に基づく値として取得したい場合は GetData 関数を利用します。

和暦で入力された日付を取得する場合は、GetData 関数の引数として Date 型の変数を渡すことで、日付型のデータとして取得できます。

【例】エディットマスクに和暦で日付を入力し、西暦としてメッセージボックスに表示する

// 変数を定義
date ld_date

// エディットマスクコントロールに和暦データを設定する
em_1.text = "令和03年12月27日"

// ld_date に 2021/12/27 の日付データが格納される
em_1.Getdata(ld_date)

// 取得したデータを表示する
MessageBox("タイトル","西暦 : " + String(ld_date, "yyyy/mm/dd"))

 

Tips情報

プロダクト :PowerBuilder

バージョン :2019R3

Tips 一覧を見る
PowerBuilder マイグレーション
PowerBuilder学習、動画で始めちゃう?