(現在 過去ログ50 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■7770 / inTopicNo.1)  #定義関数の使用について
  
□投稿者/ ts -(2014/01/01(Wed) 11:26:55)
    新年早々お世話になります。
    tsと申します。

     早速ですが、標記関数を次のように使用しているのですが、エラー表示(KD1474:使用できない関数があります)がされ、うまく使用できません。
     理由がわかればご教示いただければと思います。

     よろしくお願いいたいます。

    ----------------------------------------------

    項目計算式 [A]
    [A] : 数値

    ●やりたいこと

     [A]に入力されている項目値が未定義であれば、9
    そうでなければ、その項目値をそのまま残すようにしたい。

    #cond([]=#定義,[],1,9)

引用返信 [メール受信/OFF] 削除キー/
■7771 / inTopicNo.2)  Re[1]: #定義関数の使用について
□投稿者/ 今村 誠 -(2014/01/01(Wed) 16:32:23)
    tsさんこんにちは
    1)
    > 項目計算式 [A]
    > [A] : 数値
    2)
    > [A]に入力されている項目値が未定義であれば、9
    > そうでなければ、その項目値をそのまま残すようにしたい。
    > #cond([]=#定義,[],1,9)

    1) #定義 という関数をヘルプで検索すると、比較判定という分類に
    属し、比較式で使用できますと書いてあり、項目計算式で使用できます
    とはどこにも書いてありません。
    2)次に未定義置換数は#未定義という名前で別名表記として#U #う
    ですのでtsさんの計算式は
    #cond([A]=#U,9,1,[A])
    になりませんか?
    3)自分自身に対して項目計算式を使うと入力できないのでは
    ありませんか?
    置換式では問題ないと思いますがこういう場合、定義画面の項目属性
    設定画面の「挿入初期値式」或いは「編集初期値式」に設定するか
    イベントだったら入力前イベント等を使うシーンだと思います。

    どうしても#定義 という関数を頻繁に使いたいなら検索(F6)で
    使うのがいいと思います。
引用返信 [メール受信/OFF] 削除キー/
■7772 / inTopicNo.3)  Re[1]: #定義関数の使用について
□投稿者/ T.Samura -(2014/01/01(Wed) 18:46:13)
    No7770に返信(tsさんの記事)

    ts さんこんにちは。

    これは奥が深いですね。

    前々から#定義と#未定義のふるまいが違って未定義か否かは「[]<>#未定義」ばかり
    使っていました。どうも 「.not #定義」=「#未定義」ではないようです。

    ヘルプではどちらも数値を返すシンボル「0.0」がついていますが、
    表定義などの式入力のヘルプでは#定義は「0.0」#未定義は「式」のシンボルで
    似て非なるようです。

    対処としましては
    ・今村 誠さんの書かれているように値の入っている項目に項目計算式は設定できないので、
    [A]に項目計算式は使わずに[A2]等の項目を追加して
    「#cond([A]=#未定義,9,1,[A])」の項目計算式を設定すればと思います。
    ・表定義でのファイル属性「未定義値項目値処理」を未定義にする。


    以下、覚書。
    桐のヘルプから
    −−−−−−−−−−−−−−−−−−−−−−−
    #定義:真か偽を返す
    項目値が定義されていれば真(1)、未定義値であれば偽(0)を返す。
    比較式の中でのみ使用できる。《別名》 #D #DEF #定義
    この関数を使用する場合、式の左辺か右辺は項目名でなければいけません。

    #未定義:未定義値を返します
    未定義値を返す。《別名》 #U #UNDEF #う #未定義

    比較式と条件式の違いは?
    比較式:どうも検索での使用を前提としているみたい。
    条件式:条件式を使用する場所では、演算結果が真か偽かのどちらかで判断されます。
     [備考] で値があるものを真とします。: [備考]
     [備考] が未定義のものを真とします。:.not△[備考] または [備考]=""
    −−−−−−−−−−−−−−−−−−−−−−−

    で、使用での留意点では
    ・#定義 は比較式(検索)でのみ使用する。
    ・計算式(条件式)では「=#未定義」「<>#未定義」を使う。

    T.Samura

引用返信 [メール受信/ON] 削除キー/
■7773 / inTopicNo.4)  Re[1]: #定義関数の使用について
□投稿者/ ts -(2014/01/02(Thu) 23:00:01)
    今村 誠 様
    T.Samura 様

    resいただき有難うございます。

    > 比較式で使用できますと書いてあり、項目計算式で使用できます
    > とはどこにも書いてありません。

    項目計算式と比較式を混同して考えてしまっていました。

    > 置換式では問題ないと思いますが

    確かに置換式では使用できることを確認しました。


    > 使用での留意点では
    > ・#定義 は比較式(検索)でのみ使用する。
    > ・計算式(条件式)では「=#未定義」「<>#未定義」を使う。

    確かに比較式(検索)で使用できることを確認しました。
    今後、使う場合に留意したいと思います。


     ご教示いただいた内容は、大変参考になりました。
     今回の回答内容をよく研究させていただき、
    未定義判定をしたいと思います。

     いろいろ有難うございました。


解決済み!
引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -