SİSTEM GEREKSİNİMİ:

Visual FoxPro 9 SP2

Top-Level formlar kullanıyorsanız, son kümülatif HotFix  VFP9SP2 KB 968409 gereklidir, bu fix Top_level formlarda toolbar görünümü ile ilgili bug ı düzeltmektedir. VFP9SP2 yi kolay yoldan güncellemek için Woody'nin runtime yükleyicilerini kullanabilirsiniz, indirme bağlantısı aşağıdaki gibidir:
Woody's VFP9 SP2 Runtime Installer with all hotfixes (Rev 7423)

SSS

LİNKLER

KULLANIM:

Foxypreviewer'i 2 şekilde kullanabilirsiniz:

  • 1 - UYGULAMANIZDA HERHANGİ BİR DEĞİŞİKLİK YAPMADAN (Basit Mod)


Sadece 2 satır kod ile raporlarınıza nasıl güç kattığını görün!:

DO FOXYPREVIEWER.APP 
REPORT FORM YourReport PREVIEW



Hepsi bu kadar !
Yapmanız gereken sadece raporunuzu çağırmadan önce "DO FoxyPreviewer.App" komutunu kullanmak ,  "PREVIEW" ibaresi ile çağırılına tüm raporlar FoxyPreviewer'in güçlü toolbar özellikleri ile karşınızda!

Hatırlatma bazı özellikler basit modda çalışmamaktadır! bunların neler olduğunu aşağıda karşılaştırma tablosunda görebilirsiniz...

  • 2 - ASIL ve DAHA GÜÇLÜ KULLANIM (Gelişmiş Mod)


Sadece 4 satır kodla gelişmiş modu kullanabilirsiniz:

LOCAL loReport AS "PreviewHelper" OF "FoxyPreviewer.App" 
loReport = CREATEOBJECT("PreviewHelper")
loReport.AddReport(_Samples + "\Solution\Reports\colors.frx", "FOR Client = 'VFPx' ") && FRX File, Clauses
loReport.RunReport()


Asıl uygulama olan  FOXYPREVIEWER.APP içinde PreviewHelper sınıfını ını barındırmaktadır ve özelleştirilebilir özellikler toolbar seçenekleri buradan tanımlanmaktadır.

MODLAR ARASI KARŞILAŞTIRMA

Özellik VFP 9 Varsayılan Önizleme FoxyPreviewer Basit Mod FoxyPreviewer Gelişmiş Mod
Önizlemede arama yapabilme
x Var Var
Yazıcı diyalog butonu x Var Var
Mini sayfa önizleme
x Var Var
Resim olarak kaydedebilme x Var Var
PDF olarak kaydetme
x Var Var
RTF olarak kaydetme
x Var Var
XLS / XML olarak kaydetme
x Var Var
HTML olarak kaydetme
x Var YENİ! Var
TXT olarak kaydetme
x x Var
Kopya sayısı belirleme
x Var YENİ! Var
Tanımlı yazıcıları listeleme
x Var YENİ! Var
Yaslanmış metin (Justify)
x Var Var
Büyük düğmeler
x Var Var
e-posta gönderebilme
x Var Var
e-posta adres defteri kullanabilme x Var Var
Görsel olarak ayar değiştirebilme
x Var Var
Dil Seçimi
x Var Var
Gelişmiş ilerleme çubuğu (Progressbar)
x Var Var
Raporu çalıştırmak için gerekli kod satırı sayısı
1 1 4



GELİŞMİŞ MODDA ÖZELLEŞTİRMELER

Aşağıda anlatılacak özellikler sadece GELİŞMİŞ MODDA çalışmaktadır !!!

Tüm seçenekleri araç çubuğu ayar sayfasından değiştirebileceğiniz gibi tasarım(design time) anındada gönderebilirsiniz. Aşağıda kullanılabilir tüm Method ve Propertyleri inceleyebilirsiniz:

Methods

(Tümünde Zorunlu Olanlar)

  •   AddReport(tcFRXFile, tcClauses, tcAlias)
    • kullanılacak tablo-cursor,rapor dosyası,sartlar
    • tcFRXFile - karakter, Çalıştırılacak FRX dosyası
    • tcClauses - karakter, rapor ibareleri  Orn.NODIALOG FOR title = 'S' RANGE 3,3
    • tcAlias - karakter, rapor calistirmadan once secilecek Tablo yada Cursor adı
Orn.: .AddReport(_Samples + "\Solution\Reports\wrapping.frx", "NODIALOG FOR title = 'S' RANGE 3,3")

 

  • AddReport. RunReport()
Raporu çalıştırır ve araç çubuğunu aktif eder

 

Properties

(tümü opsiyonel)

Tümünü yapılandırmanıza gerek yoktur. Kullanıcılar görsel olarak tüm seçenekleri araç çubuğu-ayarlar kısmından değiştirebilir.!

Genel

  • . cTitle - karakter, Önizleme başlığı
  •   . nShowToolBar - numerik, Toolbar görünür (1 = Görünür (Varsayılan), 2 = Görünmez, 3 = Ayarlardan Oku)
  •   . nWindowState - numerik, ön izleme formu previewform.WindowState 0 = Normal, 2 = Maximized
  • . nDockType - Mantıksal yada numerik (0-4). Eğere .f. ise resoure dosyasına göre haereket eder. numerik ise , toolbar hizalamayı engeller.
  • . nMaxMiniatureDisplay - numerik, önizleme pencerelerinde görünecek mini pencere sayısı.
  •  . cFormIcon - karakter, form ve toolbarda gozukecek olan icon dosyası
  • . lDirectPrint - mantıksal, direkt baskı (varsayılan = False)
  • . nThermType - numerik, gösterge (progress bar) tipi  (1 = VFP9 Varsayılanı, 2 = Gelişmiş Windows uyumlu)
  • . lUseListener - mantıksal rapor hazırlanırken her zaman reportlistner kullanır. Bazı durumlarda reportlistener ve bazı printerler uyumsuzluk gösterebilir bu durumda bu özelliği  .F. tolarak set edip "eski yoldan" baskı alabilirsiniz. Eğer .F. olarak set etti iseniz  REPORTBEHAVIOR 80 olacaktır. dot-matrix yazıcılar icin uygun bir secimdir.
  • . lQuietMode - mantıksal, Gösterge çubuğu (progressbar) rapor üretimi ve mail gönderilirken çalışsın ( Varsayılan = .F.)
  • . cDestFile - karakter,  Kaydedilecek dosya adı. Dosya ismi verirseniz (test.pdf,test.xls vs...) önizleme çalışmaz (Varsayılan ='' )
  • . nSearchPages - numerik, Arama yapılacak sayfa sayısı. Varsayılan= -1 (Tüm sayfalar)
  • . nButtonSize - numerik, toolbar buton boyutları (1 = 16x16 pixels (varsayılan), 2 = 32x32 pixels)
  • . cLanguage - karakter, kullanılacak dil (Varsayılan = English)
  • . cPrinterName - karakter, Varsayılan yazıcı (Gelişmiş mod)
  • . lOpenViewer - mantıksal, oluşturulan rapor otomatik olarak görüntülecekmi (varsayılan =.T.)
  • . cSuccessor - karakter, report successor class adı . (deneyimli kullanıcılar için)



Toolbar

  • . lSendToEmail - mantıksal, email olarak gönder butonu
  • . lSaveToFile - mantıksal, farklı kaydet butonu
  • . lShowCopies - mantıksal, kopya sayısı spinner
  • . lShowMiniatures - mantıksal, mini önizleme pencereleri
  • . lShowSetup - mantıksal, ayarlar butonu
  • . lShowPrinters - mantıksal, kullanılabilir yazıcılar combobox
  • . lShowSearch - mantıksal, arama butonu
  • . nCopies - mantıksal, kopya sayısı (sadece gelişmiş mod)
  • . lPrintVisible - mantıksal, yazıcı butonu
  • . nZoomLevel - numerik, yakınlaşma seviyesi. kullanılabilir değerler: 1-10%, 2-25%, 3-50%, 4-75%, 5-100% varsayılan, 6-150%, 7-200%, 8-300%, 9-500%, 10-sayfa boyutu
  • . lPrinterPref - mantıksal, yazıcı seçenekleri butonu
  • . nPrinterPropType - numerik,yazıcı seçenekleri diyaloğu (1 = PRINTER PROMPT Printer dialog, 2 = Current printer properties)
  • . nCanvasCount - numerik, önizleme render sayfa sayısı  1 (varsayılan), 2, or 4.


Araç çubuğu "Farklı Kaydet..." düğmesi

  • . lSaveAsImage - mantıksal, Resim olarak kaydet
  • . lSaveAsHTML - mantıksal, HTML olarak kaydet (sadece gelişmiş mod)
  • . lSaveAsRTF - mantıksal, RTF olarak kaydet
  • . lSaveAsXLS - mantıksal,XLS olarak kaydet
  • . lSaveAsPDF - mantıksal, PDF olarak kaydet
  • . lSaveAsTXT - mantıksal, TXT olarak kaydet (sadece gelişmiş mod)
  • . cOutputPath - mantıksal, kaydetme yeri



Genel e-posta ayarları

  • . nEmailMode - numerik, eposta tipi (1 = MAPI, 2 = CDOSYS HTML, 3 = CDOSYS TEXT, 4 = özel yöntem)
  • . lEmailAuto - mantıksal, rapor dosyasını otomatik oluştur
  • . cEmailType - karakter, e-postada kuullanılacak dosya türü(PDF, RTF, HTML yada XLS)
  • . cEmailPRG - karakter, özel yöntemle kullanacağınız mail.prg dosya adı. bir örnek için , "MYSENDMAIL.PRG" yi inceleyebilirsiniz. Kullanabilmek için buraya dosya adınızı yazmalısınız, örn: .cEmilPrg = "MySendMail.Prg"
  • . cSaveDefName - karakter, dosya kaydetme adı
  • . lAutoSendMail - mantıksal, e-postayı otomatik olarak göndermek



CDOSYS e-posta ayarları

  • . cSMTPServer - karakter, SMTP sunucu adresi (örn : smtp.mydomain.com)
  • . nSMTPPort - numerik, SMTP port numarası (geneli ve varsayılan 25)
  • . lSMTPUseSSL - mantıksal, SMTP sunucu güvenli bağlantı gerektiriyormu SSL (security connection)
  • . cSMTPUserName - karakter, SMTP kullanıcı adı
  • . cSMTPPassword - karakter,SMTP şifre
  • . cEmailTo - karakter, e-posta alıcı adresi. Birden fazla adres için "," ayracı kullanın
  • . cEmailCC - karakter, e-posta alıcı adresi (BİLGİ). Birden fazla adres için "," ayracı kullanın
  • . cEmailBCC - karakter, e-posta alıcı adresi (GİZLİ KOPYA). Birden fazla adres için "," ayracı kullanın
  • . cEmailReplyTo - karakter, yanıt e-posta adresi
  • . cEmailSubject karakter, konu
  • . cEmailBody - karakter, mesaj
  • . cEmailFrom - karakter, gönderen. başlıklar ekleyebilirsiniz, örn: 'FoxyPreviewer team<foxyteam@hotmail.com>'
  • . cEmailBodyFile - karakter, mesaj metni olarak kullanılacak HTML dosya adı
  • . lReadReceipt - logical, okundu bilgisi
  • . lPriority - logical, öncelik
  • . cEncryptProcedure - karakter, şifreleme prosedürü (ileri düzey kullanıcılar için)
  • . cDecryptProcedure karakter, şifreyi çözme prosedürü (ileri düzey kullanıcılar için)
  • . cCryptKey -karakter, ayarlar tablosunda bulunan SMTP şifresinin kriptolanacağı anahtar şifre  (ileri düzey kullanıcılar için)



PDF ayarları

  • . lPDFasImage - mantıksal, PDF dosyası resim dosyası olarak oluşturulsunmu && Varsayılan = .F.
  • . nPDFPageMode - integer, PDF dosyası modu && Varsayılan = 0, 0 = Normal görünüm, 1 = mini pencerede göster
  • . lPDFEmbedFonts - mantıksal, PDF dosyasında gömülü yazı tipleri kullanılsınmı
  • . lPDFEncryptDocument - mantıksal, PDF dökümanı şifrelensinmi, bununla ilgili diğer ayarlar aşağıdaki özelliklerde
  • . lPDFCanPrint - mantıksal, şifreli  PDF dökümanı yazdırılabilir olsun mu ? sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . lPDFCanEdit mantıksal, şifreli  PDF dökümanı düzeltilebilir olsun mu ? sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . lPDFCanCopy - mantıksal, şifreli  PDF dökümanı kopyalabilir olsun mu ? sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . lPDFCanAddNotes -mantıksal, şifreli  PDF dökümana not eklenebilir olsun mu ? sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . cPDFMasterPassword - mantıksal, şifreli  PDF dökümanın 'master' şifresi .  'User Password' farklı olmalı. sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . cPDFUserPassword -mantıksal, şifreli  PDF dökümanın 'user' şifresi. 'Master Password' farklı olmalı. sadece şifreli dökümanlar için  = TRUE (yukarıya bakınız)
  • . lPDFShowErrors - mantıksal, PDF dönüşümü sırasında oluşa hatalar gösterilsinmi. bu ayarı  TRUE olarak bırakın bu bize problemleri çözmede yardımcı olacaktır.
  • . cPdfAuthor - karakter, döküman sahibi
  • . cPdfTitle - karakter, döküman başlığı
  • . cPdfSubject - karakter, döküman konusu
  • . cPdfKeyWords - karakter, döküman anahtar kelimlere
  • . cPdfCreator - karakter, dökümanı oluşturan , varsayılan: "PDFx / FoxyPreviewer"
  • . cPDFSymbolFontsList - karakter, PDF e dönüştürülemeyecek yazı tipi listesi. Genellikle barkod fontları ve semboller. virgülle sınırlandırılmış, örn. "Webdings,Biro". FoxyPreviewer halihazırda  30 dan fazla yazı tipini resme dönüştürebilmektedir. öncelikle buraya herhangi bir ekleme yapmadan PDF oluşturun dönüştürülemeyen karakterle olursa buradan ekleyin!



Hata durumunda

  • . lSilent - mantıksal, hatalar messegabox ta gösterilsinmi
  • . cErrors - character, lSilent = .F. durumunda gösterilecek hatalar listesi



Sonuç bilgisi alma (salt okunur)

  • . nVersion - numerik, FoxyPreviewer sürüm bilgisini döndürür
  • . cVersion - karakter, FoxyPreviewer sürüm bilgisini döndürür
  • . lPrinted - mantıksal, rapor yazdırıldımı
  • . lSaved - mantıksal, rapor kaydedildimi
  • . lEmailed - mantıksal, rapor e-posta yoluyla gönderildimi
  • . nPageTotal - numerik, yazdırılan (oluşturulan) sayfa sayısı



FoxyPreviewer Komutlarının INTELLISENSE e dahil edilmesi

(Gelişmiş mod)

FOXCODE tablosunu güncelleyen küçük bir PRG geliştirdik bu kodlar Intellisense dahil olmakta. INSTALLFOXCODE.PRG yi çalıştırarak intellisense i güncelleyebilirsiniz.

Test etmek için, boş  PRG açın yada içerisinde yazın:

FOXYPREVIEW in  kullanılabilir tüm method ve propertyleri gözükecektir. Kullanmak istemediğiniz kısımları comment yapabilir yada silebilirsiniz.


İNGİLİZCE OLMAYAN DİLLERE ÇEVRİM

Yukarıda belirtmiş olduğumuz cLanguage property ile dil değişimi yapabilirsiniz bu değişiklik tüm dialoglar, formlar, başlıklar ve ipuçlarını etkileyecektir.
Varsayılan dil  İNGİLİZCE dir, ayrıca kullanılabilir diller şunlardır : İngilizce, Portekizce, İspanyolca, Almanca,Yunanca, Türkçe, Çekoslavakça, Farsça, Arapça, İtalyanca, Endonezce ve Polakça.

Dil seçimini set etmek için, ingilizce dil adı yada lokal dil adı nı kullanın, örneğin fransızca set etmek için

loPreview.cLanguage = "FRENCH"

yada

loPreview.cLanguage = "FRANÇAIS"


Varsayılan dili değiştirmek için 2 seçenek vardır:

  1. FoxyPreviewer projesini açın, FoxyPreviewer_DefaultSettings tablosunda "cLanguage" alanını bulun, istediğiniz dili seçin ve projeyi tekrar derleyin.
  2. Raporunuzu çalıştırın. ayarlar tablosu otomatik oluşacaktır - FoxyPreviewerSettings.dbf FoxyPreviewer.App. nin olduğu dizine oluşacaktır, FoxyPreviewerSettings.dbf tablosunu açın ve  "cLanguage" alanını bulun ve dileğidiniz dil ile değiştirin ve aynı dizine tekrar kaydedin.



DAĞITIM (FoxyPreviewer'i Projenize Dahil Etmek)

FoxyPreviewer farklı kod parçalarından ( class, prg, resim, dll,h) oluşan bir uygulamadır bunlar ve tek bir çatıda .app altında toplanmıştır

projenize dahil edilmesi oldukça basittir çünkü ilgili tüm dosyalar yukarıda bahsedildiği gibi tek bir  APP file dosyasında toplanmıştır (FoxyPreviewer.App)

Kullanımı oldukça basittir:

1 - Basit Mod:
FoxyPreviewer.App yi Exe dosyanızın bulabileceği bir yere lokal diskinize kopyalayın ve  "SET PATH" ile bu klasoru dahil edin.
Projenize gömmeyin illa gömeceksiniz "Excluded" olarak bırakın.


2 - Gelişmiş Mod:
FoxyPreviewer.App yi Exe dosyanız yada Report*.App dosyalarının olduğu klasöre kopyalayın
projenize sadece FOXYPREVIEWERCALLER.PRG yi dahil edin.

Kullanımı  PRG içindeki kullanımı ile aynıdır ,tek fark FoxyPreviewer class kullanmak yerine direkt olarak  Helper class a ulaşılmasıdır.
Bu FoxyPreviewer in EXE dosyanızdan FRX lere ulaşmasınızı sağlar.


Aslen, bu helper class FoxyPreviewer bir TEMP file içine EXE dosyanızdan FRX clasları kopyalar. Bu class sonradan herhangi bir temizlik yapılmasına gerek duymaz geçici dosylaları kendisi temizler. Ana class ta kullanılan tüm property ler burada da kullanılabilmektedir.

SET PROCEDURE TO FoxyPreviewerCaller.prg ADDITIVE 

LOCAL loReport as "FoxyPreviewerCaller" OF "FoxyPreviewerCaller.Prg"
loReport = CREATEOBJECT("FoxyPreviewerCaller")

WITH loReport as ReportHelper
.AddReport("Sample.frx", "RANGE 1,1 NODIALOG")
.RunReport()

DO CASE
CASE .lPrinted
MESSAGEBOX("Report was printed !",64, "Report status")
CASE .lSaved
MESSAGEBOX("Report was saved as file:" + CHR(13) + .cDestFile,;
64, ;
"Report status")
OTHERWISE
MESSAGEBOX("Report Preview was closed without saving or printing",48, "Report status")
ENDCASE
ENDWITH




APP dosyasını kullanmak istemiyorsanız,FoxyPreviewer için gerekli dosyaları manuel olarak eklemelisiniz

Tüm classları, VCX/VCT, resim dosyalarını, (*.H) dosyalarını ,  formları,FoxyPreviewer.Prg yi projenize dahil ettiğinizden emin olun ve projenizi derleyin hepsi bu !

  • pr_ExcelListener.vcx
  • pr_PDFx.vcx
  • pr_RtfListener.vcx
  • GdiPlus.vcx
  • _ReportListener.vcx
  • _FRXCursor.vcx
  • FoxyPreviewer.prg
  • FoxPro_Reporting.H
  • FoxyPreviewer.H
  • FrxPreview.H
  • GdiPlus.H
  • GdiPlus_locs.H
  • HPDF_consts.H
  • ReportListeners.H
  • ReportListeners_Locs.H
  • WinCrypt.H
  • _FrxCursor.H
  • _Reports.H
  • LibHPDF.dll
  • FoxyPreviewer_Locs.dbf
  • FoxyPreviewer_DefaultSettings.dbf
  • PR_Settings.scx
  • PR_SendMail.scx
  • PR_SendMail2.scx
  • PR_Search.scx
  • pr_IMAGES.bmp
  • pr_Bottom.bmp
  • pr_Close.bmp
  • pr_Close2.bmp
  • pr_Excel.bmp
  • pr_GoToPage.bmp
  • pr_Html.bmp
  • pr_Img.bmp
  • pr_Locate.bmp
  • pr_Mail.bmp
  • pr_Next.bmp
  • pr_Pdf.bmp
  • pr_Previous.bmp
  • pr_Print.bmp
  • pr_PrintPref.bmp
  • pr_Save.bmp
  • pr_Top.bmp
  • pr_Word.bmp
  • WWrite.ico



e-Posta GÖNDERMEDE ADRES DEFTERİ KULLANIMI

Adress book form

Adres defteri formu üzerinde bir grid vardır ve belirttiğiniz cursor yada tablo bilgilerini içermektedir , sadece görmek istediğiniz alanların olmasına dikkat edin . Grid bazı kolaylıklar sunmaktadır:

- Adres Defteri formu fikir ve geliştirme (Soykan Özçelik'e fikir ve adres defteri formu geliştirmeleri için teşekkür ederiz)
- Kolon başlığında çift tıklayarak sıralatma yapılabilir (Paul Mrozovsky ye RCS Grid reorder class'ı için teşekkür ederiz)
- Arama yapılacak alan sağ mouse tıklayarak değiştirilebilir
- tüm kayıtları seçme yada tersi 1ci kolon başlığına tıklanarak sağlanabilir

alan adı  "email" olan  ve email adresleri içeren bir tablo yada cursor yaratın ve bunu FoxyPreviewer "cAdressTable" property de belirtin (tablo ise path bilgisi ile)

Aşağıdaki komut ustomers tablosunu kullanarak ve  "email" alanaı eklenerek bir tablo yaratmaktadır :

* Creating a table with the adress book
SELECT CAST(LOWER(GETWORDNUM(Contact, 1, " "))+"@vfp4.com" AS C(30)) As email,* FROM (_samples + '\data\customer') ;
WHERE .T. INTO TABLE c:\Test2 READWRITE


Sonraki adım FoxyPreviewer a bunu bildirmek!

  • BASİT Mod da bunun için ,  _Screen.oFoxyPreviewer objesini kullanın:
* genel özellikler set ediliyor
DO FoxyPrevieweer.App
_Screen.oFoxyPreviewer.cAdressTable = "c:\Test2.dbf"
_Screen.oFoxyPreviewer.cAdressSearch = "Contact" && Opsiyonel
_Screen.oFoxyPreviewer.cEmailTo = "test@foxypreviewer.org" && Opsiyonel
REPORT FORM YourReport PREVIEW

 

  • GELİŞMİŞ Mod ta kullanım:
LOCAL loReport as "PreviewHelper" OF ("FoxyPreviewer.App")
loReport = CREATEOBJECT("PreviewHelper")
WITH loReport as ReportHelper
.cAdressTable = "c:\Test2.dbf"
.cAdressSearch = "Contact"
.AddReport(_Samples + "\Solution\Reports\percent.frx")
.RunReport()
ENDWITH



Adress book form

Yukarıdaki ekran görüntüsünde görüldüğü üzere,

Öncelikle SMTP ayarlarınızı yapmanız gereklidir. Bunu ayarlar,

e-posta sekmesinden yapılabilmekte. e-posta türü CDO-HTML.
Elbette bu ayarları direkt olarak ayarlar tablosundanda yapabilirsiniz



S.S.S.

Önizleme penceresi olmadan nasıl PDF (ve diğer kullanılabiir dosya türleri) oluşturabilirim?
Bunu gerçekleştirebilmek için  cDestFile property alanını kullaniyoruz. FoxyPreviewer vermiş olduğunuz uzantıya göre dosyanızı oluşturacaktır. (PDF,BMP,JPG,PNG,XLS,RTF,TXT ...)

SET PROCEDURE TO LOCFILE("FoxyPreviewer.App") ADDITIVE 
LOCAL loReport as "PreviewHelper" OF "FoxyPreviewer.App"
loReport = CREATEOBJECT("PreviewHelper")
WITH loReport as ReportHelper
.AddReport(_Samples + "\Solution\Reports\percent.frx", "NODIALOG")
.cDestFile = "c:\Teste1.pdf" && Use to create an output without previewing
.RunReport()
ENDWITH
loReport = NULL
RUN /N Explorer.Exe c:\Teste1.pdf



Top-Level form raporlarımda  önizleme çubuğu görünüyor fakat tüm düğmeler pasif (yanıt vermiyor)  . Nasıl çözümlerim ?
Maalesef bu VFP9 SP2 nin bilinen bir bug ı, ve MS bunun için bir hotfix yayınladı bunu aşağıdaki linkten indirebilirsiniz ( cumulative hotfix - KB968409 )
http://http://code.msdn.microsoft.com/KB968409/Release/ProjectReleases.aspx?ReleaseId=2445

indirme dosyası içinde bulunan text dosyadaki yönergeleri dikkatlice okuyun ve güncelleştirmeyi gerçekleştirin, araç çubuğunu tavsiye edilen doğrultuda çalışacaktır.

VFP9SP2 yi son hotfix lerinde dahil olduğu biçimde Woody's runtime installer ile güncelleyebilirsiniz, bu linkten indirebilirsiniz: Woody's VFP9 SP2 Runtime Installer with all hotfixes (Rev 7423)


Bazen asteriks (*) karakterler beliriyor "  
Bunun sebebi  FoxyPreviewer in SET REPORTBEHAVIOR 90 modunu kullanmasıdır ve text leri dönüştürürken GDI+ teknolojisini kullanır. Ve maalesef bu eskisine oranla text boyutlarında küçük farklılıklar göstermektedir. Çözüm : rapor üzerindeki text alanlarını genişletin !


Arama düğmesi gözükmüyor
Kaydet düğmesine bastığımda PDF / RTF / XLS seçeneği gözükmüyor

FoxyPreviewer bileşenleri doğru olarak projeye dahil edildi ise tüm ayarların görüntülenmesi gerekir aksi halde FoxyPreviewer kütüphaneleri tamamen yükleyememiş demektir
cDefaultListener property sinin boş olduğundan emin olun .Bu herşeyin düzgün çalışmasını sağlyacaktır.
cDefaultLIstener sadece deneyimli kullanıcılar içindir.

FoxyPreviewer çok büyük (sayfa sayısı fazla) raporları görüntüleyemiyor

VFP9 raporlama sistemininde belli bir sayfa / karakter dönüştürme limiti vardir ve 3000 sayfanın üzerinde çalışmadığı ve  "Yetersiz GDI+ kaynağı - Insufficient GDI+ resources" hatası vermektedir ve bu FoxyPreviewer dan kaynaklanmamaktadır. Sınırlama  VFP dan kaynaklanmaktadır. Çözüm olarak sayfa sayısını azaltan bir rapor hazırlatın yada raporu SET REPORTBEHAVIOR 80 ile alın.


Rapor karakterleri dot-matrix yazıcıdan çıktı aldığımda çok küçük gözüküyor
Bu VFP9 raporlama sisteminden kaynaklanmaktadır. Eğer FoxyPreviewer i gelişmiş mod ta kullanıyorsanız,  lUseListener = .F. property yaparak raporun ReportBehavior 80 modda çalışmasını sağlayabilrsiniz.
Eğer FoxyPreviewer i basit modda kullanıyorsanız bunu yapma şansınız yok :
- ya FoxyPreviewer i gelişkin modda kullanacak ve lUseListener = .F. yapacaksınız
yada
- Bu raporu SET REPORTBEHAVIOR 80 kullarak alacaksınız


FoxyPreviewer'i nasıl pasif ederim?

Bazı özel durumlarda FoxyPreviewer i pasif etmeniz gerekebilir ve rapor ayarlarınızı ilk haline getirmek isteyebilirsiniz,
bunu yapmak için aşağıdaki 1 satırlık kod yeterlidir:

DO FOXYPREVIEWER.APP WITH "Release"



e-posta gönderemiyorum

Ayarlar sayfanızı dikkatlice kontrol edin
Bazı bilgisayarlar  "MAPI" protokolünü çalıştırmamaktadır, bu durumda "CDOSYS" seçmelisiniz. Ayrıca  SMTP sunucu ayarlarınızında doğruluğunu kontrol edin.


HTML olarak çıktı alamıyorum

HTML çıktı alabilme sadece gelişmiş modda mümkündür.

FoxyPreviewer yüklenirken "Could not load the FOXYPREVIEWER report factory" hatası alıyorum

Bu genellikleeski sürüm  ReportOutput.App kullanımından kaynaklanmaktadır
VFPX sitesinden direkt olarak indirebilirsiniz:
yada MS sitesinden kaynak kodları ile indirip tekrar derleyebilirsiniz:

ReportOutput.App yi tekrar derlemek için :
1 - Kaynak kodları direkt buradan edinin, en uygun MS Websitesinden direkt olarak
http://www.microsoft.com/downloads/en/details.aspx?FamilyId=320B6438-BE76-48C7-A68E-1792E2AA3BF2&displaylang=en
2 - ZIP dosyasını indirin ve açın
3 - ReportOutput klasörünü  ve oradan ReportOutput projesini açın
4 - Leonid'in tavsiyeleri doğrultusunda projeyi tekrar derleyin
5 - Yeni App'yi  eskisinin yerine kullanın.
Son sürümü kullandığınıza emin olun ve eski sürümlerini adını değiştirin.


FoxyPreviewer i SP2 olmadan VFP9 ile kullanabilirmiyim?

Evet !!!
Bunun için, ReportOutput.App and ReportPreview.App nin son versiyonlarını kullanmanız gerekiyor. Bir önceki konuda bu dosyaların nasıl indirlebileceği anlatıldı.

mantıksal
mantıksal, şifreli  PDF dökümanın 'user' şifresi

Last edited Jul 26, 2011 at 3:25 PM by soykanozcelik, version 42