Forum
Merhaba, Infopath'de oluşturduğum formlarda Yazdır butonu çıkmıyor. Bunu nasıl sağlayabilirim?
Aşağıdaki linklerde bir çözüm var;
http://www.go4sharepoint.com/News/printing-sharepoint-infopath-driven-8323.aspx
Eğer kendim "Yazdır" diye bir buton oluşturursam görseldeki bütünlük bozulacak. Formu açtığımda en üstte Kaydet butonu otomatik geliyor. "Yazdır" ya da "Baskı Önizleme" ayarlardan eklenemez mi?
Zaten custom code eklerseniz formun yapısını bozarsınız.
Infopath Designer içerisindeyken Dosya--> form özellikleri' ne tıklayın resimdeki alandan açabilirsiniz.
Benim from seçenekleri ekranım sizdeki gibi değil.
Siz Sharepoint listenizi infopath ile özelleştirmişsiniz. Benim gönderdiğim ise Infopath form kitaplığı için gelen ekrandır.
Şuradaki çözümü inceleyin. Ribbon menüye eklerseniz işinizi görecektir.
Infopath form kitaplığında Alanlar kısmında "Oluşturan" alanı olmadığı için diğerini seçmiştim. Hazırladığım formda Formu oluşturan kullanıcının bilgileri gerekli. Form kitaplığında bu bilgiye nasıl erişebilirim?
Boş bir field oluşturun adını oluşturan2 olarak ayarlayın. Sonra fieldın ozelliklerine girin FX den işlev ekle den KullanıcıAdı() işlevini ekleyip tamam diyerek kapatın. Alın size oluşturan kullanıcı 🙂
Çok teşekkür ederim, gerçekten çok faydalı oldu 🙂
Boş bir field oluşturun adını oluşturan2 olarak ayarlayın. Sonra fieldın ozelliklerine girin FX den işlev ekle den KullanıcıAdı() işlevini ekleyip tamam diyerek kapatın. Alın size oluşturan kullanıcı 🙂
infopath formda kullanıcıadı() formulu kullanılırsa o formu kim açarsa (kullanıcı) onun isimi görüntüleniyor dolayısı ile oluşturan kişi ile eşleşmiyor bu tanım yanılıyormuyum?
ayrıca kullanıcıadı() formulunu kullanarak form ilk açıldıgında bir filtreleme işlemi yapabilirmiyim? kullanıcı adına göre departmanı görüntülenmesi mesela?
Boş bir field oluşturun adını oluşturan2 olarak ayarlayın. Sonra fieldın ozelliklerine girin FX den işlev ekle den KullanıcıAdı() işlevini ekleyip tamam diyerek kapatın. Alın size oluşturan kullanıcı 🙂
infopath formda kullanıcıadı() formulu kullanılırsa o formu kim açarsa (kullanıcı) onun isimi görüntüleniyor dolayısı ile oluşturan kişi ile eşleşmiyor bu tanım yanılıyormuyum?
ayrıca kullanıcıadı() formulunu kullanarak form ilk açıldıgında bir filtreleme işlemi yapabilirmiyim? kullanıcı adına göre departmanı görüntülenmesi mesela?
Boş bir field oluşturun adını oluşturan2 olarak ayarlayın. Sonra fieldın ozelliklerine girin FX den işlev ekle den KullanıcıAdı() işlevini ekleyip tamam diyerek kapatın. Alın size oluşturan kullanıcı 🙂
infopath formda kullanıcıadı() formulu kullanılırsa o formu kim açarsa (kullanıcı) onun isimi görüntüleniyor dolayısı ile oluşturan kişi ile eşleşmiyor bu tanım yanılıyormuyum?
ayrıca kullanıcıadı() formulunu kullanarak form ilk açıldıgında bir filtreleme işlemi yapabilirmiyim? kullanıcı adına göre departmanı görüntülenmesi mesela?
FormuOluşturan adında bir metin kutusu oluşturun. Fonksiyonuna kullanıcıadı() yazın. Daha sonra bu metin kutusuna kural ekleyin. Bu kurala eylem ekleyin. Eylem : alanın değerini ayarla. Alan : accountName (GetUserProfileByName) Değer : birleştir("domain\"; FormuOluşturan) olmalıdır. Yalnız burda dikkat edilmesi gerekn bir nokta var. kullanıcıAdı domain\user şeklinde döner, AccountName ise sadece user döner. Bu yüzden Değer: birleştir("domain\"; FormuOluşturan) şeklinde olmalıdır. Daha sonra "veri bağlantısını sorgula" diyerek aynı kuralın altına yeni bir eylem daha ekliyoruz. Artık Kullanıcımızı çektik. Şimdi istediğimiz alanın değerini aynı kuralın altına "Alanın değerini ayarla " eylemini kullanarak ekliyoruz. Örneğin Alan: Departman Değer: Value[Name] = "Department" diyerek formu oluşturan kullanıcımızın departmanını çekebiliriz. Bu sayede Formu açan kişinin değil formu oluşturan kişinin bilgilerini görebiliyoruz.
Infopath formu menusunde Veri Yükle alanına girdiğiniz kurallar açılışta otomatik çalışırlar. Buna bağlı olarak, Oluşturan kullanıcıyı tayin etmeniz şöyle hallolur;
Oluşturan2 isimli bir alan oluşturdunuz, sonra veri yükle kısmından bir eylem açtınız.Eyleminiz koşul işle beraber şöyle olacak. "oluşturan2" boşsa oluşturana kullanıcıadı() yaz. Böylece bir sonraki açıldığında oluşturan2 dolu olduğundan artık bu alan değişmeyecek.Çünkü koşulunuz bunu engelleyecek.
Erhan bey o söyledikleriniz eğer, user profile services eklenmiş ise geçerlidir. Makalemizde olduğu gibi eklendiğinde öyle çalışır. Ama biz kullanıcıadı() işlevinden bahsediyoruz. Onun ile profile bilgileri gelemez. KullanıcıAdı() domain ile de gelir auth. metoduna göre değişir bu. Bilginiz olsun. Son olarak da 1 den fazla domain olan sistemler de dediğiniz yöntem çalışmaz bu tür durumlarda user profile services bağlantısı yapılıp kullanıcının bilgileri oradan tayin edilmelidir.