| はじめての書き込みです。
いつも諸先輩方の書き込みを参考にさせていただきながら勉強させて頂いてます。
問題は解決しているのですが後学のため質問させてください。
−−−−−−−−
名札 メイン
var 固有,文字列{&テストA,&テストB,&テストC,&項目名,&項目値}
*
手続き定義開始 テスト::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
&項目名 = #項目属性(#項目番号(""),1) /* &項目名=テストA〜C
&項目値 = #項目属性(#項目番号(""),0) /* &項目値=一月or1月orJYANUARY
コマンド "&"+&項目名+"="+&項目値
メソッド呼び出し ハンドル = &hwindow,&項目名.再描画( 0 )
メソッド呼び出し ハンドル = &hwindow,@フォーム.描画更新()
手続き定義終了
−−−−−−−−
メインフォームにはテキストオブジェクトが3つあります
テキストオブジェクトのソースは&テストA〜Cです
&テストA〜Cに&項目値を代入するがタメのファミリのイベントです
ファミリは3つサブフォームの各々のオブジェクト"テストA〜C"です
[テストA]には漢数字で一月から一二月まで
[テストB]には全角数字で1月から12月まで
[テストC]には英語でJYANUARYからDECEMBERまで
があらかじめ表で入力されています
上記のイベントだとテストA,テストCをクリックした場合は動作しますが、
テストBをクリックしたら→"月" 変数を指定してください とエラーがでます。
そこで コマンド "&"+&項目名+"="+&項目値 をやめ
&項目値 = #SET( &項目名 , &項目値 ) に変更したところ
動くようになりました。
クリックした先の項目値の先頭に数字や記号があったらエラーになるようです。
文字列の項目値を指定していてもだめなのでしょうか?
またコマンド(eval)にこだわるつもりはないですが、evalで表記するとするならばどのように書けばいいのでしょうか?
過去ログを検索しても見つけれずどうしてもと思い質問しました。
参考ログなどありましたら参照先を教えて頂けると助かります。
また日本語での説明も下手なのでサンプルをアップさせてもらいました。
よろしくお願いします。
|