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

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

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

■175 / inTopicNo.1)  一覧表フォームからグループ追加の度に25行レコード追加したい。
  
□投稿者/ 広田 -(2005/09/06(Tue) 17:05:01)
    度々お世話になります。
    
    一覧表フォームで[科]と[観察名]をグループ項目としています。
    一覧表フォームでコマンドボタンをクリックするとイベントで
    グループ追加を終了した後、25行の[観察項目]という明細行を行追加して表示状態にしたいのですが…。
    グループ毎に行番号を付加する[連番]を設けています。
    
    ----------------------
    手続き定義開始 ボタン_19::マウス左クリック()
    グループ選択解除
    繰り返し
    ジャンプ 行番号=終端
      行追加 [科]=""
    条件 ([連番]>26)繰り返し中止
    繰り返し終了
    グループ選択
    手続き定義終了
    -----------------------
    実行すると固まってしまいます…。

引用返信 [メール受信/OFF] 削除キー/
■176 / inTopicNo.2)  無限ループになってしまったら
□投稿者/ ONnoji -(2005/09/06(Tue) 17:35:21)
    > 実行すると固まってしまいます…。
    
    無限ループになってしまったら、
    Shift + Break または Ctrl + Break を押すと、
    コマンド実行を止められる場合がありますよ。
    ※Shift + Ctrl + Break でもOK
    
    このキー操作は万能ではありませんが、結構止められますよ。
    
    

引用返信 [メール受信/OFF] 削除キー/
■177 / inTopicNo.3)  Re[1]: 一覧表フォームからグループ追加の度に25行レコード追加したい。
□投稿者/ うにん -(2005/09/06(Tue) 19:57:32)
    > 一覧表フォームでコマンドボタンをクリックするとイベントで
    > グループ追加を終了した後、25行の[観察項目]という明細行を行追加して表示状態にしたいのですが…。
    
    グループ追加はいつやってるんでしょうか?手動?
    追加したグループに明細行が1つもないと、グループ解除した時点でそのグループは無くなってしまいます。
    
    
    > 繰り返し
    > ジャンプ 行番号=終端
    >   行追加 [科]=""
    
    行追加ならジャンプしなくてもいいですよね。
    
    > 条件 ([連番]>26)繰り返し中止
    
    25行なら1〜25までで、>25で抜けるのが普通では?
    

引用返信 [メール受信/OFF] 削除キー/
■178 / inTopicNo.4)  Re[1]: 一覧表フォームからグループ追加の度に25行レコード追加したい。
□投稿者/ 悲しげ -(2005/09/06(Tue) 20:30:49)
    ■No175に返信(広田さんの記事)
    
    >繰り返し
    > ジャンプ 行番号=終端
    > 行追加 [科]=""
    > 条件([連番]>26)繰り返し中止
    >繰り返し終了
    
    この記述はいささか変です。
    (1) まず「行追加」はそもそも終端行に行が追加されるのですから
       ジャンプ 行番号=終端
      の記述は無意味です。
    (2) 「行追加」した後のレコードポインタは終端行に行っています。
      したがって、終端行では項目[連番]の値を取得することは不可能
      です。
    「固まってしまいます」がどのような状態を指すのか、いまいちよく
    判りませんが、ともかく上記に躓きの原因がありそうな気はします。
    
    話を遡って
    
    >一覧表フォームでコマンドボタンをクリックするとイベントで
    >グループ追加を終了した後、25行の[観察項目]という明細行を行追加
    >して表示状態にしたいのですが…。
    >グループ毎に行番号を付加する[連番]を設けています。
    
    グループ追加をどのような形で行ないたいのか、これもイマイチよく
    判りませんが、ともかく新しい[科]と[観察名]によるグループの追加
    が首尾良く完了したとして(^^;)、そのあとに25行の明細行を追加する
    には、(グループ選択解除しない状態で)例えば
    〜〜〜〜〜〜〜〜〜〜
    繰り返し &i=1,25
     行追加 [連番]=&i
    繰り返し終了
    ジャンプ 行番号=1
    〜〜〜〜〜〜〜〜〜〜
    辺りでよいのではないでしょうか?
    
    ひょっとしてグループ追加の段階がネックなのかも?
    

引用返信 [メール受信/OFF] 削除キー/
■179 / inTopicNo.5)  Re[2]: 無限ループになってしまったら
□投稿者/ 広田 -(2005/09/06(Tue) 22:07:58)
    ONnojiさん ありがとうございます。
     
    > 無限ループになってしまったら、
    > Shift + Break または Ctrl + Break を押すと、
    > コマンド実行を止められる場合がありますよ。
    > ※Shift + Ctrl + Break でもOK
    
    最初は無限ループだったみたいです。
    無理やり止めたら(リセット)「桐」自体の動きがおかしくなっちゃったみたい…
    
    フォーム入力で訂正から表示への切り替えがやたら時間がかかるようになりました。
    リセット後、無限ループと同じコマンドボタンの左クリックを実行したら
    ボタンが押されたままの表示状態でフリーズしてしまうようになりました。
    
    表の修復やらいろいろやってみたのですが、まだ回復できていません。
    もう少し頑張ってみます。

引用返信 [メール受信/OFF] 削除キー/
■180 / inTopicNo.6)  できました。(○^_^○)
□投稿者/ 広田 -(2005/09/06(Tue) 22:39:51)
    うにんさん。悲しげさん ありがとうございます。
    
    > (1) まず「行追加」はそもそも終端行に行が追加されるのですから
    >    ジャンプ 行番号=終端
    >   の記述は無意味です。
    > (2) 「行追加」した後のレコードポインタは終端行に行っています。
    >   したがって、終端行では項目[連番]の値を取得することは不可能
    >   です。
    了解デス。無意味な記述理解できました。
    
    > 「固まってしまいます」がどのような状態を指すのか、いまいちよく
    > 判りませんが、
    前途のようにフリーズです。
    タスクマネージャから桐応答なしの確認で終了してます。
    ただ別のパソコンでは無限ループになることが確認できました。
    
    > グループ追加をどのような形で行ないたいのか、これもイマイチよく
    > 判りませんが、
    う〜ん。なんらかの名前ででグループ追加をすると
    それに対応する明細行数は25行と決っているので(印刷の都合上)
    先に空白行を25行追加して、
    別表から表引きから選んで入力できるようにしたいのです。
    
    >ともかく新しい[科]と[観察名]によるグループの追加
    > が首尾良く完了したとして(^^;)、そのあとに25行の明細行を追加する
    > には、(グループ選択解除しない状態で)例えば
    >グループ追加を完了した後、
    > 〜〜〜〜〜〜〜〜〜〜
    > 繰り返し &i=1,25
    >  行追加 [連番]=&i
    > 繰り返し終了
    > ジャンプ 行番号=1
    > 〜〜〜〜〜〜〜〜〜〜
    ↑できました。お手数ですが記述の意味がいまいち理解できません。
    本当にお手すきのときで構いませんから、教えていただけると幸せます。
    
    ありがとうございました。

解決済み!
引用返信 [メール受信/OFF] 削除キー/
■183 / inTopicNo.7)  共有情報管理ファイルの場所
□投稿者/ 広田 -(2005/09/07(Wed) 08:35:45)
    > フォーム入力で訂正から表示への切り替えがやたら時間がかかるようになりました。
    > リセット後、無限ループと同じコマンドボタンの左クリックを実行したら
    > ボタンが押されたままの表示状態でフリーズしてしまうようになりました。
    > 
    > 表の修復やらいろいろやってみたのですが、まだ回復できていません。
    > もう少し頑張ってみます。
    
    実はイントラネットで使用していたのですが、
    共有情報管理ファイルの場所を新規別のフォルダに設定したら良くなりました。
    何が悪かったのでしょう?
    今までのフォルダに変なファイルが残っていそうな…
    

引用返信 [メール受信/OFF] 削除キー/
■206 / inTopicNo.8)  Re[3]:「繰り返し」コマンド
□投稿者/ 悲しげ -(2005/09/11(Sun) 00:36:07)
    ■No180に返信(広田さんの記事)
    う〜ん、「解決済み!」マークを付けたコメントで質問すると云うのも
    いささか・・・(^^;)ではありまするが、成り行き上コメントします。
    週末だし。(^^;)
    
    (1)繰り返し &i=1,25
    (2) 行追加 [連番]=&i
    (3)繰り返し終了
    (4)ジャンプ 行番号=1
    
    書き忘れましたが、この記述の直前に
    
    (0)変数宣言 長整数{&i}
    
    ってのが必要でしたね。
    さて、(1)から(3)は繰り返しループで(2)の処理を囲んでいます。
    桐のヘルプ『一括処理&イベントリファレンス』の中から
       「繰り返し 回数 … 繰り返し終了」
    の記述を引用します。
    
    --------------------------------------------------------------------------------
    ■説明
    <開始値>が<終了値>を超えるまで、[繰り返し]コマンドから[繰り返し終了]
    コマンドまでのコマンドを、繰り返し実行します。繰り返しを開始した直後、
    <変数名>には<開始値>が代入されます。以降、[繰り返し終了]コマンドまで
    の処理が1回繰り返されるたびに<加算値>が加えられます。 
    <変数名>の値が<終了値>を超えると、[繰り返し終了]コマンドのつぎの行に
    制御が移ります。 
    
    ・・・・・・・・・・・・
    
    ■構文
    繰り返し  <変数名> = <開始値>,<終了値>,<加算値>
        … <コマンド> …
    繰り返し終了
    
    ■パラメータ
    <変数名> = <開始値>,<終了値>,<加算値> 
    つぎのパラメータを指定します。 パラメータ 説明 
    <変数名> 加算値を代入する変数の名前を指定します。
    指定する変数は、データ型が数値、通貨、整数、長整数、実数のいずれかで
    なければいけません。 
    <開始値> 繰り返しを開始するときの数値を指定します(計算式)。 
    <終了値> 繰り返しを終了するときの数値を指定します(計算式)。 
    <加算値> 繰り返すたびに加算する数値を指定します(計算式)。
    マイナスの値を指定すると、減算になります。
    この値を省略すると、
    <開始値>≦<終了値>なら 1、<開始値>><終了値>なら -1 を加えます。 
    --------------------------------------------------------------------------------
    
    と云うことですから、まず&iが1の時
      行追加 [連番]=&i
    で、項目[連番]に1が記入された1行が追加されます。
    次に&iが2として、項目[連番]に2が記入された行(2行目)が追加される
    処理が繰り返されます。
    &=3以降も同様に繰り返され、これが&=25となって項目[連番]に25が記入さ
    れた行(25行目)が追加されてから、晴れてこの繰り返しループから抜け
    出します。
    なお(4)は、この処理が終わった後で、処理対象行が終端行にあると、
    なんだかみっともないような気がして(好みですが)、先頭行に飛ばして
    みたに過ぎません。
    付言すれば
    〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
    &i=1
    繰り返し
     行追加 [連番]=&i
     &i=&i+1
     条件(&i=25) 繰り返し中止
    繰り返し終了
    〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
    と書いたり
    〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
    &i=1
    繰り返し(&i<25)
     行追加 [連番]=&i
     &i=&i+1
    繰り返し終了
    〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
    と書いたりすることもあります。(詳細はリファレンス参照)
    
    

引用返信 [メール受信/OFF] 削除キー/
■210 / inTopicNo.9)  Re[4]: :「繰り返し」コマンド
□投稿者/ 広田 -(2005/09/12(Mon) 09:05:46)
    悲しげさんご教授ありがとうございます。本来ならマニュアル見ろよ!ってところでしょうが
    丁寧に教えていただいて感謝感激です!
    
    > う〜ん、「解決済み!」マークを付けたコメントで質問すると云うのも
    > いささか・・・(^^;)ではありまするが、成り行き上コメントします。
    すみません。またマナー違反してしまったみたいで…
    
    > 週末だし。(^^;)
    他のtitleもなるべく週末に書き込むようにします(^^;
    
    (1)繰り返し &i=1,25 → 繰り返し (&i=1,25)
    かっこをつけてて無限ループになっていたみたいです。(ToT) 
    

引用返信 [メール受信/OFF] 削除キー/
■211 / inTopicNo.10)  Re[5]: :「繰り返し」コマンド
□投稿者/ うにん -(2005/09/12(Mon) 09:33:31)
    > > (1)繰り返し &i=1,25 → 繰り返し (&i=1,25)
    > かっこをつけてて無限ループになっていたみたいです。(ToT) 
    
    かっこがあると回数でなく条件を指定する形式になってしまいますから。
    繰り返し(&i<25)
    
    しかしどういう条件になっているんだか?カンマ演算子???
    エラーにしてくれた方が親切ですねえ。
    

引用返信 [メール受信/OFF] 削除キー/
■212 / inTopicNo.11)  Re[5]: :「繰り返し」コマンド
□投稿者/ 悲しげ -(2005/09/12(Mon) 21:11:26)
    ■No210に返信(広田さんの記事)
    
    >> 週末だし。(^^;)
    >他のtitleもなるべく週末に書き込むようにします(^^;
    
    いえ、この点は無視して下さい。(^^;)
    それよりも
    
    >(1)繰り返し &i=1,25 → 繰り返し (&i=1,25)
    >かっこをつけてて無限ループになっていたみたいです。(ToT) 
    
    の件ですが、広田さんはNo.180で「解決済み!」マークを付けた上で
    「できました。(○^_^○)」と書いているのではありませんか?
    「かっこをつけてて無限ループになっていた」のなら、全然「解決
    済み」でも「できました」でもないと思うのですが(?_?)(?_?)(?_?)
    
    ひょっとして、文意に深〜い行間があるのでしょうか?
    この手Q&A板では、極力含意を排した、単刀直入な文章の方が好
    ましいと思います。
    
    あるいは、既に正しい方法で解決済みなのだが、そこに至る前に自
    分が「如何に間違っていたか」を語りたいということでしょうか?
    もしそうだとしたら、ひとつには文面によっては、「この人はまだ
    判っていないのだろうか?」との誤解を招きやすいこと。ふたつめ
    には、他人が「如何に間違っていたか」は、実はあまり聞きたくも
    ないのが一般的かと思われます。ですから(いえ、その気持ちは判
    るので少しならかまいませんが)その場合は正しいやり方は理解済
    みであることと、これから語るのは「自分が如何に間違っていたか」
    である旨を明記した上で、ごくシンプルに述べるに止めるのが妥当
    ではなかろうか。と、あくまで私の乏しい経験による私見ですが。
    
    

引用返信 [メール受信/OFF] 削除キー/
■215 / inTopicNo.12)  Re[6]: :「繰り返し」コマンド
□投稿者/ アックン( -(2005/09/13(Tue) 13:46:47)
    > > しかしどういう条件になっているんだか?カンマ演算子???
    ちょっと興味がわいたので、検証してみました。(^^;
    
    繰り返し( &i=1 , 25 )
      だったか?の英文表記は、
    for( &i=1 , 25 )
      ですけど、これを
    loop ( &i=1 , 25 )
    while( &i=1 , 25 )
    と書いたらどうなるか、いろいろ試してみました。
    
    ・loopの場合
    loop の後に続く文字列・変数名・式などを無視して、
    loop
    とだけ書く正式記述と同じでした。エラーなしで動作します。
    
    ・while( 条件式 )の場合
    比較式中のコンマは .and ですが、
    条件式中のコンマは、.or と同じ意味のようです。(優先順位は不明)
    
    while( &i=1 , 25  )  は
    while( &i=1 .or 25 ) と同じ。
    繰り返し( &i=1 , 25  )  と同じ(だと思う)。
    
    真と偽
    while( 25 )        真
    while( 1 )         真
    while( .not0 )     真
    while( .not"" )    真
    while( 0 )         偽
    while( .not1 )     偽
    while( "" )        偽
    
    アックン(=^・^=)

引用返信 [メール受信/OFF] 削除キー/
■219 / inTopicNo.13)  解決済みチェックの理由
□投稿者/ 広田 -(2005/09/13(Tue) 16:53:33)
    悲しげさんこんにちは。
    
    > あるいは、既に正しい方法で解決済みなのだが、そこに至る前に自
    > 分が「如何に間違っていたか」を語りたいということでしょうか?
    > もしそうだとしたら、ひとつには文面によっては、「この人はまだ
    > 判っていないのだろうか?」との誤解を招きやすいこと。ふたつめ
    > には、他人が「如何に間違っていたか」は、実はあまり聞きたくも
    > ないのが一般的かと思われます。ですから(いえ、その気持ちは判
    > るので少しならかまいませんが)その場合は正しいやり方は理解済
    > みであることと、これから語るのは「自分が如何に間違っていたか」
    > である旨を明記した上で、ごくシンプルに述べるに止めるのが妥当
    > ではなかろうか。と、あくまで私の乏しい経験による私見ですが。
    
    いろいろと不信感や心遣いをお掛けして申し訳ありません。
    質問した「一覧表フォームからグループ追加の度に25..」の部分を
    新規にフォームを作成し、単独で実行したら問題なく動作したのですが、
    システムの一部として実行した場合に上手く動作しない(無限ループ)
    になってしまていたのです。(どこかで入力ミスがあった…??)
    なので、質問したtitleについては「解決済み」だと思いました。
    
    全体のシステムのどこかに問題があろうと思ったのですが、
    ここの掲示板はあまりにもRESが早いので、
    (大変ありがたいことなのですが…)お礼を先に言っておかなければと
    あせってしまい、解決済みをチェックしました。
    
    初級者なものでイベント文の理解や入力ミスの発見に時間がかかると
    判断し、とりあえずお礼をと思ったのが余計なご心配をお掛けしたようで
    またまた反省です。
    
    >ひょっとして、文意に深〜い行間があるのでしょうか?
    お察しの通りで恐縮です。m(_ _)m
    
    >この手Q&A板では、極力含意を排した、単刀直入な文章の方が好
    >ましいと思います。
    ご助言ありがとうございます。
    今後ともご指導ご鞭撻宜しくお願いします。
      

引用返信 [メール受信/OFF] 削除キー/
■220 / inTopicNo.14)  Re[7]: :「繰り返し」コマンド
□投稿者/ アックン( -(2005/09/13(Tue) 17:01:58)
    誤)for( &i=1 , 25 )
    正) for  &i=1 , 25
    
    だはは... アックン(=^・^=;

引用返信 [メール受信/OFF] 削除キー/
■222 / inTopicNo.15)  Re[7]: :「繰り返し」コマンド
□投稿者/ うにん -(2005/09/13(Tue) 21:10:10)
    > > 繰り返し( &i=1 , 25 )
    >   だったか?の英文表記は、
    > for( &i=1 , 25 )
    >   ですけど、これを
    > loop ( &i=1 , 25 )
    > while( &i=1 , 25 )
    
    多分「(」が出てきた時点でwhileになっていると思います。
    
    > > ・loopの場合
    > loop の後に続く文字列・変数名・式などを無視して、
    > loop
    > とだけ書く正式記述と同じでした。エラーなしで動作します。
    
    これはまあエラーにするか無視するしかなさそうなので納得ですね。
    
    > > ・while( 条件式 )の場合
    > 比較式中のコンマは .and ですが、
    > 条件式中のコンマは、.or と同じ意味のようです。(優先順位は不明)
    > > while( &i=1 , 25  )  は
    > while( &i=1 .or 25 ) と同じ。
    > 繰り返し( &i=1 , 25  )  と同じ(だと思う)。
    
    ifでやってみました。.orなのは確かのようです。
    
    #最初、変だな〜と思ったら、この場合の「&i=1」は代入でなく比較なのであった^^;
    #したがって.orより優先順位上でしょう

引用返信 [メール受信/OFF] 削除キー/



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

このトピックに書きこむ

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

Mode/  Pass/

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

- Child Tree -
- Antispam Version -