Bu püf noktaları FileMaker 6 için 2000'li yıllarda hazırlamıştır. Bazıları güncelliğini yitirse de bir çoğu küçük düzenlemelerle veya doğrudan kullanılabilir.

Tipatip FileMaker Püfleri 101

Bu derslerin tüm hakları Yazalım Software'e aittir. İzinsiz kopyalanamaz, dağıtılamaz.

Define Fields Kategorisi

 

1 ) Basit bir şekilde ortalama almak (00000005)

Ortalama almak için iki yol bulunmakta.

Birincisi alanları toplayıp alan sayısına bölmek. ( Yani ( _A1+_A2) / 2 gibi bir fonksiyon kullanmak )

Ancak bu şekilde ortalama alındığında boş alanlar sıfır kabul ediliyor. Halbuki boş alanın hesaplamaya dahil

edilmemesi gerekiyordu.

Bu problemi çözmek için "if" li uzun fonksiyonlar kullanılabilir ama, Averge fonksiyonu ile bu işi tek satırda

halledebilirsiniz.

1. Herhangi iki alanın ortalamasını almanız için calculation tipinde yeni bir ortalama alanı açın.

2. Fonksiyon olarak Average(birinci_alanınız;ikinci_alanınız) yazın. Ortalamayı bu şekilde aldığınızda,

alanların boş olduğunu algılayacak ve boş alanları sıfır kabul etmeyecektir.

Örnek:

Average(_A1;_A2)

Daha fazla alan ile işlem yapmak için fonksiyonu

Average(_A1;_A2;_A3;_A4;_A5)

şeklinde uzatabilirsiniz.

2 ) Bulunan kayıt sayısındaki sorun (00000008)

Bulanan kayıt sayısı için calculation alanı kullandığımızda ( yani (status(currentfoundcount) fonksiyonunu

kullandığımızda) görüyoruz ki bu işlev tam olarak düzgün çalışmıyor.

Bunun yerine şöyle bir çözüm daha uygun olacaktır.

1. Summary bir alan açıp "count of" radio butonu seçili hale getirin.

2. Listeden de her kayıtta kesinlikle dolu alacak bir alan seçin.

3 ) Calculation içine comment satırı eklemek. (00000010)

FileMaker, calculation’ın içine comment satırı (hatırlatma notu) eklemenize izin vermez. Bu sorunu aşağıdaki

örnekte açıklanan yol ile çözebilirsiniz.

if(1=0; commentsatırı; calculation)

"Comment satırı" yazan kısma tırnak içinde hatırlatma notunuzu yazın.

"Calculation" yazan kısma ise calculation’ınızı yazın.

Örnek:

Mesela bu örnekte adı ve soyadı alanlarını birleştiren fonksiyonumuza bir hatırlatma notu ekledik.

Mesela bu örnekte adı ve soyadı alanlarını birleştiren fonksiyonumuza bir hatırlatma notu ekledik.

if(1=0; "Bu alan adı ve soyadı alanlarını birleştirir."; _adı & " " & _soyadı)

4 ) Kısıtlı alanlar (00000038)

Bazen bazı alanlara girilen metinlerin mutlaka belli kriterlere uymasını isteyebilirsiniz. Mesela kullanıcıdan

eposta adresi istediğiniz bir alana eposta adresi girilip girilmediğini, girilen metnin içinde "@" işareti geçip

geçmediğine bakarak kontrol edebilirsiniz. Bu her ne kadar tam bir kontrol olmasa da, kullanıcının eposta

adresi yerine tamamen alakasız bir metin girmesini engeller.

Örneğin eposta adresinin doğru girilip girilmediğini kontrol etmek için;

1. File|Define Fields’e girin.

2. İlgili alanı seçip Options düğmesine basın.

3. Validation sekmesindeki "validated by calculation" seçeneğini seçin.

4. Açılan calculation diyalog penceresine "PatternCount( email; "@")=1" yazın.

Artık mail için açtığınız alana içerisinde bir adet "@" işareti olanları kabul edecektir. Aksi takdirde uyarı mesajı

çıkacaktır. Aynı şekilde karakter sınırlaması ve benzeri işlevlerde ekleyebilirsiniz.

5 ) Sayıyı yazıya çeviren fonksiyon (00000077)

FileMaker’da sadece iki alan kullanarak sayırı yazıya çevirebilirsiniz. Mesela 5624 sayısını

"Beşbinaltıyüzyirmidört" şeklinde yazdırabilirsiniz. Nasıl mı? Aşağıdaki calculation ile.

Choose(Int(Int(Tutar Rakamla/1000000000)/100);

"";"";"iki";"Üç";"Dört";"Beş";"Altı";"Yedi";"Sekiz";"Dokuz") &

If(Int(Int(Tutar Rakamla/1000000000)/100) > 0;" Yüz ";"") &

Choose(Int(Mod(Int(Tutar Rakamla/1000000000);100)/10);

"";"";"Yirmi ";"Otuz ";"Kırk ";"Elli"; "Altmış ";"Yetmiş ";"Seksen ";"Doksan ") &

Choose(If(Mod(Int(Tutar Rakamla/1000000000);100) >= 20;

Mod(Int(Tutar Rakamla/1000000000);10); Mod(Int(Tutar Rakamla/1000000000);100));

""; "Bir " ;"iki " ;"Üç " ;"Dört " ;"Beş " ;"Altı " ;"Yedi " ;"Sekiz ";"Dokuz " ;

"On " ;"Onbir " ;"Oniki " ;"Onüç " ;"Ondört " ;"Onbeş ";"Onaltı " ;"Onyedi " ;"Onsekiz " ;"Ondokuz ") &

If(Int(Tutar Rakamla/1000000000) > 0;"Milyar ";"") &

Choose(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000)/100);

"";"";"iki";"Üç";"Dört";"Beş";"Altı";"Yedi";"Sekiz";"Dokuz") &

If(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000)/100) > 0;"Yüz ";"") &

Choose(Int(Mod(Int((Tutar Rakamla (Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000);100)/10);

"On " ;"Onbir " ;"Oniki " ;"Onüç " ;"Ondört " ;"Onbeş ";"Onaltı " ;"Onyedi " ;"Onsekiz " ;"Ondokuz ") &

If(Int(Tutar Rakamla/1000000000) > 0;"Milyar ";"") &

Choose(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000)/100);

"";"";"iki";"Üç";"Dört";"Beş";"Altı";"Yedi";"Sekiz";"Dokuz") &

If(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000)/100) > 0;"Yüz ";"") &

Choose(Int(Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000);100)/10);

"";"";"Yirmi ";"Otuz ";"Kırk";"Elli ";"Altmış ";"Yetmiş ";"Seksen ";"Doksan ") &

Choose(If(Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000);100) >= 20;

Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000);10);

Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000);100));

"";"Bir " ;"iki " ;"Üç " ;"Dört " ;"Beş " ;"Altı " ;"Yedi " ;"Sekiz ";"Dokuz " ;

"On " ;"Onbir " ;"Oniki " ;"Onüç " ;"Ondört " ;"Onbeş ";"Onaltı " ;"Onyedi " ;"Onsekiz " ;"Ondokuz ") &

If(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000000) * 1000000000 ))/1000000) > 0;"Milyon ";"") &

Choose(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000)/100);

"";"";"iki";"Üç";"Dört";"Beş";"Altı";"Yedi";"Sekiz";"Dokuz") &

If(Int(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000)/100) > 0;" Yüz ";"") &

Choose(Int(Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000);100)/10);

"";"";"Yirmi ";"Otuz ";"Kırk";"Elli ";"Altmış ";"Yetmiş ";"Seksen ";"Doksan ") &

Choose(If(Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000);100) >= 20;

Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000);10);

Mod(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000);100));

"";"" ;"iki " ;"Üç " ;"Dört " ;"Beş " ;"Altı " ;"Yedi " ;"Sekiz ";"Dokuz " ;

"On " ;"Onbir " ;"Oniki " ;"Onüç " ;"Ondört " ;"Onbeş ";"Onaltı " ;"Onyedi " ;"Onsekiz " ;"Ondokuz ") &

If(Int((Tutar Rakamla-(Int(Tutar Rakamla/1000000) * 1000000 ))/1000) > 0;"Bin ";"") &

Choose(Int(Int(Mod(Tutar Rakamla;1000))/100);"";"";"iki";"Üç";"Dört";"Beş";"Altı";

"Yedi";"Sekiz";"Dokuz") & If(Int(Int(Mod(Tutar Rakamla;1000))/100) > 0;" Yüz ";"") &

Choose(Int(Mod(Int(Mod(Tutar Rakamla;1000));100)/10);"";"";"Yirmi ";"Otuz ";"Kırk";"Elli ";"Altmış ";"Yetmiş

";"Seksen ";"Doksan ") &

Choose(If(Mod(Int(Mod(Tutar Rakamla;1000));100) >= 20;Mod(Int(Mod(Tutar

Rakamla;1000));10);Mod(Int(Mod(Tutar Rakamla;1000));100));

"";"Bir" ;"iki " ;"Üç " ;"Dört " ;"Beş " ;"Altı " ;"Yedi " ;"Sekiz ";"Dokuz " ;

"On " ;"Onbir " ;"Oniki " ;"Onüç " ;"Ondört " ;"Onbeş ";"Onaltı " ;

"Onyedi " ;"Onsekiz " ;"Ondokuz ") &

If(Tutar Rakamla < 1;" "; If(Tutar Rakamla < 2;"";""))

6 ) Tekrarlı alanlardaki işlem sorunu (00000095)

Extend ( non-repeating field ) fonksiyonu tekrarlı olan bir alan ile tekrarlı olmayan bir alan arasında işlem

yapıp, sonucunu tekrarlı olan alana yazdırmak için kullanılır.

 

 

 

Enteresan Kategorisi

 

7 ) Sıralıyken ve sırasızken duplicate etmenin farkı (00000083)

Duplicate komutu kayıtlar sıralıyken kullanıldığında, duplicate edilerek elde edilen kaydı, yani yeni oluşan

kaydı, duplicate edilecek kaydın bir sonrasına ekler. Kayıtlar sıralı değilse yeni kaydı en sona koyar.

8 ) Truncate ( number ; precision ) fonksiyonundaki hata (00000097)

Truncate ( sayı_alanınız ; virgülden_sonra_kalacak_ hane_sayısı) Bu fonksiyon sayıyı aşağı yuvarlamak için

kullanılır. Mesela 2,27’yi 2,2’ye yuvarlar, 2,3’e değil.

Ancak sayınızda yuvarlanılacak haneden sonra 14 dokuz varsa bir üst basamağa yuvarlıyor.

2,229999999999999 sayısını 2,22’ye

2,2299999999999999 sayısını 2,23’e yuvarlıyor.

 

 

Find Kategorisi

 

9 ) Aramayı "yada" operatörü ile bağlama (00000003)

Aynı alanda birden fazla kelime için arama yapmak istiyorsanız, find modunda ilk arama kriterini yazıp request

menüsünden add new request’i seçin.

Yeni arama kriterinizi buraya yazarak arama işlemini gerçekleştirebilirsiniz.

Aynı şekilde arama isteklerinden (requestlerden) yalnızca birinin bulunanlarını status area’daki omit check

box’ı ile eleyebilirsiniz.

10 ) Bulma kolaylıkları (00000007)

FileMaker "bul" (find) modunda bulma işlemini daha kullanışlı yapabilmek için size bazı imkanlar sunar.

Bunlardan bazıları;

- İki değer arasını bulma: Tarih ve sayı alanlarında iki değer arası değerleri içeren kayıtları bulmak için;

1. "Bul" (Find) moduna geçin.

2. İlk değeri yazın.

3. Üç nokta koyup, ikinci değeri yazın.

- İki değer arasını bulma: Tarih ve sayı alanlarında iki değer arası değerleri içeren kayıtları bulmak için;

1. "Bul" (Find) moduna geçin.

2. İlk değeri yazın.

3. Üç nokta koyup, ikinci değeri yazın.

Örnek:

100...200 (100 ile 200 arasını bulur)

1/1/2003...1/1/2004 (1 Ocak 2003 ile 1 Ocak 2004 arasını bulur)

- Büyük / Küçük olanları bulma: Bir değerden küçük veya büyük olanları bulmak için, > ve < sembollerini

kullanabilirsiniz.

Örnek:

>100 (100’den büyükleri bulur)

<1/1/2004 (1 Ocak 2004 tarihinden öncesini bulur)

<=500 (500’den küçükleri ve 500’leri bulur)

- Joker karakterler ile bulma: @ işareti tek bir karakteri * işareti ise bir veya birden fazla karakteri joker karakter

olarak kullanmanıza olanak tanır.

Örnek:

Emi@ şeklinde arama yaptığınızda Emin ve Emir isimleri bulunacaktır.

Emi* şeklinde arama yaptığınızda Emin, Emir ve Emine isimleri bulanacaktır.

- Tıpatıp aynısını bulma: Aradığınız kriterin başına == yazarsanız sadece o değeri bulunduran kayıtları bulur.

Örnek:

==Ali şeklinde arama yaptığınızda isim alanına yalnızca Ali yazılmış olanları bulur, Mehmet Ali yazılmış olanlar

bulunmaz.

11 ) Hızlı bul (00000026)

Hızlı bul, find moduna geçmeden, layout değiştirmeden hızlıca bulmayı sağlamak için kullanılabilir.

1. Bunu ükle-şehir örneği ile açıklayabiliriz.

2. Ukle (text), sehir (text), GlobalUlke (global,text) adlarındaki alanları açın.

3. Dosyayı kendi kendine relation (GlobalUlke=Ulke) kurun.

4. Layout moduna geçip bu ralation için bir portal açın (İçerisinde yalnız sehir adlı alanınız olsun).

5. GlobalUlke alanına ülkelerin listesi olan bir Value list tanımlayı _____ n. GlobalUlke alanını da bu layout’a

yerleştirin.

6. İşte bu kadar, artık browse modunda GlobalUlke alanından hangi ülkeyi seçerseniz o ülkenin şehirleri

portalda listelenecektir.

 

Genel Kategorisi

 

12 ) Ana dosyadaki kaydı silerken o kayda bağlı ilişkili kayıtları da (related records) silme (00000002)

Relationship ekranındaki "When deleting records in this file also delete related records" seçeneğini

seçerseniz, ana dosyadaki kaydı silerken onunla ilişkili kayıtları da silecektir. Bu silinme işlemi ile diğer

dosyadaki kayıt kalabalığı önlenecektir.

13 ) Ayırma çizgisi (00000004)

Yeni bir alan veya script için "-" şeklinde isim verdiğimizde bunlar listelerde ayırma çizgisi olarak gözükecektir.

Bu şekilde alanlarınızı ve scriptlerinizi kategorize edebilirsiniz.

14 ) Browse modunda bir alanın içine girildiğinde alan içindeki tüm metni otomatik seçtirmek

(00000006)

Layout menüsünden herhangi bir alanın field format penceresini açın. "Select entire contents of field on

entry" seçeneğini seçin. Artık o alana gelindiğinde tüm metin otomatik olarak seçilecek ve değişliği yapmak

için önce metini seçmek için zaman kaybetmeyeceksiniz.

15 ) Buttonun üzerinde iken imlecin el ikonuna dönüşmesi (00000009)

Web sayfalarında fare imlecini bir linkin üzerine getirdiğinizde el işaretine dönüştüğü gibi FileMaker’da da fare

imlecini bir düğmenin üzerine getirdiğinizde el işaretine dönüşmesini sağlayabilirsiniz. Düğmeyi tanımlarken

specify button ekranından "Change hand cursor over button" seçeneğini seçerseniz butonu üzerende iken

cursor el şekline dönüşür.

16 ) Çoklu script veya alan silme (00000012)

FileMaker’ın 5.5 sürümünden itibaren bir seferde birden fazla script veya alan silmek mümkün.

Silmek istediğiniz alanları CTRL tuşu ile seçin (Macintosh’larda komut tuşu ile) ve silin.

Silmek istediğiniz alanları CTRL tuşu ile seçin (Macintosh’larda komut tuşu ile) ve silin.

17 ) Dosya isimlendirme (Mac için) (00000015)

Dosyalarınızı isimlendirirken, dosya isminin sonuna .fp5 uzantısını eklemeyi ve dosya isimlerini kısa tutmayı

ihmal etmeyin. İleride dosyanızı PC’de açmanız gerekebilir. Eğer dosyanızı "dosyaismi.fp5" şeklinde

isimlendirirseniz Windows, bu dosyanın FileMaker formatında olduğunu anlar.

18 ) Dosyayı kısıtlı şifreyle, şifre sormadan açmak (00000017)

Eğer FileMaker dosyanızın kullanıcılar tarafından değiştirilmemesini istediğiniz için şifre koyduysanız ama

dosya her açıldığında şifre sorulmasını istemiyorsanız aşağıdaki adımları uygulayarak bunu

gerçekleştirebilirsiniz.

1. Kullanıcı için kısıtlı bir şifre hazırlayın.

2. Edit menüsünden Preferences | Document’i seçin.

3. Try default password check box’ını seçin. Yandaki metin kutusu aktif hale gelecektir. Buraya kısıtlı şifreyi

yazın.

Artık dosyanız açılırken şifre sorma ekranı getirmeyecek.

Programı ana şifreyle açmak için ise dosyanızı açarken SHIFT tuşunu basılı tutun. Bu şekilde açtığınızda

şifre sorma ekranını gelecektir.

19 ) FileMaker dosyaları arası geçiş (00000020)

Browse modunda hiç bir alanın içinde değilken CTRL+TAB tuşlarına basarsanız o anda açık FileMaker

dosyaları arasında gezebilirsiniz.

20 ) FileMaker Mobile (00000022)

FileMaker Mobile ile FM dosyalarınızı cebinizde taşıyabilirsiniz. Ancak sycronize etmeden önce sharing

penceresinden hangi alanların aktarılacağını seçmeniz gerekmekte.

FileMaker Mobile’in dezavantajlarından birisi script kullanamıyor olmanız.

 

21 ) Hata kodlarının tam listesi (00000024)

-1 Unknown error

0 No error

1 User canceled action

2 Memory error

3 Command is unavailable (for example, wrong operating system, wrong mode, etc.)

4 Command is unknown

5 Command is invalid (for example, a Set Field script step does not have a calculation specified)

100 File is missing

101 Record is missing

102 Field is missing

103 Relationship is missing

104 Script is missing

105 Layout is missing

200 Record access is denied

200 Record access is denied

201 Field cannot be modified

202 Field access is denied

203 No records in file to print or password doesn’t allow print access

204 No access to field(s) in sort order

205 Cannot create new records; import can overwrite existing data

206 Cannot change password or file is not modifiable

207 Cannot access field definitions or file is not modifiable

300 The file is locked or in use

301 Record is in use by another user

302 Script definitions are in use by another user

302 Script definitions are in use by another user

303 Paper size is in use by another user

304 Password definitions are in use by another user

305 Relationship or value list definitions are in use by another user

400 Find criteria is empty

401 No records match the request

402 Selected field is not a match field for a lookup

403 Exceeding maximum record limit for trial version of FileMaker Pro

404 Sort order is invalid

405 Number of records specified exceeds number of records that can be omitted

405 Number of records specified exceeds number of records that can be omitted

406 Replace/Reserialize criteria is invalid

407 One or both match fields are missing (invalid relationship)

408 Specified field has inappropriate data type for this operation

409 Import order is invalid

410 Export order is invalid

411 Cannot perform delete because related records cannot be deleted

412 Wrong version of FileMaker Pro used to recover file

500 Date value does not meet validation entry options

501 Time value does not meet validation entry options

409 Import order is invalid

410 Export order is invalid

411 Cannot perform delete because related records cannot be deleted

412 Wrong version of FileMaker Pro used to recover file

500 Date value does not meet validation entry options

501 Time value does not meet validation entry options

501 Time value does not meet validation entry options

502 Number value does not meet validation entry options

503 Value in field is not within the range specified in validation entry options

504 Value in field is not unique as required in validation entry options

505 Value in field is not an existing value in the database as required in validation entry options

506 Value in field is not listed on the value list specified in validation entry option

507 Value in field failed calculation test of validation entry option

507 Value in field failed calculation test of validation entry option

508 Invalid value entered in Find mode

509 Field requires a valid value

510 Related value is empty or unavailable

511 Value in field exceeds maximum number of allowed characters

600 Print error has occurred

601 Combined header and footer exceed one page

602 Body doesn’t fit on a page for current column setup

603 Print connection lost

700 File is of the wrong file type for import

701 Data Access Manager can’t find database extension file

702 The Data Access Manager was unable to open the session

702 The Data Access Manager was unable to open the session

703 The Data Access Manager was unable to open the session; try later

704 Data Access Manager failed when sending a query

705 Data Access Manager failed when executing a query

706 EPSF file has no preview image

707 Graphic translator cannot be found

708 Can’t import the file or need color computer to import file

709 QuickTime movie import failed

710 Unable to update QuickTime file reference because the database is read-only

711 Import translator can not be found

711 Import translator can not be found

712 XTND version is incompatible

713 Couldn’t initialize the XTND system

714 Password privileges do not allow the operation

715 Specified Excel worksheet or named range is missing

716 A SQL query using DELETE, INSERT, or UPDATE is not allowed for ODBC import

717 There is not enough XML/XSL information to proceed with the import or export

718 Error in parsing XML file (from Xerces)

719 Error in Transforming XML using XSL (from Xalan)

720 Error when exporting; intended document format does not support repeating fields

720 Error when exporting; intended document format does not support repeating fields

721 Unknown error occurred in the parser or the transformer

800 Unable to create file on disk

801 Unable to create temporary file on System disk

802 Unable to open file

803 File is single user or host cannot be found

804 File cannot be opened as read-only in its current state

805 File is damaged; use Recover command

806 File cannot be opened with this version of FileMaker Pro

807 File is not a FileMaker Pro file or is severely damaged

808 Cannot open file because access privileges are damaged

808 Cannot open file because access privileges are damaged

809 Disk/volume is full

810 Disk/volume is locked

811 Temporary file cannot be opened as FileMaker Pro file

812 Cannot open the file because it exceeds host capacity

813 Record Synchronization error on network

814 File(s) cannot be opened because maximum number is open

815 Couldn’t open lookup file

816 Unable to convert file

817 Unable to open file because it does not belong to this solution

818 FileMaker Pro cannot network for some reason

818 FileMaker Pro cannot network for some reason

900 General spelling engine error

901 Main spelling dictionary not installed

902 Could not launch the Help system

903 Command cannot be used in a shared file

904 Command can only be used in a file hosted under FileMaker Server

905 No active field selected, command can only be used if there is an active field

950 Adding repeating related fields is not supported

951 An unexpected error occurred

902 Could not launch the Help system

903 Command cannot be used in a shared file

904 Command can only be used in a file hosted under FileMaker Server

905 No active field selected, command can only be used if there is an active field

950 Adding repeating related fields is not supported

951 An unexpected error occurred

952 Email error message, mail format not found

953 Email error message, mail value missing

953 Email error message, mail value missing

971 The user name is invalid

972 The password is invalid

973 The database is invalid

974 Permission denied

975 The field has restricted access

976 Security is disabled

977 Invalid client IP address (for the IP restriction feature)

978 The number of allowed guests has been exceeded

(for the 10 guest limit over a 12-hour period)

 

 

22 ) Insert from Index (Index’ten getir) (00000028)

Herhangi bir alana daha önceden başka bir kayıtta yine aynı alana yazılmış bilgileri yazmanız gerekirse işinizi

kolaylaştırmak için insert menüsünden From Index’i seçin ve index listesi karşınıza çıksın. Oradan da

istediğiniz kelimeyi veya cümleyi seçin.

23 ) Insert From Last Record (Bir önceki kayıttan getir) (00000029)

Veri tabanınıza yeni kayıtlar giriyorsunuz. Ancak bazen bir önceki kayıttaki bazı bilgilerle yeni kaydınızdaki

bilgilerin aynı yada aşağı yukarı aynı olması gerekiyor. Tekrar yazmak yerine Insert menüsünden From Last

Record’u seçin.

24 ) İlişkili kayda git (00000032)

Herhangi bir alana göre relation kurulmuş iki dosyanız var. Birinci dosyanızdaki portal satırına tıklayıp diğer

dosyada o kayda gitmesini istiyorsanız "Go to related record" tek satırlık script size yardımcı olacaktır.

Bu komutun özeliklerinden "Show only related records" seçeneği ise o dosyada yalnızca birinci dosyanızdaki

portal satırlarının kayıtları gözükür.

25 ) Kendi menünüzü yapın (00000037)

Menu adında yeni bir alan oluşturun. Yeni kayıt ve kaydı çoğalt elemanlarını içeren bir valuelist tanımlayın.

Layout moduna geçip menu alanının özellikleri penceresini (field format) açın. Tanımladığınız value listi seçin

ve pop-up menu olarak ayarlayın. Artık scriptimizi yazabiliriz.

Go to field [menu]

Pause/Resume script [0:00:01]

If [menu=Yeni kayıt]

Perform script [yeni kayıt]

Else

Perform script [kaydı çogalt]

End if

Bu script’i layouttaki menü alanınızın altına koyun. Artık menu alnının üzerine tıklayıp menüden seçenek

seçtiğiniz anda seçiminizin gereğini yapacaktır.

(Bu örnekte yeni kayıt ve kaydı çoğalt scriptleri’nin daha önceden yazılmış olduğu kabul edilmiştir.)

26 ) Klavye kestirmeleri (00000040)

Edit menüsünden Preferences | Application’ı seçin. Açılan pencerenin general tabındaki "All keyboard

shortcuts in menus" seçeneğini seçerseniz klavye kestirmelerini menülerde görebilirsiniz. Bu, zamanla

kestirmeleri öğrenmenize yardımcı olur.

27 ) Klavyeden kayıtları yada layoutları gezme (00000041)

CTRL ile birlikte yukarı-aşağı ok tuşlarına basarsanız browse modunda kayıtları, layout modunda layoutları

gezer.

28 ) Layout araçlarını kitleme (FileMaker6) (00000043)

FileMaker 6’nın application preferances kısmına "Always lock layout tools" diye yeni bir seçenek eklenmiş. Bu

seçenek seçili olduğunda layoutta seçtiğiniz araç devamlı seçili kalıyor. Yani kullandıktan hemen sonra

değişmiyor.

29 ) Metin alanına otomatik olarak kullanıcı ismi ekleme (00000047)

Bir metin alanının içindeyken CTRL + SHIFT + N tuşlarına basarsanız kullanıcı ismini yazar.

y y

30 ) Metin alanına otomatik olarak saat ekleme (00000048)

Bir metin alanının içindeyken CTRL+ş tuşlarına basarsanız o anki saati hh:mm:ss formatında (19:21:01)

yazar.

31 ) Metin alanına otomatik olarak tarih ekleme (00000049)

Bir metin alanının içindeyken CTRL tuşu ile aynı anda - (backspace’in solundaki eksi tuşu) tuşlarına

basarsanız o günün tarihini dd:mm:yyyy formatında (21.08.2002) yazar.

32 ) MP3 ekleme (00000051)

FileMaker’ın 6. versiyonu container alanlarına mp3 formatında ses aktarmanıza olanak sağlıyor.

33 ) Ok tuşlarıyla kelime kelime ilerlemek (00000058)

Normalde sağ/sol ok tuşları yazı içinde karakter karakter ilerler. Ancak CTRL tuşuna basılı iken ok tuşlarını

kullandığınızda kelime kelime ilerlediğini göreceksiniz.

34 ) Önceki alana klavyeden gitmek (00000061)

Browse modunda SHIFT + TAB bir önceki alana gitmenizi sağlar.

35 ) Plug-in leri runtime dosyalarda çalıştırma (00000065)

Plug-in’lerinizi compile ettiğiniz dosyalarda çalıştırmak için plug-ini solution folder’ın içindeki system klasörünün

içine koymanız yeterli.

36 ) Portaldaki satırları sıralama (00000066)

Portaldaki kayıtları sırasız giriyorsunuz ancak sıralı görmek istiyorsunuz. Bunu relation ekranından "Sort

related records" check box’ını işaretleyerek yapabilirsiniz.

37 ) Portaldan kayıt girme (00000067)

Relation’ınızı kurdunuz, portalınızı hazırladınız ancak portaldan yeni kayıt giremiyorsunuz. Hemen relation

ekranını açın ve "Allow creation or relate record" u seçin. Portalın sonunda boş bir satır olduğunu

göreceksiniz. Bu boş satıra bilgileri girerek yeni kayıtlar oluşturabilirsiniz.

38 ) Radio buttonlarda seçeneği iptal etme (00000068)

Radio butonları birden fazla seçenek seçmenize izin vermez. Ya da en az bir seçenek seçili olmalıdır. Ancak

FileMaker, bu tip istisnai durumlara izin vermektedir. Radio buttonlu bir alanda seçeneği SHIFT tuşu

basılıyken seçerseniz, birden fazla seçeneği seçebilirsiniz. Seçtiğiniz şeçenek seçili durumdaysa SHIFT tuşu

ile tekrar üzerine tıklamanız seçililiğini kaldırır.

39 ) Related value list (İlişkili değer listesi) (00000070)

Bu püfü ülke şehir örneği ile açıklayabiliriz. Ülke ve şehirlerin tutulduğu bir veritabanımız olsun. Ana dosya ile

"ülkesehir.fp5" dosyası arasında ülke ile bir relation kurun. Ülkenin value listini diğer dosyadan seçin.

Şehrinkini ise Use From Field’ı seçin. Açılan pencereden "only related values" check box’ını işaretleyip

relation’ınınızı seçin.

Artık ülkeyi seçtikten sonra şehir alanın listesinde yalnızca o ülke içindeki şehirleri göreceksiniz.

40 ) Resme yalnızca referans göstererek ekleme (00000072)

FileMaker’da resimleri göstermek için normalde resimleri veritabanına import edersiniz. Ancak bu,

veritabanının çok büyümesine neden olabilir. Bunun yerine, resimlere sadece referans gösterebilirsiniz. Yani

veritabanına sadece ilgili resmin nerede olduğunu söyleyebilirsiniz. Ancak bu yöntemi kullandığınızda, ilgili

resmin yerini veya adını değiştirdiğinizde resim görüntülenemeyecektir.

Bu yöntemi kullanmak için;

1. Insert menüsünden picture seçeneğini seçin.

2. Resminizi belirleyin, diyalog kutusunu kapatmadan önce "Store only reference to file" check box’ını seçin.

3. "Open" düğmesine basın.

41 ) "Save as Clone" (Kayıtlar harici kaydeteme) (00000074)

File menüsünden Save a Copy As seçeneğini seçin. "Save a:" başlıklı yerin hemen yanındaki pop-up listten

clone(no records)’u seçerek aynı dosyanın içinde kayıt olmayan kopyasını oluşturabilirsiniz.

42 ) "Save as Compressed" (Sıkıştırarak kaydetme) (00000075)

File menüsünden Save a Copy As seçeneğini seçin. "Save a:" başlıklı yerin hemen yanındaki pop-up listten

Compressed (smaller)’ı seçerek aynı dosyanın içinde kayıt olmayan kopyasını oluşturabilirsiniz.

43 ) Script penceresi buttonunu değiştirme. (00000078)

FileMaker’ın 5.0 sürümünden itibaren diyalog kutularının (Define Fields kutusu, mesajlar vb) boyutlarını

değiştirebiliyorsunuz. FileMaker 5.5’e eklenen özellik aynı zamanda bu pencere ayarlarını saklı tutuyor.

Böylece tekrar tekrar boyut ayarı yapmanıza gerek kalmıyor.

değiştirebiliyorsunuz. FileMaker 5.5’e eklenen özellik aynı zamanda bu pencere ayarlarını saklı tutuyor.

Böylece tekrar tekrar boyut ayarı yapmanıza gerek kalmıyor.

44 ) Scroll ile kayıt değiştirilmesini engellemek (00000081)

Scroll yaparak kayıt değiştirilmesini engellemek için,

1. Yeni bir script oluşturun.

2. Toggle Status Area script adımını ekleyin ve özelliklerini [Hide,Lock] olarak değiştirin.

45 ) Speech (Metni bilgisayara okutma) (00000085)

FileMaker’ın Mac versiyonlarında "Speech" komut satırı bulunmaktadır. Bu sayede herhangi bir metni yada

sayıyı bilgisayara okutabilirsiniz.

46 ) Şablonları tekrar göster (00000093)

FileMaker’ı açtığınızda eğer "no longer show this dialog" seçeneğini seçmediyseniz size şablonlar öneren bir

ekran gelir. Eğer "no longer show this dialog" seçeneğini seçtiyseniz ve tekrar görmek istiyorsanız, Edit

menüsünden Preferences | Application’ı seçerek açılan pencereden "Templates in new database dialog"

seçeneğini seçerek tekrar aktif hale getirebilirsiniz.

47 ) Tab yerlerini belirleme (00000094)

Tab yerlerini değiştirmek için;

1. Layout moduna geçin.

2. Tab yerini değiştirmek istediğiniz alanı ya da metin kutusunu seçip format menüsünden "Text" seçeneğini

seçin.

3. "Text format" penceresi açılacak. Sağ alt köşesindeki "paragraph" buttonuna tıklayın.

4. Açılan pencerenin sol alt köşesindeki "tab" buttonuna tıklayın ve gerekli ayarlamaları yapın.

48 ) Text’e tab ekleme (00000096)

Browse modunda tab tuşuna bastığınızda normalde alanları dolaşır. Ctrl+tab ise bir sekme atlar.

49 ) Üzerine tıklanınca resmi değişen düğmeler (00000099)

Mesela bir On/Off düğmesi yapmak istiyoruz. Bu düğmenin üzerine tıkladığımızda duruma göre resmin

değişmesi gerekir. Bunun için aşağıdaki adımları izleyebilirsiniz.

1. Bunun için biri global [Container, 2 tekrarlı (repeating)] alan, diğeri için container alanı açın. Global alana

resimlerinizi koyun (tekrarlı olan alanın birincisine açık konum resmi ikincisine kapalı konum resmi). Container

alana da birincisini koyun.

2. Komut satırı aşağıdaki gibi olan bir script yazınız.

If [GetRepetition ( alan_g; 1)=alan_c]

Set Field ["alan_c","GetRepetition( alan_g; 2)"]

Else

Set Field ["alan_c","GetRepetition( alan_g; 1)"]

End if

Bu scripti alan_c altına koyun. Artık bu alana tıklayınca resim diğerine geçecektir.

(alan_g: Global alanınız; alan_c: Container alanınız.)

50 ) Zoom ayarları (00000101)

Ekrandaki görüntüyü zoom ayarları ile büyüttükten sonra sol alt köşedeki zoom oranını gösteren düğmenin

üzerine tıklansanız, otomatik olarak yüzde yüzlük boyuta döner. İkinci tıklamanızda ise önceki zoom oranına

döner.

 

Layout Kategorisi


51 ) Daha kolay ölçü ayarı yapmak için Object size penceresi (00000013)
Layouta çalışırken belli ölçüleri tutturmanız gerekiyorsa View menüsünden Object Size’ı seçin. Açılan object
size penceresi ile işlerinizi kolaylaştırabileceksiniz.
52 ) Farklı iki alanı sliding kullanmadan yan yana yazdırmak (00000019)
Adı ve soyadı gibi farklı alanı yan yana yazdırmak için, "<<birinci_alan>> <<ikinci_alan>>" şeklinde layout’a
metin olarak yazmanız yeterli. Bu işlemin Sliding/printing’den farkı daha pratik olmasının yanı sıra browse
modunda da yan yana gözükmesidir.
Ayrıca alanların yanına aynı şekilde düz metin de yazabilirsiniz. ("Sayın <<adı_alanı>> beyin dikkatine.")
53 ) Izgara (object grid) aralığını tayin etme (00000030)
Izgara aralıklarını tayin etmek için layout modunda layouts menüsünün altındaki "Set rulers" ı seçin ve çıkan
küçük pencerede ayarlarınızı yapın.
54 ) Izgaraya hizalamayı kaldırmak (00000031)
Mouse’u kullanırken objelerin ızgara hizalamalarına göre hareket etmesini istemiyorsanız Arrage
menüsünden Object Grid özelliğini kaldırabilirsiniz.
Mouse’u kullanırken objelerin ızgara hizalamalarına göre hareket etmesini istemiyorsanız Arrage
menüsünden Object Grid özelliğini kaldırabilirsiniz.
55 ) İstemediğiniz nesneleri kağıda dökmeyin (00000033)
Layout modunda iken kağıtta görünmesini istemediğiniz nesneleri seçin. Format menüsünden
Sliding/Printing’i seçin ve "Do not print selected object" kutusunu işaretleyin.
56 ) Kategorize edilmiş şekilde yazdırma (00000035)
Belli bir alana göre sıralama yapıldığında, preview modunda o alanda aynı içeriğe sahip olan kayıtlar
kategorize edilmiş şekilde gösterilir.
Bunu basit bir örnekle açıklayalım. Bir sözlük veritabanımız olsun. Bu sözlüğü her harfin başında o harf yazılı
olarak kağıda dökmek istiyorsunuz. "Bas harf" adında kelimenin ilk harfini yazan bir calculation alanı olsun.
Header’ın altına "sub sumary when the sorted by" part’ı açın ve sıralama şeklini bas harf olarak tanımlayın.
Yeni oluşturduğunuz alanı bu part’a koyun. Browse moduna geçip kelimeye göre sıralayın ve preview
moduna geçin. Baskı ekranınız tamamdır.
57 ) Kayıt numarasını gösterme (00000036)
Layout modunda bir metin kutusu açıp içerisine "@@" yazarsanız browse ve preview modunda @@
yazdığınız yerde kayıt numarası gözükür.
"@@’ıncı kayıttasınız." şeklinde sonuna metinde ekleyebilirsiniz.
58 ) Layout sırasını kolayca değiştirme (00000044)
Layout sayınız artınca set layout order’ı kullanmak zorlaşır. Layout’u tutup üste çekerseniz çok hızlı scroll
yapar ve bu sıralamayı zorlaştırır. Buna bir çözüm olarak set layout order penceresinde CTRL ile beraber
yukarı/aşağı ok tuşuna (yön tuşları) basarak layoutun sırasını değiştirebilirsiniz.
59 ) Layout nesnelere default özellik atama (00000045)
Layout modunda hiç bir nesne seçili değilken font, size, dolgu rengi, dolgu deseni, çizgi kalınlığı, metin rengi
gibi özellikleri değiştirdiğinizde yeni oluşturduğunuz nesneler o özelliklerde olacaktır.
60 ) Layouta alan kullanmadan otomatik tarih atma (00000046)
Layoutunuza otomatik olarak o günün tarihinin gözükmesini istiyorsanız, bir layoutta bir metin kutusu açıp
içine "//" yazın.
61 ) Nesne çoğaltma (CTRL) (00000052)
Layout modunda herhangi bir nesne çoğaltmak için nesne seçiliyken CTRL tuşu basılı tutarak nesneyi
çoğaltmak istediğiniz yere sürükleyin.
62 ) Object gridi’i tek bir tuşla kaldırma (00000053)
Layout modunda bir nesne taşırken ALT tuşuna basmanız nesnenin ızgara hizalamalarına (object grid) tabi
tutulmasını engelleyecektir. Bu şekilde nesnenizi serbestçe taşıyabilirsiniz.
63 ) Object size penceresindeki ölçü birimlerini değiştirme (00000054)
Object size penceresinin sol kenarındaki ölçü birimi kısatmalarına tıklayarak ölçü birimini değiştirebilirsiniz.
64 ) Objeleri Gruplandırma (00000055)
FileMaker’ın layout kısmında çalışırken Arrange menüsünden Group seçeneği ile objeleri gruplandırabilir.
Böylece tek bir tıklama ile bunların hepsini seçebilir, hareket ettirebilirsiniz.
65 ) Objeleri Kitleme (00000056)
Layout modundayken nesnelerin yanlışlıkla hareket ettirilmesini ya da özelliklerinin değiştirilmesini engellemek
için önce kilitlemek istediğiniz nesneyi seçin, daha sonra Arrange menüsünden Lock seçeneğini seçin.
66 ) Objeleri ve Partitionları Kaydırma (sliding) (00000057)
Sliding herhangi iki alanı yatay veya dikey konumda arada bilgi olmadığından dolayı olan boşlukları
kapatıldığı bölümdür. Sliding’i kullanarak body’nin bilgi yoğunluğuna göre boyutunun otomatik olarak
değişmesi için Sliding / Printing penceresinden (Format Menüsünün altında) "Also reduce the size of
enclosing part" check box’ını seçin.
67 ) Otomatik olarak kullanıcı ismini yazdırma (00000059)
Layout modunda bir metin kutusu açıp içerisine "||" yazarsanız o alanda otomatik olarak kullanıcı ismi
gözükür.
68 ) Overview ile hangi alanın hangi layoutta kullanıldığını bulma (00000060)
File menüsünden Access Privilages | Overview’i seçin. Nerelerde kullanıldığını görmek istediğiniz alanı seçin.
Söz konusu alan layouts penceresindeki başında koyu daire olan layoutlar’da kullanılmaktadır. Aynı
yöntemle hangi layoutta hangi alanların bulunduğunu da görebilirsiniz (Ancak bunun tam doğru sonuç
vermesi için Access Privilages bölümü gruplarla kullanılmıyor olması lazım).
File menüsünden Access Privilages | Overview’i seçin. Nerelerde kullanıldığını görmek istediğiniz alanı seçin.
Söz konusu alan layouts penceresindeki başında koyu daire olan layoutlar’da kullanılmaktadır. Aynı
yöntemle hangi layoutta hangi alanların bulunduğunu da görebilirsiniz (Ancak bunun tam doğru sonuç
vermesi için Access Privilages bölümü gruplarla kullanılmıyor olması lazım).
69 ) Önceki araca dönme (jump) (00000062)
Layout modunda bir önceki seçtiğiniz araca CTRL+J tuşlarına basarak geri dönebilirsiniz.
70 ) Partition ismini yatay dikey çevirmenin kolay yolu (00000063)
Layout modundayken herhangi part isminin üzerine CTRL tuşu ile beraber tıklarsanız, o part isimi konum
değiştirir. Yataysa,dikey konuma; dikeyse, yatay konuma geçer. Aynı işlemi sol alt köşedeki soldan beşinci
düğme ile de yapabilirsiniz (Bu düğme sadece layout modunda gözükür).
71 ) Patition’ın boyutunu nesneler varken değiştirme (00000064)
Partın boyutunu küçültürken veya büyütürken, nesneler işlemi sınırlar.
Partın yerini alt tuşunu basılı tutarak değiştirirseniz, layouttaki nesnelerin üzerlerinden geçirebilirsiniz.
72 ) Resim ekleme (00000071)
FileMaker’a bir resim eklemeniz gerektiğinde (layouta veya bir container alana olabilir) resim programından
panoya kopyalayıp getirmek yerine insert picture komutu ile getirmeniz daha iyi olur.
Böylece layoutların yenilenmesi hızlanır ve dosya boyutu azalır.
73 ) Saat (00000073)
Layout modunda bir metin kutusu açıp içerisine "::" yazarsanız yazdığınız yere otomatik olarak saati yazar.
Layoutları gezerken, mod değiştirirken bu saat güncellenir.
74 ) Sayfa Numarasını gösterme (00000076)
Layout modunda bir metin kutusu açıp içerisine "##" yazarsanız o alanda otomatik olarak sayfa numarası
gözükür.
Browse modunda sayfa diye bir kavram olmadığı için yalnıza Preview modunda düzgün olarak sayfa
numarası görürsünüz.
75 ) Seçim yapma kolaylıkları (00000082)
Layout modundayken fareyi tıklayarak sürüklediğinizde oluşan seçim alanının sadece içini seçer. Bu seçim
alanının değdiği her nesneyi seçmek için CTRL tuşu baslıyken aynı işlemi yapın.
76 ) Tüm bir partition’a renk verme (00000098)
Layout modundayken body part’ını seçip bir dolgu rengi yada deseni seçtiğinizde body part’ı o dolguyla
dolacaktır.
Bu şekilde arka plan rengi ile doldurmanız, arkaya bir dikdörtgen koyup hazırlayacağınız çözünden hem
daha pratiktir hem de dosya boyutunun büyümemesi açısından daha avantajlıdır.
77 ) Yalnızca metinleri seçmek (00000100)
Bir layouttaki yalnızca metinleri seçmek için layouta metin oluşturma buttonuna tıklayın (A simgesine) ve edit
menüsünden Select All’ı seçin. Bu işlev layouttaki yalnızca metin kutularını seçecektir.
Benzer şekilde yalnızca kareleri, daireleri, çizgileri de seçebilirsiniz.
Script Kategorisi
78 ) Açma kapama scriptleri (00000001)
Hazırlamış olduğunuz açma veya kapama scriptlerini Edit menüsünden Preferences/Application seçeneğini
seçip açılan pencerede uygun yerlere yazarsanız, dosyanız açılırken ve kapanırken istediğiniz scriptleri
çalışacaktır.
79 ) Countainer alana düğmeyle çift tıklama (00000011)
Normalde container alana çift tıkladığınız zaman ses kayıt ekranını açar. Bunu scriptle yapmak için ise;
Go to field [select perform, "Ses alanı"] satırını yazmanız yeterli.
80 ) Düğmeye pause, halt, exit ve resume script işlevleri atama (00000018)
Script çalıştırılmadan önce çalışan scriptlerin durdurulmasını, iptal edilmesini vs. istiyorsanız düğmenin
scriptini belirlediğiniz ekrandan ilgili seçeneği seçin.
Halt: Tüm Scriptlerden çıkar.
Exit: Yalnızca bu komutun verildiği scriptlerden çıkar.
Pause: Scripti durdurur.
Resume: Durmuş bir scripti devam ettirir.
Resume: Durmuş bir scripti devam ettirir.
81 ) FileMaker ile text dosyası üretme (win) (00000021)
Öncelikle yeni bir script oluşturun. Export Records script adımını ekleyin. "Export specify file" özelliğini seçin.
Dosya_ismi.txt olarak belirleyin dosyanızı.
82 ) Go to field [ ] (00000023)
Scriptinize "Go to field [ ] " yazarsanız imleç kayıttan çıkar. Bu durumda imleç bütün alanlardan çıkar.
83 ) Import script özelliği (00000027)
FileMaker’ın 5. versiyonundan itibaren başka bir dosyadan script import etmek mümkün. Tek yapanız gereken
Script Maker penceresindeki Import düğmesine basmak.
84 ) Klasör/dosya açma (00000039)
"D:Klasör_adı" şeklinde bilgi girilmesi için bir alan açınız.
Open URL["Adres_için_oluşturduğunuz_alan"]
komutu belirttiğiniz konumu açacaktır.
(Bu komut Türkçe karakterleri desteklemez.)
85 ) Minimize / Show Desktop Scripti (Sadece Windows için) (00000050)
Bu işlem için Windows’un Masaüstünü Göster (Show Desktop) özelliğini kullanacağız. Bu özellik normalde
Hızlı Başlat çubuğunda kullanılmakta.
Öncelikle Hızlı Başlat çubuğundaki Masaüstünü Göster ikonuna sağ tıklayıp kopyalayın.
Daha sonra programınızın bulunduğu klasöre yapıştırın.
Script’inize Send Message satırı ekleyin.
Open File / Application’ı seçin.
Specify File diyerek Masaüstünü Göster programını seçin.
Artık scriptimiz hazır. Bu script özellikle Kiosk modunda işe yaramakta.
86 ) Random işlevi (00000069)
Random işlevi 0 ile 1 arasında (0 ve 1 dahil) bir sayı atar. Ancak sizin 0,215451 gibi bir sayıya göre işlem
yapmanız oldukça zor.
Round( Random*15;0) şeklinde yazarsanız 0’den 15’e kadar bir sayı atar ve siz de bunu if fonksiyonlarında
kullanabilirsiniz.
Round( Random*1;0) şeklinde yazarsanız 1 yada 0 atar.
87 ) Scripteki hatayı bulmak için (00000079)
Özellikle karmaşık ve çok loop içeren scriptlerdeki hatayı bulmak zordur. Bu tip script sorunlarını çözmek için
bazı yerlere Pause/Resume Script komut satırını ekleyerek nasıl çalıştığını inceleyebilirsiniz.
88 ) Scriptin durdurulmasını engelleme (00000080)
Allow user abort [off] komut satırını scriptinizin başına ekleyerek scriptin herhangi bir şekilde durdurulmasını
önleyebilirsiniz.
Status Functions Kategorisi
89 ) Diyalog kutusu düğmelerine görev atama (00000014)
Show Message dediniz ama bunun sonucunda ne yapacak? Bu durumdan status functions sizi kurtarıyor.
Status(CurrentMassageChoice)=1 (Mesajdaki birinci düğme)
Status(CurrentMassageChoice)=2 (Mesajdaki ikinci düğme)
Status(CurrentMassageChoice)=3 (Mesajdaki üçüncü düğme)
90 ) Dosyanın adresini bulmak (00000016)
Status(CurrentFilePath) işlevi dosyanın bilgisayarın hangi sabit diskinin hangi klasörüne konulduğunu
gösterir.
file://path/databaseName (Lokal adresleri bu şekilde gösterir)
FMP6://netAddress/databaseName (Uzaktaki dosyaları bu şekilde gösterir)
91 ) Hata mesajlarını Türkçeleştirme (00000025)
Örneğin bulma scriptinize aşağıdaki satırları uygun yerlere eklerseniz, arama kriterlerinin boş olduğunu
kullanıcıya isteğiniz dilde anlatır.
Set error capture [on] (Scriptin başına)
If[satatus(currenterror)=400] (Find modunda bul düğmesine bastıktan sonrasına)
ShowMesage[Arama kriterlerini girmediniz]
End if
Set error capture [on] (Scriptin başına)
If[satatus(currenterror)=400] (Find modunda bul düğmesine bastıktan sonrasına)
ShowMesage[Arama kriterlerini girmediniz]
End if
92 ) İşletim sistemine göre layout değiştirme (00000034)
Başlangıç scriptine aşağıdaki script adımlarını yazarak işletim sistemine göre layoutu değiştirebilirsiniz.
If[Status(CurrentPlatform)=1]
Go to layout ["Mac window]
Else
Go to layout ["PC window]
93 ) Kullanıcı gruplarına göre script çalıştırma (00000042)
Ev sahibi kullanıcı ile ziyaretçi kullanıcının aynı düğme ile farklı işlevler yapmasını sağlamak için
status(currentgroups) fonksiyonunu kullanabilirsiniz.
If ["Status(CurrentGroups)="Ziyaretçi""]
Show Message ["Ziyaretçi Modundasınız"]
Else
Show Message ["Ev Sahibi Modundasınız"]
End if
94 ) Sistem diline göre yönlendirme (00000084)
Status(CurrentLanguage) işlevi sitem dilini yazar, buna göre kullanıcıyı programınızın İngilizce veya Türkçe
bölümlerine otomatik yönlendirebilirsiniz.
95 ) Status(CurrentError) işlevi ile hatanın sebebini bulmak (00000086)
Status(CurrentError) işlevi FileMaker’ın da oluşan hata kodunu yazar. Bu satır ile hatanın sebebini
bulabilirsiniz.
Bu fonksiyonu scriptlerde kullanırken hata olduğu anda bu kontrolün yapılması gerekir. Aradaki comment
satırı bile olamamalıdır.
96 ) Status(CurrentFileName) işlevi ile dosya ismi kontrolü (00000087)
Status(CurrentFileName) işlevi FileMaker dosyasının ismini yazar. Bu satır ile dosya isminin değişip
değişmediğini kontrol edebilirsiniz.
97 ) Status(CurrentFileSize) işlevi ile dosya boyutunu kısıtlamak (00000088)
Status(CurrentFileSize) işlevi dosya büyüklüğünü byte cinsinden yazar. Doya büyüklüğünü bu işlev ile
kısıtlayabilirsiniz.
98 ) Status(CurrentFoundCount) işlevi (00000089)
Status(CurrentFoundCount) işlevi kaç adet kaydın bulunduğunu gösterir. Scriptlerde hata ayıklarken ve
layoutlara gönderirken bolca kullanabileceğiniz bir işlevdir.
Bu işlev calculation alanlarda eş zamanlı olarak çalışmayabilir.
99 ) Status(CurrentLayoutNumber) işlevi (00000090)
Status(CurrentLayoutNumber) işlevi Layout numarasını yazar. Ancak bu numara layoutun sırasına göre
belirlenir. Layout sırası değiştirilince numarada değişir.
100 ) Status(CurrentModifierKey) (00000091)
Status(CurrentModifierKey) işlevi o anda bazı tuşların basılı olup olmadığını kontrol eder.
Bu işlevde tuşların değerleri;
Shift 1
Caps lock 2
Control (MacOS) 4
Ctrl (windows)
Option (MacOS) 6
Alt (Windows)
Komut tuşu (MacOS) 16
101 ) Status (CurrentRecordCount) işlevi ile toplam kayıt sayısını bulmak (00000092)
Veritabanındaki toplam kayıt sayısını görüntüler.
Bu işlev calculation alanlarda eş zamanlı olarak çalışmayabilir.

 

Bu derslerin tüm hakları Yazalım Software'e aittir. İzinsiz kopyalanamaz, dağıtılamaz.