Próbuję uruchomić procedurę w wątku lecz nie wszystko działa tak jak trzeba, plik word-a generuje sie tam gdzie trzeba, lecz nie dziala funkcja Word_StringReplace :(
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, comobj, StdCtrls, ComCtrls, shellapi, XPMan, ExtCtrls, Grids,
DBGrids, DB, dbf, Mask, shlobj, Menus, dbf_fields, JvComponentBase,
JvDBGridExport, jpeg, JvExControls, JvAnimatedImage, JvGIFCtrl, CheckLst,
JvExCheckLst, JvCheckListBox, ImgList, JvExStdCtrls, JvButton, JvCtrls,
Buttons;
{$R druki.res}
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit5: TEdit;
Edit7: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Edit8: TEdit;
dtp: TDateTimePicker;
Label9: TLabel;
Label10: TLabel;
Edit10: TEdit;
Label11: TLabel;
pb: TProgressBar;
XPManifest1: TXPManifest;
Bevel1: TBevel;
Label14: TLabel;
Label12: TLabel;
Dbf1: TDbf;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Edit3: TMaskEdit;
Edit6: TMaskEdit;
Edit9: TMaskEdit;
Edit4: TMaskEdit;
Edit11: TMaskEdit;
PopupMenu1: TPopupMenu;
UsuN1: TMenuItem;
Uaktualnij1: TMenuItem;
sb: TStatusBar;
Label13: TLabel;
Edit12: TEdit;
Label15: TLabel;
Edit13: TEdit;
Label16: TLabel;
Edit14: TEdit;
dtp1: TDateTimePicker;
Label17: TLabel;
Edit15: TEdit;
Label18: TLabel;
ExportdoExcell1: TMenuItem;
gxls: TJvDBGridExcelExport;
sd: TSaveDialog;
etw: TJvDBGridWordExport;
ew: TMenuItem;
eh: TMenuItem;
eth: TJvDBGridHTMLExport;
JvGIFAnimator1: TJvGIFAnimator;
clb: TJvCheckListBox;
PopupMenu2: TPopupMenu;
Zaznaczwszystko1: TMenuItem;
Odznaczwszystko1: TMenuItem;
JvImgBtn1: TJvImgBtn;
ImageList1: TImageList;
JvImgBtn2: TJvImgBtn;
JvImgBtn3: TJvImgBtn;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure Odznaczwszystko1Click(Sender: TObject);
procedure Zaznaczwszystko1Click(Sender: TObject);
procedure clbClickCheck(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure ehClick(Sender: TObject);
procedure ewClick(Sender: TObject);
procedure ExportdoExcell1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Uaktualnij1Click(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure UsuN1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure rgClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
TWatek = class(TThread)
public
procedure Execute; override;
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
type
TWordReplaceFlags = set of (wrfReplaceAll, wrfMatchCase, wrfMatchWildcards);
function Word_StringReplace(ADocument: TFileName; SearchString, ReplaceString: string; Flags: TWordReplaceFlags): Boolean;
const
wdFindContinue = 1;
wdReplaceOne = 1;
wdReplaceAll = 2;
wdDoNotSaveChanges = 0;
var
WordApp: OLEVariant;
begin
Result := False;
{ Check if file exists }
if not FileExists(ADocument) then
begin
ShowMessage('Nie odnaleziono pliku.');
Exit;
end;
{ Create the OLE Object }
try
WordApp := CreateOLEObject('Word.Application');
except
on E: Exception do
begin
E.Message := 'MS Word jest niedostępny.';
raise;
end;
end;
try
{ Hide Word }
WordApp.Visible := false;
{ Open the document }
WordApp.Documents.Open(ADocument);
{ Initialize parameters}
WordApp.Selection.Find.ClearFormatting;
WordApp.Selection.Find.Text := SearchString;
WordApp.Selection.Find.Replacement.Text := ReplaceString;
WordApp.Selection.Find.Forward := True;
WordApp.Selection.Find.Wrap := wdFindContinue;
WordApp.Selection.Find.Format := False;
WordApp.Selection.Find.MatchCase := wrfMatchCase in Flags;
WordApp.Selection.Find.MatchWholeWord := False;
WordApp.Selection.Find.MatchWildcards := wrfMatchWildcards in Flags;
WordApp.Selection.Find.MatchSoundsLike := False;
WordApp.Selection.Find.MatchAllWordForms := False;
{ Perform the search}
if wrfReplaceAll in Flags then
WordApp.Selection.Find.Execute(Replace := wdReplaceAll)
else
WordApp.Selection.Find.Execute(Replace := wdReplaceOne);
{ Save word }
WordApp.ActiveDocument.SaveAs(ADocument);
{ Assume that successful }
Result := True;
{ Close the document }
WordApp.ActiveDocument.Close(wdDoNotSaveChanges);
finally
{ Quit Word }
WordApp.Quit;
WordApp := Unassigned;
end;
end;
function BrowseForFolder(var Foldr: string; Title: string): Boolean;
var
BrowseInfo: TBrowseInfo;
ItemIDList: PItemIDList;
DisplayName: array[0..MAX_PATH] of Char;
begin
Result := False;
FillChar(BrowseInfo, SizeOf(BrowseInfo), #0);
with BrowseInfo do begin
hwndOwner := Application.Handle;
pszDisplayName := @DisplayName[0];
lpszTitle := PChar(Title);
ulFlags := BIF_RETURNONLYFSDIRS or BIF_NEWDIALOGSTYLE;
end;
ItemIDList := SHBrowseForFolder(BrowseInfo);
if Assigned(ItemIDList) then
if SHGetPathFromIDList(ItemIDList, DisplayName) then begin
Foldr := DisplayName;
Result := True;
end;
end;
procedure twatek.Execute;
begin
form1.JvImgBtn3.Click;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
plik:file;
res:integer;
Foldr: string;
begin
if BrowseForFolder(Foldr, 'Wybierz katalog') then
try
begin
sb.Panels[1].Text := Foldr;
if messagebox(handle,'Czy dopisać dane przewoźnika do bazy danych ?','Zapis danych',mb_yesno or MB_ICONQUESTION)= id_yes then
begin
dbf1.Active:=false;
dbf1.FilePathFull := extractfilepath(application.ExeName)+'\dane';
dbf1.TableLevel := 7;
dbf1.TableName := 'dane.dbf';
dbf1.Open;
dbf1.Append;
dbf1.FieldByName('Nazwa').AsString:=edit1.Text;
dbf1.FieldByName('Data').AsDateTime:=dtp.Date;
dbf1.FieldByName('Data rozp.').AsDateTime:=dtp1.Date;
dbf1.FieldByName('Adres').AsString:=edit2.Text;
dbf1.FieldByName('Reprezentant').AsString:=edit10.Text;
dbf1.FieldByName('Nr dowodu').AsString:=edit11.Text;
dbf1.FieldByName('NIP').AsString:=edit3.Text;
dbf1.FieldByName('Regon').AsString:=edit4.Text;
dbf1.FieldByName('Telefon').AsString:=edit7.Text;
dbf1.FieldByName('Fax').AsString:=edit8.Text;
dbf1.FieldByName('Nazwa Banku').AsString:=edit5.Text;
dbf1.FieldByName('Nr konta').AsString:=edit6.Text;
dbf1.FieldByName('Nr Q').AsString:=edit9.Text;
dbf1.FieldByName('Nr KRS/ewid. gosp.').AsString:=edit12.Text;
dbf1.FieldByName('Organ wydający').AsString:=edit13.Text;
dbf1.FieldByName('Właściciel konta').AsString:=edit14.Text;
dbf1.FieldByName('SAP').AsString:=edit15.Text;
dbf1.Post;
dbf1.Close;
dbf1.Open;
end;
if clb.Checked[0]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\umowa.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'UMOWA', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Umowę';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=5;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=10;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=20;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','regon_przewoźnika',edit4.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','reprezentant_przewoźnika',edit10.Text,[wrfReplaceAll]);
pb.Position:=35;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','bank_przewoźnika',edit5.Text,[wrfReplaceAll]);
pb.Position:=45;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','konto_przewoźnika',edit6.Text,[wrfReplaceAll]);
pb.Position:=50;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','telefon_przewoźnika',edit7.Text,[wrfReplaceAll]);
pb.Position:=55;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','fax_przewoźnika',edit8.Text,[wrfReplaceAll]);
pb.Position:=60;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=65;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','nr_kuriera',edit9.Text,[wrfReplaceAll]);
pb.Position:=70;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','Nazwa_właściciela',edit14.Text,[wrfReplaceAll]);
pb.Position:=75;
Word_StringReplace(sb.Panels[1].Text+'\umowa.doc','data_rozpoczecia',datetostr(dtp1.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[1]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\aneks.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'ANEKS', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Aneks';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\aneks.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\aneks.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=50;
Word_StringReplace(sb.Panels[1].Text+'\aneks.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=75;
Word_StringReplace(sb.Panels[1].Text+'\aneks.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[2]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\ocp.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'OCP', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję OCP';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=10;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=20;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=35;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','regon_przewoźnika',edit4.Text,[wrfReplaceAll]);
pb.Position:=50;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','bank_przewoźnika',edit5.Text,[wrfReplaceAll]);
pb.Position:=65;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','konto_przewoźnika',edit6.Text,[wrfReplaceAll]);
pb.Position:=80;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','krs_ewid',edit12.Text,[wrfReplaceAll]);
pb.Position:=90;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','org_wyd',edit13.Text,[wrfReplaceAll]);
pb.Position:=95;
Word_StringReplace(sb.Panels[1].Text+'\ocp.doc','nr_sap',edit15.Text,[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Generuję Informacja OCP';
assignfile(plik,sb.Panels[1].Text+'\informacja_ocp.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'INFORMACJA_OCP', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Szczegóły OCP';
assignfile(plik,sb.Panels[1].Text+'\szczegoly_ocp.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'SZCZEGOLY_OCP', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[3]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\umowahh.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'UMOWAHH', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Umowę HH';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\umowahh.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=20;
Word_StringReplace(sb.Panels[1].Text+'\umowahh.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=40;
Word_StringReplace(sb.Panels[1].Text+'\umowahh.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=60;
Word_StringReplace(sb.Panels[1].Text+'\umowahh.doc','nr_kuriera',edit9.Text,[wrfReplaceAll]);
pb.Position:=80;
Word_StringReplace(sb.Panels[1].Text+'\umowahh.doc','nr_dow_osob',edit11.Text,[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[4]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\weksel.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'WEKSEL', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Weksel';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\weksel.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\weksel.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=50;
Word_StringReplace(sb.Panels[1].Text+'\weksel.doc','reprezentant_przewoźnika',edit10.Text,[wrfReplaceAll]);
pb.Position:=75;
Word_StringReplace(sb.Panels[1].Text+'\weksel.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[5]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\stawki.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'STAWKI', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Stawki';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\stawki.doc','nr_kuriera',edit9.Text,[wrfReplaceAll]);
pb.Position:=40;
Word_StringReplace(sb.Panels[1].Text+'\stawki.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=80;
Word_StringReplace(sb.Panels[1].Text+'\stawki.doc','data_rozpoczecia',datetostr(dtp1.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[6]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'ANEKS_WIELOPACZKOWOSC', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Aneks o wielopaczkowości';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=5;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=10;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','regon_przewoźnika',edit4.Text,[wrfReplaceAll]);
pb.Position:=40;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','reprezentant_przewoźnika',edit10.Text,[wrfReplaceAll]);
pb.Position:=55;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=85;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc','data_rozpoczecia',datetostr(dtp1.Date),[wrfReplaceAll]);
pb.Position:=100;
assignfile(plik,sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'ANEKS_WIELOPACZKOWOCS_A', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Aneks o wielopaczkowości';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=5;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=10;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','regon_przewoźnika',edit4.Text,[wrfReplaceAll]);
pb.Position:=40;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','reprezentant_przewoźnika',edit10.Text,[wrfReplaceAll]);
pb.Position:=55;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=75;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc','data_rozpoczecia',datetostr(dtp1.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[7]=true then
begin
assignfile(plik,sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc');
rewrite(plik,1);
res:=FindResource(hInstance, 'ANEKS_DOPLATA_PALIWOWA', RT_RCDATA);
BlockWrite(plik, LockResource(LoadResource(hInstance, res))^, SizeofResource(hinstance, res));
closefile(plik);
sb.Panels[0].Text:='Generuję Aneks doplata paliwowa';
pb.Position:=0;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','Nazwa_przewoźnika',edit1.Text,[wrfReplaceAll]);
pb.Position:=5;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','adres_przewoźnika',edit2.Text,[wrfReplaceAll]);
pb.Position:=10;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','nip_przewoźnika',edit3.Text,[wrfReplaceAll]);
pb.Position:=25;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','reprezentant_przewoźnika',edit10.Text,[wrfReplaceAll]);
pb.Position:=55;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','data_zawarcia_umowy',datetostr(dtp.Date),[wrfReplaceAll]);
pb.Position:=85;
Word_StringReplace(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc','data_rozpoczecia',datetostr(dtp1.Date),[wrfReplaceAll]);
pb.Position:=100;
sb.Panels[0].Text:='Gotowe';
end;
if clb.Checked[7]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\Aneks_doplata_paliwowa.doc'),nil,nil,sw_normal);
if clb.Checked[0]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\umowa.doc'),nil,nil,sw_normal);
if clb.Checked[6]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
begin
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_2.doc'),nil,nil,sw_normal);
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\Aneks_wielopaczkowosc_1.doc'),nil,nil,sw_normal);
end;
if clb.Checked[5]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\stawki.doc'),nil,nil,sw_normal);
if clb.Checked[4]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\weksel.doc'),nil,nil,sw_normal);
if clb.Checked[3]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\umowahh.doc'),nil,nil,sw_normal);
if clb.Checked[2]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
begin
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\ocp.doc'),nil,nil,sw_normal);
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\informacja_ocp.doc'),nil,nil,sw_normal);
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\szczegoly_ocp.doc'),nil,nil,sw_normal);
end;
if clb.Checked[1]=true then
if messagebox(handle,'Czy wydrukować wygenerowany plik ?','Wydruk',mb_yesno or MB_ICONQUESTION)= id_yes then
shellexecute(handle,'print',pchar(sb.Panels[1].Text+'\aneks.doc'),nil,nil,sw_normal);
end;
except;
end;
end;