概要
開発キットを購入するとptSatto2.dllを使用して、特定のアプリケーションから実行することができます。
Delphiの例
uses .....wintypes
※uses句にwintypesを追加します。
type TProc = Function (AHandle: THandle; AppDir: PChar; _ReportName: PChar; _Print: Boolean; _XlsRoot: PChar; _CopyRoot: PChar,_SubTitle: PChar; Day: PChar; Sql: PChar; Dlg: Boolean=True): boolean; stdcall; private procedure XlsReport(Rn: string; Pr: Boolean=True; Xls: string=''; Copy: string=''; sub: string=''; Day: string=''; Sql: string=''; Dlg: Boolean=True);
Rn...帳票タイトル
Pr...False:プレビュー True:印刷
Xls..エクセル出力先
Copy..エクセル出力先および出力ファイル名
sub..サブタイトル
Day..ユーザ日付
Sql..追加抽出条件文
Dlg..印刷ダイアログの表示
procedure TSattoTest.XlsReport(Rn: string; Pr: Boolean=True; Xls: string=''; Copy: string=''; sub: string=''; Day: string=''; Sql: string=''; Dlg: Boolean=True); var LibHandle: THandle; proc: TProc; begin Try LibHandle := LoadLibrary('ptSatto2.dll'); if LibHandle > 32 then begin @proc := GetProcAddress(LibHandle,'priSatto'); if not (@proc = nil) then begin proc(Application.handle,PChar(ExtractFilePath(Application.ExeName)),PChar(Rn),Pr, PChar(Xls),PChar(Copy),PChar(sub),PChar(Day),PChar(Sql),Dlg); end else RaiseLastWin32Error; end; finally FreeLibrary(LibHandle); end; end;
VisualBasicの例
Declare Function priSatto Lib "ptSatto2.dll" (ByVal hdc As Long, ByVal AppDir As String, _ ByVal ReportName As String, ByVal APrint As Boolean, ByVal XlsRoot As String, _ ByVal CopyRoot As String, ByVal SubTitle As String, ByVal Day As String, _ ByVal Sql As String, ByVal Dlg As Boolean) As Boolean
Rn..............帳票タイトル
Pr...............0: プレビュー 1:印刷
XlsReport....エクセル出力先
Private Sub XlsReport(Rn As String, Pr As Integer, XlsRoot As String) Dim Ret As Boolean If Pr = 0 Then Ret = priSatto(Form1.hWnd, App.Path & "\", Rn, False, XlsRoot, CopyRoot, vbNullString, vbNullString, vbNullString, True) Else Ret = priSatto(Form1.hWnd, App.Path & "\", Rn, True, XlsRoot, CopyRoot, vbNullString, vbNullString, vbNullString, True) End If If Ret = False Then MsgBox ("ぷりんとさっとでエラーが発生しました。") End If End Sub
サンプルにはありませんが、サブタイトル~追加抽出条件文も設定できます。
※実行時DLLのエラーは、ぷりんとさっとで実行すれば詳細がわかります。