既存のデータテーブルをチェックするIfステートメント<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />やあ、
特定の(テーブル名がわかっている)存在するかどうかをチェックするifステートメントを作成しようとしています。 テーブルが存在する場合は、ジャーナルに追加する必要があります。 私のコードは次のとおりです。
//テーブルを変数に割り当てます。
データ表(( 「ベル」 )。 <<サブセット((見えない、 ((選択した行)。 、出力テーブル名(( "出力" )。 )。 ;
NC1 =データ表(( 「」出力「」 )。 ;
.....。
//テーブルが存在するかどうかを確認します
もしも((試す((データ表(( 「」出力「」 )。 、 TableExist = 0 )。 、
NC1 <<ジャーナル
、
jrn <<追加する((テキストボックス(( 「Allaneg。proverharettvärdeunder0.2」 )) ;
)。 ;
私も次のことを試しました:
もしも((試す(( NC1、 TableExist = 0 )。 、
NC1 <<ジャーナル
、
jrn <<追加する((テキストボックス(( 「Allaneg。proverharettvärdeunder0.2」 )) ;
)。 ;
結果:
テーブルが存在していても(スクリプトの実行中にエラーは発生しません)、テーブルは追加されません。
テーブルが存在しない場合は、テキストボックスが追加されます。
なぜこれが機能しないのですか?
敬具
アンダース
Re:既存のデータテーブルをチェックするIfステートメントIFステートメントには、trueまたはfalseと評価される条件が必要です。これを行うにはTRY関数に依存していますが、これは主要なタスクではありませんが、評価すると式の値が返されます。ただし、DATA TABLE( "Output")はデータテーブルへの参照を提供し、true/falseの答えは提供しません。特に、それは真の答えを与えないので、IF式は決して評価されません。
Re:既存のデータテーブルをチェックするIfステートメントこのための関数を使用します。関数をロードしたら、次のように呼び出すだけです。
もしも(table_exists( "出力" )。 、
//ジャーナルに追加
、
//追加しない
)。 ;
関数は次のとおりです。
/ *
関数名: table_exists
説明:テーブルが存在する場合は1を返し、存在しない場合は0を返します。
引数:
table_nameの存在を確認するテーブル
* /
table_exists =関数(( {{ table_name } 、
{{デフォルトのローカル} 、
tbl_exists_flag = 0 ;
//すべてのテーブルをループして、これが存在するかどうかを確認します
num_tables = ntable () ;
為に((私= 1 、私<= num_tables 、私++、
one_name =データ表((私)。 <<名前を取得;
もしも(( one_name == table_name 、
tbl_exists_flag = 1 ;
壊す() ; //テーブルが見つかったので、ループからジャンプします
)。 ;
)。 ;
tbl_exists_flag ;
)。 ; //table_exists関数を終了します
Re:既存のデータテーブルをチェックするIfステートメントチャームのように機能します、あなたの助けに感謝します。
Ifとtryを組み合わせてステートメントを作成すると、なぜ機能しないのか尋ねてもよいですか? JMPは操作を実行しているように見えますが(エラーは生成されません)、すべてのステートメントを実行していません。
敬具
アンダース
Re:既存のデータテーブルをチェックするIfステートメントこれはあなたを助けるはずです:
//テーブルが存在するかどうかを確認します
試す((
データ表(( "出力" )。 ;
tableExist = 1
、
tableExist = 0
)。 ;
もしも(( tableExist 、
見せる(( 「存在する」 )。
、
見せる(( 「存在しない」 )。
)。 ;