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

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

No5576 の記事


■5576 / )  どちらかを使ってみて下さい
□投稿者/ 今村 誠 -(2010/01/29(Fri) 18:04:34)
    トンタさんこんにちはテストしていませんが
    下記のように記述したらいかがでしょうか
    字下げをしてどことどこが対応しているか簡単に
    見比べられるようにした方が良いです。
    表番号の指定はしない方が良いと思います
    動かなかったらエラーの内容をコメントして下さい。

    手続き実行 送り状個数印刷("印刷.tbl","SATO SR412","印刷.rpt")
    proc 送り状個数印刷(str &Stbl,str &Sprita,Str &Srpt)
     var Long {&L状態,&L頁,&OK} /* ここで宣言するとこの手続き実行後自動削除 */
     if (#FSIZE(#一括パス名+&Stbl)<1)
      確認 "表" + &Stbl + "はありません"
     else
      if (#FSIZE(#一括パス名+&Srpt)<1)
       確認 "レポートファイル" + &Srpt + "はありません"
      else
       プリンタ &Sprita,終了状態 = &OK
       if ( &L状態 <> 1 )
        call errmsg(&L状態)
       else
        表 &Stbl,終了状態 = &L状態 /* ←ここでは表番号の指定をしない */
        if ( &L状態 <> 1 )
         call errmsg(&L状態)
        else
         while (.not #eof)
          if ([個数]>1)
           for &L頁=1,[個数]
            レポート印刷 &Srpt,部数=1
           end
          end /* if ([個数])終わり */
          ジャンプ 行番号 = 次行
         end /* whileの終わり */
        end /* 表を開くの結果の終わり */
       end /* プリンタの設定の終わり */
      end /* レポートのファイル存在の終わり */
     end /* 表のファイル存在の終わり */
    end /* 手続き送り状印刷の終わり */

    手続き実行 送り状個数印刷("印刷.tbl","SATO SR412","印刷.rpt")
    proc 送り状個数印刷(str &Stbl,str &Sprita,Str &Srpt)
     var Long {&L状態,&i,&OK} /* ここで宣言するとこの手続き実行後自動削除 */
     プリンタ &Sprita,終了状態 = &OK
     if ( &OK = 0 )
      確認 "プリンタ名 " + &Sprita + " は存在しません"
      return
     end
     if (#FSIZE(#一括パス名+&Stbl)<1)
      確認 "表" + &Stbl + "はありません"
      return
     end
     if (#FSIZE(#一括パス名+&Srpt)<1)
      確認 "レポートファイル" + &Srpt + "はありません"
      return
     end
     表 &Stbl,終了状態 = &L状態 /* ←ここでは表番号の指定をしない */
     if ( &L状態 <> 1 )
      call errmsg(&L状態)
     else
      while (.not #eof)
       if ([個数]>1)
        レポート印刷 &Srpt,部数=[個数]
       end /* if ([個数])終わり */
       ジャンプ 行番号 = 次行
      end
     end
    end
    proc errmsg(Long &L表)
     var Str{&Smsg[3]}
     &Smsg[1] = "共有違反以外のエラーが発生したため、表を開くことができなかった"
     &Smsg[2] = "共有違反で表を開くことができない"
     &Smsg[3] = "他の利用者が置換や併合などの処理を実行中"
     &L表 = #abs(&L表)+1
     確認 &Smsg[&L表]
    end
返信 [メール受信/OFF] 削除キー/


Mode/  Pass/

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

- Child Tree -
- Antispam Version -