Uygulama paketi 1s 8.2 uygulandı. Sorduğum için üzgünüm. Hayat hikayesi

Bunun için sormak Bilgiyi gerekli biçimde sunmak için bir veritabanından bilgi çıkarmak ve işlemek için tasarlanmıştır. Ekim sırasında, tarlaların gruplandırılması, sıraların ayrılması, çuvalların açılması vb. 1C'de ek isteklere ilişkin verileri değiştirmek mümkün değildir!

Talep, talimatlarda verilen talimatlara göre tamamlanır. Onu metinle dolduracağım. Metin kuralların sözdizimine göre oluşturulmuştur Filmler. Uygulama dili 1C:Enterprise 8 standardına dayanmaktadır SQL, ancak aynı zamanda eylemler ve genişletmeler de var.

Elektrikli çalışma şeması

Güç kaynağı işleminin temel devresi birkaç ardışık aşamadan oluşur:

  1. Nesnenin yaratılışı yazılır ve metnin kurulumu yazılır;
  2. güç kaynağı parametrelerinin ayarlanması;
  3. Vikonannya bu sonucu içecek;
  4. Sonuçların incelenmesini, elde edilen verilerin işlenmesi takip eder.

1. Nesne Zapit güç var Metin, söz konusu metni kimin girmesi gerekiyor?

// Seçenek 1
Zapit = Yeni Zapit;
Zapit . Metin =
"TİTREŞİM
| Döviz kurları.
| Döviz kurları.
| Para Birimi Döviz Kuru


|DE
;

// Seçenek 2
Zapit = Yeni Zapit(“VIBRATI
| Döviz kurları.
| Döviz kurları.
| Para Birimi Döviz Kuru

| Vidomosti.KursiValut YAK KursiValut Kaydı
|DE
| CursiCurrency.Currency = &Para Birimi");

2. Ayarlanan parametre değerleri yöntemden etkilenir Parametreyi Ayarla(< Имя>, < Значение>) . Metindeki parametreler “ sembolü ile gösterilir. & Seçim bölümünde (DDE bölümü) ve sanal tablo parametrelerinde seçim seçeneğini seçin.

Zapit);

3. Metni girdikten ve parametreleri ayarladıktan sonra, giriş sonucunu seçip iptal etmek gerekir. Viconnanny, nesneyi döndüren Viconati() yöntemi kullanılarak oluşturulur SonuçZapitu. Sonucu sorabilirsiniz:

  • Titreşim yöntemini kullanarak seçimi kaldırın (< ТипОбхода>, < Группировки>, < ГруппировкиДляЗначенийГруппировок>) ;
  • Ek Vivantazhiti yöntemi için tablodaki Vivantazhiti anlamları, anlamları veya ağaç anlamları (< ТипОбхода>) .

// Seçimi kaldır

Vibirka = Sonuç Zapiti. Titreşim();

//Tablo değerleri alınıyor
Sonuç Zapit = Zapi. Viconati();
Masa = Sonuç Zapiti. Vivantazhity();

4. Ek bir döngü kullanarak sonuç seçimini atlayabilirsiniz:

Buwai Vibirka .Saldırı () Döngüsü
Povidomiti (Vibirka.Kurs);
KіnetsCycle;

Robotun son örneği şöyle görünebilir:

// Aşama 1. Oluşturuldu ve metne eklendi
Zapit = Yeni Zapit;
Zapit . Metin =
"TİTREŞİM
| Döviz kurları.
| Döviz kurları.
| Para Birimi Döviz Kuru

| Vidomosti.KursiValut YAK KursiValut Kaydı
|DE
| CursiCurrency.Currency = &Para Birimi";

// Aşama 2. Parametrelerin ayarlanması
Zapit . SetParameter("Para Birimi" , VibranCurrency);

// Aşama 3. Vikonannya seçimi yıkayacak ve kaldıracak
Sonuç Zapit = Zapi. Viconati();
Vibirka = Sonuç Zapiti. Titreşim();

// Seçimi atla
Buwai Vibirka .Saldırı () Döngüsü
Povidomiti (Vibirka.Kurs);
KіnetsCycle;

Depo metni soruldu

Sorgunun metni birkaç bölümden oluşur:

  1. Sorunun açıklaması- Seçilen alanların ve verilerin akışı;
  2. İçeceklerin entegrasyonu- Virazis “BİRLEŞTİRİN” ve “HER ŞEYİ BİRLEŞTİRİN”;
  3. Sonuçları sıralama- Viraz “Sipariş...”;
  4. Otomatik düzenleme banyosu- Viraz “OTOMATİK SİPARİŞ”;
  5. Torbaların açıklaması- Viraz “PIDTORALAR... TARAFINDAN...”.

Obov'yazkova sadece ilk bölümdür.

Zamanlama tabloları ve toplu sorgular

Dil 1C vikoristan'ı destekliyor masa saati- tasarruflar sonucunda elde edilen tasarrufları zaman bazında gösteren bir tablo.

Veritabanı tablolarını değil, başka bir sorgunun sonucunu sorgulamanız gerektiğinde sıklıkla bir durumla karşılaşabilirsiniz. Bu bilgi ek girdiler kullanılarak belirlenebilir veya masa saati. Bir zaman çizelgesi oluşturmak, katlama emrinin metnini basitleştirmenize, depoya bölmenize ve ayrıca bazı durumlarda girişi hızlandırmanıza ve blok sayısını değiştirmenize olanak tanır. Zaman-saat tablolarıyla çalışmak için nesneyi kullanın Yönetici Ekibi Çalışma Saatleri Tablosu. Bir zaman çizelgesinin oluşturulması, POST anahtar kelimesi ve ardından zaman çizelgesinin adlandırılması kullanılarak gerçekleştirilir.

VT Yöneticisi = Yeni Zamanlama Yöneticisi Tablosu;
Zapit = Yeni Zapit;
Zapit . Yönetici Takım Saatleri Tablosu = Yönetici VT;

Zapit . Metin =
"TİTREŞİM
| Para birimleri
| Para birimleri
|POMISTTI TVpara birimi

| Dovidnik. Para Birimi YAK Para Birimi »;

Sonuç Zapit = Zapi. Viconati();

Diğer sorgularda VT-Para biriminin zaman-saat tablosunu değiştirmek için, bu sorguları zaman-saat tablosunun orijinal yöneticisine - Yönetici VT'ye atamak gerekir.

Patlama gücü— bu, “;” sembolüyle ayrılmış çok sayıda sorgunun bulunduğu bir sorgudur. Bir toplu sorgu sonlandırıldığında, bir sonraki istekten önceki tüm istekler sırayla sonlandırılır ve tüm zaman tablolarının sonuçları sonraki tüm istekler için kullanılabilir olur. Zaman yöneticisi tablosunu toplu isteklere açıkça atamak gerekli değildir. Zaman çizelgesi zaman yöneticisine atanmamışsa pencereye girdikten hemen sonra tüm zaman çizelgeleri silinecektir.

Toplu sorgular için, tüm sorguları birleştiren ve sonuç dizisini döndüren Viconati Batch() yöntemi kullanılabilir. Toplu kayıttaki zaman tabloları, kayıt sayısının kaydedildiği, tek satır ve tek sütunlu “Sayı” tablosu olarak sunulacaktır. Toplu istekleri iyileştirmek için vicor yöntemini kullanabilirsiniz. ViconatiPackageWithAdjacentData() : Bu, kayıt sayısı yerine gerçek zamanlı tabloyu döndürür.

// Toplu güce sahip robot poposu
Zapit = Yeni Zapit;
Zapit . Metin =
"TİTREŞİM
| Para birimleri

| Dovidnik. Para birimi YAK Para birimi
|;
| TİTREŞİM
| İsimlendirme. İsim

| Dovidnik.İsimlendirme YAK İsimlendirmesi";

Sonuç Paketi = İstek. Viconati Paketi();

TZPara birimi = Paket [0]'ın sonucu. VivantAgility();
TZNomenclature = Paket [1]'in Sonucu. VivantAgility();

// Toplu giriş için Butt vikoristanya zaman tablosu
Zapit = Yeni Zapit;
Zapit . Metin =
"TİTREŞİM
| Ürünler.Posilannya YAK Ürünü
|POST VT ürünleri

| Dovidnik İsimlendirme YAK
|DE
| Tovari.Vyrobnik = &Vyrobnik
|;
| TİTREŞİM
| VT Ürünleri.Ürün,
| PTU.Kilkist,
| PTU.Fiyat,
| Meslek okulu.Posilannya YAK BelgesiNadhodzhennia

| VTovari YAK VTovari
| SOL BAĞLANTI Dokümanı.Ürün TeminiHizmet.Ürünler YAK Meslek Yüksekokulu
| ON VTovari.Ürün = PTU.Adlandırma"
;

Zapit . Parametreyi Ayarla( "Virobnik", Virobnik);

Sonuç Zapit = Zapi. Viconati();
Vibirka = Sonuç Zapiti. Titreşim();

Buwai Vibirka .Saldırı () Döngüsü

KіnetsCycle;

Sanal tablolar

Sanal tablolar- Bu tablolar veritabanında saklanmaz, platform tarafından oluşturulur. Sonuç olarak girişiniz, seçilen platformu temsil eden en fazla bir veya daha fazla fiziksel tablo içerecektir. Sanal tablolar, kayıtlardan bilgi alır ve daha da önemlisi, en gelişmiş görevler için dikkate alınır.

Aşağıdaki sanal tabloları oluşturabilirsiniz (olası parametreler kollarda belirtilmiştir):

  • Veri kayıtları için:
    • Zriz Pershikh (<Период>, <Условие>) - Atanan tarih için en erken kayıtlar;
    • Kalıntılardan (<Период>, <Условие>) - Belirlenen tarih için en uzun giriş;
  • Biriktirme kayıtları için:
    • Kalanlar(<Период>, <Условие>) - belirlenen tarih için fazlalık;
    • Devir(<НачалоПериода>, <КонецПериода>, <Периодичность>, <Условие>) - Dönemin cirosu;
    • Fazla/Ciro(<НачалоПериода>, <КонецПериода>, <Периодичность>, <МетодДополненияПериодов>, <Условие>) - döneme ilişkin fazlalık ve ciro;
  • Muhasebe kayıtları için:
    • Kalanlar(<Период>, <УсловиеСчета>, <Субконто>, <Условие>) - piyasa, vimiryuvan ve subconto bağlamında belirlenen tarih için fazlalık;
    • Devir(<НачалоПериода>, <КонецПериода>, <Периодичность>, <УсловиеСчета>, <Субконто>, <Условие>, <УсловиеКорСчета>, <КорСубконто>) - rakhunku, vimiryuvan, cor dönemi için ciro. Rahunki, Subkonto, Cor. alt konto;
    • Zalishkiv/Ciro(<НачалоПериода>, <КонецПериода>, <Периодичность>, <МетодДополненияПериодов>, <УсловиеСчета>, <Субконто>, <Условие>) - rakhunku, vimiryuvan ve subconto'daki fazlalık ve ciro;
    • CiroDtKt(<НачалоПериода>, <КонецПериода>, <Периодичность>, <УсловиеСчетаДт>, <СубконтоДт>, <УсловиеСчетаКт>, <СубконтоКт>, <Условие>) - rakhunka Dt, rakhunka Kt, Subconto Dt, Subconto Kt'nin bölünme dönemindeki ciro;
    • RuhiSubconto(<НачалоПериода>, <КонецПериода>, <Условие>, <Порядок>, <Первые>) - Rûhlar, alt konjonktürün anlamlarıyla birlikte;
  • Rozrakhunku kayıtları için:
    • Temel (<ИзмеренияОсновногоРегистра>, <ИзмеренияБазовогоРегистра>, <Разрезы>, <Условие>) - kayıt defteri için temel veriler;
    • DataGraphics(<Условие>) - Veri grafikleri;
    • GerçekPeriodDiya(<Условие>) - Gerçek eylem süresi.

Sanal tablolarla çalışırken, sanal tabloların parametrelerine seçimler eklemeniz gerekir, ancak kafanıza değil. Neden bir saat uzanmalıyım?

İnşaatçıya sorulacak

Platform, sorgu metinlerini hızlı bir şekilde girmek için özel araçlar kullanır: İnşaatçıya sorulacakі Yapıcı daha sonra sonucu ayrıştırır. Tasarımcılara tıklamak için sağ tıklayıp istediğiniz öğeyi seçmeniz gerekir:

Ana menüden tasarımcıya da tıklayabilirsiniz. Metin.

Sorgu yapıcının yardımıyla programcı etkileşimli olarak sorgu metnini oluşturabilir. Bu amaçla gerekli tablolar ve alanlar seçilir, bağlantılar, gruplamalar, alt toplamlar vb. yüklenir. Bu yaklaşım zamandan tasarruf etmenize ve olası ertelemelerden kaçınmanıza olanak tanır. Sonuç olarak robot kurucusu isteğin metnini oluşturur.

Yapıcıdan sonucu işlemesi istenir, metni oluşturmanın yanı sıra verileri düzenlemek ve işlemek için hazır bir kod parçası oluşturur.

Nesne Şeması

Platform, ek bir nesne için metni programlı olarak oluşturmanıza ve düzenlemenize olanak tanır Zapitu şeması. Nesnenin tek bir gücü var Talep PaketiŞu anda düzenlenmekte olan tüm sorguların gücünün korunduğu. Nesne İstek Şeması aşağıdaki yöntemleri destekler:

  • SetTextRequest(< Текст>) - Metne gönderilen sorgu temelinde Sorgu Paketinin gücünü geri yükler;
  • OtrimatiMetinZapitu() – Paket İstekleri metninin güç tabanındaki oluşumları döndürür;
  • KnowParameters () — Girişin parametrelerini döndürür.

Nesnenin bulunduğu robotun poposuna bir göz atalım Güç Kaynağının Şeması. Yazılım oluşturma için metin girilir

SIRAYLA
Para birimleri

Oluşturulan kod şöyle görünebilir:

Zapitu Planı = Yeni Zapitu Planı;
Paket 1 = Zapitou şeması. Paket İstekleri [0];
Operatör1 = Paket1. Operatörler[0];
// dzherela eklendi
RegisterTable = Operatör1. Dzherela. Eklemek( "Dovdnik.Para birimleri", "Para birimi");
// alanlar eklendi
FieldPosilannya = Operatör1. Tarlalar toplanıyor. Addati("Para Birimi.Posilannya", 0);
Alan Kodu = Operatör1. Tarlalar toplanıyor. Addati("Para.Kodu", 1);
// Alan takma adlarını belirtin
Paket 1 . Sütunlar[0]. Takma ad = "Para Birimi";
Paket 1 . Sütunlar [1]. Takma Ad = "Kod";
// fikrinizi ekleyin
Operatör1 . Vidbir. Eklemek( “Mark Vidalennya DEĞİL”);
//sırayla ekle
Paket 1 . Emir. Addati(AlanKodu);
Zapitu Metni = Zapitu Şeması. OtrimatiMetinZapitu();

1C 8.3 ve 8.2 için sorgu tasarımcısı en güçlü geliştirme aracıdır. Özel bir görsel ortam kullanarak metni oluşturmanıza olanak tanır. Bu nedenle, bir 1C sorgusu oluşturmak için sorguların yazılı dilini bilmenize gerek yoktur, tasarımcının garip ve sezgisel olarak anlaşılır arayüzünde gezinmek yeterlidir.

Sorgu oluşturucu, her biri sorgunun bir bölümünü temsil eden bir dizi sekmeden oluşur. O halde sekmeyi kaydedin Tablolar ve alanlar Tabloları, gerekli verilere ve bu tabloların belirli bir görev için gerekli olan alanlarına göre seçiyoruz. Duvar işçiliğini geri yükleyin Umovi Yalnızca ihtiyacımız olan verileri seçmek için aklımızı seçilen tabloya koyarız ve bu böyle devam eder.

1C 8'in resmi web sitesinde sorgu yapıcısının açıklaması: v8.1c.ru

Tablo ve alanlar; ; ; ; ; ; Mevduat (geliştirilme aşamasında).

1s 8 sorgu tasarımcısına program kodundan erişmek için şunları yapmanız gerekir:

  • Yeni bir tane oluştur
Zapit = Yeni Zapit;
  • Boş satırı metne ayarla
Rica etmek Metin = "";
  • Ayının imlecini patilerin arasına yerleştirin ve farenin sağ tuşuna basın. Açılan içerik menüsünden öğeyi seçin İnşaatçıya sorulacak ve haberler Bu yüzden Yiyecek için yeni bir tane yaratılacak. Metin zaten yazılmışsa ortadaki herhangi bir yere tıklayıp yapıcıya tıklamanız gerekir. ;

Sorgu yapıcının ana sekmesinin artan katlanabilirliği nedeniyle küçük uçlara bir göz atalım. Bu yaklaşım, acemi programcının yapıcıyı ve tüm yeteneklerini daha etkili bir şekilde kullanmasını sağlar. Uygulamalar için konfigürasyonu seçeceğiz Muhasebe 3.0.

Ders 1. Sorgu oluşturucu Wikoristan'ın en basit kısmıdır.

Sıralama: Yazardan önce bir soru yazın, yazarın tüm isimlendirmesini seçin.

Yeni sekmeler: Tablolar ve alanlar.

Yeni mekanizmalar: “Yaz” butonunu kullanarak metnin gözden geçirilmesi ve düzenlenmesi.

Yaratılışın başlangıcı için yeni bir tane yaratacağız ve yapıcıya soracağız (birçok paragrafta yazıldığı gibi). Bundan sonra sekmede tasarımcı penceresi açılacaktır. Tablolar ve alanlar.

1 numaralı dersin teorik kısmı

Sekme Tablolar ve alanlarüç bölümden oluşur:

Veri tabanı. Bu bölüm, sorguyu başlatmak için erişilebilen tüm veritabanı tablolarını içerir;

Tablolar. Bu istek için gerekli olan tablolar hangi bölümden seçilir. Bunları bir bölümden taşımak için veri tabanı gerekli:

  • İkisinden biri masaya tıklayın;
  • Veya hızlı bir şekilde ">" veya ">>" düğmelerini kullanın.

Bölünmenin üstünde Tablolarє düğme sırası. Bunların çoğu gelecek derslerde daha ayrıntılı olarak tartışılacaktır. Bu arada kısa bir açıklama yapayım.

  • Mevduat oluştur(Chervona hattı). Yeni bir takılı güç kaynağının oluşturulması amaçlanmaktadır;
  • Zaman tablosunun bir açıklamasını oluşturun(zhovta hattı). Bu komutla genişletilen zaman tablosunun adını belirtmenize olanak tanır ve ayrıca tablo sorgusuna bir değer aktarmak için seçilebilir;
  • Akış öğesini değiştir(Yeşil çizgi). Görünür gömülü girişe, zaman çizelgesine veya zaman çizelgesinin açıklamasına gitmenizi sağlar;
  • Canlılık akış elemanı(Siyah çizgi). Seçilen tablonun bulunduğu tabloyu görüntüler;
  • Tabloyu değiştir(Mavi çizgi). Görüntülenen tabloyu değiştirmek için iletişim kutusunu açar. Eğer kaydın sanal tablosunu yanlış seçtiyseniz, listedeki mevcut tablo seçimine konumlanacaksınız.
  • Sanal tablo parametreleri(Menekşe çizgisi). Kayıttaki sanal tablonun parametrelerini görüntüler.

Alanlar. Bir önceki bölümdeki tablo alanlarının hangi bölümde seçildiği. Bu alanlar tablonun sütunları veya seçilen sorgu sonucunda kaldırılan seçim olacaktır. İhtiyacınız olan bilgileri seçilen tablodan saklamak için ayrıntıların üzerinden geçeceğiz. Bunları bölümden taşımak için Gerekli tablolar:

  • Veya ikisi alan boyunca tıklayacaktır;
  • ">" veya ">>" tuşlarını kullanın;
  • Ayrıca bağımsız olarak vikorista ve ayrıca seçilen tablonun alanlarından ve sorgularınızın işlevinden yeni bir alan ekleyebilirsiniz.

Bölünmenin üstünde Alanlarє düğme sırası. Ek çeşitler yardımıyla tarlaların oluşturulması ileriki derslerde daha detaylı olarak ele alınacaktır. Bu arada kısa bir açıklama yapayım.

  • Eklemek(Yeşil çizgi). Ek ifadelerin ek düzenleyicisi için yeni bir alan eklemek üzere tasarlanmıştır;
  • Akış öğesini değiştir(Chervona hattı). Düzenleyicinin yardımıyla görünür alanı değiştirmenizi sağlar;
  • Vidalite hassas(Mavi çizgi). Listedeki görünür alanı siler.

1 numaralı dersin pratik kısmı

Bu derste aktarılan fetih görevi için gerekli teoriyi öğrendik. Kulağa nasıl gelmesi gerektiğini tahmin edeceğim: yazardan önce terminolojiyi yazın, yazarın tüm terminolojisini seçin.

İsimlendirmeye başlayalım:

  • Yeni bir komut oluşturun ve dersin başında atanan yöntemi kullanarak bir kurucu açın;
  • Ayrı olarak Veri tabanışişeyi aç Dovidniki ve orada bir tanığın olduğunu bileceğiz İsimlendirme;
  • Görünen ve arkasındaki ek tuş “>” bölümüne aktarılır Tablolar;
  • Ayrı olarak Tablolar“+” simgesinin yardımıyla isimlendirmeyi açıyoruz;
  • Açılan alanlar listesinde alanı biliyoruz Posilannya ve onu bölüme taşıyın Alanlar yardım için “>” düğmesini kullanın
  • Hazır eşyaların listesini isteyin, tasarımcı penceresinin alt kısmındaki “Tamam” butonuna basın.

İçeceğim o kadar karmaşık hale geldi ki zihnimin sınırları arasında hareket etti, kendimi toplu içkilerde galip buldum.

Ama onlar hakkında hiçbir şey bilmediğim gerçeğine takılıp kaldım. Her şeyin çok basit olduğu ortaya çıktı. 5 dakika sonra toplu içecekleri kullanmaya başlayacaksınız. Okumaya başlamak.

Anlaşıldığı üzere her şey çok basitti. Noktalarla ayrılmış bir grup kelime yazmanız yeterlidir. Sonuç geri kalanına dönecek.

Paket istekleri artık 8.1.11.67.4 sürümünde görünmüyor.

Eksen metni yazılacaktır:

VIBRATI T1.ZN YER VTHarf Z (VIBRATI "A" YAK ZN TÜM TİTREŞİMLERİ "B") BİRLEŞTİRİN YAK T1;

TİTREŞİM T1.ZN YER VTSIFR Z (VIBRATI "1" YAK ZN TÜMÜNÜ BİRLEŞTİRİN TİTREŞİM "2") YAK T1;

VIBRATI TB.Zn, TC.Zn, TB.Zn+TC.Zn Z VTB Harfler YAK TB, VTCifri YAK TC

Toplu sorgular herhangi bir başlangıç ​​sorgu konsolunda desteklenir.

Bu küçük fikri Vikonanny'den isteyeceğim:

Ve şimdi biraz gerçek. Toplu isteklere neden ihtiyacınız var?

Sağ tarafta, daha sonra gelecekteki sorgularda ihtiyaç duyulabilecek herhangi bir ara sonucu zaman tablosuna girebilirsiniz.

Daha önce zaman çizelgesi yoksa metni kopyalamak zorunda kalıyordum.

Toplu sorgular olmadan, birden çok sorguyu sırayla tamamlayarak ve iç içe geçmiş tabloları değiştirerek kolayca yapabilirsiniz. Toplu içeceklerle daha iyidir. Sadece bir sorgu yazarsınız ve zaman çizelgesini yerleştirmeyi düşünmezsiniz. Her şey kendi kendine yoluna giriyor.

Ayrıca veri kompozisyon sistemi (DCS) kullanıldığından gerekli alanları akıllı bir şekilde seçer ve tüm sorgu paketini en aza indirir.

Yöntem nasıl kullanılır? Query.Viconati() o zaman şimdi yöntem ortaya çıktı Query.Viconati Paketi(), bir paketteki tüm tabloları bir dizi olarak döndürür.

1c web sitesindeki paket taleplerinin duyurusunu burada bulabilirsiniz: http://v8.1c.ru/overview/release_8_1_11/#Functional

Hayat hikayesi

Beni partiler halinde içmeye iten şeyin ne olduğunu açıklayayım.

Bu, tablo kısmı olan bir belge bulabileceğiniz anlamına gelir. Sütunda " Pomilka» Belgenin doldurulması sırasında af olduğunu gösteren işaret. Sütunda " MetinAnılar“Af metinlerinin içinde bir veya daha fazla kelime olabilir. Tekliflerin geçmişte sahip olduğu aflara bakın.

O halde tüm başarılı ikramların listesini tabloya ekleyelim CodyPomilok- Arka arkaya merhamet ve aramanın kodu vardır.

Her cilt sırası için bir veya iki yamanın daha çıkarılması gerekir. Çünkü Bir sıra halinde bir sürü tatlı yiyebilirsiniz.

Eğer merhamet mümkünse ve tanınırsa o zaman. sancak " Pomilka» Standımızı ve amortisman kodunu bize vermeden borcun metnini ödeyebiliriz.

Robomo sol bağlantıda derleme kodunun NULL olduğu yerde derleme kodunu veriyoruz. Diğer iyilikler» .

Ancak sorun şu ki, 200'e yakın değişiklik kodu vardı, dolayısıyla bağlantı uzun sürdü. Uçuyor olduğu için onu dahili olanla değiştirme şansım oldu. Ancak saflar yok edildi ve onlara merhamet edilmedi. Sonuçtan satırların nasıl çizileceğini hala çözemedim.

O halde kompozisyon sistemini yazın. Prensip olarak herhangi bir değer tablosu veya saatlik tablo oluşturmak mümkün değildir. Burada toplu içki içmeye başladılar.

Sütlerin bulunduğu tüm süt sıralarını bir kez daha inceledim ve sonuçta "Diğer sütler" süt türünü ekledim.

Sorduğum için üzgünüm

Bir sonraki sayfada sorguların sözdiziminin nasıl değiştiğine (veya daha doğrusu güncellendiğine) bir göz atın: Satılan ürünlerin listesini içeren Ürünler'in tablo bölümünde yer alan belge işleniyor; kaç tane. Bu belge için Ürün Fazlası fazla birikim kaydında kayıtlı negatif fazlaların kontrol edilmesi gerekmektedir.

Küçük olan konfigürasyonun yapısını gösterir.

Yani sanal tabloya yazın, kaydın fazlası birikir ve belgenin tablo kısmı. Bir belgedeki satırların olası tekrarını mümkün kılmak için bir kayıt gruplaması oluştururuz.

Tabii ki rehberlik yeterli ve optimal değil. Bunu optimize ediyoruz, vikoryst girişi: belge fazlası tablosuyla birleştirmeden önce tablo kısmını gruplandırıyoruz, ürün birimlerinin bir listesini fazlalığın zihinsel bir hesaplaması olarak sanal tablonun parametrelerine aktarıyoruz. Sonuç olarak sorgu şu şekilde görünecektir:


Bir sorguda farklı kayıtlardaki fazlalıklardan veri çıkarılması gerekiyorsa, filtrenin ve diğer girişlerin değeri sanal tabloların dış görünüm parametrelerinde tekrarlanacak, bu durumda eklenen her girişin sistemi yeniden canlandırılacaktır. Verileri biçimsel temele kadar kaldırın.

Zamanlama tabloları

Günümüzde “Time Table Manager” nesnesinin kullanıldığı bir zaman çizelgesi oluşturmak mümkün hale gelmiştir. Temel olarak zaman çizelgesi yöneticisi, zaman tablosu adlarının alanını tanımlayacak ve bunların veritabanında oluşturulmasını ve görüntülenmesini sağlayacaktır.

Zamanlama tabloları fiziksel olarak merkezde depolanır, dolayısıyla bunları dikkatli bir şekilde kullanmalısınız çünkü Disk alt sistemi düşük verimli bir teknoloji parçasıdır ve oluşturulan ve dağıtılan tablonun esnekliği doğrudan bunun üzerindedir.

Zaman çizelgesini yıkamak değiştirilebilir. Zamanlama tabloları, belgenin tablolu bölümünü gruplandırılmış bir görünüme ve sanal tabloları filtrelemek için bir ürün listesine yerleştirir:

Bir sorguda zaman-saat tablosunun oluşturulması aşağıdaki talimatın kullanılmasını gerektirir: Sorgu sonucunun tablonun yerine değil, birkaç farklı şekilde iletildiği yeni bir zaman-saat tablosu oluşturacak şekilde yerleştirin. zaman-saat tablosuna yerleştirilen kayıtlar.

Ek olarak, zaman tablosunun silindiği Koruma talimatını da kullanabilirsiniz, aksi takdirde zaman tabloları, tablolarla birlikte zaman tablosu yöneticisi nesnesinden silinecektir.

Temel olarak saatlik tablonun adı verilere ek olarak kullanılır (eş anlamlıların kullanılmasından kaynaklanmaktadır). Zaman tablolarını birden fazla kullanmak mümkündür ancak doğru ayarlanmışsa metni kısaltıp hızı artırmanıza olanak tanır (farklı yerlerde farklı zaman çizelgesiyle).

Toplu istek

Toplu sorgular, zaman çizelgesinin işlevselliğini önemli ölçüde genişletir ve sorgularla çalışırken yeni yetenekler sağlar.

Aslında bir toplu sorgu, hem zaman tablosu kullanılarak birbiriyle bağlantılı hem de bağımsız sorguları tanımlayabilir. Sonuç olarak, tüm sonuçları tutarlı bir şekilde ortadan kaldırmak ve cilt tedavisinden elde edilen sonuç yığınını ortadan kaldırmak mümkündür, aksi takdirde sonuç diğerlerinden daha az olacaktır. Sonuç dizisini çıkarmak için nesnenin Viconati Packet() yöntemini kullanın ve sonucu kalan sorgudan kaldırmak için Viconati request() yöntemini kullanın.

Sorgu metnindeki sorgu paketleri ";" sembolüyle ayrılır. Toplu veriyi çevreleyen sanal tabloların adları için bir boşluk vardır. Zaman tablosunu başka bir toplu sorguya aktarmanız gerekmediği sürece, bir zaman saati yöneticisinin bir tabloya sahip olmasına gerek yoktur.

Toplu isteklere ilişkin prosedürü değiştirelim:

Aslında sorgunun belirlenen nesnesi görünüyordu ve zaman yöneticisi tablosu seçilmemişti, sorguların metinleri birleştirildi. Sonuç olarak metin, okumayı kolaylaştıracak şekilde biçimlendirilecektir.

Yazdıktan sonra, Sonuçlar Dizisini 3 öğe içerecek şekilde değiştirin. İlk ikisi DocTCH ve Ürün Listesi kayıtlarının zaman tablosundaki yer sayısıdır, üçüncüsü ise Doc_Quantity, Nomenclature ve Reg_Quantity alanlarından bir seçime sahip olacaktır.

Yalnızca seçimi değiştirmek için Sonuç İsteğini Değiştir.

Bu nedenle toplu harfler, bileşik harflerin hem yazılması hem de okunması için çok kullanışlı bir araçtır.

Sanırım hepiniz bugün 1C:Enterprise 8 sistemindeki sorgu konusunun alaka düzeyiyle övünebileceğinden memnun olacaksınız. Bu nedenle mevcut yazımızı sorguların birleştirilmesi, 1C sorgularının tarihinden kalan belgelerin ayrılması ve sorguların birleştirilmesi ile ilgili konulara ayırmaya karar verdik. Yine de anlayalım.

Şimdi 1C:Enterprise sisteminde toplu giriş oluşturmak için PLACE teklifini seçin. Toplu isteği, tek bir büyük istek olarak tanımlanan bir dizi istek takip eder. Bütün kokular birer birer bitiyor. Bu sorgulardan herhangi birinin aranması sonucunda zaman tablosuna yerleştirilebilir ve daha sonra herhangi bir diğer sorgu için aynı şekilde tabloya ulaşılabilir. Chantly çoğunuz şunu soracaksınız: Bu yöntemin avantajları nelerdir?

Bu güç kaynağına ilişkin bir onayımız var. Bu yöntemin en büyük avantajının, sonuçlarını saat tablosu denilen tablonun ortasına yerleştirebilmesi olduğunu özellikle takdir ediyorum. Kokular birkaç kez tespit edilebilir. Üstelik aynı girişleri tekrar tekrar kaydetmenize gerek kalmayacak, tek yapmanız gereken hazır bir tablodan veri seçmek. Şimdi size soralım: Bu yöntemin dezavantajları nelerdir? Delicesine, genel dünyada olduğu gibi, bu yöntemin de eylemleri, küçük şarkıları var.

Bu noktaya toplu sorgularda zaman tablosunu değiştirerek sistemin veritabanında tamamen gerçek tablolar oluşturabileceğini ekleyebiliriz. İnsanların şunu sorması mümkün: Bunda bu kadar kötü olan ne? Bir tarafta her şeyin iyiliği için. Aksi takdirde saatinizin önemli bir kısmını içecek hazırlamak için harcayacaksınız ve sonrasında vikorist olduğunuzda onları görmek için çok daha fazla saat harcamak zorunda kalacaksınız.

Popo aksı:
TİTREŞİM
isimlendirme,

Suma (Suma) YAK Suma,
POMISTIT DocPrikhid
Z


Sonuç olarak, bu girişi girdikten sonra yalnızca tabloda yer alan kayıt sayısıyla aynı sayıda kayıt görüntülenecektir. Sonuçlar daha sonra aynı tabloda görünecektir. Lekeli bir belge için buna bir göz atalım. Bunun için iki girişi ek olarak “;” sembolünü kullanarak ayırmamız gerekecek. Koristuvache'den gelen en iyi haber, bir toplu talebin sona ermesi ve bir başkasının başlamasıdır.

TİTREŞİM
isimlendirme,
Suma (Kilkist) YAK Kilkist,
Suma (Suma) YAK Suma,
POMISTIT DocPrikhid
Z
Belge.Ürünlerin KaynağıHizmet.Ürünler
İsimlendirmeye Göre Gruplandır
;

TİTREŞİM
isimlendirme,
Suma (Kilkist) YAK Kilkist,
Suma (Suma) YAK Suma,
POMISTTI DocVitrata
Z
Belge.Ürünlerin GerçekleştirilmesiHizmet.Ürünler
İsimlendirmeye Göre Gruplandır

;
TİTREŞİM
*
Z
DokPrikhid YAK DokPrikhid
Z'EDNANNYA'NIN DIŞINDA
DocVitrati YAK DocVitrati
PZ

Dikkat edebileceğiniz şey, üçüncü sorgunun bu iki sorgudan elde edilen verileri birleştirdiğidir.

Daha da güzel görünmesini sağlamaya çalışalım. Bu amaçla kaçımızın kâr ettiğini, hangilerinin benzer olduğunu anlamaya çalışalım. Bunu elde etmek için üçüncü komutun metnini biraz değiştirin.

TİTREŞİM
DocPriod.Nomenklatür,
DocVitrata.Adlandırma,




Z
DokPrikhid YAK DokPrikhid
Z'EDNANNYA'NIN DIŞINDA
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature

Sonuç olarak haraçları gelmeden önce çekip harcıyoruz. Ale, bununla ilgili hala bir sorunumuz var, "Nomenklatür" ve "Nomenklatür1" adlı iki sütunu nasıl birleştirebiliriz? Bu durumda “Nomenklatür” bölümünden değerler alırsak sonuç olarak kalan satırdaki değerler kaldırılmaz, “Nomenklatür1” bölümünden değerler alırsak sonuç olarak üçüncü satırdaki değerler kaldırılmaz. Bu amaçla izlemeyi hızlandırmak için “IS NULL” fonksiyonunu kullanın.
Sonuç şöyle görünecek:

TİTREŞİM
YAK İsimlendirmesi,
DocPrikhod.Kilkist YAK KolPrikhod,
DokPrihod.Suma YAK SumPrikhod,
DocVitrata.Quality YAK Quantityvitrate,
DocVitrata.Suma YAK SumVitrata
Z
DokPrikhid YAK DokPrikhid
Z'EDNANNYA'NIN DIŞINDA
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature

Bununla ilgili başka bir sorun nasıl ortaya çıkabilir, değeri sıfır rakamıyla nasıl değiştirebilirsiniz? Bu amaçla tekrar hızlı bir şekilde “ESTNULL” fonksiyonunu kullanmanız ve aşağıdakileri yazmanız gerekecektir:

TİTREŞİM
ЄNULL(Belge.Gelir.Nomenklatür,Belge.Çekilme.Nomenklatür)
YAK İsimlendirmesi,
NULL(Belge.Gelen.Miktar,0) YAK Gelen,
ЄNULL(BelgeGelen.Toplam,0) YAK ToplamGelen,
ЄNULL(DocVitrate.Quality,0) YAK KilkaVitrate,
Є NULL (Doc Vitrata. Sum, 0) YAK Sum Vitrata
Z
DokPrikhid YAK DokPrikhid
Z'EDNANNYA'NIN DIŞINDA
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature