Query Builder 1s 8.3 cara menjalankan. Bahasa kueri - cepat dan mudah! Konstruktor kueri. Permintaan yang kompeten - optimalisasi kerja yang efektif

17.08.2020 Kartu memori

Pemrograman 1C tidak hanya terdiri dari menulis program. 1C adalah ingot tindakan pengguna dan data yang digunakannya.

Data tersebut disimpan dalam database. Kueri 1C adalah cara untuk mendapatkan data dari database untuk menunjukkannya kepada pengguna dalam bentuk atau untuk memprosesnya.

Bagian mendasar dari laporan ini adalah permintaan 1C. Kapan laporan SKD adalah sebagian besar laporan.

Duduk. Mengambil napas. Santai saja. Sekarang saya akan memberi tahu Anda beritanya.

Untuk memprogram dalam 1C, tidak cukup mengetahui bahasa pemrograman 1C. Anda juga perlu mengetahui bahasa kueri 1C.

Bahasa kueri 1C adalah bahasa yang sepenuhnya terpisah yang memungkinkan Anda menentukan data apa yang perlu kami dapatkan dari database.

Ini juga dwibahasa - yaitu, Anda dapat menulis dalam bahasa Rusia atau Inggris. Ini sangat mirip dengan bahasa kueri SQL dan mereka yang tahu ini - Anda dapat bersantai.

Bagaimana Permintaan 1C digunakan

Saat pengguna memulai 1C dalam mode Perusahaan - di menjalankan klien tidak ada satu ons data pun. Oleh karena itu, ketika Anda perlu membuka direktori, 1C meminta data dari database, yaitu, membuat permintaan 1C.

Permintaan 1C adalah:

  • Permintaan otomatis 1C
    dihasilkan secara otomatis oleh sistem. Anda telah membuat formulir daftar dokumen. Menambahkan kolom. Artinya, saat Anda membuka formulir ini dalam mode Enterprise, akan ada kueri dan data untuk kolom ini akan diminta.
  • Permintaan semi-otomatis 1C
    Ada banyak metode (fungsi) dalam bahasa 1C, ketika diakses, kueri dibuat ke database. Misalnya.GetObject()
  • Permintaan manual 1C (ditulis oleh programmer khusus sebagai permintaan)
    Anda dapat menulis kueri 1C sendiri dalam kode dan menjalankannya.

Membuat dan menjalankan permintaan 1C

Permintaan 1C adalah teks permintaan yang sebenarnya dalam bahasa permintaan 1C.
Teks dapat ditulis dengan tangan. Artinya, ambil dan tulis (jika Anda tahu bahasa ini).

Karena 1C mempromosikan konsep pemrograman visual, di mana banyak atau hampir semuanya dapat dilakukan tanpa menulis kode dengan pena, ada objek Konstruktor Kueri khusus yang memungkinkan Anda menggambar teks kueri tanpa mengetahui bahasa kueri. Namun, keajaiban tidak terjadi - untuk ini Anda perlu tahu cara bekerja dengan konstruktor.

Setelah teks permintaan 1C siap, itu harus dieksekusi. Untuk ini, ada objek dalam kode 1C Request(). Berikut ini contohnya:

Permintaan = Permintaan Baru();
Query.Teks = "PILIH
| Nomenklatur.Link
| DARI
| Direktori Nomenklatur SEBAGAI Nomenklatur
| DIMANA
| Nomenklatur.Layanan";
Pilihan = Query.Execute().Select();

Laporan (Pilihan. Tautan);
Siklus Akhir;

Seperti yang Anda lihat pada contoh, setelah menjalankan permintaan 1C, hasilnya datang kepada kami dan kami harus memprosesnya. Hasilnya adalah satu atau lebih baris tabel (dalam bentuk khusus).

Hasilnya dapat diturunkan ke tabel biasa:
Pilihan = Request.Execute().Upload(); //Hasil - tabel nilai

Atau hanya pergi baris demi baris.
Pilihan = Query.Execute().Select();
While Selection.Next() Loop
//Lakukan sesuatu dengan hasil kueri
Siklus Akhir;

Bekerja dengan permintaan 1C

Prinsip dasar permintaan 1C

Prinsip dasar membangun permintaan 1C -
PILIH Daftar Bidang FROM TableName WHERE Kondisi

Contoh pembuatan kueri 1C seperti itu:

MEMILIH
//daftar bidang untuk dipilih
Tautan,
Nama,
Kode
DARI
//nama tabel tempat kita memilih data
//daftar tabel adalah daftar objek di jendela konfigurator
Direktori.Nomenklatur
DI MANA
// tentukan pilihan
ProductType = &Layanan //pemilihan berdasarkan nilai eksternal
Atau Service // Atribut "Service" dari tipe Boolean, seleksi berdasarkan nilai True
SORTIR DENGAN
//Penyortiran
Nama

Daftar tabel 1C

Anda dapat melihat nama tabel di jendela konfigurator. Anda hanya perlu menulis "Direktori" alih-alih "Direktori", misalnya, "Direktori. Nomenklatur" atau "Dokumen. Penjualan Barang dan Jasa" atau "Daftar Akumulasi. Penjualan".

Untuk register, ada tabel tambahan (virtual) yang memungkinkan Anda mendapatkan angka total.

Information Register.RegisterName.SliceLast(&Date) - permintaan 1C dari register informasi, jika periodik, pada tanggal tertentu

Akumulasi Register.RegisterName.Remains(&Date) - permintaan 1C dari register saldo untuk tanggal tertentu

Akumulasi Register.RegisterName.Turnovers(&StartDate, &EndDate) – kueri 1C dari register turnover untuk periode dari tanggal mulai hingga tanggal akhir.

Prinsip tambahan

Saat kami meminta daftar beberapa data, prinsip dasarnya berfungsi. Tetapi kami juga dapat meminta nomor dan permintaan tersebut dapat menghitungnya untuk kami (tambahkan misalnya).

MEMILIH
//Quantity(FieldName) – menghitung kuantitas
//Field AS OtherName - mengganti nama field
Kuantitas (Referensi) SEBAGAI Kuantitas Dokumen yang Dilakukan
DARI

DI MANA
Dipegang

Kueri 1C ini akan mengembalikan jumlah total dokumen kepada kami. Namun, setiap dokumen memiliki bidang Organisasi. Katakanlah kita ingin menghitung jumlah dokumen untuk setiap organisasi menggunakan kueri 1C.

MEMILIH
//hanya kolom dokumen
Organisasi,
// hitung angkanya
Kuantitas (Referensi) SEBAGAI Kuantitas Menurut Organisasi
DARI
Dokumen.Penjualan Barang/Jasa
DI MANA
Dipegang
KELOMPOK OLEH

Organisasi

Kueri 1C ini akan mengembalikan kepada kami jumlah dokumen untuk setiap organisasi (mereka juga mengatakan "berdasarkan organisasi").

Mari kita hitung tambahan jumlah dokumen ini menggunakan permintaan 1C:

MEMILIH
//hanya kolom dokumen
Organisasi,
// hitung angkanya

//hitung jumlahnya

DARI
Dokumen.Penjualan Barang/Jasa
DI MANA
Dipegang
KELOMPOK OLEH
//harus digunakan jika daftar bidang memiliki fungsi count() dan satu atau lebih bidang pada saat yang sama - maka Anda perlu mengelompokkan berdasarkan bidang ini
Organisasi

Permintaan 1C ini juga akan mengembalikan sejumlah dokumen kepada kami.

MEMILIH
//hanya kolom dokumen
Organisasi,
// hitung angkanya
Kuantitas (Referensi) SEBAGAI Kuantitas Berdasarkan Organisasi,
//hitung jumlahnya
Jumlah (Jumlah Dokumen) SEBAGAI Jumlah
DARI
Dokumen.Penjualan Barang/Jasa
DI MANA
Dipegang
KELOMPOK OLEH
//harus digunakan jika daftar bidang memiliki fungsi count() dan satu atau lebih bidang pada saat yang sama - maka Anda perlu mengelompokkan berdasarkan bidang ini
Organisasi
HASIL Umum

Bahasa kueri 1C sangat luas dan kompleks dan kami tidak akan mempertimbangkan semua fiturnya dalam satu pelajaran - baca pelajaran kami berikutnya.

Secara singkat tentang fitur tambahan bahasa kueri 1C:

  • Menggabungkan data dari beberapa tabel
  • Subkueri
  • permintaan batch
  • Buat tabel virtual Anda sendiri
  • Kueri dari tabel nilai
  • Menggunakan fungsi bawaan untuk mendapatkan nilai dan memanipulasi nilai.

Konstruktor kueri 1C

Agar tidak menulis teks kueri dengan tangan Anda, ada konstruktor kueri 1C. Cukup klik kanan di mana saja di modul dan pilih Query Builder 1C.

Pilih tabel yang diinginkan di desainer kueri 1C di sebelah kiri dan seret ke kanan.

Pilih bidang yang diperlukan dalam desainer kueri 1C dari tabel dan seret ke kanan. Jika Anda ingin tidak hanya memilih bidang, tetapi menerapkan beberapa fungsi penjumlahan, setelah menyeretnya, klik dua kali bidang dengan mouse. Pada tab Pengelompokan, Anda kemudian harus memilih (seret dan lepas) bidang yang diperlukan untuk pengelompokan.

Pada tab Kondisi di pembuat kueri 1C, Anda dapat memilih filter yang diperlukan dengan cara yang sama (dengan menyeret bidang yang akan Anda pilih). Pastikan untuk memilih kondisi yang benar.

Pada tab Pesanan, pengurutan ditunjukkan. Pada tab Total - menjumlahkan total.

Dengan menggunakan pembuat kueri 1C, Anda dapat mempelajari kueri yang ada. Untuk melakukannya, klik kanan pada teks kueri yang ada dan juga pilih perancang kueri 1C - dan kueri akan dibuka di perancang kueri 1C.

Minta konstruktor merupakan salah satu sarana pengembangan. Ini memungkinkan Anda untuk membuat teks kueri dalam bahasa kueri hanya menggunakan sarana visual.

Tombol Lebih jauh dan Kembali Anda dapat menavigasi melalui tab konstruktor dan menentukan data apa yang harus ada dalam hasil kueri, bagaimana mereka terkait, dikelompokkan, total apa yang harus dihitung, bekerja dengan tabel sementara, mengedit paket kueri:

Hasil kerja konstruktor akan menjadi teks kueri yang benar secara sintaksis. Dengan demikian, pengembang dapat membuat kueri yang dapat diterapkan bahkan tanpa mengetahui sintaks bahasa kueri - konstruktor akan secara otomatis menghasilkan konstruksi sintaksis yang diperlukan. Teks permintaan yang disiapkan dapat segera ditempelkan ke teks modul atau disalin ke papan klip.

Selain itu, pembuat kueri memungkinkan Anda untuk mengedit teks kueri yang sudah ada dalam program. Untuk melakukan ini, cukup tempatkan kursor di dalam teks kueri yang ada dan panggil konstruktor. Teks kueri yang ada akan diuraikan dan disajikan dalam konstruktor sebagai bidang basis data yang dipilih sesuai dan satu set tautan, pengelompokan, kondisi, dll yang ditentukan.

Salah satu alat yang paling kuat dari 1C Enterprise 8, tanpa diragukan lagi, adalah Query Builder. Konstruktor adalah alat visual untuk bekerja dengan kueri dalam bahasa 1C. Tetapi konstruktor memiliki satu kelemahan besar - tidak menunjukkan hasil eksekusi kueri. Kelemahan ini terutama dirasakan oleh pengembang pemula dari solusi aplikasi pada platform 1C:Enterprise 8.3 dan 8.2.

Selain itu, programmer 1C yang berpengalaman pun sering dihadapkan pada situasi di mana perlu untuk melakukan analisis data "satu kali". basis informasi di berbagai bagian, tetapi saya tidak ingin menulis laporan lengkap demi "kesimpulan satu kali" seperti itu.

Untuk semua ini dan banyak kasus lainnya, dengan senang hati kami menawarkan Anda pemrosesan eksternal Konsol kueri dengan kemampuan untuk memproses hasil untuk 1C 8.3 dan 1C 8.2!


Fitur utama Konsol Kueri untuk 1C 8.3 dan 1C 8.2:

Pemrosesan universal, berjalan pada konfigurasi platform 1C apa pun: Enterprise 8.1 - 8.3;
- berjalan dalam 1C: mode Perusahaan;
- kueri dapat ditulis secara manual, atau Anda dapat memanggil Pembuat Kueri;
- menunjukkan hasil permintaan;
- Anda dapat menentukan parameter laporan secara langsung di Konsol Kueri;
- dapat menyimpan dan memuat file permintaan.

Untuk meluncurkan Konsol Kueri, Anda perlu menjalankan konfigurasi dalam mode 1C:Enterprise dan membuka pemrosesan eksternal Konsol Kueri seperti file lain yang disimpan di disk. Pemrosesan seperti itu akan bekerja dengan cara yang persis sama seolah-olah itu adalah bagian dari solusi yang diterapkan.


Konsol Kueri pemrosesan eksternal mengulangi antarmuka yang sudah dikenal dan sebagian besar Kegunaan toolkit standar untuk mengkompilasi kueri sistem 1C: Enterprise 8.3 dan 8.2. Ini juga memungkinkan Anda untuk mendapatkan hasil kueri, kueri batch, dan tabel sementara.

Konsol kueri dijalankan baik dalam mode operasi server-klien dan server-file dari sistem, baik di bawah klien tebal maupun tipis! Konsol Kueri mengintegrasikan Pembuat Kueri standar, yang dipanggil melalui menu konteks di bidang teks kueri.

PENTING! Konstruktor kueri di klien kurus tidak berfungsi, item menu untuk membuka Konstruktor ini tidak tersedia. Di klien tebal, Pembuat Kueri tersedia!


Di klien tipis, kami hanya dapat menulis permintaan dengan tangan, semua fungsi lainnya berfungsi tanpa perubahan.

Query Builder di 1C 8.3 dan 8.2 adalah alat pengembangan yang paling kuat. Ini memungkinkan Anda untuk menulis teks permintaan menggunakan lingkungan visual khusus. Jadi, untuk membuat permintaan 1s, tidak perlu mengetahui bahasa kueri bawaan, cukup menavigasi dalam antarmuka desainer yang sederhana dan intuitif.

Pembuat kueri adalah sekumpulan tab, yang masing-masing bertanggung jawab atas bagian kuerinya sendiri. Jadi mengisi tab Tabel dan bidang kami memilih tabel dari mana kueri 1s akan menerima data dan bidang tabel ini yang diperlukan untuk menyelesaikan tugas tertentu. Mengisi batu Ketentuan kami memaksakan kondisi pada tabel yang dipilih untuk memilih hanya data yang kami butuhkan dari mereka, dan seterusnya.

Deskripsi konstruktor kueri di situs web resmi 1C 8: v8.1c.ru

Tabel dan bidang; ; ; ; ; ; Subquery (dalam pengembangan).

Untuk memanggil perancang kueri 1s 8 in kode program diperlukan:

  • Buat permintaan baru
Permintaan = Permintaan Baru;
  • Setel string teks kueri kosong
Permintaan.Teks = "";
  • Tempatkan kursor mouse di antara tanda kutip, tekan tombol kanan mouse. Di buka menu konteks pilih barang Minta konstruktor dan jawab Ya untuk pertanyaan tentang membuat permintaan baru. Jika teks permintaan sudah ditulis, maka Anda perlu mengklik di mana saja di dalamnya dan memanggil konstruktor ;

Mari kita pertimbangkan semua tab utama desainer kueri menggunakan contoh kecil dengan kompleksitas yang meningkat. Pendekatan ini akan memungkinkan programmer 1c pemula untuk lebih efektif mempelajari konstruktor dan semua kemampuannya. Sebagai contoh, kita akan menggunakan konfigurasi Akuntansi 3.0.

Pelajaran 1 Pembuat kueri adalah kasus penggunaan paling sederhana.

Tugas: tulis permintaan ke direktori nomenklatur, pilih seluruh nomenklatur direktori.

Tab baru: Tabel dan bidang.

Mekanisme baru: melihat dan mengedit teks permintaan menggunakan tombol "Permintaan".

Untuk mulai membuat permintaan, mari buat permintaan baru dan panggil konstruktor (seperti yang dijelaskan dalam beberapa paragraf di atas). Setelah itu, jendela desainer akan terbuka di tab Tabel dan bidang.

Bagian teoretis dari pelajaran nomor 1

tab Tabel dan bidang terdiri dari tiga bagian:

Basis data. Bagian ini menyajikan semua tabel database yang dapat digunakan untuk membuat kueri;

meja. Bagian ini memilih tabel yang diperlukan untuk permintaan yang diberikan. Untuk kemudian pindahkan mereka keluar dari bagian basis data membutuhkan:

  • Atau klik dua kali pada tabel;
  • Atau gunakan tombol ">" atau ">>".

Bagian atas meja Ada sejumlah tombol. Sebagian besar dari mereka akan dibahas secara lebih rinci dalam pelajaran berikut. Untuk saat ini, saya hanya akan memberikan penjelasan singkat.

  • Buat subkueri(Garis merah). Dirancang untuk membuat kueri bersarang baru;
  • Buat deskripsi tabel sementara(garis kuning). Memungkinkan Anda untuk mengatur nama tabel sementara yang terletak di luar kueri ini, juga dapat digunakan untuk meneruskan tabel nilai ke kueri;
  • Ubah elemen saat ini(garis hijau). Memungkinkan Anda untuk pergi ke subquery yang dipilih, tabel sementara atau deskripsi tabel sementara;
  • Hapus elemen saat ini(garis biru). Menghapus tabel yang dipilih dari tabel yang dipilih;
  • Ganti meja(garis biru). Membuka dialog untuk mengganti tabel yang dipilih. Berguna jika Anda telah memilih tabel virtual register yang salah, karena posisinya pada tabel yang dipilih saat ini dalam daftar.
  • Opsi Meja Virtual(garis ungu). Membuka parameter tabel registri virtual.

bidang. Di bagian ini, bidang tabel dari bagian sebelumnya dipilih. Bidang ini akan menjadi kolom tabel atau pilihan yang diperoleh sebagai hasil kueri. Pertama-tama, mereka diperlukan untuk mendapatkan dari tabel yang dipilih hanya informasi yang diperlukan dalam kasus tertentu. Untuk memindahkan mereka keluar dari bagian Tabel yang dibutuhkan:

  • Atau klik dua kali pada bidang tersebut;
  • Atau gunakan tombol ">" atau ">>";
  • Anda juga dapat menambahkan bidang baru sendiri, menggunakan ekspresi arbitrer dari bidang tabel yang dipilih dan fungsi bahasa kueri.

Bagian atas bidang Ada sejumlah tombol. Tentang membuat bidang menggunakan ekspresi arbitrer akan dibahas secara lebih rinci dalam pelajaran berikut. Untuk saat ini, saya hanya akan memberikan penjelasan singkat.

  • Menambahkan(garis hijau). Dirancang untuk menambahkan bidang baru menggunakan editor ekspresi kustom;
  • Ubah elemen saat ini(Garis merah). Memungkinkan Anda mengubah bidang yang dipilih menggunakan editor;
  • Hapus saat ini(garis biru). Menghapus bidang yang dipilih dari daftar.

Bagian praktis dari pelajaran No. 1

Kami menemukan teori yang diperlukan untuk menyelesaikan tugas yang diberikan dalam pelajaran ini. Biarkan saya mengingatkan Anda bagaimana kedengarannya: tulis permintaan ke direktori nomenklatur, pilih seluruh nomenklatur direktori.

Mari kita mulai membuat kueri berdasarkan nomenklatur:

  • Mari buat permintaan baru dan buka konstruktor menggunakan metode yang ditentukan di awal pelajaran;
  • Dalam bab Basis data, buka cabang Buku referensi dan temukan panduan di sana Tata nama;
  • Pilih dan gunakan tombol ">" untuk mentransfernya ke bagian tabel;
  • Dalam bab meja buka buku referensi nomenklatur menggunakan tanda “+”;
  • Dalam daftar drop-down bidang, temukan bidangnya Tautan dan pindahkan ke bagian bidang menggunakan tombol ">"
  • Permintaan item sudah siap, klik tombol "OK" di bagian bawah jendela desainer.

Permintaan di 1C - metode yang efektif dapatkan data di v8 diketahui produk perangkat lunak. Anda bisa mendapatkan data tidak hanya dalam bentuk yang nyaman, tetapi juga dalam jangka pendek. Optimasi merupakan salah satu cara untuk meningkatkan kinerja pemrosesan query dalam sistem. Nyaman itu bahasa permintaan 1C mendukung bahasa Latin dan Sirilik.

Trik profesional kecil dari bahasa kueri

Permintaan dalam sistem ditulis ke bahasa khusus, dan Anda dapat men-debug parameternya menggunakan konsol di 1C. Kata kunci dalam bahasa permintaan adalah "PILIH".

Dalam kombinasi dengan konstruksi SELECT, konstruksi berikut dapat bertindak:

  • "UNTUK PERUBAHAN" - selama prosedur transaksi, semua catatan tabel diblokir;
  • "BERBEDA" - sebagai hasil dari pemrosesan permintaan, tidak boleh ada baris yang identik;
  • "DIPERBOLEHKAN" - pemilihan, yang menurutnya pengguna saat ini hanya akan menerima informasi yang ia miliki hak pengguna;
  • "3 PERTAMA (atau nilai n apa pun) - pada bahasa permintaan ini berarti sistem akan melakukan seleksi pada 3 record pertama.

Permintaan yang kompeten - optimalisasi kerja yang efektif

Pemrogram tahu bahwa dalam program 1C v8, Anda bisa mendapatkan data terbaru menggunakan dua metode efektif:

  • Varian objek untuk memperoleh informasi;
  • Cara tabular untuk mengekstrak data.

Model objek digunakan ketika tujuannya adalah untuk mendapatkan kumpulan data sederhana dengan kumpulan kode sederhana. Bahasa kueri di 1C berfungsi untuk semua kasus, ini adalah keserbagunaannya. Tetapi kueri yang dibuat secara buta huruf menurunkan kinerja dan tidak selalu memungkinkan untuk memperoleh data yang benar. Tetapi untuk menjadi programmer yang baik di 1C, tidak cukup untuk belajar bahasa permintaan, Anda perlu mempelajari cara menerapkan aturannya dengan benar.

Permintaan optimal, dari mana memulai untuk pemula di 1C

Sedikit lebih banyak tentang sistem struktur dasar dalam bahasa 1C, misalnya, kami memiliki tabel data:

Tabel "Nomenklatur".

Tugas: mendapatkan data pada kolom Kode dan Urutkan dalam bentuk tabel.

pada bahasa permintaan terlihat seperti ini:

Permintaan.Teks = »
|PILIH
| Nomenklatur.Kode,
| Nomenklatur Ragam
| DARI
| Buku Pegangan.Nomenklatur SEBAGAI Nomenklatur»;

Dan kami mendapatkan yang berikut:

Kode Variasi
00001 musiman
00002 wanita bangsawan
00003 meyer

Bagi mereka dengan desain tingkat dasar bahasa permintaan tidak menimbulkan kesulitan, masuk akal untuk beralih ke pengelompokan. Kuncinya di sini adalah konstruksi "GROUP BY", yang akan membantu Anda mengelompokkan bidang database yang identik. Bahkan, metode pengelompokan mengurangi bidang dengan informasi yang identik menjadi satu. Dalam tabel yang dihasilkan, lebih sedikit baris yang diperoleh, yang nyaman untuk aktivitas dan analisis saat ini. Tetapi penting bahwa semua bidang database memiliki rincian sebelumnya: kami mengelompokkan, kami tidak mengelompokkan.

Pertimbangkan konstruksi "GROUP BY" sebagai contoh.

Produk Saham Kuantitas
Sabun mandi Dasar 1 520
Bubuk Dasar 750
Sampo Dasar 830
Tempel Grosir 17
Bubuk Grosir 2 586
Sampo Grosir 22

Tugas: membuat pengelompokan berdasarkan kuantitas. Untuk melakukan ini, Anda harus mengelompokkan bidang dengan nilai yang sama untuk mendapatkan hasil ringkasan umum. Perintah pengelompokan menciutkan nilai bidang yang identik. Akibatnya, pengguna menerima informasi terkini dengan lebih sedikit garis signifikan, yang nyaman untuk membuat keputusan manajerial dan menganalisis situasi saat ini.

Untuk mengetahui berapa banyak barang yang tersedia tanpa memperhitungkan gudang, Anda perlu:

Permintaan.Teks = »
|PILIH
| Barang Barang,
| SUM(Items.Quantity) SEBAGAI Kuantitas
| DARI
| Direktori Barang SEBAGAI Barang
| KELOMPOK OLEH
| Barang.Barang";

Pengelompokan dilakukan berdasarkan nilai field Barang, jenis field yang dikelompokkan adalah Quantity. Jumlah dalam contoh khusus ini adalah fungsi agregat. Dialah yang menunjukkan apa yang sebenarnya perlu dilakukan dengan jumlah barang yang identik.

Hasilnya, kami mendapatkan tabel dengan informasi berikut:

Pemrosesan khusus "Konsol Kueri" di v8.1/8.2/8.3 memungkinkan peluncuran dalam mode Perusahaan dan merumuskan kueri itu sendiri dalam mode manual atau dengan memanggil fungsi melalui konsol. Anda sudah bisa memperkirakan terlebih dahulu seperti apa hasil eksekusinya, file bisa disimpan.