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
						

Veri aktarımında dosya adı

+1 oy
1,179 kez görüntülendi

http://filemakerturk.com/?qa=blob&qa_blobid=14327641155056665139

Merhaba,

Filemaker Pro 11 üzerinde var olan verileri pdf olarak kaydetmek istiyorum. Ancak dosyadaki veriler dönemler halinde yer almaktadır. Örnek olarak 2017 yılının verilerini aylara göre aktarmak istiyorum. Bunun için öncelikle verileri C altında Ürünlerimiz isimli klasörün içine aktaracak ve  ürün kodunu programdaki Ürün Kodu isimli alandan, dönemi ise Dönem isimli alandan alacaktır. Butona bastığımda ekranda açık olan dosyaları;

1- C:\Ürünlerimiz\Ürün Kodu_Ocak.pdf şeklinde kaydetmesini istiyorum.

2- Bu verileri aktardıktan sonra Dönem alanına 1 ay ekleyerek aynı şekilde C:\Ürünlerimiz\Ürün Kodu_Şubat.pdf şeklinde yıl sonuna kadar devam edecek bir script tanımlayabilir miyiz?

Eğer bunları tamamladıktan sonra Ürün Kodu alanında da bir sonraki Ürün Kodunu seçerek devam etmesini sağlayabilirsek daha güzel olur. Olmazsa onları sırayla tek tek seçebilirim.

Teşekkürler.

1, Aralık, 2017 Scripts kategorisinde armara (1,450 puan) tarafından soruldu
2, Aralık, 2017 armara tarafından düzenlendi
Dosya eklediğinizi yeni fark ettim. Onu da şimdi inceliyorum.
Gönderdiğim örnek dosya ile ayını fakat .12fmp dosyasını açabilecek misiniz bilemiyorum. Dosya açılmıyor ise betiği yazıp göndereyim.
Son durum nedir acaba?

1 cevap

+1 oy

Herkese selam ederim;

 

Keşke örnek bir dosya paylaşsaydınız. Tablo yapısını bilirsek örnek dosya üzerinde işlem yapmak daha kolay olurdu ( şahsım adına ).

Ama sizin için şöyle basit bir betik hazırladım. Umarım bir nebze olsun fikir verir çalışmanız için.

Betik:

 

#Tarihteki ayı değişkene alıyoruz
.......
End If

 

Yukarıda yazdığım betikte bir sorun vardı. Ayrıca size de kolaylık olsun düşüncesi ile basit bir örnek dosya hazırladım.

İlk önce Örnek Dosya içindeki filemaker dosyasını ve klasörü masa üstüne çıkartın.

 

Örnek Dosya

 

Umarım faydalı olur.

 

Hayırlı günler dilerim.

 

Saygılarımla.

 

 

1, Aralık, 2017 ercanD (73,590 puan) tarafından cevaplandı
2, Aralık, 2017 ercanD tarafından düzenlendi
Merhaba,
Örnek dosya ekledim. Hazırladığınız betiği inceledim, ama sanırım çözemedim.
Konuyla ilgili yardımcı olabilirseniz sevinirim.
Not: FMP 11 kullanıyorum. Örnek dosyanız 12 olduğu için açamadım.
Teşekkürler
Adım adım gidelim isterseniz.

İlk önce Ürünler tablosunda Donem2 isimli bir calc alan oluşturun calculation result is Number olsun ve içine Month ( Dönem ) yazın.
Daha sonra GLB_Donem isiminde Number bir alan oluşturun ve bu alanı global yapın ve bu alanı Ürünler layotunda header kısmında boş bir yere koyalım. Bu seçili iken Inspector dan Control Style den Drop-down List i seçip bir value list oluşturalım ben adına Donem dedim use custom value seçim içine 1 den 12 ye kadar sayı girelim. Bu rakamlar ayları ifade edecek.
Simdi betik kısmına geldik.

RaporPDF
#işleme başlamadan önce tüm kayıtları göster
Show All Records
#dönemi değişkene al
Set Variable[ $$DONEM; Value:Ürünler::GLB_Dönem ]
#masa üstünde yolunu belirtiyır ve Urunler klasörünü değişkene alıyoruz
Set Variable[ $$YOL; Value:Get ( DesktopPath ) & "Urunler/"]
#dosya adını dönem adı olacak şekilde değişkene alıyoruz.
Set Variable[ $$DOSYA_ADI; Value:$$DONEM & ".pdf"]
#masa üstü ve dosya adı değişkenini bir değişkende birleştiriyoruz
Set Variable[ $$TAM_YOL; Value:$$YOL & $$DOSYA_ADI ]
#rapor sonucunu görmek istermisiniz mesajı
Show Custom Dialog[ Title:"Bilgi"; Message: "Raporu görmek istermisiniz"; Default Button:“Evet”, Commit:“Yes”; Button 2:“Hayır”,
Commit:“No”]
#dönemi ait kayıtları sorgula
Perform Find[Specified Find Requests:Find Records; Criteria:Ürünler::Dönem2: “$$DONEM” ]
[Restore]
#döneme ait kayıt var ise
If [Get ( FoundCount ) > 0]
#rapor sonucunu görmek istermisiniz mesajına verilecek cevap
If[ Get ( LastMessageChoice ) = 1]
#rapor sonucunu görmek istermisiniz mesajına verilen cevap evet ise
#PDF dosyamızı oluşturuyoruz ve pdf dosyasının görüntülenmesini sağlıyoruz
Save Records as PDF[File Name:“$$TAM_YOL”; Automatically open; Records being browsed]
[ Document -Compatibility:Acrobat 5 and later]
[ Pages - 1; Include:All pages]
[ Security -Printing:High Resolution; Editing:Any except extracting pages;Enable copying; Enable Screen Reader ]
[ Initial View - Show:Pages Panel and Page; Page Layout:Single Page; Magnification:100%]
[ No dialog]
Else
#rapor sonucunu görmek istermisiniz mesajına verilen cevap hayır ise
#PDF dosyamızı oluşturuyoruz
Save Records as PDF[File Name:“$$TAM_YOL”; Records being browsed ]
[ Document -Compatibility:Acrobat 5 and later]
[ Pages - 1; Include:All pages]
[ Security -Printing:High Resolution; Editing:Any except extracting pages;Enable copying; Enable Screen Reader ]
[ Initial View - Show:Pages Panel and Page; Page Layout:Single Page; Magnification:100%]
[ No dialog]
End If
End If
#işlem bittikten sonra tüm kayıtları göster
Show All Records
Betiğin pdf hali
filemakerturk.com/?qa=blob&qa_blobid=13788503075112649456

Son iki işlem kaldı
Yazdığımız bu betiği daha önce Ürünler layoutuna eklediğimiz GLB_Dönem alanına OnObjectModify ile tetklettiriyoruz.

Son olarak da masa üstünde Urunler isimli bir klasör oluşturuyoruz.

Hepsi bu kadar.
Teşekkür ederim, ellerinize sağlık.
...