同じタスク内で全てのデータを一括で変更する方法
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
kgra
投稿数: 25
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
いつもお世話になっております。
■データソース
・1列目:No(数字)
・2列目:名前(文字)
・3列目:FLG(論理)
上記のようなデータ構造の時にwhile、loopcounter()を使用して
全てのデータ行にtrueを入れることは可能でしょうか?
また、可能であれば方法を教えて下さい。
下記の方法で実行出来るかと思い試したのですが、
最初のレコードのFLGにTrueは入りましたが、次のレコードへ移動してくれませんでした(Noはインクリメントされましたが、名前とFLGは次の行へ移動されませんでした)
■ボタンを押した時のアクション
1.dbrecs(データ番号,'') 戻り値にデータカウント変数
2.while LoopCounter()<=データカウント変数
3.項目更新 NO←LoopCounter()+1
4.項目更新 FLG←'true'log
5.N=END
6.ビュー再表示
■データソース
・1列目:No(数字)
・2列目:名前(文字)
・3列目:FLG(論理)
上記のようなデータ構造の時にwhile、loopcounter()を使用して
全てのデータ行にtrueを入れることは可能でしょうか?
また、可能であれば方法を教えて下さい。
下記の方法で実行出来るかと思い試したのですが、
最初のレコードのFLGにTrueは入りましたが、次のレコードへ移動してくれませんでした(Noはインクリメントされましたが、名前とFLGは次の行へ移動されませんでした)
■ボタンを押した時のアクション
1.dbrecs(データ番号,'') 戻り値にデータカウント変数
2.while LoopCounter()<=データカウント変数
3.項目更新 NO←LoopCounter()+1
4.項目更新 FLG←'true'log
5.N=END
6.ビュー再表示
投票数:0
平均点:0.00
kgra
投稿数: 25
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
追記です
ボタンを押した時のアクションで子タスクをコールして
子タスクで「終了条件:なし:前置」のレコード後ロジックでFLGに'true'logを代入する方法では【全てのFLGに'true'logを代入する】という動作が実行出来たのですが、
タスクを分けるのではなく同じタスク内で希望する動作が作成出来るかを知りたくて、投稿させていただきました。
よろしくお願いいたします。
ボタンを押した時のアクションで子タスクをコールして
子タスクで「終了条件:なし:前置」のレコード後ロジックでFLGに'true'logを代入する方法では【全てのFLGに'true'logを代入する】という動作が実行出来たのですが、
タスクを分けるのではなく同じタスク内で希望する動作が作成出来るかを知りたくて、投稿させていただきました。
よろしくお願いいたします。
投票数:0
平均点:0.00
ISHIJIMA
居住地: 静岡県
投稿数: 1827
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
子タスクで行う方法が簡単で一番良いのではないでしょうか
投票数:0
平均点:0.00
nkmt
投稿数: 1668
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
オンラインタスクですよね?
そのオンラインタスクの中で、複数レコードに対して処理を行う。
そんな作りはあまりしません。
変わった作りをするのであれば、プロジェクトに関わる他メンバーにも相談が必要だと思います。
どうしてもオンラインタスクの中で、複数レコードに対して処理を行いたいという事であれば、次行イベント等を発行してカーソル移動をさせる必要があります。
レコード前処理は必ず通過します。
レコード前処理で項目更新を強制更新=YESにするなどして実験は成功しました。
Loopcounter()関数は使いませんでした。
そのオンラインタスクの中で、複数レコードに対して処理を行う。
そんな作りはあまりしません。
変わった作りをするのであれば、プロジェクトに関わる他メンバーにも相談が必要だと思います。
どうしてもオンラインタスクの中で、複数レコードに対して処理を行いたいという事であれば、次行イベント等を発行してカーソル移動をさせる必要があります。
レコード前処理は必ず通過します。
レコード前処理で項目更新を強制更新=YESにするなどして実験は成功しました。
Loopcounter()関数は使いませんでした。
投票数:0
平均点:0.00
kgra
投稿数: 25
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
>ISHIJIMAさん、nkmtさん
コメントありがとうございます。
オンラインタスクで複数のレコードに対して更新をかけたりせず、普通は子タスクで処理を行うということですね。
何かの動作を実行する際に色んな方法で実装してみて、どれが一番か考えようと思っていたのですが、子タスクでやる方が一般的かつ一番簡単ということですので、そちらで行おうと思います。
ありがとうございました。
コメントありがとうございます。
オンラインタスクで複数のレコードに対して更新をかけたりせず、普通は子タスクで処理を行うということですね。
何かの動作を実行する際に色んな方法で実装してみて、どれが一番か考えようと思っていたのですが、子タスクでやる方が一般的かつ一番簡単ということですので、そちらで行おうと思います。
ありがとうございました。
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです
rdbなら SQL文を発行するとか
update tbl名
set 項目 = 1
でわ〜でわ〜
rdbなら SQL文を発行するとか
update tbl名
set 項目 = 1
でわ〜でわ〜
投票数:0
平均点:0.00