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

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

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

■10897 / inTopicNo.1)  一括処理で項目名を変えたい。
  
□投稿者/ 困った -(2018/02/26(Mon) 14:33:52)
    お世話になります。一括処理がわからなくて、どなたかご教示下さい。

    添付図のように、元表から、変更表のように項目名を書き直したいのです。
    元表は上書きされても構いません。別途、「変換.tbx」という表があり、
    項目支店CDと支店名があります。(いずれも文字列)

    そこで、
    (変数宣言は省略)
      表 元表
        &開始=2
        &終了=#項目数-1
        &STR=#U
        &STR2=#U
        繰り返し &i=&開始,&終了
          &STR=#項目属性(&i,1)
          &STR2=#表引き(&STR,=,"変換.tbl",[支店CD],[支店名],1)
           項目名変更 &STR=&STR2
        繰り返し終了

    と書いてみたのですが、表引きのところで桐に怒られます。
    一括処理で項目名変更、というのはできないのでしょうか?

    よろしくお願い申し上げます。

854×726 => 250×212

1519623232.jpg
/90KB
引用返信 [メール受信/OFF] 削除キー/
■10900 / inTopicNo.2)  Re[1]: 一括処理で項目名を変えたい。
□投稿者/ まさやん -(2018/02/26(Mon) 15:27:10)
    2018/02/26(Mon) 15:27:38 編集(投稿者)


    表引きで
    どんな メッセージが出るのでしょうか?

    そのメッセが ヒントになるのでは?

    > 一括処理で項目名変更、というのはできないのでしょうか?

    これはできると思います(ヘルプには特に書いていないので。)


引用返信 [メール受信/OFF] 削除キー/
■10901 / inTopicNo.3)  Re[2]: 一括処理で項目名を変えたい。
□投稿者/ 困った -(2018/02/26(Mon) 16:14:55)
    No10900に返信(まさやんさんの記事)
    > 2018/02/26(Mon) 15:27:38 編集(投稿者)
    >
    >
    > 表引きで
    > どんな メッセージが出るのでしょうか?
    >
    > そのメッセが ヒントになるのでは?
    >
    >>一括処理で項目名変更、というのはできないのでしょうか?
    >
    > これはできると思います(ヘルプには特に書いていないので。)
    >


    こんなエラーが出ます。
    ----------------------------------------------
    一括処理の実行中にエラーが発生しました

    KU1033:使用できない関数です

    詳細:
    #表引き(&STR,=,"変換.tbl",[支店CD],[支店名],1)

    ----------------------------------------------
    後は、ファイル名と一括処理の行番号です。
    新しくする項目名を表引きで引っ張って、変数STR2に
    代入し、項目名変更で書き換えようとしたのですが。

    よろしくお願い申し上げます。





引用返信 [メール受信/ON] 削除キー/
■10902 / inTopicNo.4)  Re[3]: 一括処理で項目名を変えたい。
□投稿者/ まさやん -(2018/02/26(Mon) 18:17:00)
    2018/02/27(Tue) 20:37:42 編集(投稿者)
    2018/02/26(Mon) 18:22:18 編集(投稿者)
    2018/02/26(Mon) 18:22:10 編集(投稿者)

    > こんなエラーが出ます。
    > ----------------------------------------------
    > 一括処理の実行中にエラーが発生しました
    >
    > KU1033:使用できない関数です
    >
    > 詳細:
    > #表引き(&STR,=,"変換.tbl",[支店CD],[支店名],1)
    >
    > ----------------------------------------------
    はい 一括では使えないということですね
    >
    ならば 検索で値を取得してみましょう。
    表 変換
    表 元表
        &開始=2
        &終了=#項目数-1
        &STR=#U
        &STR2=#U
        繰り返し &i=&開始,&終了
          &STR=#項目属性(&i,1)
          
         編集表 変換
          検索 [支店CD]_&STR,部分一致検索=しない
          &STR2=[支店名]

         編集表 元表

          項目名変更 &STR=&STR2
           
        繰り返し終了


    で行きます。

    ほんとは
    検索結果が なかった場合を想定して
     条件 ( .not #終端行) &STR=[支店名] となります。

    条件 (#終端行) メッセージボックス "検索結果","ありませんでした"・・・
    とかつけたほうがいいですね。
引用返信 [メール受信/OFF] 削除キー/
■10903 / inTopicNo.5)  Re[4]: 一括処理で項目名を変えたい。
□投稿者/ 尾形 -(2018/02/27(Tue) 09:02:35)
    どうも、こんにちは

    > はい 一括では使えないということですね

    一括処理で使えないという事ではなく
    代入コマンドとの組み合わせで使えないという感じかな






引用返信 [メール受信/OFF] 削除キー/
■10905 / inTopicNo.6)  Re[5]: 一括処理で項目名を変えたい。
□投稿者/ 困った -(2018/02/27(Tue) 09:30:33)
    No10903に返信(尾形さんの記事)
    > どうも、こんにちは
    >
    >>はい 一括では使えないということですね
    >
    > 一括処理で使えないという事ではなく
    > 代入コマンドとの組み合わせで使えないという感じかな
    >

    ゴメンなさい。レベル高すぎてよくわかりません。
    代入コマンドとの組み合わせで使えないなら、この場合も使えない、ということ
    なんでしょうか?
    今、組んでいる途中なんですが、もし、表引きコマンドを使える、ということなら
    どう書けばよいのでしょうか?
    ご教示をよろしくお願い申し上げます。

引用返信 [メール受信/ON] 削除キー/
■10910 / inTopicNo.7)  Re[3]: 一括処理で項目名を変えたい。
□投稿者/ ONnoji -(2018/02/27(Tue) 11:18:39)
    >>一括処理で使えないという事ではなく
    >>代入コマンドとの組み合わせで使えないという感じかな
    >>
    > もしそうであれば
    >
    > 違った メッセージがでるのでは?
    >
    > 使用できない関数です とはっきり出てるので 使用できないのでは?


    桐の関数には、使用出来る場所が限定されているものがありますよ。

    #表引き は、それに該当します。

    ところが、困ったことにWin桐のヘルプにそれが記載されていないのでありました。

    Dos桐の桐ver.5のリファレンス2:#表引き を調べてみると、

    −引用開始−

     ■注意

     次の場所でしか使用できません

     ・項目計算式
     ・値条件の項目制約と行制約
     ・項目初期値
     ・帳票の計算領域と集計領域
     ・置換の計算式

    −引用終わり−

    とあります。

    #表引き2 も同じ。

    ということで、これ以外の場所で使うとエラーになるということですよ。

    <蛇足>

    Dos桐のヘルプは書き過ぎの創作が目立ちましたが、Win桐では記載漏れが目立ちます。

    相変わらずマニュアル関係の品質が悪いゾと。(ーー;)


引用返信 [メール受信/OFF] 削除キー/
■10911 / inTopicNo.8)  表引き関数の使用場所
□投稿者/ 今村 誠 -(2018/02/27(Tue) 11:32:15)
引用返信 [メール受信/OFF] 削除キー/
■10912 / inTopicNo.9)  Re[1]: 一括処理で項目名を変えたい。
□投稿者/ eo -(2018/02/27(Tue) 13:46:33)
    2018/02/27(Tue) 14:50:02 編集(投稿者)

    動けばいいって感じで、相当無駄が多いかも...

    変数宣言 固有,\
    文字列{&地区C連結,&地区名連結,&地区C,&地区名,&対応地区名},\
    数値{&i,&繰り返し数,&開始,&終了,&地区番号}

    ファイル複写 "org元表.tbl","元表.tbl"

    表 "変換.tbl"
    &繰り返し数=#総件数-1
     繰り返し &i=1,&繰り返し数
      &地区C連結=&地区C連結+[地区C]+","
      &地区名連結=&地区名連結+[地区名]+","
      ジャンプ 行番号=次行
     繰り返し終了
    &地区C連結=&地区C連結+[地区C]
    &地区名連結=&地区名連結+[地区名]

    表 "元表.tbl"
     &開始=2
     &終了=#項目数
      繰り返し &i=&開始,&終了
       &地区C=#項目属性(&i,1)
       &地区番号=#対応番号(&地区C連結,&地区C)
       &対応地区名=#対応文字列(&地区名連結,&地区番号)
       コマンド "項目名変更 ["+&地区C+"]=&対応地区名"
      繰り返し終了



sodane_.zip
/10KB
引用返信 [メール受信/OFF] 削除キー/
■10913 / inTopicNo.10)  Re[4]: 一括処理で項目名を変えたい。
□投稿者/ 悲しげ -(2018/02/27(Tue) 19:57:43)
    2018/03/07(Wed) 22:18:12 編集(投稿者)

    No10910に返信(ONnojiさんの記事)
    「#表引き」について
    私も項目計算式や一括なら置換でしか使えない等を書こうと思っていたら
    ヘルプでの記載が見つけられなかったのですが、
    そうですか、DOS桐の方にありましたか。(^^;)

    >Dos桐の桐ver.5のリファレンス2:#表引き を調べてみると、
    >
    >−引用開始−
    >
    > ■注意
    >
    > 次の場所でしか使用できません
    >
    > ・項目計算式
    > ・値条件の項目制約と行制約
    > ・項目初期値
    > ・帳票の計算領域と集計領域
    > ・置換の計算式
    >
    >−引用終わり−

    それとこの間の応答で、コマンドボタンでも使えるみたいなことが判って
    収穫でした。

    ではヘルプに書いてないことをもうひとつおまけに。
    rptのデキストソースにも「#表引き」を使えます。
    過日ダメ元で試してたらできちゃいまいした。(^^)v

    -------------------------------
    上記につき、恥ずかしながら訂正します。
    桐v5の「帳票」と言えば「.FRM」。
    Win版になってこれが「.WFM=wfx」となったように脊髄反射的に思ってしまったが、
    v5の「.FRM」って、「.WFM=wfx」と「.RPT=rpx」の両方を指すのでしたね。
    Win版になって別れた。もうすっかり忘れてる。(^^;)
    「帳票印刷」コマンドや「帳票形式編集」コマンドってのがあった。
    対象拡張子はどちらも○○.FRMだったのか。

    いずれにせよ、#表引きが「帳票の計算領域」で使えるってことは、
    wfmのみならず、rptで使えるのは当然でした。(^^;)(^^;)



引用返信 [メール受信/OFF] 削除キー/
■10914 / inTopicNo.11)  Re[6]: 一括処理で項目名を変えたい。
□投稿者/ まさやん -(2018/02/27(Tue) 20:13:23)
    2018/02/28(Wed) 12:47:05 編集(投稿者)
    2018/02/27(Tue) 20:26:05 編集(投稿者)
    2018/02/27(Tue) 20:20:25 編集(投稿者)
    2018/02/27(Tue) 20:19:45 編集(投稿者)
    2018/02/27(Tue) 20:18:42 編集(投稿者)
    2018/02/27(Tue) 20:16:01 編集(投稿者)

    >>一括処理で使えないという事ではなく
    >>代入コマンドとの組み合わせで使えないという感じかな
    >>
    >今、組んでいる途中なんですが、もし、表引きコマンドを使える、ということなら
    >どう書けばよいのでしょうか?

    エラーメッセージが  『使用できない関数です』ということは
    桐の仕様なので仕方ないことなんだと思います。

    もし 代入コマンドとの・・・ ということならば
    別のメッセ―ジが出るはずです。(今までの経験で。)

    そもそも 表引きというのは
    前に私が書いた 検索して 値を 取得 する ということと同じなんです。

    コマンドを使わない場所 では #表引き関数がすごく便利です。
    フォームでの使用とか 表のみの使用とか。

    コマンドに関しては
    #表引き は別の使いかたですよ・・ ということかもしれません。
    (置換以外。)
    イベントや 一括上の コマンド内で。
引用返信 [メール受信/OFF] 削除キー/
■10915 / inTopicNo.12)  Re[2]: 一括処理で項目名を変えたい。
□投稿者/ 困った -(2018/02/28(Wed) 12:50:01)
    No10912に返信(eoさんの記事)
    > 2018/02/27(Tue) 14:50:02 編集(投稿者)
    >
    > 動けばいいって感じで、相当無駄が多いかも...
    >
    > 変数宣言 固有,\
    > 文字列{&地区C連結,&地区名連結,&地区C,&地区名,&対応地区名},\
    > 数値{&i,&繰り返し数,&開始,&終了,&地区番号}
    >
    > ファイル複写 "org元表.tbl","元表.tbl"
    >
    > 表 "変換.tbl"
    > &繰り返し数=#総件数-1
    >  繰り返し &i=1,&繰り返し数
    >   &地区C連結=&地区C連結+[地区C]+","
    >   &地区名連結=&地区名連結+[地区名]+","
    >   ジャンプ 行番号=次行
    >  繰り返し終了
    > &地区C連結=&地区C連結+[地区C]
    > &地区名連結=&地区名連結+[地区名]
    >
    > 表 "元表.tbl"
    >  &開始=2
    >  &終了=#項目数
    >   繰り返し &i=&開始,&終了
    >    &地区C=#項目属性(&i,1)
    >    &地区番号=#対応番号(&地区C連結,&地区C)
    >    &対応地区名=#対応文字列(&地区名連結,&地区番号)
    >    コマンド "項目名変更 ["+&地区C+"]=&対応地区名"
    >   繰り返し終了
    > 表
    >


    eo様他、皆様、ご教示を頂きまして、ありがとうございました。
    大変参考になりました。
    eo様のは本当、参考になりました。力業で、こういうことができるんですね。
    あと、まさやんさん、編集表、実は今まであまり使っていませんでしたが、
    こちらを使ってみようと思います。
    大変に参考になりました。

    やはり、桐はヘルプを読んでもわからない(^^;;;;ですね〜。
解決済み!
引用返信 [メール受信/OFF] 削除キー/
■10916 / inTopicNo.13)  Re[3]: 一括処理で項目名を変えたい。
□投稿者/ まさやん -(2018/02/28(Wed) 13:15:56)
    2018/02/28(Wed) 13:18:35 編集(投稿者)

    > あと、まさやんさん、編集表、実は今まであまり使っていませんでしたが、


    蛇足ですが、
    編集表 を うまく使うと 併合処理なんかも リアルタイムでデータが更新できます。

    例えば

    得意先元帳 の [年間売上金額]の更新とか[月売上計]とか。
    納品書の 合計金額を 納品書発行時に &納品合計として

    編集表 得意先帳(.tbl) に切り替えて

    得意先番号で検索して
    行訂正 [年間売上金額]=[年間売上金額]+&納品合計 とすると

    リアルタイムに データの更新が行えます(桐の機能でいう併合置換・でしたっけ)

    コマンド書く手間はかかりますが 集計する手間が省けます。

    イベントの場合は ちょっと書き方が違うかもしれませんが
    考え方は同じです。
    蛇足でした。






引用返信 [メール受信/OFF] 削除キー/
■10917 / inTopicNo.14)  #表引きコマンドを利用する
□投稿者/ まさやん -(2018/03/02(Fri) 09:13:33)
    > 今、組んでいる途中なんですが、もし、表引きコマンドを使える、ということなら
    > どう書けばよいのでしょうか?

    #表引きは 一括では 置換で使えますので、

    [ダミー] という項目を追加して

    置換 [ダミー]=#表引き(&STR,=,"変換.tbl",[支店CD],[支店名],1)

    項目名変更 &STR=[ダミー]

    となります。

    ただ レコードがいっぱいあると 置換にやや時間がかかる恐れあり。
    と 処理行が トップに移ります。
    それでも良ければ これでいけます。

引用返信 [メール受信/OFF] 削除キー/
■10918 / inTopicNo.15)  Re[7]: #表引きコマンドを利用する
□投稿者/ 困った -(2018/03/03(Sat) 15:59:06)
    No10917に返信(まさやんさんの記事)
    >>今、組んでいる途中なんですが、もし、表引きコマンドを使える、ということなら
    >>どう書けばよいのでしょうか?
    >
    > #表引きは 一括では 置換で使えますので、
    >
    > [ダミー] という項目を追加して
    >
    > 置換 [ダミー]=#表引き(&STR,=,"変換.tbl",[支店CD],[支店名],1)
    >
    > 項目名変更 &STR=[ダミー]
    >
    > となります。
    >
    > ただ レコードがいっぱいあると 置換にやや時間がかかる恐れあり。
    > と 処理行が トップに移ります。
    > それでも良ければ これでいけます。
    >

    新たにご教示頂き、ありがとうございます。
    この場合、思ったのですが、一括処理で表に項目を定義し、
    [ダミー]の使用を終えた後に、また表定義からこの[ダミー]を削除する、
    なんてことはできるんでしょうか?

引用返信 [メール受信/OFF] 削除キー/
■10919 / inTopicNo.16)  Re[8]: #表引きコマンドを利用する
□投稿者/ まさやん -(2018/03/03(Sat) 16:44:30)
    2018/03/05(Mon) 00:39:52 編集(投稿者)
    2018/03/05(Mon) 00:29:49 編集(投稿者)
    2018/03/03(Sat) 22:30:14 編集(投稿者)

    > この場合、思ったのですが、一括処理で表に項目を定義し、
    > [ダミー]の使用を終えた後に、また表定義からこの[ダミー]を削除する、
    > なんてことはできるんでしょうか?

    出来ますけど、しないほうが賢明です。

    というのは また 追加するのをわざわざ消さなくてもいと思います(私的には)。

    ちなみに
    項目属性変更 コマンドで 追加 削除 が出来ます。

    ヘルプより

    項目属性変更  変更,<項目名>,{ <項目属性> },…,\

    挿入,<項目名>,{ <項目属性> },…,\

    追加,{ <項目属性> },…,\

    削除,<項目名>,…


    項目属性変更 追加,"ダミー",{文字列}
    項目属性変更 削除,"ダミー"

    が基本です。が条件として

    条件 (#項目番号("ダミー")=0) 項目属性変更 追加,"ダミー",{"文字列"}
    条件 (#項目番号("ダミー")>0) 項目属性変更 削除,"ダミー"

    としていた方がいいでしょう。

    と書いていましたが、
    条件 (#項目番号("ダミー")="") 項目属性変更 追加,{"ダミー",文字列}

    でした。訂正します
引用返信 [メール受信/OFF] 削除キー/



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

このトピックに書きこむ

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

Mode/  Pass/

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

- Child Tree -
- Antispam Version -