Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Unigui Print İşlemi
#1
Merhaba dostlar, sonunda IIS ayarlarını yapılandırarak örnek uygulamamı yayınladım. Localde tüm pclerden programı çalıştırabiliyorum. Print işlemini program yazdığım makinada alabiliyorum.
procedure TMainForm.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;
 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;
 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';
 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);
 UniURLFrame1.URL := AUrl;
end;

Kullanımı ;
procedure TMainForm.UniBitBtn8Click(Sender: TObject);
begin
PrepareAndShow(frxReport1, frxPDFExport1);
UniURLFrame1.Visible:=true;
end;

Problem şudur ki; uygulamayı diğer makinalarda açtığım zaman 404 - Dosya veya dizin bulunamadı.

Aradığınız kaynak kaldırılmış, adı değiştirilmiş ya da geçici olarak kullanım dışı.


hatasını alıyorum. Yardımlarınızı bekliyorum. Saygılar.
Cevapla
#2
(15-09-2020, Saat: 15:29)apachi2006 Adlı Kullanıcıdan Alıntı: Merhaba dostlar, sonunda IIS ayarlarını yapılandırarak örnek uygulamamı yayınladım. Localde tüm pclerden programı çalıştırabiliyorum. Print işlemini program yazdığım makinada alabiliyorum.
procedure TMainForm.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;
 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;
 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';
 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);
 UniURLFrame1.URL := AUrl;
end;

Kullanımı ;
procedure TMainForm.UniBitBtn8Click(Sender: TObject);
begin
PrepareAndShow(frxReport1, frxPDFExport1);
UniURLFrame1.Visible:=true;
end;

Problem şudur ki; uygulamayı diğer makinalarda açtığım zaman 404 - Dosya veya dizin bulunamadı.

Aradığınız kaynak kaldırılmış, adı değiştirilmiş ya da geçici olarak kullanım dışı.


hatasını alıyorum. Yardımlarınızı bekliyorum. Saygılar.
Merhaba,

Fast report dosyasını ilgili dizine eklememiş siniz. Lokal projenizde yapmışsınız. (*fr3)
Cevapla
#3
Ben Şu şekilde kullanıyorum :


procedure TTahakkukPrint.UniFormBeforeShow(Sender: TObject);
var
 FRp : TfrxReport;
 FXp : TfrxPDFExport;
begin
   frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'rapor\TahsilatMakbuzu.fr3');
   PrepareAndShow(frxReport1, frxPDFExport1);
end;


procedure TTahakkukPrint.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;

 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;

 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';

 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);

 UniURLFrame1.URL := AUrl;
end;
Faydalanılmayan bilgi, harcanmayan ve hiç kimseye hayrı dokunmayan define gibidir.

Hz. Muhammed (sav.)
Cevapla
#4
@apachi2006 ve @KUNTAY  
Lütfen forum kurallarına uyalım... UYARIDIR!
Yazdığınız son yorumu, forum kurallarında belirtildiği şekilde yeniden düzenleyin lütfen.
Delphi Can'dır!
WWW
Cevapla
#5
(15-09-2020, Saat: 15:50)KUNTAY Adlı Kullanıcıdan Alıntı: Ben Şu şekilde kullanıyorum :


procedure TTahakkukPrint.UniFormBeforeShow(Sender: TObject);
var
 FRp : TfrxReport;
 FXp : TfrxPDFExport;
begin
   frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'rapor\TahsilatMakbuzu.fr3');
   PrepareAndShow(frxReport1, frxPDFExport1);
end;


procedure TTahakkukPrint.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;

 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;

 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';

 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);

 UniURLFrame1.URL := AUrl;
end;

Hemen deniyorum.

(15-09-2020, Saat: 15:50)KUNTAY Adlı Kullanıcıdan Alıntı: Ben Şu şekilde kullanıyorum :


procedure TTahakkukPrint.UniFormBeforeShow(Sender: TObject);
var
 FRp : TfrxReport;
 FXp : TfrxPDFExport;
begin
   frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'rapor\TahsilatMakbuzu.fr3');
   PrepareAndShow(frxReport1, frxPDFExport1);
end;






procedure TTahakkukPrint.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;

 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;

 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';

 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);

 UniURLFrame1.URL := AUrl;
end;

Rapor dosyasının yolu bu şekilde mi olacak C:\test\report
Cevapla
#6
(15-09-2020, Saat: 16:00)apachi2006 Adlı Kullanıcıdan Alıntı:
(15-09-2020, Saat: 15:50)KUNTAY Adlı Kullanıcıdan Alıntı: Ben Şu şekilde kullanıyorum :


procedure TTahakkukPrint.UniFormBeforeShow(Sender: TObject);
var
 FRp : TfrxReport;
 FXp : TfrxPDFExport;
begin
   frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'rapor\TahsilatMakbuzu.fr3');
   PrepareAndShow(frxReport1, frxPDFExport1);
end;


procedure TTahakkukPrint.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;

 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;

 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';

 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);

 UniURLFrame1.URL := AUrl;
end;

Hemen deniyorum.

(15-09-2020, Saat: 15:50)KUNTAY Adlı Kullanıcıdan Alıntı: Ben Şu şekilde kullanıyorum :


procedure TTahakkukPrint.UniFormBeforeShow(Sender: TObject);
var
 FRp : TfrxReport;
 FXp : TfrxPDFExport;
begin
   frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'rapor\TahsilatMakbuzu.fr3');
   PrepareAndShow(frxReport1, frxPDFExport1);
end;






procedure TTahakkukPrint.PrepareAndShow(Report: TfrxReport; Exp: TfrxPDFExport);
var
 AUrl : string;
begin
 Report.PrintOptions.ShowDialog := False;
 Report.ShowProgress := false;

 Report.EngineOptions.SilentMode := True;
 Report.EngineOptions.EnableThreadSafe := True;
 Report.EngineOptions.DestroyForms := False;
 Report.EngineOptions.UseGlobalDataSetList := False;

 Exp.Background := True;
 Exp.ShowProgress := False;
 Exp.ShowDialog := False;
 Exp.FileName := UniServerModule.NewCacheFileUrl(False, 'pdf', '', '', AUrl, True);
 Exp.DefaultPath := '';

 Report.PreviewOptions.AllowEdit := False;
 Report.PrepareReport;
 Report.Export(Exp);

 UniURLFrame1.URL := AUrl;
end;

Rapor dosyasının yolu bu şekilde mi olacak C:\test\report

Hayır Unigui files diye bir klasör oluşturuyor uygulama dizininin içerisine ve dosyalarınızı orada tutmanızı istiyor. 
Bende files klasörünün içerisine rapor diye bir klasör açıp içerisine yüklüyorum.
Faydalanılmayan bilgi, harcanmayan ve hiç kimseye hayrı dokunmayan define gibidir.

Hz. Muhammed (sav.)
Cevapla
#7
(15-09-2020, Saat: 16:12)KUNTAY Adlı Kullanıcıdan Alıntı:
(15-09-2020, Saat: 16:00)apachi2006 Adlı Kullanıcıdan Alıntı: Hemen deniyorum.


Rapor dosyasının yolu bu şekilde mi olacak C:\test\report

Hayır Unigui files diye bir klasör oluşturuyor uygulama dizininin içerisine ve dosyalarınızı orada tutmanızı istiyor. 
Bende files klasörünün içerisine rapor diye bir klasör açıp içerisine yüklüyorum.

Localde çalıştı, ancak IIS de yayınladığım zaman yine aynı hatayla karşılaştım. Raporun bulunduğu dosya yolu bu şekilde. --> C:\inetpub\wwwroot\test\files\report
Cevapla
#8
(15-09-2020, Saat: 16:23)apachi2006 Adlı Kullanıcıdan Alıntı:
(15-09-2020, Saat: 16:12)KUNTAY Adlı Kullanıcıdan Alıntı: Hayır Unigui files diye bir klasör oluşturuyor uygulama dizininin içerisine ve dosyalarınızı orada tutmanızı istiyor. 
Bende files klasörünün içerisine rapor diye bir klasör açıp içerisine yüklüyorum.

Localde çalıştı, ancak IIS de yayınladığım zaman yine aynı hatayla karşılaştım. Raporun bulunduğu dosya yolu bu şekilde. --> C:\inetpub\wwwroot\test\files\report

Yolunuz doğru görünüyor kod içerisinde dosyayı şu şekilde göstermeniz gerekiyor 
frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'report\xxx.fr3');
// Kendine göre düzenle kodu eğer yine olmazsa ISS izinlerini kontrol etmende fayda var.
Faydalanılmayan bilgi, harcanmayan ve hiç kimseye hayrı dokunmayan define gibidir.

Hz. Muhammed (sav.)
Cevapla
#9
(15-09-2020, Saat: 16:34)KUNTAY Adlı Kullanıcıdan Alıntı:
(15-09-2020, Saat: 16:23)apachi2006 Adlı Kullanıcıdan Alıntı: Localde çalıştı, ancak IIS de yayınladığım zaman yine aynı hatayla karşılaştım. Raporun bulunduğu dosya yolu bu şekilde. --> C:\inetpub\wwwroot\test\files\report

Yolunuz doğru görünüyor kod içerisinde dosyayı şu şekilde göstermeniz gerekiyor 
frxReport1.LoadFromFile(UniServerModule.FilesFolderPath+'report\xxx.fr3');
// Kendine göre düzenle kodu  eğer yine olmazsa ISS izinlerini kontrol etmende fayda var.

Bu kısım dediğin gibi aynı hocam. IIS Yönetim Panelini tekrar gözden geçireyim. Ama yönetim panelinde sıkıntı olsa programın hiç çalışmaması gerekmezmi?

IIS ayarlarında kimlik doğrulama alanından kaynaklanıyormuş. Çözüldü.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Unigui Mobile Desktop bydelphi 2 256 01-04-2024, Saat: 09:46
Son Yorum: bydelphi
  unigui formlarını ayrı dosya da tutmak mdagli2003 0 285 13-02-2024, Saat: 15:50
Son Yorum: mdagli2003
  UniGUI'ye Genel Bakış vkamadan 67 81.340 13-02-2024, Saat: 14:06
Son Yorum: mdagli2003
  unigui mobile geolocation bydelphi 1 286 19-01-2024, Saat: 17:18
Son Yorum: delphi.developer
  Unigui ile E-imza bydelphi 5 830 21-10-2023, Saat: 16:50
Son Yorum: bydelphi



Konuyu Okuyanlar: 1 Ziyaretçi