Menu

FoxyPreviewer Türkçe belgeleri

Bu, önceki bir sürüm için oluşturulmuş, temel uygulama için kullanımdan kaldırılmış bir belgedir. Mevcut en son bilgiler için lütfen İngilizce belgelere bakın.

 

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)

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...


MODLAR ARASI KARŞILAŞTIRMA

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

 

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ı



İ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

_Screen.oFoxypreviewer.cLanguage = "TURKISH"

yada

_Screen.oFoxypreviewer.cLanguage = "TÜRKÇE"


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:

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.



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

 


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


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.