帳票出力を行なうには?

解決


−TAKASHI−  2005-02-05 00:40:16  No: 119448

たびたび申し訳ありません。

表題の件なのですが、現在CoReportsを使用した帳票出力クラスを作成しております。
もし、みなさまの中で同じ製品を使用されている方がおりましたらアドバイスを頂きたいと思っています。

リファレンスマニュアル(CoReports)に沿ってサンプルコードを組んだのですが
明示的なエラーは出ないのですが、ある個所で処理が失敗してしまいます。

--- クラスモジュール側 ---
Option Explicit

'-----------------------------------------------------------------
'   基本クラス: CoUnit
'   メソッド名: CoOut
'   属      性: Public(外部CALL)
'   概      要: CoReportsに関する初期化及び出力処理
'   引      数: strFName      ... 帳票ファイル名
'              strDName      ... 帳票名称
'              prmCrDraw     ... 帳票出力オブジェクト
'   戻      値: TRUE/FALSE    ... 出力成功/出力失敗
'-----------------------------------------------------------------
Public Function CoOut(strFName As String, strDName As String, prmCrDraw As CrDraw) As Boolean
    
    Dim crfrm As crForm     'フォームオブジェクト
    Dim crprn As CrPrinter  'プリンタオブジェクト
    Dim crobj As CrObject   '帳票オブジェクト
    Dim bRet As Boolean
    Dim idebug As Integer   'デバッグ用変数
    
    '# Coファイル格納先指定
    prmCrDraw.DocumentPath = "C:\CHOHYO\" & strDName & ".CID"
    
    '# 出力オブジェクトの初期化処理
    If prmCrDraw.Initialize = 0 Then
    
        '# Coドキュメントファイルのオープン処理
        '-- 以下 2Line Debug用
        'idebug = prmCrDraw.StartDocument(strFName, strDName)
        'MsgBox idebug
        '--
        If prmCrDraw.StartDocument(strFName, strDName) = 0 Then
        
            '# Coフォームのオープン処理
            crfrm = prmCrDraw.OpenForm(strFName)
            
            '# 用紙の向き設定
            crprn.Orientation = corOrientVertical
            
            '# データ設定
            crobj("dtBunsyo").Text = "TEST"
            
            '# 各オブジェクトのクローズ処理
            crfrm.PrintOut
            crfrm.Close
            prmCrDraw.EndPrinter
        Else
            bRet = False
            
        End If
        
    Else
        bRet = False

    End If
    CoOut = bRet
End Function

--- 呼び出し側 ---
Option Explicit

Private Sub Command1_Click()
    Dim output As New CoUnit
    Dim bRet As Boolean
        
    If output.CoOut("sample.crf", "sample", CrDraw) = False Then
        MsgBox "帳票の初期化に失敗しました."
    Else
        MsgBox "帳票の初期化が成功しました."
    End If
End Sub

-----------------------
やっていることは、C:\CHOHYOに存在するsample.crfを開き
その帳票内の "dtBunsyo" に"TEST" というデータを設定して出力するように
記載しているつもり(!?)です。
-----------------------
上記のクラスモジュール側の上から(ファンクション定義位置から)11行目の
"If prmCrDraw.StartDocument(strFName, strDName) = 0 Then"
で、StartDocumentの戻りが 「-16(Coドキュメントファイル作成エラー)」が
発生してました。

原因が未だに、理解できておりません。
アドバイス等をお願い致します。


−TAKASHI−  2005-02-05 00:43:32  No: 119449

お伝え忘れました。
開発環境及び各ツールのバージョンは以下の通りです。

[OS]    Windows2000 sp4
[開発]  VisualBasic 6.0 sp4
[帳票]  CoReports Ver7.1 (H.O.S製)


−TAKASHI−  2005-02-07 20:47:58  No: 119450

他サイトにて問合せを行なおうと思います。
失礼致しました。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加