「シーオーリポーツ for .NET Ver.2」は.NET Frameworkに対応したプログラム制御型帳票ツールです。

帳票レイアウトを設計するための『フォームエディタ』と、VB.NET、C#等のプログラム言語から利用し、帳票の印刷、独自形式の帳票ファイル、PDF、TIFF等の出力を行なう『描画ライブラリ』、独自形式の帳票ファイルをプレビュー・印刷するための『ビュアー』『ビューコントロール』で構成されています。

前バージョン「シーオーリポーツ for .NET」についてはこちらをご覧ください。

シーオーリポーツ 構成図

(クリックして拡大)

新機能

2017/11/27 リリース Lot_020のフォームエディタに新機能を追加しました。

特徴

.NET Framework対応

「シーオーリポーツ for .NET Ver.2」は .NET Framework の技術をベースとして作成された(.NET専用のマネージコードによって開発された)製品です。ClickOnceに対応しています。

柔軟なライセンス体系

開発ライセンス

直接的/間接的に関わらず、シーオーリポーツ製品の機能を組み込んだアプリケーションを作成する際に必要となるライセンスです。
開発ライセンスは開発担当者1名に1ライセンス必要です。ランタイムモジュールを再配布する権利を含みます。

ランタイムライセンスフリー

「シーオーリポーツ for .NET Ver.2」はフォームエディタを除く各種ランタイムモジュールを、作成した帳票アプリケーションと共に使用許諾契約書にしたがって自由に再配布することができます。

主な機能

フォームエディタ

フォームエディタ

(クリックして拡大)

帳票レイアウトを作成するためのグラフィックエディタです。
マウス操作で帳票設計を簡単に行なうことができます。
多彩な描画機能を持ち、グラフィックツールのような操作性により帳票レイアウト作成を簡単に行なうことができます。

  • .NET版で使用できるフォームファイルはXML形式(.cfx)Binary形式(.rse)です。

バーコード

バーコード

(クリックして拡大)

GS1-128(UCC/EAN-128)やカスタマバーコードなどのメジャーな1次元バーコードはもちろんのこと、QRコードも出力できます。
シーオーリポーツ独自の描画方法を採用することで、バーコードフォントや専用プリンタは不要です。
プリンタドライバの解像度に適したバー幅・間隔を自動計算するため、精度の高いバーコードを簡単に作成できます。
バー幅、スペース幅を個別に設定することも可能ですのでコンビニ収納代行用のGS1-128(UCC/EAN-128)の様に高い精度を要求されるバーコードをパソコン用プリンタで出力することも可能です。

レイヤ機能

レイヤ機能

(クリックして拡大)

ひとつのフォームファイル内に複数のレイヤが定義できます。
複写式の納品書・請求書・受領書のように少しずつ異なる帳票レイアウトも、共通部分と相違部分を別々のレイヤ上に設計することにより、ひとつのフォームファイル内で簡単に作成できます。
TWAINに対応しているので既存の帳票イメージをスキャナで読み込んで再利用することも可能です。

帳票ファイル

シーオーリポーツでは直接プリンタへ帳票を出力する以外に、帳票をファイルに出力することが可能です。
出力可能な帳票ファイルとしては独自形式の帳票ファイル「シーオーリポーツドキュメントファイル」(BinaryとXML)、PDFとTIFFがあります。

・シーオーリポーツドキュメントファイル(Binary)
大量にページ数がある帳票のときコンパクトなファイルを生成します。
・シーオーリポーツドキュメントファイル(XML)
ファイル容量は大きくなりますが、他システムでのデータの再利用や帳票の長期保管等に適しています。

PDFファイルの出力

弊社の帳票ツールは全て単体でPDFファイルの出力ができます。

外字の埋め込み

ドキュメントファイルやPDFファイルを作成する際に、外字を含めることが可能です。
市販の外字フォントやWindows外字エディタ等で作成した外字を使用することができます。
web環境での運用において問題となる人名や地名などの外字は独自の変換技術によりクライアント側には外字フォントがなくても表示・印刷ができます。

フォームの重ね打ち描画

ドキュメントファイル出力時にもフォームの重ね打ち描画に対応しました。
従来のバージョンでも印刷時に重ね打ちは可能でしたが、Ver.2からドキュメントファイル出力にも対応しました。

  1. リストの1レコードのみのフォームファイルを作成し、これを重ね打ちでずらしながら描画していくことで、行・列数が可変のリストを実現できるようになります。
  2. A5サイズで設計された2つのフォームファイルを、1ページのA4サイズのドキュメントファイルとして出力できるようになります。

リストフィールドのセルの結合

リストフィールドのセルの結合

(クリックして拡大)

リストフィールドの複数セルに渡る行・列を結合することができるようになります。

カスタマイズ可能なプレビュー機能

帳票をプレビュー、印刷する『ビューコントロール』は、文字列検索や特定のページのみの印刷など機能が豊富です。
また、そのままデフォルトの状態で使用するだけでなく、カスタマイズをすることも可能です。

サンプルを実行する前に、以下の設定を行なってください。

  1. .NET Framework 2.0、3.0、3.5 のいずれかをインストールする
  2. ゾーンセキュリティの変更」を行なう
  3. 「https://support.hos.co.jp/」を信頼済みサイトに登録する
  4. (.NET Framework 4.5 がインストールされている環境)レジストリエディタで「レジストリの設定」を行なう

ClickOnceのアプリケーションも簡単に作成することができます。

帳票ファイルの一括印刷

帳票ファイルの一括印刷

(クリックして拡大)

フォルダを指定するだけで、そのフォルダ下にあるドキュメントファイルを一括印刷する機能をご用意しました。
一括印刷を使う事によって、個別に印刷する事による煩雑な手続きを行なうことなく、自動的にまとめて印刷することができます。
例えば、複数トレイがあるレーザプリンタ等では、A4、A3、B4と異なる用紙を各トレイに入れておくことにより、一度の印刷指示で印刷させることができます。

コード生成ウィザード

コード生成ウィザード

(クリックして拡大)

シーオーリポーツのフォームファイルを利用して帳票を出力するためのソースファイルを生成するアドイン機能です。生成されるソースファイルは以下の3種類です。

  • シーオーリポーツを使用して帳票作成を行うクラス
  • フォームファイルにデータを設定し、帳票のページの出力を行うクラス
  • レコードを Hashtable で表現するシンプルなレコードセットクラス

編集子

編集子とは、データフィールドおよびリストフィールドに出力するデータの表示形式を制御するための記号群です。シーオーリポーツでは帳票出力に必要とされる豊富な編集子(文字型編集子・数値型編集子)とプロパティをご用意しています。

JIS2004対応

JIS X 0213:2004(JIS2004)に対応しました。
拡張された文字を使用するには、JIS2004に対応したフォントを使用する必要があります。

サロゲートペア文字

サロゲートペア文字に対応しました。
サロゲートペア領域の文字をそのまま扱うことができます。
合成文字(結合文字)については、未対応です。

記述例

VB.NET サンプルプログラム

'******************************************************************
' ソースの見易さを考慮し、namespaceを設定します。
'******************************************************************
Imports Hos.CnDraw
Imports Hos.CnDraw.Object
Imports Hos.CnDraw.Constants
Imports Hos.CnDraw.Document

Private Sub Sample_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Sample.Click

Try
'CnDrawをフォームに貼り付けて使用する場合には、CnDrawのインスタンスは
'InitializeComponentにて作成されます。

'もし、フォームに貼り付けずにCnDrawを使用する場合は、初期化処理前に
'CnDrawのインスタンスを作成する必要があります。
'(例)Dim cnDraw1 As CnDraw = new CnDraw()

'初期化処理
cnDraw1.Initialize()

'各種入出力先ディレクトリの設定
cnDraw1.FormPath = "C:\CoReports_OutputSample\Form\"	'フォームファイルディレクトリ
cnDraw1.DocumentPath = "C:\CoReports_OutputSample\Doc\"	'ドキュメント出力先ディレクトリ
cnDraw1.WorkPath = "C:\CoReports_OutputSample\Temp\"	'一時ファイル出力先ディレクトリ

'バイナリファイル作成用JOBの作成
Dim cnJob As CnFileOutJob = New CnFileOutJob(ConFileType.Binary, "Sample_VBNET.rsi")
'JOB、ドキュメントのプロパティ設定
CType(cnJob.Document, CnBinaryDocument).Compress = True	'ドキュメントの圧縮

'任意のプリンタを指定する
'cnJob.CnPrinter = cnDraw1.CnPrinters("プリンタ名");

'フォームファイルのオープン
Dim cnForm As CnForm = cnDraw1.OpenForm("SampleForm.cfx")

Try
'バイナリファイル作成開始処理
cnDraw1.StartJob(cnJob, "Sample_VBNET")

'プリンタのプロパティ設定
job.CnPrinter.SetFormSize(cnForm)

'データ入力------
Dim cnDataField As CnDataField = cnForm.CnObjects("Data1")

cnDataField.Text = "Test"			'Data1にTestを設定
cnDataField.UnderLine = ConDecorateLine.Solid	'Data1の下線の種類を実線に設定
'----------------

'1枚印刷
cnForm.PrintOut()

'バイナリファイル作成終了処理
cnDraw1.EndJob()

Finally

'異常終了時にはジョブを破棄します
cnDraw1.AbortJob()

'フォームファイルのクローズ
cnForm.Close()
End Try

Catch ex As Hos.CnDraw.ExceptionInfo.CnException

'シーオーリポーツが出した例外を捕捉します
MsgBox(ex.Message)
Catch ex As System.Exception

'想定外の例外を捕捉します
MsgBox(ex.Message)
End Try
End Sub

C# サンプルプログラム

//******************************************************************
//ソースの見易さを考慮し、namespaceを設定します。
//******************************************************************
using Hos.CnDraw;
using Hos.CnDraw.Object;
using Hos.CnDraw.Constants;
using Hos.CnDraw.Document;

private void Sample_Click(object sender, System.EventArgs e)
{
try
{
//CnDrawをフォームに貼り付けて使用する場合には、CnDrawのインスタンスは
//InitializeComponentにて作成されます。

//もし、フォームに貼り付けずにCnDrawを使用する場合は、初期化処理前に
//CnDrawのインスタンスを作成する必要があります。
//(例)CnDraw cnDraw1 = new CnDraw();

//初期化処理
cnDraw1.Initialize();

//各種入出力先ディレクトリの設定
cnDraw1.FormPath = @"C:\CoReports_OutputSample\Form\";		//フォームファイルディレクトリ
cnDraw1.DocumentPath = @"C:\CoReports_OutputSample\Doc\";	//ドキュメント出力先ディレクトリ
cnDraw1.WorkPath = @"C:\CoReports_OutputSample\Temp\";		//一時ファイル出力先ディレクトリ

//バイナリファイル作成用JOBの作成
CnFileOutJob cnJob = new CnFileOutJob(ConFileType.Binary, "Sample_CSharp.rsi");
//JOB、ドキュメントのプロパティ設定
((CnBinaryDocument)cnJob.Document).Compress = true;	//ドキュメントの圧縮

//任意のプリンタを指定する
//cnJob.CnPrinter = cnDraw1.CnPrinters["プリンタ名"];

//フォームファイルのオープン
CnForm cnForm = cnDraw1.OpenForm("SampleForm.cfx");

try
{
//バイナリファイル作成開始処理
cnDraw1.StartJob(cnJob, "Sample_CSharp");

//プリンタのプロパティ設定
cnJob.CnPrinter.SetFormSize(cnForm);

//データ入力------
CnDataField cnDataField = (CnDataField)cnForm.CnObjects["Data1"];

cnDataField.Text = "Test";			//Data1にTestを設定
cnDataField.UnderLine = ConDecorateLine.Solid;	//Data1の下線の種類を実線に設定
//----------------

//1枚印刷
cnForm.PrintOut();

//バイナリファイル作成終了処理
cnDraw1.EndJob();
}
finally
{
//異常終了時にはジョブを破棄します
cnDraw1.AbortJob();

//フォームファイルのクローズ
cnForm.Close();
}
}
catch(Hos.CnDraw.ExceptionInfo.CnException ex)
{
//シーオーリポーツが出した例外を捕捉します
MessageBox.Show(ex.Message);
}
catch(System.Exception ex)
{
//想定外の例外を捕捉します
MessageBox.Show(ex.Message);
}
}

動作環境

  • 最新モジュールにおける動作保証環境です。
  • 開発環境及び実行環境は、同じ環境にすることがマイクロソフト社においても推奨されております。実行環境は開発された環境と同じ設定をしていただきますようお願いいたします。
  • 仮想化環境を含む、特定の環境についての動作保証およびサポートをしておりません。実マシン・仮想化環境に関係なく、シーオーリポーツをご利用中に何らかの問題が発生した場合、それが弊社環境でも再現されるものであれば、調査・対応をさせていただきます。

クラウドサービス

各クラウドサービスへの対応状況です。

OS

  • Windows Server 2008
  • Windows 7
  • Windows Server 2008 R2
  • Windows Server 2012
  • Windows 8.1
  • Windows Server 2012 R2
  • Windows 10
  • Windows Server 2016
  • Windows Server 2019

.NET Framework

  • .NET Framework 3.5
  • .NET Framework 3.5 Client Profile
  • .NET Framework 4.5.2
  • .NET Framework 4.6
  • .NET Framework 4.6.1
  • .NET Framework 4.6.2
  • .NET Framework 4.7
  • .NET Framework 4.7.1
  • .NET Framework 4.7.2

ブラウザ

  • Internet Explorer 9 以降

機能比較表

マニュアル

シーオーリポーツ for .NET Ver.2 製品版に含まれるマニュアルをご覧いただけます。
マニュアルは、ユーザサポートページ内参考資料ページにございます。

ライセンス体系

ライセンスは各製品固有のライセンスです。
ダウングレード、または別製品のライセンスとしてお使いいただくことはできません。

「開発ライセンス」「追加ライセンス」には、1年間のテクニカルサポートが含まれています。
2年目以降にテクニカルサポートを利用するには、「テクニカルサポート」をご購入ください。

ライセンスをユーザサポートページで「製品登録」することで、そのライセンスを使用できるようになります。

開発時は、開発者お一人につき「開発ライセンス」が1ライセンス必要です。
同一事業所内で複数の方が同一製品を使用する場合、「追加ライセンス」を購入することができます。追加ライセンスはライセンスのみのご提供のため製品CD-ROMは含まれませんが、製品の全ての機能を利用することができます。

運用時は、開発ライセンス・追加ライセンスで、モジュールを複数の環境へ配布することができます。
ただし「フォームエディタ」や「外字抽出ツール」「フォームファイル比較ツール」は配布可能なモジュールではございません。運用環境で、登録者以外の方がフォームエディタ等を使用する場合には、別途、開発ライセンスを購入する必要があります。
また、フォームエディタをお使いにならずに各モジュールを使用したプログラムを開発する場合も、開発ライセンスが必要です。