FilemakerTurk, AYS Bilişim ve Beyaz Net tarafından desteklenmektedir.
Filemaker Danışmanınız
AYS Bilişim
Mehmet KAYA
 0532 231 07 27
 0216 318 55 80
 mkaya@aysbilisim.net
						

Birden fazla kayıtı farklı bir tabloya yeni kayıt olarak aktarma

+2 oy
1,222 kez görüntülendi
Herkese selam ederim;

Tablo1 de 5 alanlık onlarca kayıt var. Bu kayıtları Tablo2 yeni kayıt olarak oluşturmak istiyorum.  

Aşağıda betiğini hazırladım, deniyorum ama sadece bir kayıt oluşturuyor. Nerede hata yapıyorum acaba. Yardımlarınız bekler hayırlı günler dilerim

Saygılarımla.

 

Go to Layout [ “TABLO1” (TABLO1) ]
Go to Record/Request/Page
[ First ]
Loop
#Setler başlıyor
Set Variable [ $ALAN_1; Value:TABLO1::AlanBir ]
Set Variable [ $ALAN_2; Value:TABLO1::AlanIki ]
Set Variable [ $ALAN_3; Value:TABLO1::AlanUc ]
Set Variable [ $ALAN_4; Value:TABLO1::AlanDort ]
Set Variable [ $ALAN_5; Value:TABLO1::AlanBes ]
#Setler bitti
#Kayıt oluşturacağımız tabloya gidiyoruz
Go to Layout [ “TABLO2” (TABLO2) ]
#Kayıt oluşturma başlıyor
New Record/Request
Set Field [ TABLO2::AlanBir; $ALAN_1 ]
Set Field [ TABLO2::AlanIki; $ALAN_2 ]
Set Field [ TABLO2::AlanUc; $ALAN_3 ]
Set Field [ TABLO2::AlanDort; $ALAN_4 ]
Set Field [ TABLO2::AlanBes; $ALAN_5 ]
#Kayıt oluşturma bitti
Go to Layout [ original layout ]
Go to Record/Request/Page
[ Next; Exit after last ]
End Loop
27, Temmuz, 2017 Filemaker Advanced kategorisinde ercanD (73,590 puan) tarafından soruldu

1 cevap

+1 oy
 
En İyi Cevap

Scripte bir gariplik göremedim, çalışması gerekiyor bence de. Script'i debugger* ile çalıştırıp hatayı/beklenmeyen davranışı daha rahat tespit edebilirsiniz.

 

Bu arada import records ile bu işlem çok daha az script satırı ve daha kısa sürede yaptırılabilir, özellikle bu yöntemi tercih etme sebebiniz yoksa düşünebilirsiniz.

 

* Script debugger sadece advanced sürümlerinde mevcut.

 

Güncelleme: Örnek Dosya

Yöntem1'in önemli noktası.

 

Yöntem2'nin önemli noktası

27, Temmuz, 2017 F. Osman Cabi (200,340 puan) tarafından cevaplandı
28, Temmuz, 2017 F. Osman Cabi tarafından düzenlendi
2. Yöntemde var olan kayıtları eliyor (omit ile), yani sadece tablo 3'de olmayan kayıtlar filtreleniyor. Sonrasında "Go to layout" kullanmadan relation üzerinden kayıtları açıyor.
Hocam tam olarak nasıl bir değişiklik yapmam gerektiğini gösterebilir misiniz?

Go to Layout [ “TABLO1” (TABLO1) ]
Go to Record/Request/Page
[ First ]
Loop
#Setler başlıyor
Set Variable [ $ALAN_1; Value:TABLO1::AlanBir ]
Set Variable [ $ALAN_2; Value:TABLO1::AlanIki ]
Set Variable [ $ALAN_3; Value:TABLO1::AlanUc ]
#Setler bitti
#Kayıt oluşturacağımız tabloya gidiyoruz
Go to Layout [ “TABLO2” (TABLO2) ]
#Kayıt oluşturma başlıyor
New Record/Request
Set Field [ TABLO3::AlanBir; $ALAN_1 ]
Set Field [ TABLO3::AlanIki; $ALAN_2 ]
Set Field [ TABLO3::AlanUc; $ALAN_3 ]

#Kayıt oluşturma bitti
Go to Layout [ “TABLO1” (TABLO1) ]
Go to Record/Request/Page
[ Next; Exit after last ]
End Loop
Örnek bir dosya da koymuştum, dosyayı indirip inceleyebilirsiniz. Kısaca script şöyle olabilir;

Go to Record/Request/Page[ First ]
Loop
   Set Field [ TABLO3::AlanIki; TABLO1::Alan2 ]
   Set Field [ TABLO3::AlanUc; TABLO1::Alan3 ]
   Go to Record/Request/Page [ Next; Exit after last ]
End Loop

Script'e Alan1'i set etmiyoruz, Alan1 değeri ilişki üzerinden otomatik alıyor çünkü.
Osman hocam dün gece internet gitti. İşler kaldı. :(

Az önce işlemi denedim. Benim çalıştığım veri tabanında Allow u TABLO3 seçtim denedim olmadı. TABLO1 de seçtim denedim yine olmadı. Her iki tabloda da seçtiğimde sonuca ulaştım. Sebebi nedir bilmiyorum ama nihayetinde sonuca ulaştım sayenizde.

Çok çok teşekkür ederim yardım ve destekleriniz için. Allah aklınıza ve yüreğinize sağlık versin.

Saygılarımla.
Merhaba
Örnek dosyayı, sunucuda olursa import yöntemi ni nasıl yapabiliriz?
...