1C 8.3 Müşteride geçerli kullanıcıyı alın. Geçerli kullanıcının belirli bir rolünün olup olmadığını nasıl öğrenebilirim?
1C'deki parametreler: Şirket metadatın bir amacı olarak sunulmuştur. Temel olarak, mevcut oturuma bağlı bir küresel değişkenden başka bir şey değildir.
Küresel değişken, başkaları ile aynı değişkendir, ancak özelliği, programın herhangi bir noktasından sizinle iletişime geçmek mümkündür ve oturum parametresinin durumunda yalnızca geçerli oturum içinde çalışır.
Gibi Oturum parametresi Meta verilerin nesnesidir, belirli özelliklere sahip:
- Belirli bir tür olabilir. İzin verilen türler platform tarafından belirlenir. Listesi oldukça geniş, ama olsa bile bu liste Size gerek yoktur, her zaman değeri seri hale getirebilir ve bir dize biçimindeki parametrede saklayabilirsiniz.
- Bunun yanı sıra, meta verilerdeki diğer herhangi bir nesnenin yanı sıra rollerle sınırlı olabilir (hem kayıt hem de okuma). Bu durumda, RLS'de kullanırken bir özellik vardır, ancak aşağıda yazılacaktır.
- Serileştirilmiş formda verilen veri miktarı üzerinde bir sınır vardır. Hacmi 4 GB'yi geçmemelidir.
Oturum parametresi türü ise:
- Fixedmassiv
- Sabit toplama
- Sabit yapı
Sonra toplama öğesinin değeri olabilir Tanımsız.
Parametrelerin ana alanı, değerlerinin RLS sorgularındaki (kayıt sınırlama kayıtlarını) kullanımıdır.
Örneğin, geçerli kullanıcının durumunu RLS isteğinde ayarlamamız gerekir. Bunu yapmak için, yerleşik dilin kodundan "Geçerli Kullanıcı" oturum parametresini başlatırız, değeri ayarlayın:
Paramesanse. Ateer \u003d<значение>
Tablo. Kullanıcı \u003d ve mevcut kullanıcı
Bu oturum parametresinin bu kullanımı ile parametreyi okuma hakkı dikkate alınmaz, ancak değerlerini gömülü dilden almaya çalışabilirsiniz:
Geçerli kullanıcı \u003d parametreSansea. Aktüatör;
Oturum parametresini ayarlayın, yani değeri yalnızca yazılımdır ve yalnızca sunucuda. Bunu yapmak için, sunucu prosedürünü istemciden aramanız gerekir. Oturum parametresine erişirken (kurulum, makbuz), parametre başlatılmazsa, prosedüre neden olur Parametroversean kurulumu Oturum modülünde. Bu prosedürün bir parametresi var Gerekli parametreler - Kurulu oturum parametresi tanımlayıcıları dizisi. Parametroversean kurulumu İle bağlantı kurarken ayrıca bilgi tabanı Diğer tüm işleyicileri aramadan önce. Bu durumda Gerekli parametreler eşit olacak Tanımsız.
Ertelenmiş (tembel) başlatma işlemini, yani talep üzerine oturum parametrelerini başlatmak ve sistemin başında değil, sistem başladığında tüm oturum parametreleri gerekmez. Ertelenmiş başlatma aşağıdaki gibi yapılır:
ParametrovSeans'ların (Namesparemanevsa) montajı için prosedür, isim parametreleri belirsiz ise \u003d "Geçerli kullanıcı" adının adı, sonra durumun parametreleri. USEOR \u003d; Nameapameteter \u003d "Curganization", daha sonra kasanın parametreleri .Teneshorganization \u003d; // vb. Bitti; Bitti; Son Devam\u003e Değer \u003e\u003eOturum parametresi bir oturuma bağlandığından, başka bir oturum olacağı için arka planda çalışan yöntemden oturum parametresine atıfta bulunmak mümkün olmayacaktır. Bu nüans bir sürpriz olabilir, bu nedenle, istenen değeri bir yöntem parametresi olarak geçirerek ve işlemin başlangıcında oturum parametresini başlatarak önceden hazırlanmak daha iyidir.
Seçenekler 1C 8.3 Oturumlar- İstediğiniz parametrenin değerinin kullanıcı oturum süresi için saklandığı bir değişken. Aslında, bu, mevcut kullanıcı oturumuna bağlı bir tür küresel değişkendir.
1C'de oturum parametrelerini kullanın
Oturum parametreleri, yalnızca sistemdeki oturum parametrelerini ayarlamak için evrensel bir arayüz olarak, yalnızca programlı olarak belirtilir. Genellikle sistemin başlangıcında, "oturum modülünde" olarak ayarlanırlar. Parametre tanımlanmadıysa, iletişim kurarken bir hata neden olur.
Bir oturum parametresi 1C ayarının bir örneği
Geçerli kullanıcıyı yükleme - oturum parametrelerini kullanma tipik bir örneğini düşünün. Örnek için hazırlıktan alacağım.
Meta veriler ağacında, yeni bir oturum parametresi oluşturacağız - kullanıcı, buna tayin edeceğiz - linklerin dizinini atayacağız. Doktor:
Ücretsiz 1C için 267 video eğitimi alın:
Oturum modülünde, mevcut oturum parametresinin belirleneceği bir prosedür oluşturun:
Prosedür Kodu:
Kurulum prosedürüParmetrovonovsa (Gerekli parametreler) // Piz'i arıyoruz. yüz ismi Metin \u003d Referanslar. Fizyensiz. Temeli (isim kullanıcısı ()); // Bulunmadıysa - YENİ YAZIN Belge ise. Boş () sonra böylece \u003d referans kitapları. Fizyensiz. Oluştur öğe (); Mektup. İsim \u003d kullanıcı adı (); Mektup. Yazma (); Metin \u003d Mektup. Link; Bitti; // Kullanıcı bağlantısı için Oturum parametresini FOY. Directory Paramels. Geçerli kullanıcı \u003d kanal; Ekstrüdreler
5
Daha ince bir erişim yapılandırması gerektiğinde, RLS kayıt seviyesi güvenlik mekanizması kurtarmaya gelir. Sistemin konfigürasyonu "1C: Enterprise" 8, başlangıçta çok maddeli bir muhasebe için bir program olarak konumlandırıldı ve ...
3
1.0 sistem platformundan başlayarak, işletme, kullanıcı erişim haklarını giriş seviyesinde sınırlamak mümkündür. Bunun için RLS (Kayıt Seviyesi Güvenliği) mekanizması kullanılır. Böyle bir "ince" ayar olabilir ...
3
Genellikle, yazılım oluşturma ve kullanıcıların haklarının yapılandırılması ile ilgili soruları karşılamak. Bu yazıda, programsal olarak bir kullanıcıyı oluşturan düzenli ve yönetilen uygulamalara örnekler vereceğim ...
2
Soru: Yeni bir kullanıcı ekledim. Oluşturmak yeni arayüz (Var olanı kopyalama) ve bu arabirimi bu kullanıcı için ana olarak belirtin. Sorun şu ki, yeni arayüzün yarattığı ...
- Cari Bültenler 1C.
- 1C platformda kod örnekleri