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 Projesine dışarından bağlantı wiseman 12 868 15-09-2020, Saat: 16:08
Son Yorum: KUNTAY
  unigui mobil de butona ile css kodu ibrahim.aydin@perga.com.tr 6 695 11-09-2020, Saat: 12:06
Son Yorum: ibrahim.aydin@perga.com.tr
  uniGui mobil Proje IIS'de dll uzantılı olarak çalıştırma Hakkında bilgi ibrahim.aydin@perga.com.tr 6 945 02-09-2020, Saat: 11:30
Son Yorum: ibrahim.aydin@perga.com.tr
  UniGUI'ye Genel Bakış vkamadan 64 46.732 26-08-2020, Saat: 21:18
Son Yorum: Halil Han BADEM
  [ÇÖZÜLDÜ] Unigui UniHTMLFrame "Türkçe Karakter" Sorunu keceonurr 1 352 21-08-2020, Saat: 22:17
Son Yorum: hayalyilmaz43



Konuyu Okuyanlar: 1 Ziyaretçi