internet pencereler Android
Genişletmek

1C 8.3 dinamik liste ayarlarını seçin. Veri dinamik listesi elde etme ve önbelleğe alma yöntemleri

Baskı (CTRL + P)

Dinamik listesi

1. Genel Bilgi

Dinamik liste, veritabanı tablolarından keyfi bilgileri görüntülemenizi sağlayan özel bir veri türüdür. Bunu yapmak için, tabloyu, görüntülemek istediğiniz verileri, ortaya çıkan örneği sorgu dilinde tanımlamanız gerekir.
Mekanizma veri düzeni sistemine dayanır ve elde edilen verilerin sıralama, seçim, arama, gruplama ve koşullu tasarım için fırsatlar sağlar. Bu durumda, verilerin kaynağı, sistem tarafından otomatik olarak oluşturulan (belirtilen verilere dayanarak) oluşturulan veya geliştirici tarafından manuel olarak yazılmış bir sorgudur.

İncir. 1. Dinamik bir liste oluşturma seçenekleri

Form türünü oluştururken Dinamik listesi Geliştirici, verilere bir istek oluşturmanın iki yolu seçebilir:
● Ana tabloyu ayarlama - Bu durumda, yalnızca verileri elde etmek için gereken tabloyu (ana tablonun özelliğini) belirtmek için yeterlidir ve sistem otomatik olarak verilere bir istek oluşturur ( Şekil 1'de sağ tarafta.
● Manuel sorgu oluşumu - Bunun için keyfi bir istek özelliği ayarlamanız gerekir (bkz. Sol Kısaca Şekil 1). Bundan sonra, bilgi tabanından veri elde etmek için bir talebin manuel oluşumu mevcut olacaktır.
Sorguyu kullanarak, birkaç tablodan veri seçebilirsiniz, böylece ana tabloyu belirleyebilirsiniz. Dinamik listenin, hangi verilerin ana olduğunu ve ikincil olan ve bilgileri seçebileceği ve bilgileri otomatik olarak seçebilecek ve görüntüleyebilmesi için gereklidir. Ancak, sorgudaki ana tabloyu belirleyemezseniz, belirtilemez, ancak sonra
dinamik liste, ana tablo ile ilgili komutları sağlamaz. Ek olarak, bu durumda (ana tabloyu belirlemeden), dinamik listeye veri elde etme etkinliği önemli ölçüde azaltılacaktır.
Performansı artırmak için, keyfi bir sorguda kullanılan tüm bağlantılar, yalnızca veri düzeni sistemi isteklerini genişleterek isteğe bağlı yapmak için ek veri elde etmek için önerilir.
Formun ana detayları olan dinamik bir liste için, seçim değerlerini form parametresini kullanarak ayarlamak mümkündür. Seçim. Bu, parametredeki yapı mülkünün adını gerektirir. Seçim,
dinamik bir listenin seçilmesinin adıyla çakıştı. Bu durumda, yapı özelliğinin değeri, seçim öğesinin doğru değeri olarak ayarlanacaktır. Bir dizi, sabit bir dizi veya bir değer listesi varsa, parametrenin parametre elemanının değeri olarak kullanılırsa, listedeki seçeneğe sahip durum seçime, değerlerin listesine eklenir (hangi Dizi ve sabit dizi dönüştürülür).
Dinamik listedeki keyfi bir istek olarak, herhangi bir alanın değerini oluşturmak için bir parametrenin kullanıldığı bir istek oynanabilir, örneğin:

SEÇ
Tercih
Teslimat. Katsayılı \u003d 1 daha sonra ve performans
Aksi takdirde teslimat. Katsayısı
Katsayısı olarak
NIN-NİN

Bu durumda, eğer parametre değeri türü nesne sahne türünden farklı ise (örneğin, Requisite1 Tipi var Numarave parametrenin değeri - türü Hat), ardından doğru alan ekranı için, parametrenin değerini istenen türe açıkça getirmek gerekir:

SEÇ
Tercih
Teslim edildiğinde. Katsayı \u003d 1, ardından ekspres (ve string (100)) teslimat. Katsayısı
Katsayısı olarak
NIN-NİN
Belge. Teslim olarak belge kapasitesi

Seçimin ayarlandığı alan, işlevsel seçenekler kullanılarak devre dışı bırakılırsa, seçim değeri form parametreleri veya seçim parametreleri bağlantıları olarak iletilse bile, böyle bir alanın seçimi yüklü değildir.
Dinamik okuma özelliğini kullanarak, dinamik liste, verileri küçük bölümlerle okuma ihtiyacı için gösterilir.
(Dinamik liste ve veri önbelleğe alma ile veri elde etmenin yolları hakkında daha fazla bilgi için aşağıya bakın). Bu özellikten bağımsız olarak, aşağıdaki koşullar geçerlidir:

● Görüntüleme modu hiyerarşik bir liste olarak ayarlanırsa, yalnızca mevcut grubun verileri ve tüm ebeveyn elemanlarının verileri (alt unsurlar olmadan) okunur.
● Görüntüleme modu bir ağaç biçiminde ayarlanmışsa, yalnızca ağacın açık düğümlerinin verileri okunur.
● Dinamik liste verilerinin tek seferlik yükü, hiyerarşik bir görüntüleme durumunda desteklenmez (ekran özelliği bir ağaca ayarlanır) ve ağacın ilk gösterimi tüm seviyeleri açıklamak için değere monte edilmiştir. Veri elde etmek için, sunucuya pek çok istek gerçekleştirilecektir, görüntülenen listede kaç tane düğüm var.
Verilerin bir alınması dahilinde, dinamik liste daha önce aşağıdaki koşullara tabi olan geçici tabloları yeniden kullanır:
● Ana sorgu paketinden sonra paket sorgusunda herhangi bir istek yoktur.
● Geçici tabloların ve alanların bileşimi, parti isteğinin önceki yürütülmesinden ayrılmamıştır.

Çalışmalarında, dinamik liste, meta veri nesnelerinin ayrıntılarının aşağıdaki özelliklerinin değerlerini kullanır:
● Biçimlendirme,
● Düzenleme formatı,
● İpucu,
● Negatif değerleri vurgulama işareti
● Maske,
● Çok satırlı rejimin işareti,
● Gelişmiş Düzenleme İşareti
● Şifre modu.
Veri Düzeni Sisteminin seçim ve parametrelerini görüntülenir ve düzenlerken, ilgili alanı düzenlemek için format kullanılır.

2. Kısıtlamalar ve özellikler

Seçimi dinamik bir listede ayarlarken, hiyerarşik listenin veya ahşabın ekran modu dinamik bir liste için seçiliyse, seçimin grup üzerinde hareket etmediği unutulmamalıdır. "Gruplar" altında, ETCO'nun özelliğinin gerçeğin değerine ayarlandığı referans defterinin veya bir özellik türü planının bir unsuru olarak anlaşılmaktadır.
Seçim, otomatik olarak standart detaylar sahibine, ebeveyn, tarih, döneme ve Etco grubuna uygulanan Dinamik bir liste tarafından gösterilen seçimi
standart veri düzeni sistemi. Anahtar alanlardaki dinamik bir liste ile otomatik olarak gösterilen seçilenler, veri düzeni sistemi için standart araçlar olarak kullanılabilir ve koşulları doğrudan metne ekleyerek kullanılabilir. İÇİNDE Ana masa alanlarında. Seçimlerin düzenleri ile kullanımının bir sonucu olarak, hem ekli sorgularda hem de sanal tabloların parametrelerinde uygulanabilir.

Dinamik listeler geliştirirken, keyfi istekleri olan tüm dinamik listelerinin kontrol edilmesi önerilir. Doğrulama sürecinde, liste isteğinde iç içe geçmiş sorgular veya sanal tablolar varsa ve standart detayların sahibi, ebeveyn, tarih, dönemi, ETCO grubunun takma adlarıyla örtüşen takma adlarla bir alan seçmek için kullanılabilir olduğundan emin olun. veya anahtar alanlar, o zaman bu alanlar, diğer adın onlarla çakıştığı standart detaylara gerçekten uygundur. Bu durumda değilse - isteğini neye kabul edeceklerini değiştirmelisin ya da
takma ad değişiktir.
Sorgunun manuel bir formasyonu seçilirse, bazı kısıtlamalar talebe reçete edilir:
● Dinamik liste isteğinde ilk talimatları kullanarak desteklenmiyor. Dinamik listedeki giriş sayısı ile sınırlı bir örnekleme kullanmanız gerekirse, sorgunun gerçek kısmının alt koşulda yayınlandığı ve kayıt sayısını sınırlandırması için dinamik bir liste oluşturma talebini geri sarmanız gerekir. bu alt sorguda alındı. Berbat etmek yerine, geçici bir tablo da kullanabilirsiniz.
● Desteklenmeyen, sıralama ve gruplandırma:

  • Tabloların ayrıntılarına göre.
  • Sunum alanları.
  • Alan versiyonu.
  • Alan adı dağılımı.
  • Masa planı tablosunun saha görünümü.
  • Birikim Kayıt Masası.
  • Tip tablo tipi özellik planının alanı.
  • Tip Alan Tipi;
  • Alan tipi dize (sınırsız uzunluk).
  • Alan tipi ikili.

● Subconto alanlarında sıralama ve gruplama desteklenmiyor.<НомерСубконто> ve Wisubekkonto<НомерСубконто> MOTIONSUBKONTO Muhasebe Kayıt Tabloları.
● Gruplandırma, agrega fonksiyonları içeren sorgu dilinin ifadelerini temsil eden alanlarla desteklenmez.
● Ana tablo seçildiğinde, dinamik liste isteği aşağıdaki sınırlamalara sahiptir:

  • Uncinds desteklenmiyor.
  • Sıralama bölümünün kullanımı ile desteklenmez. İsteği ana tablo olmadan kullanmalısınız veya dinamik listenin ayarlarıyla gerekli siparişi ayarlamanız gerekir.

● Dinamik liste hiyerarşik bir liste veya ağaç olarak görüntülenirse, bir ebeveyn görüntülenmezse, kayıt dinamik bir liste ile görüntülenmeyecektir. Başka bir deyişle - Hiyerarşi listesinin elemanını görüntülemek için, dinamik liste bu öğenin tüm ebeveynlerini listenin en üstüne de göstermelidir. Aynı zamanda, listenin en üstünde, ima eder veya aslında
dinamik bir liste veya dinamik bir liste için TEREXUAL form tablosu uzantısının özellik özelliği olarak takılan bir eleman tarafından görüntülenen hiyerarşik nesnenin kök elemanı.

Ana tablo olarak aşağıdaki tabloları kullanılarak desteklenmez:

● Anahtar olmadığı tablo, her bir masa girişinin benzersiz bir şekilde tanımlanması (nesne tabloları ve kayıt tabloları için bir kayıt anahtarı). Bununla birlikte, aşağıdaki tablolar dinamik listenin ana tablosu olarak kurulabilir (anahtar eksikliğine rağmen):

● Subconto muhasebe kaydının tablosu;
● Hareket Dubkonto Tablosu hariç tüm muhasebe kayıt tabloları;
● Sabit değerler tabloları (sabit masa dahil);
● Anahtar alanları olmayan harici veri kaynaklarının tabloları;
● Harici veri kaynaklarının küp tabloları;
● Birikim Kayıt Tabloları:

  • rulo masası;
  • kalıntıların Tablosu;
  • devrim ve kalıntıların tablosu.

● Hesaplama Kayıt Tabloları:

  • gerçek eylem süresinin tablosu;
  • veri grafikleri;
  • temel veri.

● Nesnelerin masa kısımlarının tabloları;
● Kayıt tablolarını değiştirin (veri değişim mekanizmalarında kullanılır);
● Sıra tabloları;
● Yeniden hesaplama tabloları (periyodik hesaplama mekanizmalarında kullanılır).
● Talebinde yalnızca harici bağlantıda kullanılan tablolar.

Başka bir deyişle, belirtilen ana tabloya sahip dinamik liste, sorgu yürütmesinin bir sonucu olarak düzgün çalışacaktır,
ana tablodan elde edilen satır sayısı veri kaynağı olarak artmaz (üst üste bindirilmiş seçim dahil). Sorgunun yürütülmesinin bir sonucu olarak, Talebin ana tablodan alınan satır sayısı arttıkça, görüntülenen anahtar giriş anahtarının benzersizliğinin ihlal edilmesine yol açacaktır. Bu durumda, dinamik listenin ana tablosunun kullanımını devre dışı bırakmanız gerekir.
Dinamik bir liste çalışırken, listenin görüntülenen ayrıntılara erişim haklarını dikkate almanız gerekir:
● İstemci tarafında, dinamik liste sütun verileri iletilmemektedir, bu da her zaman kullanımı ile işaretlenmiştir, ancak mevcut kullanıcının görüntüleme hakkına sahip değil. Bu tür sütunların verilerine erişim (sıvı ve veri yönteminin özelliklerini () kullanarak)
müşteri tarafında imkansızdır.
● Geçerli kullanıcının dinamik listenin anahtar alanını görüntüleme hakkına sahip değilse, bu dinamik listeye göre veri elde etmek, erişim haklarının ihlal edilmesine yol açar.
Numaralandırma listesini görüntüleyen dinamik bir liste için, etkileşimli bir liste ayarı yoktur.
Sütunların bileşimi ve dinamik listenin ayarları, takma yöntemlerdeki seçim alanlarının alanlarıyla ilişkilidir. Örnek alan için sorguda, takma ad açıkça belirtilmemiştir ve alan sistemiktir, daha sonra İngilizce gömülü dil için alan adının adı bir takma ad olarak kullanılır.
Bu ilişki, değiştirildiğinde (veya açıkça otomatik bir takma adı kullanan alan için bir takma ad için belirtilen) anlamına gelir.
dinamik liste verilerini oluşturan sorgu alanının takdir edilmesi, dinamik liste sahnelerinin ayarlarını, "kaybeder" formunun ayarlarını, görüntülenen ayrıntıları, dinamik listenin ayarları yanlış olacaktır.
Dinamik liste verilerinin kaynağının, seçimi dönemdeki seçimi ayarlamanıza olanak tanıyan tablo (normal veya sanal) olması durumunda, ardından kullanıcı ekran süresini böyle bir dinamik listede ayarlarsa (komut tarihleri \u200b\u200baralığını ayarlar) ...),
sürenin belirtilen sınırları, sanal tablonun seçiminin veya parametrelerinin değerleri olarak ayarlanacaktır. Dil uzantısı demekse
veri Düzeni Sistemi için sorgular, sanal tablonun parametrelerinin isimleri ile açıkça belirtildi - belirtilenlerle parametreler takılacak
isimleri. Ekran süresini veya veri işlemesini kontrol etmenin mümkün olduğu masalar:
● Kayıt tabloları (ana veya sanal), çünkü dönemde seçim olasılığı olan (hesaplama kaydı için - kayıt döneminde);
● Belgelerin temel tabloları, iş süreçleri ve görevler;
● Temel masa günlük tabloları;
● Temel dizilim tabloları, sıra sınırları tablosu.
Dinamik bir liste sorgusu parametresi olarak, bir dizi veya değer listesi gerçekleştirebilir. Ancak, parametre değerlerin listesi ise, yalnızca ilk liste değeri seçim değeri olarak kullanılacaktır. Dinamik liste parametrelere bir istek kullanıyorsa, parametre değerlerinin ilk ayarı, sürücü işleyicisinde gerçekleştirilmelidir.
Dinamik liste verilerini görüntülerken, aşağıdaki özellikleri hatırlamanız gerekir:
● Dinamik listenin özelliklerini programlı olarak değiştirirken, ilgili komut panellerini otomatik olarak yeniden doldurmaz.
bu dinamik listeyle.
● Bir hücrede gruplandırma moduna sahip bir gruba ve gruplandırılmış alanlarda bir gruba gruplandırılırsa, onay kutusu tarafından görüntülenen bir alan var, bu onay kutusu her zaman ortaya çıkan hücrede (sol metin) her zaman görüntülenecektir.
Dinamik bir listede, alanlar için veri türünü belirlerken, parametreler, alanlar veya edebi içeren ifadeler, elde edilen tip, alan ve edebi türleri ile belirlenir. Parametre değeri türü elde edilen veri türüne dahil edilmezse - değeri kesilecektir.
Örneğin, aşağıdaki örnekte, alanın bir tür numara olacaktır.

Tercih
Ne zaman yalan
Sonra 5.
Aksi takdirde
&Parametre
SON

Parametreye parametre bir parametre atarsanız, bu alanın dinamik listesi bir değer 0 alır (numara türü için varsayılan değer).
Böyle bir durumda benzer bir tür gerekirse - sorgu dilinin tasarımını kullanmanız önerilir. İfade etmek. Örneğin,
yukarıdaki örnek, parametre dizgisine 100 karakterden uzun olmayan bir şekilde aktarılmasını gerektirirse, parametrenin basit özelliklerini açıkça kaldırma tipi ile ifade etmek için değiştirmelisiniz:

Tercih
Ne zaman yalan
Sonra 5.
Aksi takdirde
Express (ve string (100) olarak parametre)
SON

Numune alanlarının ifadelerinde dinamik liste sorgusunun keyfi metninde, parametreler kullanılır - biri tasarımı kullanan parametrelerin türünü açıkça belirtmelidir. İfade etmek. Örneğin, yerine Ve nomokulator olarak adlandırma kullanmak
Express (ve bir referans kitabı olarak adlandırma. Nameneture) isimlendirme olarak. Aksi takdirde arama dizesi aracılığıyla arama yapabilir
yanlış veya hatalar üretmek.

3. Veri alma ve önbelleğe alma yöntemleri dinamik listesi

Dinamik listeyi görüntülemek için veri alırken, üç yoldan birini kullanır:
1. Veritabanından okunur, liste tarafından aynı anda görüntülenen satır sayısını hafifçe aşan, veri öğelerinin sayısı ile bölümler tarafından gerçekleştirilir (ancak 20'den az). Sunucudaki veriler önbelleğe alma yapılmaz.
2. Veritabanından okunur 1000 veri öğesi için sayfalarda gerçekleştirilir. Sunucuda veri önbelleğe alma işlemi gerçekleştirilir. Hiyerarşik veriler önbelleğe alınır: Her ebeveyn için en fazla 2 sayfa öğe önbelleğe alınmaz. Bir dinamik listede en fazla 20 sayfa öğe önbelleğe alınmaz. Önbellekleme aşağıdaki tablolar için dinamik bir listeye dahil edilecektir:
● Seçim kriteri;
● Ana tablo ve Motionsubkonto tablosu hariç tüm muhasebe kayıt tabloları;
● Ana tablo hariç tüm birikim kayıt tabloları;
● Ana tablo hariç tüm bilgiler kayıt tabloları;
● Ana tablo hariç tüm hesaplama kayıt tabloları;
● Görev anahtarına sanal tablo;
● Anahtarsız dış kaynakların tabloları;
● Harici kaynakların küpleri.

3. Veritabanından okunur 1000 öğenin sayfalarında gerçekleştirilir. İlk bölüm 1 sayfa. Her bir sonraki bölüm 1 sayfa artar (önceki örneğin sonuna ulaşıldığında). Görüntülenen verilerin sonuna kadar "bakış açısı" ne kadar yaklaşırsa, numune ne kadar büyük olursa, Sınırdaki tüm görüntülenen verilere eşit hale gelir. Sunucuda veri önbelleğe alma işlemi gerçekleştirilir. Önbellek ve dinamik listedeki maksimum kayıt sayısı 1.000.000'dir.
Dinamik listenin ana tablosu tarafından seçilenlere bağlı olarak ve değer dinamik okuma özelliğini alır, bunlar veya diğer veri okuma yöntemleri kullanılır:

● Mülkiyet değeri olarak, ana tablo aşağıdaki tablolardan biridir: değişim planı, dizin, belge listesi, belge dergisi, özellikleri planı, hesap planı, hesaplama planı, iş süreci, görev, iş işlemi noktası tablosu:



● Mülkiyetin değeri olarak, ana tablo aşağıdaki tablolardan birini gösterir: bilgi kaydının ana tablosu, birikim kaydı, muhasebe kaydı, hesaplama kaydı, MOTRSSUBKONTO muhasebe kaydının sanal tablosu:

● Mülkiyet dinamik okuması:
● Kurulum: Yöntem 1 kullanılır (yöntemlerin açıklaması yukarıda verilmiştir).
● Yayınlandı: Yöntem 2 (Yukarıda açıklanan yöntemler).

● Bir özellik olarak, ana tablo, Yüklenicinin (Görev Yöneticisi) için Seçim Kriteri veya Görev Tablosunun tablosudur:
● Tablo dizesini tanımlayan anahtarı: Bağlantı.

● Bir özellik olarak, temel tablo, bestecinin veya aranabilir olanın besteci bilgilerinin sanal tablosunu gösterir:
● Anahtar tablo dizesini tanımlar: tuşlar.
● Dinamik okuma özelliği geçerli değildir.
● Yöntem 2 kullanılır (yukarıda açıklanan yöntemler).

● Bir özellik olarak, ana tablo, yukarıdakilerin yanı sıra sanal kayıt tablolarından birini gösterir:

● Dinamik okuma özelliği geçerli değildir.

● Özellikler Ana tablo belirtilmedi, keyfi bir istek kullanılır:
● Tablo dizesini tanımlayan anahtar: numara.
● Dinamik okuma özelliği geçerli değildir.
● Yöntem 3 kullanılır (yukarıda açıklanan yöntemler).

Görüntülemek için, veriler, 1'in boyutunu okuma yönteminde (bu bölümün başında açıklanan) bölümün boyutuna benzer şekilde, veriler istemciye kısımlarca iletilir.
Dinamik bir liste içeren bir form oluştururken, her görünür dinamik listenin 45 veri öğesi başlangıçta müşteriye iletilir (eğer listelenen 45 öğe). Dinamik liste 45 satırdan fazla gösteriyorsa, formu açarken, eksik veri maddeleri elde etmek için ek bir sunucu araması yürütülecektir.

4. Dinamik Liste Ayarları

Özellik Listeyi ayarlama - Hyperlink'e basmak için açma formuna yol açar dinamik listeyi ayarlayın. Liste ayarı, veri düzeni sistemindeki benzer işlemlerle aynı şekilde gerçekleştirilir.


İncir. 2. Dinamik listenin şartlı kaydı

Konfigürasyondaki dinamik listenin yapılandırılması sırasında, uygulanan çözüm aşağıdakileri yapabilme yeteneğine sahiptir:
● Arealline yapmanın gerekli olduğu alanları ayarlayın;
● Listedeki veri seçimini tanımlayın;
● Koşullu ayarları belirtin;
● Verileri gruplandırmanız gereken alanları ayarlayın.
Sıralamayı geliştiriciye ayarlamak için, yüklü varsayılan sıralama sistemine uymuyorsa, mantıklı olur.

Konsey. Sıralama alanlarının başarısız seçiminin (yanı sıra verilerin seçimi ve gruplanması gibi), dinamik numunenin verimliliğini olumsuz yönde etkilerdiği unutulmamalıdır.
Uygulama geliştiricisinin açısından, dinamik listenin ayarları birbirine bağlı birkaç parçadan oluşur. Dinamik listenin ayarlarını yönetebileceğiniz ana özellik Lockerstrakes. Bu nesne, sistemi çalıştırırken, dinamik listeye uygulanan son ayarları tanımlayan üç ayar grubu içerir:
● Ayarlar - Yapılandırıcı modunda oluşturulan ayarlar. Dinamik liste prosedürü, yapılandırma özelliğine hızlı erişim sağlar. Dinamik liste ayarlarının adı Bağlantının adı, aşağıdaki tasarımlar eşdeğerdir:
Liste. Kırpılmış ve liste. Destek çalışanları. Talimatlar.
● Özel ayarlar, kullanıcının "1C: Kurumsal" modunda değiştiği ayarlardır;
● Sabit şerit - Bu ayarlar gömülü dilden ayarlanır. Ayrıca, bu özellik, parametrelerini kullanarak forma iletilen seçim değerlerini içerir. Dinamik liste seçiminin özellikleri, parametreler, koşullu uygulama, dinamik liste ayarlarının sabit ayarlarına hızlı erişim sağlar. Başka bir deyişle, bu temyizler eşdeğerdir:
Liste. Supercrowers. Refixed-yoğunlaştırılmış. Saksı ve liste.
Dinamik bir listenin son ayarını oluştururken, ayarlar için çeşitli seçenekler aşağıdaki gibi birleştirilir:
● Herhangi bir ayar türü tamamen kullanıcı olarak işaretlendiyse, kullanıcı ayarları sonuç ayarlarına girer.
(Liste. Destek çalışanları. Kayınvaliteyi kullanın). Aynı zamanda, herhangi bir ayarın erişilemez olarak işaretlenmesi durumunda, bu ayarlar ortaya çıkan ayarlara liste özelliklerinden yerleştirilecektir. Supercrower. Ayarlar.
● Herhangi bir tür ayar kullanıcısı tamamen değilse, ancak öğe, o zaman:
● Özel olarak işaretlenmiş elemanlar, liste özelliklerinden elde edilen ayarlara düşecektir. SUPERCROWER.
● Varsa işaretli elemanlar, liste özelliklerinden elde edilen ayarlara girecektir. Süpermen.
● Sabit ayarlar (liste. Suprowers. Sabit yoğunlaştırılmış), ortaya çıkan ayarlara "olduğu gibi" eklenir. Aynı zamanda, aynı adın ayarları, durumdaki aynı sol değeri olan seçim gibi sabit ve kullanıcı ayarlarında olduğunda durum geçersiz.

Ayarlar, işlevsel seçenekleri kullanarak devre dışı bırakılan dinamik listenin ayarlarında bulunursa, bu ayarlar dinamik bir liste verisi aldığınızda mevcut ayarlar listesinden silinecektir.
Kullanıcıya hangi ayarların kullanılacağını yönetin ve hangi - Hayır, Dinamik Liste Ayarları penceresinde çalışır.


İncir. 3. Özel ayarlar dahil yönetim

Pencerenin altındaki onay kutusu (bkz. Şekil 3), ayarlara (sıradan veya hızlı) her türlü ayarda yerleştirmekten sorumludur. Bu özellik seçim, sipariş, gruplama ve koşullu tasarım için kullanılabilir. Ayarlar Düzenleme Modu ile belirtilirse, hızlı bir seçimdir, daha sonra dinamik listeyi görüntüleyen Form tablosunun Kullanıcı Ayarları grubunda, Hızlı Özel Dinamik ile ilişkili elemanların boş bir grubunu belirtmelisiniz. Liste ayarları bulunacaktır. Grup belirtilmezse - Hızlı kullanıcı ayarları formda görüntülenmeyecektir. Dinamik listenin Oluşturma-Kullanıcılar Yöntem () Yayını Kullanarak Yerleşik Dili Kullanarak Özel Ayarların Açıkça Olması da mümkündür.
Kullanıcı ayarlarında belirli ayarları barındırmanın olasılığını seçmek de mümkündür. Bu özellik seçim ve şartlı elemanlar için kullanılabilir (bkz. Şekil 3).

Dinamik bir liste açarken, herhangi bir özel ayar yüklenirse, bu iki şekilde yapılabilir:
● Özel ayarların dinamik listesini kullanarak. Bu parametrede bulunan veriler dinamik listenin kullanıcı ayarlarına yerleştirilecektir.
● Kopyalayanların dinamik bir listesinin formunu kullanarak. Eğer formu açtığınızda, bu parametreyi belirtin, ardından formun ana detayları olan dinamik bir listede, belirtilen anahtarla ayar depolamasında bulunan kullanıcı ayarları indirilecektir.

5. Dinamik listede arama yapın

Formda bulunan dinamik liste, görüntülenen verilerde etkileşimli bir arama yapabilme özelliğini sağlar. Arama, aşağıdaki araçlar kullanılarak gerçekleştirilebilir: arama dizeleri, arama iletişim kutusu, arama geçmişini ve ayar süresini kullanarak (Dinamik listeler için belgeleri görüntüleme için). Arama sonucu sınırlı bir kayıt kümesidir.
arama kriterlerini karşılayan dinamik liste (bu kullanıcıya kullanılabilir).
Dinamik listedeki arama yeteneklerini yönetmek için, dinamik listeyi gösteren yönetilen form tablosunun üç özelliği tasarlanmıştır:
● Arama dizesinin konumu - arama dizesinin konumunu belirler. Aşağıdaki değerleri alabilir: Otomatik, Komut Paneli, NO, Üst, Alt.


İncir. 4. Dinamik bir listede arama dizgisi

Bu özelliğin değeri komut paneline ayarlanırsa, komut komut panelinde (Dinamik liste formun ana detayları ise) veya dinamik listeyle ilişkili olan komut panelinde, arama dizesi görüntülenecektir. Komut panelinde yayınlanan arama dizesi her zaman komut panelinin sağ kenarına bastırılır (arama çubuğunun sağındaki düğmelerle birlikte).
Özellik Hayır olarak ayarlanmamışsa, arama dizesi formda eksik olacak ve başlangıç \u200b\u200bsatırı iletişim kutusu başladığında, bir iletişim kutusu açılacaktır.
Özellik üste ayarlanmışsa, arama dizgisi liste komut panelinin ve dinamik listeyi gösteren tabloyu arasına yerleştirilecektir. Özellik altına ayarlanırsa, arama dizesi, dinamik listeyi gösteren tablodan hemen sonra gönderilecektir.


● Uyumluluk Modu özelliği, kullanmamalı veya daha eski sürüm sürüm 8.3.4 - değer komut paneline ayarlanmışsa.
Arama çubuğuna geçiş aşağıdaki gibidir:
● CTRL + F tuş kombinasyonuna basarak;
● Fare;
● Dinamik listede metin kümesi başlatıldığında (dinamik arama listesinin özelliğinin değerini dikkate alarak).
● Görüntüleme durumu konumu - görüntüleme durumunun nerede görüntüleneceğini açıklar: Hangi alanlar arama ve hangi değerler
her alanda arandı. Aşağıdaki değerleri alabilir: Otomatik, Hayır, Üst, Alt


İncir. 5. Dinamik listedeki arama durumu

Özellik Hayır olarak ayarlanmışsa, görüntüleme durumu formda bulunmaz. Sonuç olarak, tanımlamak veya olmamak mümkündür, seçim düğmesini yalnızca kullanılabilirliğe göre iptal etmek mümkün olacaktır.
Özellik üste ayarlanırsa, görüntüleme durumu listesi komut paneli ile dinamik listeyi görüntüleyen tabloyu arasına yerleştirilecektir. Özellik altına ayarlanırsa, görüntüleme durumu, dinamik listeyi gösteren tablonun hemen ardından gönderilecektir.
Form "1C: Enterprise" sürümünde 8.3.4 ve genç olarak oluşturulursa - Özellik no. Form "1C: Enterprise" sürümünde 8.3.5 ve daha büyükse oluşturulursa - Özellik otomatik olarak ayarlanır. Bu durumda mülkün gerçek değeri aşağıdaki şekilde belirlenecektir:
● Uyumluluk modu özelliği, sürüm 8.3.4 (ve aşağıda) olarak ayarlanmışsa - değer yok;
● Uyumluluk modu özelliği, kullanmamalı veya daha eski sürüm sürüm 8.3.4 - en iyi değere ayarlanmışsa;
● Arama yönetimi pozisyonu - Arama düğmesinin nerede gösterileceğini belirler. Düğme aşağıdaki bilgileri içeren menüyü açar: Komutlar Geçerli değer, gelişmiş arama, aramayı iptal et, aramayı iptal et, periyodu (belge ve günlük listeleri için) ve arama sorgularının geçmişini ayarlayın (son 5 istek). Mülkiyet değer alabilir: Otomatik, Hayır, Komuta paneli.


İncir. 6. Dinamik listede Aramayı Yönetme

Özellik Hayır olarak ayarlanmamışsa, arama düğmesi formda eksik olacaktır (ancak henüz menüyü kullanarak komutlar kullanılabilir). Değer özellikleri Komut paneli Düğmeyi dinamik listeyi görüntüleyen tablola ilişkilendirilmiş komut paneline yerleştirir.
Form "1C: Enterprise" sürümünde 8.3.4 ve genç olarak oluşturulursa - Özellik no. Form "1C: Enterprise" sürümünde 8.3.5 ve daha büyükse oluşturulursa - Özellik otomatik olarak ayarlanır. Bu durumda mülkün gerçek değeri aşağıdaki şekilde belirlenecektir:
● Uyumluluk modu özelliği, sürüm 8.3.4 (ve aşağıda) olarak ayarlanmışsa - değer yok;
● Uyumluluk modu özelliği, kullanmayın veya daha eski sürüm sürüm 8.3.4 - değer komut panelini kullanmayacak şekilde ayarlanmışsa;
Formda birkaç komut paneli varsa, yönetilen form tablosundan biri olan komutların kaynağı (dinamik liste verilerinin görüntülenmesi), ardından arama çubuğunu ve arama düğmesi yalnızca bir komut panelinde bulunur:
● veya dinamik listenin kendisinin komut panelinde (eğer otomatik doldurma açıksa)
● veya kalan komut panellerinden herhangi birinde.

Dinamik listedeki arama aramanın özelliklerini göz önünde bulundurun:
● Aramanın rahatça tadını çıkarması için (hız hızından), dinamik listenin ana tablosu olarak kullanılabilecek tüm yapılandırma nesneleri için tam metin aramasını etkinleştirmeniz gerekir. Ayrıca, dinamik listede görüntülenebilecek yapılandırma nesnelerinin tüm detayları, arama için gerekli olabilecek tam metin aramasına dahil olmalıdır.
Nesne tam metin aramasından hariç tutulursa, dikkate alınan arama mekanizması işe yarayacaktır, ancak böyle bir aramanın performansı son derece düşük olacaktır. Tam metin arama ile dizine eklenmeyen nesneleri aramanın kullanılması önerilmez.
● Uygulama çözümü, tam metin arama dizini düzenli olarak güncelleyen bir düzenleyici göreve sahip olmalıdır.

● Arama, tüm dinamik liste sütunları (ve yapılandırma nesnesi) tarafından gerçekleştirilmez, ancak yalnızca tabloda görüntülenen hoparlörler tarafından.
● Referans türleri alanları üzerinden dinamik bir listede arama yapmak için kullanılan alanlar tarafından gerçekleştirilir.
temsil oluşturma (buraya bakınız). Temsilciye dahil edilen alanlar, ilgili nesnenin ThePole Temsilciliği () işlenmesinin işlemcisi dikkate alınarak elde edilir.
● Belirtilen ana tabloya sahip dinamik listeler için, ana tabloda tam metin arama kullanılır. Ana tablodan gelen tüm crist olmayan referanslar, tam metin aramasının sonuçlarına eklenecektir. Ana tablo için tam metin arama sonucu, anahtar alanlar tarafından bir seçim olarak kullanılır. Listede görüntülenen alanlarda diğer tablolardan görüntülenen alanlarda tam metin arama yapılır (alan ve yapılandırma nesnesi için tam metin arama kullanılırsa). Tam metin arama olmadan, veriler olabilir
bulundu, ancak arama kendisi çok yavaş gerçekleştirilecektir.
Tam metin arama yapmaya çalışırken bir hata oluştuysa, arama tam metin arama kullanmadan gerçekleştirilecektir.
Örneğin, bu harfle başlayan bilgi tabanında bir harf ararken ve çok sayıda satır ararken bu olabilir.
● Karşılaştırma türünün seçiminin, dinamik listenin ana tablosunun alanı için kullanılması durumunda, seçim değeri bu tablodaki arama sorgusuna arama sorgusuna eklenecektir.
● Arama dizesi kelimelere ayrılmıştır. Bu bölüm aşağıdaki kurallara göre gerçekleştirilir:
● Dize, ayırıcı olarak bir boşluk ve sekme sembolleri kullanılarak bölünmüştür.
● Elde edilen fragman daha sonra işlenir:
● Fragman, geçerli bölge oturum ayarlarını dikkate alarak bir tarih gösterimi (veya zamansız) ise, kelime bu fragmandır.
● Aksi takdirde, parça, ayırıcı olarak ", .- / \\" sembollerini kullanarak daha da kırılır. Bu durumda, ortaya çıkan her dize fragmanı bir kelime olarak kabul edilir.

● Her kelime için, "veya" ile birleştirilmiş bir dizi koşul oluşturulur. Bu, bu alanın alındığı tablodaki bu kelimeyi tam metin araması, bu alanın elde edildiği, bu alanın tam metin araması, bu alan için en az bir nesne veya tam metin arama kullanılmamışsa oluşursa oluşur. Koşullar aşağıdaki gibi oluşturulur:
● Bir tür dize alanı için, durum% olarak% bir kelime gibi adın adını görün.
● Tür alanı için, durumun durumu, değerin, Numara türüne verilen sözcüğün olduğu isim \u003d değerin adına sahiptir. Doğru bir şekilde çalıştıramazsanız, alandaki arama yapılmayacaktır.
● Kelime, geçerli oturum için tanımlanan Booleo Tipi için varsayılan görünümde bir alt diziş olarak arıyor. Görünümde istenen kelime algılanırsa, kelimenin tespit edildiği sunuma karşılık gelen bir değer arayışı. Aynı zamanda, Biçimlendirme formatı öğesi özelliği kullanılarak belirtilen arama yapmak için hiçbir görünüm kullanılmaz.
● Bir tür alanı için, durumun durumu, adının adının bir görüntüsünü vardır. \u003d Başlangıç \u200b\u200b(Kelime) ve Ad<=КонецДня(Слово). Если Слово подобно дате, в которой год
bir veya iki haneyi belirtir, yıl geçerli yüzyıla verilecek ve bu değer arama koşuluna eklenecektir.
● Referans alanlar için, referans sunumu oluşturmak için kullanılan alanlarda arama yapılır. Bu alanların her birinde
yukarıda açıklanan kurallara göre yapılır. Aramak için, keyfi bir veri gösterimi oluşturmak için kullanılan alanlar kullanılmaz.
Her kelime için bir dizi koşul "yazılım" ile birleştirilir.
● Öncü sıfırları olan değerler için, önde gelen sıfırlar ve önde gelen sıfır olmadan belirtilen hatta bir satır arayabilirsiniz.
● Dinamik liste bir belgenin veya belge günlüğünün bir listesini görüntülerse, belirtilen liste görüntüleme aralığı, istenen dinamik liste için görüntüleme durumunu görüntülemek için ayrılan şekil alanında da görüntülenir.
● Dinamik listenin ana tablosu seçim kriteri ise, geçerli değer için arama komutu kullanılamaz.
● Tabloda gösterildiğinde Yabancı Satır parçaları vurgulanır.
● Bir sütun için, yalnızca arama çubuğu desteklenir. Aramanın zaten yürütüldüğü sütun için yeni bir arama sorgusu eklerken, arama ifadesi değiştirilir ve iki arama sorusunun eklenmesi değil.
● Formda bir form yoksa. Formun takviyesi elemanı, tablo ile ilişkili arama dizesini (form elemanının eklentisinin özelliği) görüntülenir) dinamik listeyi gösteren, daha sonra CTRL + F Tuşları tuşuna basıldığında açılışa yol açar. arama iletişim kutusunun


İncir. 7. arama diyalogu

Form formun formunda bulunursa, Dinamik Listeyi görüntüleyen, tablo ile ilişkili (form elemanı eklentisinin özelliği) ile ilişkili arama dizesini görüntüler, ardından gelişmiş arama komutu aramayı açmak için kullanılmalıdır. iletişim kutusu.
● Arama iletişim kutusunu kullanırken, aşağıdaki özellikleri hatırlamanız gerekir:
● Klavye arama diyalogunun açılması, geçerli hücrenin değerinin arama yapacağı dizgede olduğu gerçeğine ve Aranacak anahtar değeri doğru tesadüf olarak ayarlandığına yol açar.

● Arama iletişim kutusunu doğrudan başlatarak, dinamik listede ayarlanan arama dizgisini doğrudan başlatarak, anahtar değerinin, hattın bir kısmına nasıl ayarlanacağını ve metin araması alanına düştüğü gerçeğine yol açar. Ne aranmalı.

6. Dinamik bir liste ile görüntülenen verileri elde etmek.

Dinamik listeler kullanırken, üst üste gelen seçimi ve aranabilecekleri dikkate alarak, şu anda dinamik bir liste ile görüntülenen çeşitli veri işlemlerini yapmanız gerekebilir. Bu tür eylemler şunlardır: Görüntülenen bilgilerin işlenmesi, örneğin, seçilen belgelerin aktarılması veya seçilen nesnelerden herhangi bir ayrıntıyı ayarlayın, örneğin bir tablo belgesine yazdırmak veya kaydetmek için kullanılabilir nesnelerin (tasarım, vb.) Bir listesini oluşturur.
Dinamik bir liste ile görüntülenen verileri elde etmek için, flaş bileşiğinin () makbuz yöntemlerini kullanmanız gerekir ve
Yenilebilen Bazlı Kompleksler ().
Veri makbuzunun bir örneği:

Şema \u003d öğeleri. Fırsatlar. İkna edici ();
Ayarlar \u003d Elements. Fırsatlar. Powerflower tabanlı ();
Ücretsiz makine \u003d yeni fold-shirt-shirtscompleCang ();
Mockupscomponovka \u003d klasör makinesi. Dolgu (şema, ayarlar);
ProcessOrComPonovka \u003d Yeni işlemci bileşenleri;
Prosesorcomponovka.initialize (mockcomples);
İşlemci Ekipmanları \u003d Yeni İşlemci-İçi Satır Sonuçları CommonTheldblocks
İşlemci Egzersizi iade. Sağın (işlemcicomponovka);

Değerlerin toplanmasına veri elde etmek (tablo veya değerler listesi) benzer şekilde gerçekleştirilir.
Dinamik bir liste verisinin elde edilmesi, uygulamalı çözümler geliştirirken dikkate alınması gereken bir çok özelliğe sahiptir:
● Aşağıdaki tablo tasarımı tarafından desteklenmiyor:
● Hatların renklerinin alternasyonu;
● Resim kapakları;
● Podle resmi;
● Bodrumun arka plan rengi;
● Bodrum metninin rengi;
● Bodrum yazı tipi;
● Bodrum katında yatay pozisyon;
● Şifre modu.
● Yönetilen form için belirtilen şartlı tasarım desteklenmiyor;
● Hiyerarşik bir tablo yükselişi düzenlerken, bir bağlantı türü alanı, boş bir bağlantı içeren kayıtlar her zaman önce yerleştirilir.

Zasitorical'den ana notlar

04/21/2014 Dinamik bir liste verisi elde etme

Sürüm 8.3.6.1977'de uygulandı.

Dinamik bir liste kullanılarak görüntülenen verilerin basit ve kullanışlı alınması olasılığını uyguladık.

Dinamik liste verilerinin standart olmayan, "spesifik" bir formda yazdırmak için gerekli olabilir. Veya onlarla belirli eylemler gerçekleştirmek için. Örneğin, listede seçtiğiniz tüm katılımcılara bazı özellikler tarafından bir mektup gönderin.

Ek olarak, kullanıcının, öğelerin listesine ek olarak, bu listeyle ilişkili son verileri görmek istediği bir takım görevler vardır. Örneğin, malları bazı emtia grubuna ve bazı tedarikçiye tutarak hemen bu malların toplam sayısını veritabanındaki sayısını görmek istiyor.

Dinamik listenin kendisi size bu tür bilgileri sağlayamaz. Dinamik listenin görevi, büyük veri hacimlerinin hızlı bir şekilde görünmesini sağlamaktır. Bu nedenle, bir veya iki ekranda görüntülenmesi gereken bu bölümleri okur. Ve "hiçbir şey bilmiyor", örneğin, dikkate alınması gereken toplam veri sayısı hakkında.

Genel olarak, kullanıcının istediği ek bilgi edinmek için, veritabanını sorgulamanız gerekir. Tam olarak dinamik listede kullanılan tekrarlayan olanı.

Daha önce yapabilirsin. Ama her zaman değildi. Sonuçta, kaynak talebinin metnine ek olarak, dinamik listenin çalıştığı, kullanıcının tüm seçimi, sıralamayı vb. Bildirmeniz gerekti. Kullanıcının verileri gösteren tabloya etkileşime girdiği parametreleri.

Şimdi bu görev basitçe çözüldü. Dinamik listenin tablosu iki yeni yöntem ortaya çıktı:

  • Comcompound'un yerine getirilmesi ();
  • Replenityenstroitkomponkydata ().

Böylece, hem veri düzeninin diyagramını hem de en önemlisi, kullanıcının tam olarak aynı listesini gördüğü sayesinde tüm ayarları. Yalnızca düzenini programlı olarak oluşturmanız ve onu değerlerin koleksiyonuna (yazılım işleme için) veya bir tablo belgesine (ekran için) çekmeniz gerekir.

Sonuç olarak, dinamik liste tablosunda görüntülenen sütunları ve satırları içeren bir yapı (veya rapor) alacaksınız.

Önemli bir nokta, diyagramın ve dinamik listenin tablosundan aldığınız ayarların, hoparlörlerin görünürlüğü ve uygulamalı arama da dahil olmak üzere dikkate alınmasıdır. Ayarlar ayrı olarak elde edildiğinden, amaçlarınız için alanların bileşimini değiştirebilir ve örneğin, tüm liste sütunlarını, yalnızca kullanıcı tarafından görülebilenler değil.

Bir tablo belgesini görüntülerken, başka bir hoş anı var. Genel olarak, raporun görünümü diyagram ve ayarlar sırasında dinamik listenin tablosunun görünüşüne karşılık gelecektir. Masanın şartlı tasarımı dahil. Sadece rapora, formun koşullu tasarımını da bildirmek istiyorsanız size bazı ek işlemler gerekecektir.

Yapılandırma arıtma işleminde, her 1C programcı dinamik listelere bakar.
Dinamik liste, çeşitli veritabanı nesneleri listelerini veya silme olmayan veri kayıtlarını görüntülemek için kullanılan bir arayüz nesnesidir.
Örneğin, dinamik liste, isimlendirmenin listesini görüntülemek için kullanılır:

Dinamik listenin yeteneklerini göstermek için harici işleme oluşturun, temel formu ekleyin. "Dinamik Liste" tipiyle yeni bir sahne ekleyeceğiz. Hadi onun özelliklerine gidelim ve orada ne olduğunu görelim.
"Keyfi Talep" mülküyle ilgileniyoruz. Eklentisi, dinamik bir listenin tüm olanaklarını bize gösterecektir. Q: Kurumsal Talep Dilinin neredeyse tüm olanaklarını kullanarak bir istek yazabilecek. Onay kutusunu kurun ve "Aç" bağlantısını tıklayın:

Varsayılan olarak, listemiz tüm depolardaki toplam kalıntı ile isimlendirme listesini gösterecektir. Böyle bir listeyi uygulamak için aşağıdaki sorguyu ekleyin:


Ana tablo olarak, "Dizin. Namenclature" ni seçin, bu, referans kitabının elemanlarını silmek için bir adlandırma listesinde olduğu gibi, dinamik bir listeyle çalışmamıza izin verecektir. Ayrıca, ana tablonun montajı, dinamik veri okuması olasılığını sunar - bu, numunenin gerektiği gibi bölümler tarafından yapılması gerektiği anlamına gelir.
Sonra, listemiz için form öğeleri oluşturmanız gerekir:

İşlememizi bu formda çalıştırmaya çalışırsak, bir hata alacağız:


Bunu ortadan kaldırmak için, değeri "Dönem" parametresine ayarlamanız gerekir. Bunu yapmak için, dinamik listenin "Parametreler" koleksiyonunun "parametresini yükle" yöntemini kullanabilirsiniz. Yöntem iki parametre alır:
. "Parametre" - Tip: Satır; Parametre. Değeri takılmalı parametre adı veya veri düzeni parametresi;
. "Değer" - Tip: Keyfi. Yüklemek istediğiniz değer.
"Yaz Bölümü" işleyici formlarında çağrılabilir:

Bir sorunuz var mı, bir danışman yardımına ihtiyacınız var mı?


Kullanıcıya kalıntı elde etmek için süreyi değiştirme yeteneğine sahip olacağız. Bunu yapmak için, "Tarih" formunun sahne ve ilgili unsurlarını ekleyin:


"Tarih" formunun "dayatılması" formunda, ilgili detayların değerini değer olarak geçerek "Ayar Noktası" yöntemini arayın. Benzer şekilde, "tanıtım" formları için prosedürü değiştireceksiniz. Yöntem istemcide bulunduğundan, sunucu çağrısı gerekmez:


Şimdi tarih değiştirildiğinde, kalıntılar otomatik olarak güncellenecek:




Kullanıcıların mevcut kalıntıları veya planlanan makbuzları görmek istediklerini varsayalım. Düzenlemelerden birini düşünün. Boolean Tipi Formları ve İlişkili Anahtarın Sahnelerini ekleyin:


Anahtar değerini değiştirirken, sorgunun metnini değiştiririz. Bunu yapmak için, "görüntülenen kapasite" formunun "Veren" unsurunun işleyicisini kullanırız. Sahne değerlerine bağlı olarak dinamik bir listenin "metin isteği" özelliğini değiştirmemiz gerekiyor. Bu özellik istemcide bulunmadığından, sunucu prosedürü gereklidir:


Yapılan değişikliklerin sonucu:



Herhangi bir programlama dilinde bulunabilecek ilkel veri türlerine ek olarak, 1C'de benzersiz tipler vardır. Her birinin kendi özellikleri, yöntemleri, işlevleri, amacı ve sistemde kullanım şekli vardır. Bu türden biri, birçok uygulamalı görevi büyük ölçüde kolaylaştıran dinamik bir listedir. Bu yüzden geliştiricilerin bu evrensel aracı bilmeleri ve tedavi edebilmeleri gerekmektedir.

1C'de dinamik listeler için fırsatlar

Bu türün amacı, türünden bağımsız olarak, herhangi bir veritabanı tablosundan bilgi görüntülemektir. Mekanizma CD temelinde oluşturuldu ve benzer yeteneklere sahiptir. Ancak bu, bu fırsat, 1C dilinde bir istek yazmanın gerekli olacağı anlamına gelmez, ancak bu fırsat kullanılması gerekir. Sadece tabloyu belirleyebilirsiniz, ilgilendiğiniz bilgiler ve 1C, kendinize en basit istek oluşturur.

Dinamik listenin nasıl oluşturulduğunu ve hangi verileri gösterdiğini görmek için, yapılandırılmış formları, konfigürasyonda bulunduğu yerde açmanız gerekir: içerik menüsündeki ayrıntılar listesinde, özelliklerini açın ve "Tahkim" ne dikkat edin . Daw eksikse, "Ana Tablo" parametresi, verilerin alındığı veritabanı tablosunu yansıtır. Aksi takdirde, dinamik liste, liste ayarını açarak görülebilen, keyfi bir isteğin verilerini yansıtmaktadır.

Keyfi bir sorguyu olan bir şema çok daha sık kullanılır, çünkü çok çeşitli verileri birleştirmek ve göstermek için mükemmel bir fırsat verir. En sık, bu mekanizma, depolardaki artıkları, fiyat aralıklarında, gelecek, tüketim veya tedarik içindeki artıkları yansıtmak için kullanılır. Kompleks sorgular durumunda hızın düşebileceği için dikkatlice kullanmak gerekir.

Dinamik listenin bir başka özel özelliği, "Listeyi ayarlama" yazısına tıkladığınızda açılır. Bu menü, bilgileri son kullanıcılara daha erişilebilir ve anlaşılabilir hale getirmek için standart bir alan kullanırken bile izin verir. Keyfi bir isteğin olup olmadığına bakılmaksızın, belirtebileceğiniz "Ayarlar" sekmesini göreceksiniz:

  • Dinamik bir listenin seçimi;
  • Gruplamalar;
  • Sıralama;
  • Kayıt.

Parametreleri kullanmak, dinamik listeleri evrensel ve yeterince esnek hale getirir. Ayrıca, yönetilen bir formla ilgili ayrıntılarla da ilişkilendirebilirsiniz ve veriler, kullanıcı tarafından seçilen parametrelere bağlı olarak değişecektir. Bu mekanizmaların kullanımı, gerçek görevlerin örneklerini göz önüne alarak anlaşılabilir ve değerlendirilebilir.

Örnek olarak, adlandırma kalıntılarının yönetilen formunu yansıtma görevini göz önünde bulundurun. Gerçek pratikte, bu tür siparişler çeşitli konfigürasyonlarda oldukça sık bulunur ve dinamik liste bir araç olarak idealdir. Bu görev için, keyfi bir istek, dinamik liste parametreleri ve ayarlarını kullanmak zorunda kalacağız.

Daha fazla görünürlük için, ayrı harici işlemler yaratacağız ve üzerinde dinamik bir liste yerleştiririz. Gerginliği uygulamak için, isimlendirmeyle ilgili masalar yeterli olmayacak, bu yüzden keyfi bir talebi çözmemiz gerekiyor. İçinde, dizinin sol bağlantısını, adlandırma planının listesi ve artıkların kayıtlarını ve referans kitabını ana tablo olarak ayarlamıyoruz. Böyle bir şema, kullanıcıların dinamik bir liste ile çalışmasını, isimlendirmeyi ekleyerek veya değiştirerek izin verecektir.



Bir nomenklasür seçin.

İsteğimizde "Geçerli Veriler" parametresi kullanıldı, daha sonra işlemi kullanmadan önce değerini ayarlamamız gerekiyor. Bunu yapmak için, "Kalkış" prosedüründeki form modülünde, Standart Ekip, "Mevcut Tatseans" işlevini atayın. Ayrıca kontrol şeklindeki dinamik bir listeyi geri çekmemiz ve netlik için alanların sırasını değiştirmemiz gerekir. Form öğelerinde (sol üst kısım) ve mavi oklardaki sahneyi "OJICT" ve Mavi Oklar'ı sürükleyip formdaki alanların sırasını değiştiririz.

& Nasserver Prosedür Sunucu Anabilim Dalı (Arıza, Standart İşleme). Kafetçiler


Zaten bu aşamada, dış işlememizi 1C'de açıp dinamik listenin çalıştığını görebiliriz. Kazançları izleyebilir, bir isimlendirme ve grup oluşturabiliriz, arama yapın. Genellikle müşterilerin, kalıntıları göreceklerini seçme yeteneğini eklemeleri istenir. Dinamik bir listeye sahip bir form durumunda, bu ek bir alanla sağlanır ve parametreleri ayarlanır.

"Tarih" tipinin "veri kümelerinin" detaylarını ekleriz ve form öğelerine taşıyız. Etkinlik olay olaylarında, dinamik bir istek üzerine kullanılan "Geçerli Değer" parametresini kurmak için bir "geçerli değer" parametresini kurmak için bir kod oluşturun. Sırayla, formu açarken, kullanıcı hemen anlaşılıyor, kalıntıları hangi tarihte gördüğünde, "kalkış" prosedüründe küçük değişiklikler yapacağız.



& Nasserver Prosedür Yaz Dairesi (Arıza, Standart İşleme) Data Dönüştürmek (Geçerli Tatseansa (); Sakini nesneler. Parametreler. YüklemeParameter ("Geçerli veri", Veri direnç eder); Pavenomen Streç'in veri kaynağı katkısı (öğe) son kontrolleri ve şikayet prosedürü. Parametreler Ekstrüdreler

Sonuç olarak, Form Dinamik listemiz kalıntıları herhangi bir tarihe yansıtabilir.

Bu aracın sadece küçük bir bölümünü gözden geçirdik, ancak bu, bu türün rahatlığını dinamik bir liste olarak anlamak için zaten yeterli. Böyle bir mekanizma çeşitli görevler için kullanılır, ancak genellikle yönetilen formlarda tipik konfigürasyonlarda karşılanır:

  1. Seçim;
  2. Listeler.

Dinamik bir liste ve tipik yönetilen formlarda isteği almak için, geliştirici istenen formu açmak için yapılandırıcıda gereklidir. Ayrıntılar bölümünde, "Dinamik Liste" veri türüyle sahne içerir (çoğu zaman kalın harflerle vurgulanır). Özellikleri, sorgu, seçim ve diğer ayarların metnidir.

Son olarak, herhangi bir "yedi" rüyası gerçekleştirildi. Programın kullanıcıları 7.7, isimlendirmenin normal bir seçimini yapmak istedi. Böylece kalıntılar görülebilir ve fiyatlar ve filtreler kurar. Harici bileşenler yazmak için hemen farklı hileler icat etmek zorunda kaldım. 1C 8.2'de dinamik listeler ortaya çıktı. Ne olduğunu ve bize 1C 8.3'te verebileceklerini düşünmeyi öneriyorum.

Temel olarak, 1C'nin belirli bir test konfigürasyonunu alırız: "Bir Kurumsal Muhasebe 3.0". Şimdi seçimi şimdi yapmayacağız, basitçe "isimlendirme" el kitabında başka bir seçim biçimi ekle ve geçici olarak ana hale getireceğiz:

Varsayılan bir sistem oluştururken, "dinamik liste" türüne sahip bir tablo alanı ekler.

Hadi onun özelliklerine gidelim ve orada ne olduğunu görelim.

Her şeyden önce, "keyfi istek" onay kutusuyla ilgileniyoruz. Bize tüm dinamik bir listenin avantajlarını açacak. Kendi isteğinizi ve parametrelerle yazma fırsatına sahibiz. Onay kutusunu kurun ve "Aç" bağlantısını tıklayın:

Hazır kodlu bir pencere açılacaktır. Şimdiye kadar, "adlandırma" dizininin tüm alanlarını basitçe listeledi.

Ücretsiz 1C için 267 video eğitimi alın:

Gördüğünüz gibi, "" bir çağrı düğmesi var ve listenin içeriğini dinamik olarak değiştirmeyi mümkün kılan onay kutusu var. Yani, başka bir kullanıcı dizinde bir şey değiştirdiğinde, bu da listemizde de değişecektir. Ek olarak, bir "Ayarlar" sekmesi vardır, ancak daha sonra dokunacağız.

Dinamik listede kendi istek

İlk önce, kalıntılara ve fiyatlarla ihtiyacınız olan bir istek yaratın. Bunun gibi:

Ayarlar sekmesi

Ve şimdi en lezzetli! "Ayarlar" sekmesine gidin. Ve derhal ilk sekmede, sorgudaki herhangi bir alanda herhangi bir seçim yapabileceğimizde bunu görün:

Dinamik Listede İstek Parametrelerinin Yazılım Ayarı 1C 8.3

Sorguda iki parametreye sahip olduğumuzu unutmayacağız: "Dönem" ve "Fiyat Tipi". Onları bir talebe geçmeliyiz, aksi takdirde bir hata olacak.

Bu parametreleri form parametrelerinde besliyoruz ve aşağıdaki satırları form modülüne ekleriz:

& Nerterer Prosedür Bölümleri (Arıza, Standart İşleme) Listesi. Parametreler. Ayarlama parametreleri ("Dönem", Parametreler. Tarih); Liste. Parametreler. Ayarlama parametreleri ("Typosterter", parametreler. Titzen); Ekstrüdreler