Indekslangan jadval 1c 7.7. "Ma'lumot provayderi" klassi. Qo'shimcha buyurtma bilan indekslash

To'g'ri foydalanish indekslar so'rovlarni bir necha marta emas, balki yuzlab, ba'zan minglab marta tezlashtirishi mumkin.

Bunday tezlashtirishga oddiygina apparat yordamida erishib bo'lmaydi. Shuning uchun bu mavzuga katta e'tibor berilishi kerak.

Ko'pincha, so'rovni tezlashtirish uchun siz o'zingizning indeksingizni yaratishingiz kerak va buni amalga oshirishning bir necha xil usullari mavjud.

Video darslarida biz indeks yaratishning bir necha usullarini ko'rib chiqamiz. Shuningdek, biz kerakli tarkibning indeksini yaratishning iloji bo'lmagan vaziyatni ko'rib chiqamiz muntazam vositalar platforma va u DBMSda yaratilishi kerak bo'ladi.

Standart platforma vositalaridan foydalangan holda indekslarni o'rnatish

Darsda DBMS darajasidagi ob'ektlar uchun aslida qanday indekslar yaratilganligi ko'rsatilgan.
Bu mavzudagi hamma narsa birinchi qarashda ko'rinadigan darajada aniq emas. Axir, bir qator ob'ektlar uchun indekslarni yaratish xususiyatlari mavjud.
Ushbu videoda barcha tafsilotlarni ko'rib chiqamiz.

Qo'shimcha buyurtma bilan indekslash

Videoda indeksni qurish varianti o'rtasidagi farq ko'rsatilgan Indeks dan Qo'shimcha bilan indeks buyurtma berish.
Misol qo'shimcha buyurtmadan foydalanganda platforma qanday indeks yaratishini ko'rsatadi.

Registr o'lchovlari indeksini yaratish

Registrlarning birinchi o'lchamini indekslash bir nechta nuanslarga ega.
Videoda registr o'lchovlari uchun qanday indekslar yaratilganligi ko'rsatilgan. Birinchi registr o'lchamini indekslash holati ham ko'rib chiqiladi.

yoki

Nima uchun 1C ishlab chiqaruvchisi o'lchamlar va tafsilotlarni "indekslashi" kerak?

- Xo'sh, iltimoslaringiz bor! - ma'lumotlar bazasi dedi va osib qo'ydi ...

Sarlavhali savolga qisqacha javob shundaki, u so'rovlarni tez bajarish va kamaytirish imkonini beradi Salbiy ta'sir qulflanadi.

Indeks nima?

Indekslarni joylashtirishni optimallashtirish

Jadvallarning o'lchami ularni "sig'ishga" imkon bermasa tasodifiy kirish xotirasi serverda disk quyi tizimining tezligi (I/U) birinchi o'rinda turadi. Va bu erda siz turli xil qattiq disklarda joylashgan alohida fayllarga indekslarni joylashtirish qobiliyatiga e'tibor berishingiz mumkin.

Batafsil tavsif harakatlar http://technet.microsoft.com/ru-ru/kutubxona/Xonim175905.aspx
Boshqa fayl guruhidagi indeksdan foydalanish kiritish-chiqarish jarayonlari va indeksning o'zi ustida ishlashning mos kelishi tufayli klasterli bo'lmagan indekslarning ishlashini yaxshilaydi.
Yuqorida aytib o'tilgan ishlov berish o'lchamlarni aniqlash uchun ishlatilishi mumkin.

Indekslarning qulflarga ta'siri

So'rov uchun kerakli indeksning yo'qligi barcha jadval yozuvlari bo'ylab takrorlashni anglatadi, bu esa o'z navbatida ortiqcha qulflarga olib keladi, ya'ni. keraksiz yozuvlar bloklanadi. Bunga qo'shimcha ravishda, etishmayotgan indekslar tufayli so'rovni bajarish uchun qancha vaqt kerak bo'lsa, qulfni ushlab turish vaqti shunchalik uzoq bo'ladi.
Qulflashning yana bir sababi - jadvallardagi yozuvlar sonining kamligi. Shu tufayli SQL Server, so'rovni bajarish rejasini tanlayotganda, indekslardan foydalanmaydi, lekin butun jadvalni blokirovka qilib, butun jadvalni skanerlaydi (Table Scan). Bunday blokirovkaga yo'l qo'ymaslik uchun jadvallardagi yozuvlar sonini 1500-2000 gacha oshirish kerak. Bunday holda, jadvalni skanerlash qimmatroq bo'ladi va SQL Server indekslardan foydalanishni boshlaydi. Albatta, buni har doim ham amalga oshirish mumkin emas; "Tashkilotlar", "Omborlar", "Bo'limlar" kabi bir qator kataloglar. odatda bir nechta yozuvlarga ega. Bunday hollarda indekslash ishlashni yaxshilamaydi.

Indeks samaradorligi

Maqolaning sarlavhasida biz indekslarning so'rovlar ishlashiga ta'siri bilan qiziqayotganimizni allaqachon ta'kidlagan edik. Shunday qilib, indekslar quyidagi turdagi vazifalar uchun eng mos keladi:

  • "tor" qidiruv mezonlarini belgilaydigan so'rovlar. Bunday so'rovlar faqat ma'lum mezonlarga javob beradigan oz sonli qatorlarni o'qishi kerak.
  • Qiymatlar oralig'ini belgilaydigan so'rovlar. Ushbu so'rovlar ham oz sonli qatorlarni o'qishi kerak.
  • Operatsiyalarni ulashda foydalaniladigan qidiruv. Ko'pincha bog'lash kalitlari sifatida ishlatiladigan ustunlar indekslar uchun juda yaxshi.
  • Ma'lumotlar ma'lum bir tartibda o'qiladigan qidiruv. Agar natijalar to'plami klasterlangan indeks tartibida saralanishi kerak bo'lsa, unda hech qanday tartiblash kerak emas, chunki natijalar to'plami oldindan tartiblangan. Misol uchun, agar familiya, ism ustunlarida klasterli indeks yaratilgan bo'lsa va ilova familiya, keyin esa ism bo'yicha tartiblashni talab qilsa, ORDER BY bandini qo'shishning hojati yo'q.

To'g'ri, indekslarning barcha foydaliligi bilan bir qatorda juda muhim BUT bir narsa bor - indeksdan "samarali foydalanish" kerak va kamroq kiritish-chiqarish operatsiyalari va tizim resurslari miqdori yordamida ma'lumotlarni topishga imkon berishi kerak. Aksincha, foydalanilmaydigan (kamdan-kam ishlatiladigan) indekslar ma'lumotlarni yozish samaradorligini pasaytirishi ehtimoli ko'proq (chunki ma'lumotlarni o'zgartiradigan har bir operatsiya indeks sahifalarini ham yangilashi kerak) va ortiqcha ma'lumotlar bazasi maydonini yaratadi.

Qoplash(Uchun ushbu so'rovdan), bu so'rov uchun barcha kerakli maydonlarni o'z ichiga olgan indeks deb ataladi. Misol uchun, agar a, b va c ustunlarida indeks yaratilgan bo'lsa va SELECT iborasi faqat shu ustunlar ma'lumotlarini so'rasa, u holda faqat indeksga kirish kerak bo'ladi.

Indeksning samaradorligini aniqlash uchun biz "so'rovni bajarish rejasi" va foydalanilgan indekslarni ko'rsatadigan bepul onlayn xizmat yordamida taxminan taxmin qilishimiz mumkin.

Vandalsvq 1114 08.11.14 17:00 Hozirda mavzuda

() CheBurator, 5+ versiyada shartlar guruhi mavjud. Lekin bu faqat 1C++ da - http://www.1cpp.ru/forum/YaBB.pl?num=1273512019.
Shartli dizayn, shuningdek, guruhlash rejalari bor edi, lekin afsuski. Buning bitta sababi bor - men 7 bilan tijorat asosida ishlamayman va shuning uchun bu vositalarni o'zgartirmayman. Sinov uchun hatto asosiy narsa ham yo'q. Ilgari, SQL ma'lumotlar bazalari ham faylga asoslangan va ommaviy ravishda turli xil konfiguratsiyalarga ega edi. Endi faqat bittasi borga o'xshaydi, unda rivojlanish bor edi va u juda uzoq vaqt oldin ochilgan.

Umuman olganda, so'nggi o'zgarishlar:
15.04.12 yildagi 5.0.1
- Dinamik kengaytmalarda (Katalog, Hujjat, Jurnal, Registr, Operatsiyalar, Postlar) tanlash tizimi o'zgartirildi. Ierarxiya bilan o'zboshimchalik bilan sharoit yaratish qobiliyati qo'shildi.
- Tanlov tizimidagi o‘zgarishlar munosabati bilan “Ma’lumotlar provayderi.Jurnal”, “Ma’lumotlar provayderi.Tranzaktsiyalar”, “Ma’lumotlar provayderi.Hujjatlar”, “Ma’lumotlar provayderi.Katalog”, “Ma’lumotlar provayderi” kengaytmalari obyektlariga o‘zgartirishlar kiritildi. .Operatsiyalar”, “Ma’lumotlar provayderi.Register”.
- "Joriy ustun bo'yicha tanlash" tugmachasining harakati tuzatildi. Bosilganda, qolgan tanlovlar o'chirilmaydi. Bundan tashqari, agar tanlov yoqilgan bo'lsa, u o'chiriladi.
- Ustun faollashtirilganda “Joriy ustun bo‘yicha tanlash” tugmasi ko‘rinishi o‘zgaradi.
- Tafsilotlarga asoslangan tanlov shartlarini qurish optimallashtirildi.
- "Data Provider.Directory" kengaytmasi ob'ektining ierarxik ko'rinishini o'zgartirishda joriy qatorni yo'qotish xatosi tuzatildi.
- "Tanlash belgisini ko'rsatish" parametridan foydalanish o'chirilgan. Ushbu parametr orqaga qarab muvofiqlik uchun qoldiriladi.
- “Ma’lumotlar provayderi.Turlar tavsifi” va “Ma’lumotlar provayderi.Taqqoslash turlari” obyekti ma’lumotlar provayderidan olib tashlandi. Buning o'rniga mos ravishda "Turlarning tavsifi" va "Taqqoslash turlari" umumiy ob'ektlari qo'llaniladi. Qo'shimcha ma'lumot olish uchun "Objects_v8" sinflari hujjatlariga qarang.
- "Ma'lumot provayderi" ob'ektining qiymat turini o'zgartirishda 1C ishdan chiqishi tuzatildi.

24.04.12 yildagi 5.0.2
- Tanlash uchun satr qiymatlari bo'lgan ro'yxatlarni tuzishda xatolik tuzatildi.
- Agar registrda “Tez harakatni qayta ishlash” atributiga ega boʻlsa, “Maʼlumotlar Provider.Register” kengaytmasi obʼyektiga soʻrovni yaratishda xatolik tuzatildi.
- Aniqlangan xatolar tuzatildi.

22.05.13 yildagi 5.0.3
- “Ma’lumotlar provayderi.To‘g‘ridan-to‘g‘ri so‘rov” obyekti 2013-yil 22-maydagi 1.8.6 versiyasiga yangilandi.
- barcha sinflar bitta arxivda to'plangan + misollar

25.10.13 yildagi 5.0.4
- Aniqlangan xatolar tuzatildi

23.05.14 dan 5.0.5
- Ma'lumotlar ustunlarini qo'shishda aniqlangan xatolar tuzatildi
- Ma'lumotlar ustunlarini qo'shishda mavjud maydonlarda daraxt tuzilmalarini yaratish imkoniyati qo'shildi (aslida siz 8-da SKD kabi tanlovlarni yaratish uchun "Tanlash" ob'ektidan foydalanishingiz mumkin, lekin sizda fayl bo'lishi kerak)

Yangi ustun

Sintaksis: NewColumn(strColumnName)

Variantlar:
  • StreamNameColumns- turi: String. Yaratiladigan ustunning identifikatori. Ustun identifikatorida istalgan belgilardan foydalanishingiz mumkin, lekin shuni esda tutishingiz kerakki, "-", "*", "#", "^" va "&" belgilari indeks ifodalarini qurishda o'zgartiruvchi sifatida ishlatiladi va indeks bo'ladi. Bunday belgilar bilan ustunlar ustiga qurilgan bo'lishi mumkin emas.

Qaytaradi: turi: raqam. Yaratilgan ustun soni.

Tavsif: Jadvalda ustun hosil qiladi.

Ustun nomini o'zgartirish / Ustun nomini o'zgartirish

Sintaksis: Ustun nomini o'zgartirish (ustun, strNewColumnName)

Variantlar:
  • Ustun
  • pageNewNameColumns- turi: String. Yangi ustun identifikatori.

Tavsif: Jadval ustunining nomini o'zgartiradi.

Ustunlar soni / Ustunlar soni

Sintaksis: Ustunlar soni()

Qaytaradi: turi: raqam. Jadvaldagi ustunlar soni.

Tavsif: Jadvaldagi ustunlar sonini qaytaradi.

Ustun nomi

Sintaksis: Ustun nomi(ustun)

Variantlar:
  • Ustun- turi: String, Number. Ustun identifikatori yoki raqami.

Qaytaradi: turi: string. Ustun identifikatori. Agar bunday ustun bo'lmasa, istisno tashlanadi.

Tavsif: NewColumn() usulida ko'rsatilgandek ko'rsatilgan ustunning identifikatorini qaytaradi.

Ustun raqami

Sintaksis: Ustun raqami (ustun)

Variantlar:
  • Ustun- turi: String, Number. Ustun identifikatori yoki raqami.

Qaytaradi: turi: raqam. Ustun raqami.

Tavsif: Belgilangan ustun raqamini qaytaradi.

NewRow / NewRow

Sintaksis: Yangi qator()

Qaytaradi: turi: raqam. Yaratilgan qator raqami.

Tavsif: yaratadi yangi qator stol oxirida.

Qatorlarni olib tashlash

Sintaksis: Satrlarni oʻchirish([Indeks])

Variantlar:
  • Indeks Agar parametr ko'rsatilgan bo'lsa va ushbu indeksda filtr o'rnatilgan bo'lsa, filtr shartlariga javob beradigan qatorlar o'chiriladi.

Tavsif: Jadvaldan qatorlarni olib tashlaydi. Agar indeks ko'rsatilgan bo'lsa, o'chirishda qo'llaniladigan filtr hisobga olinadi.

Qatorlar soni / qatorlar soni

Sintaksis: Qatorlar soni([Index = ""], [flOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Agar parametr ko'rsatilgan bo'lsa va ushbu indeksda filtr o'rnatilgan bo'lsa, unda faqat filtr shartlarini qondiradigan qatorlar hisobga olinadi.
  • flOnlyUnique- turi: raqam. Faqat noyob indeks qiymatlarini hisobga olish uchun belgilang.

Qaytaradi: turi: raqam. jadvaldagi qatorlar soni.

Tavsif: Jadvaldagi qatorlar sonini qaytaradi.

Qator raqami / Qator raqami

Sintaksis: Qator raqami (indeks)

Variantlar:
  • Indeks- turi: String, Number. identifikator yoki indeks raqami.

Qaytaradi: turi: raqam. Belgilangan indeksdagi joriy satr raqami. Agar qator tanlanmagan bo'lsa, u holda 0.

Tavsif: Belgilangan indeksdagi tanlovdagi joriy qator raqamini qaytaradi.

Tozalash

Sintaksis: Tozalash()

Tavsif: Jadvalni to'liq tozalash. Barcha indekslar, satrlar va ustunlar o'chiriladi.

AddIndex / AddIndex

Sintaksis: AddIndex(strIdentifier, strExpression, [hOnlyUniqueValues ​​= 0])

Variantlar:
  • strID- turi: String. yaratilgan indeksning identifikatori;
  • sahifa ifodasi- turi: String. Indeks ifodasi. Indeks ifodasi vergul bilan ajratilgan ustun identifikatorlari ro'yxatidan iborat. Agar ustun nomidan oldin "-" belgisi bo'lsa, unda saralash teskari tartibda amalga oshiriladi. Agar ustun nomidan oldin "*" belgisi bo'lsa, unda saralash ob'ektning ichki ko'rinishiga ko'ra amalga oshiriladi. Agar ustun nomidan oldin "#" belgisi bo'lsa, satrlarni solishtirishdan oldin chap va o'ngdagi bo'shliqlar kesiladi. Agar ustun nomidan oldin "^" belgisi bo'lsa, u holda satrlar katta-kichik harflar bilan taqqoslanadi. Saralash modifikatorlari ("-", "*", "#", "^") har qanday kombinatsiyada ishlatilishi mumkin. Indeks ifodasi bo'sh satr bo'lishi mumkin - bu satr raqami bo'yicha saralashga teng yoki tartibsiz (bunday indeksga filtr o'rnatib bo'lmaydi).
  • withOnlyUniqueValues- turi: raqam. Agar 1 bo'lsa, unda indeksga faqat noyob indeks qiymatlarini o'z ichiga olgan qatorlar kiritiladi. Ikki nusxadagi indeksli qatorlar e'tiborga olinmaydi va ular qatorni takrorlash, yig'ish, katlama, tushirish, yuklash operatsiyalariga kiritilmaydi.

Qaytaradi: turi: raqam. Yaratilgan indeks raqami.

Tavsif: Jadvalga indeks qo'shadi.

Indekslar soni / IndexCount

Sintaksis: NumberIndex()

Qaytaradi: turi: raqam. Jadvaldagi indekslar soni.

Tavsif: Jadvaldagi indekslar sonini qaytaradi.

IndexName / IndexName

Sintaksis: IndexName(indeks)

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.
Qaytaradi: turi: string. Indeks nomi. Agar indeks jadvalda bo'lmasa, istisno chiqariladi.

Tavsif: Indeks nomini qaytaradi.

IndexExpr / IndexExpr

Sintaksis: IndexExpression(indeks)

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.
Qaytaradi: turi: string. Indeks ifodasi. Agar indeks jadvalda bo'lmasa, istisno chiqariladi.

Tavsif: Berilgan indeks uchun indeks ifodasini qaytaradi.

Indeks raqami

Sintaksis: Indeks raqami (indeks)

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.
Qaytaradi: turi: raqam. Indeks raqami. Agar indeks jadvalda bo'lmasa, funktsiya 0 ni qaytaradi.

Tavsif: Indeks raqamini qaytaradi.

Saralash

Sintaksis: Saralash(strExpression)

Variantlar:
  • sahifa ifodasi- turi: String. Indeks ifodasi. Indeks ifodasi vergul bilan ajratilgan ustun identifikatorlari ro'yxatidan iborat. Agar ustun nomidan oldin "-" belgisi bo'lsa, unda saralash teskari tartibda amalga oshiriladi. Agar ustun nomidan oldin "*" belgisi bo'lsa, unda saralash ob'ektning ichki ko'rinishiga ko'ra amalga oshiriladi. Agar indeks ifodasi bo'lsa bo'sh qator, keyin saralash o'chirilgan (bunday indeksga filtr o'rnatib bo'lmaydi).

Tavsif: Asosiy indeksdagi saralashni o'zgartiring.

IndexIsUnique

Sintaksis: IndexUnique([Index = ""])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.

Qaytaradi: turi: raqam. 1 - jadvalda kalit qiymatlari takrorlanadigan qatorlar mavjud emas; 0 - jadvalda bir xil kalit qiymatlari bo'lgan qatorlar mavjud.

Tavsif: indeks noyob yoki yo'qligini tekshiradi.

UniqueKeyCount

Sintaksis: UniqueKeys soni([Index = ""])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.

Qaytaradi: turi: raqam. Noyob kalitlar soni.

Tavsif: belgilangan indeksdagi noyob kalitlar sonini qaytaradi.

KeyValueCount

Sintaksis: KeyValues ​​soni([Indeks = ""], Kalit)

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.
  • Kalit

Qaytaradi: turi: raqam. Belgilangan kalit bilan qatorlar soni.

Tavsif: kalit qiymati Key parametriga teng bo'lgan qatorlar sonini qaytaradi.

FindRow / FindRow

Sintaksis: FindRow(Indeks, Kalit, [hFindLast = 0], [hPosition = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.
  • Kalit- turi: har qanday. Agar indeks bitta ustunga qurilgan bo'lsa, u holda qidiruv qiymati. Agar indeks bir nechta ustunlarda bo'lsa, bu AddIndex() usulida ko'rsatilgan asosiy ustunlar qiymatlarini o'z ichiga olgan Qiymatlar ro'yxati bo'lishi kerak.
  • hFindLast- turi: raqam. Agar 1 bo'lsa, kalit qiymatiga mos keladigan oxirgi qator topiladi.
  • hPosition

Qaytaradi:

Tavsif: Kalitga to'liq mos keladigan qatorni toping.

FindNearestMore / FindNearestGE

Sintaksis: FindNearestMore(Kalit, [Indeks = ""], [hPosition = 0])

Variantlar:
  • Kalit- turi: har qanday. Agar indeks bitta ustunga qurilgan bo'lsa, u holda qidiruv qiymati. Agar indeks bir nechta ustunlarda bo'lsa, bu AddIndex() usulida ko'rsatilgan asosiy ustunlar qiymatlarini o'z ichiga olgan Qiymatlar ro'yxati bo'lishi kerak.
  • Indeks
  • hPosition- turi: raqam. Agar 1 bo'lsa, qidiruv muvaffaqiyatli bo'lsa, indeks topilgan qatorga joylashtiriladi. Agar tanlov usulini bajarishdan oldin ochilgan bo'lsa (SelectRows usuli yordamida), u topilgan qiymatga o'zgartiriladi. Agar tanlov ochilmagan bo'lsa, u ochiladi va muvaffaqiyatli qidiruvdan so'ng GetRow(), NextRow() va PreviousRow() usullaridan foydalanish mumkin. Asosiy indeks ham o'zgartirilmoqda.

Qaytaradi: turi: raqam. Topilgan qatorning raqami. Hech narsa topilmasa, u holda 0.

Tavsif: Kalitga teng yoki undan katta bo'lgan qatorni toping.

FindNearestLess / FindNearestLE

Sintaksis: FindNearestLess(Kalit, [Indeks = ""], [hPosition = 0])

Variantlar:
  • Kalit- turi: har qanday. Agar indeks bitta ustunga qurilgan bo'lsa, u holda qidiruv qiymati. Agar indeks bir nechta ustunlarda bo'lsa, bu AddIndex() usulida ko'rsatilgan asosiy ustunlar qiymatlarini o'z ichiga olgan Qiymatlar ro'yxati bo'lishi kerak.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • hPosition- turi: raqam. Agar 1 bo'lsa, qidiruv muvaffaqiyatli bo'lsa, indeks topilgan qatorga joylashtiriladi. Agar tanlov usulini bajarishdan oldin ochilgan bo'lsa (SelectRows usuli), u topilgan qiymatga o'zgartiriladi. Agar tanlov ochilmagan bo'lsa, u ochiladi va muvaffaqiyatli qidiruvdan so'ng GetRow(), NextRow() va PreviousRow() usullaridan foydalanish mumkin. Asosiy indeks ham o'zgartirilmoqda.

Qaytaradi: turi: raqam. Topilgan qatorning raqami. Hech narsa topilmasa, u holda 0.

Tavsif: Kalitga teng yoki undan kichik bo'lgan qatorni toping.

SetFilter / SetFilter

Sintaksis: SetFilter(KeyMin, KeyMax, [Index = ""], [hOnlyUnique = 0], [hInversion = 0])

Variantlar:
  • KeyMin- turi: har qanday. Filtrning pastki chegarasi. U FindString() usuli bilan bir xil tarzda o'rnatiladi.
  • KeyMaks- turi: har qanday. Filtrning yuqori chegarasi. U FindString() usuli bilan bir xil tarzda o'rnatiladi.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob- turi: raqam. Agar 1 bo'lsa, tanlovga faqat kalit qiymatiga ega bo'lgan qatorlar kiritiladi.
  • hInversiya- turi: raqam. 0 - oddiy filtr, 1 - teskari filtr.

Agar indeks bitta ustunga qurilgan bo'lsa, u holda ustun qiymati kalit sifatida ishlatilishi mumkin. Agar indeks bir nechta ustunlarda bo'lsa, kalit AddIndex() usulida ko'rsatilgan kalit ustunlar qiymatlarini o'z ichiga olgan ValueList bo'lishi kerak.

Kalitlardan birini o'tkazib yuborish mumkin - bu holda minimal/maksimal mumkin bo'lgan qiymat avtomatik ravishda o'tkazib yuborilgan qiymat sifatida ishlatiladi. Bular. filtr ochiq chegaraga ega bo'ladi.

Tavsif: belgilangan indeks bo'yicha jadvalga dinamik filtr o'rnatadi. Filtr usullarning ishlashiga ta'sir qiladi: InStart(), SelectRows(), InEnd(), GetRow(), NextRow(), PreviousRow(), Collapse(), Total(), FillColumn(), Unload(), Yuklash (), Birlashtirish ().

Kichik toʻplam

Sintaksis: Subset(swKey, hNumberFixColumns, [Index = ""])

Variantlar:
  • szKey- turi: Qadriyatlar ro'yxati. Tuzatish kerak bo'lgan indeks ustunlari qiymatlarini o'z ichiga olgan ro'yxat.
  • hNumberFixColumns- turi: raqam. Ruxsat etilgan indeks ustunlari soni
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.

Tavsif: indeksning birinchi ustunlari qiymatlarini o'rnatadigan filtr o'rnatadi.

TZ.AddIndex("va1", "k1, k2"); szKey = CreateObject("Qiymatlar ro'yxati"); szKey.AddValue(5); TZ.Subset(szKey, 1, "va1");

Natijada, namuna faqat ustuni k1 = 5 bo'lgan qatorlarni o'z ichiga oladi.

DisableFilter / DropFilter

Sintaksis: DisableFilter([Index = ""])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami.

Tavsif: belgilangan indeksdagi filtrni o'chiradi.

Boshlash / Birinchi qator

Sintaksis: BStart([Index = ""], [flOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob

Qaytadi

Tavsif: ko'rsatilgan indeksning birinchi qatoridan oldin joylashtiriladi, shuning uchun NextRow() usuli birinchi qatorga joylashtiriladi.

Satrlarni tanlang

Sintaksis: Satrlarni tanlang([Index = ""], [flOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob- turi: raqam. Noyob qadriyatlarga asoslangan namuna olish bayrog'i. Bayroq ushbu tanlov uchun GetRow(), NextRow() va PreviousRow() usullariga keyingi barcha qo'ng'iroqlar natijasiga ta'sir qiladi.

Qaytadi turi: raqam. 1 - operatsiya muvaffaqiyatli yakunlandi, 0 - tanlov bo'sh.

Tavsif: ko'rsatilgan indeksning birinchi qatoridan oldin joylashtirilgan, shuning uchun GetRow() usuli birinchi qatorda joylashgan.

LastRow

Sintaksis: ATEnd([Index = ""], [flOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob- turi: raqam. Noyob qadriyatlarga asoslangan namuna olish bayrog'i. Bayroq ushbu tanlov uchun GetRow(), NextRow() va PreviousRow() usullariga keyingi barcha qo'ng'iroqlar natijasiga ta'sir qiladi.

Qaytadi turi: raqam. 1 - operatsiya muvaffaqiyatli yakunlandi, 0 - tanlov bo'sh.

Tavsif: ko'rsatilgan indeksning oxirgi qatoridan keyin joylashgan, shuning uchun PreviousRow() usuli oxirgi qatorda joylashgan.

Keyingi qator / Keyingi

Sintaksis: NextRow([Index = ""], [hOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob

Qaytadi

Tavsif:

Eslatma: BStart() va BEnd() usullarida 1 ga o'rnatilgan noyob tanlash bayrog'i ushbu usul bayrog'idan ustun turadi.

GetRow / GetRow

Sintaksis: GetString([Index = ""], [hOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob- turi: raqam. 1 - boshqa kalit qiymatiga ega keyingi qator olinadi, barcha takroriy qatorlar o'tkazib yuboriladi.

Qaytadi turi: raqam. 1 - operatsiya muvaffaqiyatli yakunlandi, 0 - boshqa qatorlar yo'q.

Tavsif: keyingi indeks qatoriga o'ting.

Eslatma:

Oldingi qator / Oldingi

Sintaksis: Oldingi qator([Index = ""], [hOnlyUnique = 0])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Faqat noyob- turi: raqam. 1 - boshqa kalit qiymatiga ega keyingi qator olinadi, barcha takroriy qatorlar o'tkazib yuboriladi.

Qaytadi turi: raqam. 1 - operatsiya muvaffaqiyatli yakunlandi, 0 - boshqa qatorlar yo'q.

Tavsif: oldingi indeks qatoriga o'ting.

Eslatma: BStart() va BEnd() usullarida 1 ga o'rnatilgan noyob tanlash bayrog'i ushbu usul bayrog'idan ustun turadi.

GetValue

Sintaksis: GetValue([hRow = EmptyValue], ustun)

Variantlar:
  • hString- turi: raqam. Qator raqami. Agar qator raqami ko'rsatilmagan bo'lsa, u holda joriy satr olinadi.
  • Ustun- turi: String, Number. Ustun identifikatori yoki raqami.

Qaytadi turi: har qanday. Jadval katak qiymati.

Tavsif: belgilangan jadval katakchasidagi qiymatni qaytaradi.

SetValue / SetValue

Sintaksis: SetValue([hRow = EmptyValue], ustun, qiymat)

Variantlar:
  • hString- turi: raqam. Qator raqami. Agar satr raqami ko'rsatilmagan bo'lsa, u holda joriy satrdagi qiymat o'rnatiladi.
  • Ustun- turi: String, Number. Ustun identifikatori yoki raqami.
  • Ma'nosi- turi: har qanday. Yangi hujayra qiymati.

Tavsif: belgilangan katakchaning qiymatini belgilaydi.

Oʻrnatish

Sintaksis: Set (hRow, ustun, qiymat)

Tavsif: SetValue() usulining sinonimi.

Yig'ish / GroupBy

Sintaksis: Yig'ish(strColumnsCollapse, strColumnsSum [, ExistingIndexName = ""])

Variantlar:
  • LinesColumnsConvolution- turi: String. Yigʻish amalga oshiriladigan ustunlar roʻyxati. Bu qator AddIndex() usulidagi indeks ifodasi bilan aynan bir xil. To'plam uchun jadval avval ushbu ifoda bilan indekslanadi, so'ngra bir xil indeksli qatorlar yig'iladi. Natija har doim birinchi qatorga raqam bo'yicha joylashtiriladi, qolgan barcha satrlar o'chiriladi.
  • LineColumnsAmount- turi: String. Xulosa qilinadigan ustunlar ro'yxati. Ajratuvchi "," belgisidir. Bo'shliqlar e'tiborga olinmaydi.
  • ExistingIndexName- turi: String, Number. Agar indeks nomi ko'rsatilgan bo'lsa, Ustunlarni yig'ish e'tiborga olinmaydi va yig'ish belgilangan indeksda amalga oshiriladi. Konvolyutsiyada faqat filtrga kiritilgan qatorlar ishtirok etadi.

Tavsif: jadvalni ustunlar bo'yicha yig'adi<КолонкиСвёртки>, ustunlardagi qiymatlarni yig'ish<КолонкиСумм>. Ustunlar kiritilmagan<КолонкиСвёртки>Va<КолонкиСумм>stoldan olib tashlanmaydi. Mavjud indeks yordamida konvolyutsiya ham mumkin - vaqtinchalik indeksni yaratish uchun vaqt yo'qotilmaydi va joriy indeks filtri yordamida tanlangan konvolyutsiya mumkin.

Jami / so'm

Sintaksis: Jami(ustun yig'indisi, [indeks = ""])

Variantlar:
  • Ustun miqdori
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.

Qaytadi

Tavsif: indeks filtrini hisobga olgan holda belgilangan ustun uchun miqdorni hisoblab chiqadi.

TotalByRange / SumByRange

Sintaksis: TotalByRange(summa ustuni, [indeks = ""], KeyMin, KeyMax)

Variantlar:
  • Ustun miqdori- turi: String, Number. Miqdorni olishni istagan ustun.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • KeyMin- turi: har qanday. Diapazonning pastki chegarasi. U FindString() usuli bilan bir xil tarzda o'rnatiladi.
  • KeyMaks- turi: har qanday. Diapazonning yuqori chegarasi. U FindString() usuli bilan bir xil tarzda o'rnatiladi.

Qaytadi turi: raqam. Belgilangan ustundagi miqdor.

Tavsif: yig'ish oralig'ini ko'rsatib, belgilangan ustundagi miqdorni hisoblab chiqadi. Funktsiya o'rnatilgan filtrlarni hisobga olmaydi va doimiy filtrlarni o'rnatmaydi.

TotalByNode/NodeSum

Sintaksis: TotalByNode(SumColumn [, Index])

Variantlar:
  • Ustun miqdori- turi: String, Number. Miqdorni olishni istagan ustun.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.

Qaytaradi: turi: raqam. Belgilangan ustundagi miqdor. Agar tanlov faol bo'lmasa (joriy tugun yo'q), u 0 ni qaytaradi.

Tavsif: indeks daraxtining joriy tuguni uchun belgilangan ustun uchun summani hisoblab chiqadi. Indeks noyob bo'lmaganda mantiqiy bo'ladi va siz joriy kalit uchun jami hisoblashingiz kerak.

TZ.AddIndex("Familiya", "Familiya", 0); TZ.FindString("Familiya", "Ivanov", 0, 1); //Ivanov familiyasi bilan barcha satrlarni o'z ichiga olgan tugunga o'zimizni joylashtiramiz Sum = TZ.TotalByNode("Sum", "Familiya"); //420 (100 + 120 + 200) qaytaradi TK.FindString("Familiya", "Petrov", 0, 1); //familiyali barcha satrlarni o'z ichiga olgan tugunga o'zimizni joylashtiramiz Petrov Sum = TZ.TotalByNode("Sum", "Familiya"); //1100 (500 + 600) qaytaradi

Guruh

Sintaksis: Guruh(strGroups, strColumnsSum, [hDecryptionLastLevel = 0])

Variantlar:
  • guruhGuruhlar- turi: String. Istalgan guruhlash strukturasini tavsiflovchi satr. Shaklda ko'rsatilgan<ИмяИндекса1>: <ИндексноеВыражение1> [; <ИмяИндекса2>: <ИндексноеВыражение2>...]. IndexExpression - AddIndex() usuli bilan bir xil formatdagi satr, unga bitta qo'shimcha: agar ustun o'zgartiruvchilar ro'yxatida "&" belgisi mavjud bo'lsa, katalog guruhlari uchun jamilar ushbu ustun uchun hisoblanadi. Har bir guruhlash darajasida bunday modifikatorga ega faqat bitta ustun bo'lishi mumkin.
  • LineColumnsAmount- turi: String. Miqdorlarni hisoblash kerak bo'lgan ustunlar bilan chiziq.
  • hOxirgi darajadagi shifrlash- turi: raqam. 1 - oxirgi guruhlash darajasining har bir qatorida asl jadval satrlarini tegilmagan shaklda o'z ichiga olgan shifrlangan jadval bo'ladi. 0 - oxirgi daraja yiqilib tushadi.

Tavsif: guruhlarga mos ravishda daraxt tuzilmasi bilan jadval hosil qiladi. Har bir guruhlash darajasida faqat tegishli indeksdagi noyob qiymatlar qoladi. Yig'indi ustunlari kalit qiymatiga mos keladigan barcha satrlar uchun yig'indilarni o'z ichiga oladi. Tegishli kalit qiymatlari bo'lgan satrlar "Asliyotlar" ustuniga joylashtirilgan jadvalga yoziladi - bu ustun guruhlash jarayonida yaratiladi.

Misol: kirishda bizda jadval mavjud

guruhlash:

TZ.Group("Familiya: Familiya; Ism: Ism", "Miqdor");

va shunga o'xshash jadvalni oling (TzDescendants ustuni TzDescendants jadvalining mazmunini ko'rsatadi):

Guruhlashda, shuningdek, kataloglar guruhlari bo'yicha miqdorlarni hisoblash mumkin - buning uchun indeks o'zgartiruvchilar ro'yxatida "&" ni belgilashingiz kerak. Agar jadvalda " nomli ustun bo'lsa<ИмяКолонкиСправочника>_Parent", keyin element uchun ota-ona ushbu ustundan olinadi - bu ma'lumotlar bazasiga qo'ng'iroqlar sonini kamaytiradi va unumdorlikni sezilarli darajada oshiradi. Yakuniy jadval katalog tuzilishini aynan takrorlaydigan daraxt shaklida tashkil qilinadi. Guruhlashning keyingi darajasi ushbu daraxtning barglarida joylashgan (ya'ni, guruh bo'lmagan qatorlarda) Olingan daraxt bilan ishlash qulayligi uchun jadvalga "__ThisGroup__" ustuni qo'shiladi, unda 1 barcha guruhlar uchun EmptyValue, elementlar uchun esa EmptyValue, shuningdek, katalog guruhlari darajasining qiymati bilan to'ldiriladigan “__Level__” ustuni qo'shiladi (raqamlash 1 dan boshlanadi) Elementlar uchun EmptyValue ga yoziladi. "__Daraja__" ustuni.

FillRow

Sintaksis: FillRow([hRowNumber = 0], Manba, [hSourceRowNumber = 0], [hColumnNames = 0])

Variantlar:
  • hLine raqami- turi: raqam. To'ldirish uchun qator raqami. Agar<= 0, то заполняется текущая строка.
  • Manba- turi: Indekslangan jadval, qiymatlar jadvali, qiymatlar ro'yxati. Qatorni to'ldirish uchun ma'lumotlar manbai.
  • hSource qator raqami- turi: raqam. Manba jadvalidagi qator raqami. Odatiy bo'lib, oldindan belgilangan indeksdagi joriy qator olinadi. Agar Manba ValueList bo'lsa, bu parametr e'tiborga olinmaydi.
  • hBy Ustun nomlari- turi: raqam. 0 - manbadan olingan qiymatlar ustun raqamlari bilan ko'chiriladi; 1 - qiymatlar ustun nomlari bilan ko'chiriladi. Qabul qiluvchida bir xil nomdagi ustun bo'lmasa, qiymat ko'chirilmaydi. Agar Manba ValueList bo'lsa, u holda ustun nomlari qiymatlarning ramziy ko'rinishi hisoblanadi.

Tavsif: jadval qatorini boshqa jadvaldagi qatordan yoki qiymatlar roʻyxatidan toʻldiradi.

FillColumn (variant 1)

Sintaksis: FillColumn([Index = ""], Ustun, Manba, [SourceIndex = ""], [SourceColumn = ""])

Variantlar:
  • Indeks
  • Ustun
  • Manba- turi: Indekslangan jadval. Ustunni to'ldirish uchun ma'lumotlar manbai.
  • Manba indeksi- turi: String, Number. Manba jadvalining qatorlari tartiblanadigan va filtrlanadigan identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Manba ustuni- turi: String, Number. Qiymatlar olinadigan ustunning identifikatori yoki raqami. Agar parametr ko'rsatilmagan bo'lsa, u holda manba ustuni parametr bilan aniqlanadi Ustun.

Tavsif: boshqa indekslangan jadvaldagi ustundan jadval ustunini to'ldiradi.

FillColumn (2-variant)

Sintaksis: FillColumn([Index = ""], Ustun, Manba, [SourceColumn = ""])

Variantlar:
  • Indeks- turi: String, Number. To'ldirilayotgan jadval satrlari tartibga solinadigan va filtrlanadigan identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Ustun- turi: String, Number. To'ldiriladigan ustunning identifikatori yoki raqami.
  • Manba- turi: qiymatlar jadvali, qiymatlar ro'yxati. Ustunni to'ldirish uchun ma'lumotlar manbai.
  • Manba ustuni- qiymatlar olinadigan ustunning raqami yoki identifikatori. Agar parametr ko'rsatilmagan bo'lsa, u holda manba ustuni parametr bilan aniqlanadi Ustun. Qiymatlar ro'yxati uchun parametr e'tiborga olinmaydi.

Tavsif: jadval ustunini boshqa jadvaldagi ustundan (Qiymatlar jadvali) yoki qiymatlar ro'yxatini to'ldiradi.

FillColumn (variant 3)

Sintaksis: FillColumn([Indeks = ""], Ustun, Qiymat)

Variantlar:
  • Indeks- turi: String, Number. To'ldirilayotgan jadval satrlari tartibga solinadigan va filtrlanadigan identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Ustun- turi: String, Number. To'ldiriladigan ustunning identifikatori yoki raqami.
  • Ma'nosi- turi: har qanday, IndexedTable, ValueTable, ValueList bundan mustasno. Ustun to'ldiriladigan qiymat.

Tavsif: jadval ustunini bir xil qiymat bilan to'ldiradi.

Yukni tushirish

Sintaksis: Bo'shatish(Qabul qiluvchi [, Indeks = ""] [, Ustunlar = ""] [, faqat Yagona = 0])

Variantlar:
  • Qabul qiluvchi- turi: Indexed Table, Qiymatlar jadvali, Hujjat, Qiymatlar ro'yxati, Aniqlanmagan. Jadval yuklanadigan o'zgaruvchi. Agar bu hujjat bo'lsa, unda uning jadval qismi to'ldiriladi. Agar turi Aniqlanmagan bo'lsa, u holda IndexedTable tipidagi jadval tuziladi.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi.
  • Ustunlar- turi: String, Number. Yuklanishi kerak bo'lgan vergul yoki ustun raqami bilan ajratilgan ustunlar ro'yxati. Hech qanday qiymat ko'rsatilmagan yoki bo'sh qator ko'rsatilmagan bo'lsa, parametr e'tiborga olinmaydi.
  • Faqat noyob- turi: raqam. Faqat noyob qiymatlarni yuklash uchun belgilang.

Tavsif: joriy jadvalni boshqa jadvalga yoki yangisiga tashlaydi. Belgilangan jadval mavjud bo'lsa, u butunlay tozalanadi. Yukni tushirish vaqtida indekslar ko'chirilmaydi. Yuk tushirish indeks va filtrni hisobga olgan holda amalga oshiriladi.

Yuklash

Sintaksis: Yuklash(Manba, [indeks = ""], [ustunlar = ""])

Variantlar:
  • Manba- turi: Indekslangan jadval, qiymatlar jadvali, hujjat. Ma'lumotlar yuklanadigan jadval. Agar turi Hujjat bo'lsa, hujjatning jadval qismi yuklanadi.
  • Indeks- turi: String, Number. Manba jadvalidagi identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi. Agar Source parametri Hujjat turi bo'lsa, u holda Indeks hujjatning jadval qismidagi maydonlar ro'yxatini o'z ichiga olgan qator sifatida talqin qilinadi. Agar Manba ValueTable turida bo'lsa, bu parametr e'tiborga olinmaydi.
  • Ustunlar- turi: String, Number. Manba jadvaliga yuklash uchun vergul yoki ustun raqami bilan ajratilgan ustunlar roʻyxati. Jadvalga yuklanadigan ustunlar ro'yxatini belgilaydi. Hech qanday qiymat ko'rsatilmagan yoki bo'sh qator ko'rsatilmagan bo'lsa, parametr e'tiborga olinmaydi. Agar manba Hujjat turi bo'lsa, bu parametr e'tiborga olinmaydi (Index parametridan foydalaning).

Tavsif: ko'rsatilgan jadvaldan ma'lumotlarni indeksga muvofiq yuklaydi. Joriy jadval yuklashdan oldin butunlay tozalanadi. Indekslar nusxa olinmaydi.

LoadQuery

Sintaksis: LoadRequest(Soʻrov, [hFlag = 0], [hJami = 1])

Variantlar:
  • So'rov- turi: so'rov. Ma'lumotlar yuklanadigan so'rov.
  • hFlag- turi: raqam, satr. 0 - guruhlar va funktsiyalarning qiymatlari (standart); 1 - guruhlar va funktsiyalar qiymatlari, qo'shimcha o'zgaruvchilar; 2 - guruh va funksiya tartiblarining qiymatlari; 3 - tartiblash guruhlari va funktsiyalari qiymatlari, qo'shimcha o'zgaruvchilar; Qator - “Item (1), Item (2), Ob’ekt, Ombor, Daromad, Chiqarish”, bu yerda (1) band “Buyum” guruhlashning birinchi tartibining qiymati.
  • natijalar- turi: raqam. 0 - guruhlash natijalarini ko'rsatmaslik; 1 - guruhlash natijalarini yuqorida ko'rsatish (standart); 2 - natijalarni pastdan guruhlar bo'yicha ko'rsatish; 3 - guruhlash natijalarini yuqorida va pastda ko'rsatish.

Tavsif: belgilangan so'rovdan ma'lumotlarni yuklaydi. Joriy jadval yuklashdan oldin butunlay tozalanadi.

InnerJoin

Sintaksis: InnerJoin(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Variantlar:
  • lineColumnsLeftIT
  • To'g'ri IT
  • IndexRightIT lineColumnsLeftIT).
  • pageColumnsRightIT <ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст> <ИмяКолНазн> <ИмяКолИст> <ИмяКолНазн>.

Tavsif: Ichki qo'shilish lineColumnsLeftIT pageColumnsRightIT. Agar chap jadvaldagi qator o'ng jadvalda topilmasa, chap jadvaldagi qator o'chiriladi.

Chapga qo'shilish

Sintaksis: LeftConnection(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Variantlar:
  • lineColumnsLeftIT- turi: String. Qiymatlari o'ng jadvaldagi qatorni qidirish uchun ishlatiladigan ustunlar.
  • To'g'ri IT- turi: Indekslangan jadval. Biriktirilgan stol.
  • IndexRightIT- turi: String, Number. O'ng jadvaldagi qatorlar qidiriladigan nom yoki indeks raqami. Indeks ustunlari soni qidiruv ustunlari soniga teng bo'lishi kerak (parametrga qarang lineColumnsLeftIT).
  • pageColumnsRightIT- turi: String. O'ngdagi jadvaldan chapga ko'chiradigan ustunlar ro'yxati. Ro'yxat formatda ko'rsatilgan "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- o'ngdagi jadvaldagi ustun nomi; agar chap jadvalda bunday ustun bo'lmasa, u yaratiladi.<ИмяКолНазн>- agar ko'rsatilgan bo'lsa, unda nom bilan o'ng jadval ustunidan qiymat<ИмяКолИст>chap jadval ustuniga ko'chiriladi<ИмяКолНазн>.

Tavsif: SQL buyrug'iga o'xshash operatsiyani bajaradi Chapga qo'shilish. Chap jadvaldagi har bir satr uchun (chap jadval joriy ob'ekt), o'ngdagi jadvalning kalit ifodasiga mos keladigan barcha satrlari qo'shiladi. Kalit ifoda parametr bilan aniqlanadi lineColumnsLeftIT. Parametrda ko'rsatilgan ustunlarning qiymatlari o'ng jadvaldan chapga o'tkaziladi pageColumnsRightIT o'zgarishsiz qoladi.

To'g'ri qo'shiling

Sintaksis: RightConnection(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Variantlar:
  • lineColumnsLeftIT- turi: String. Qiymatlari o'ng jadvaldagi qatorni qidirish uchun ishlatiladigan ustunlar.
  • To'g'ri IT- turi: Indekslangan jadval. Biriktirilgan stol.
  • IndexRightIT- turi: String, Number. O'ng jadvaldagi qatorlar qidiriladigan nom yoki indeks raqami. Indeks ustunlari soni qidiruv ustunlari soniga teng bo'lishi kerak (parametrga qarang lineColumnsLeftIT).
  • pageColumnsRightIT- turi: String. O'ngdagi jadvaldan chapga ko'chiradigan ustunlar ro'yxati. Ro'yxat formatda ko'rsatilgan "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- o'ngdagi jadvaldagi ustun nomi; agar chap jadvalda bunday ustun bo'lmasa, u yaratiladi.<ИмяКолНазн>- agar ko'rsatilgan bo'lsa, unda nom bilan o'ng jadval ustunidan qiymat<ИмяКолИст>chap jadval ustuniga ko'chiriladi<ИмяКолНазн>.

Tavsif: SQL buyrug'iga o'xshash operatsiyani bajaradi To'g'ri qo'shilish. Chap jadvaldagi har bir satr uchun (chap jadval joriy ob'ekt), o'ngdagi jadvalning kalit ifodasiga mos keladigan barcha satrlari qo'shiladi. Kalit ifoda parametr bilan aniqlanadi lineColumnsLeftIT. Parametrda ko'rsatilgan ustunlarning qiymatlari o'ng jadvaldan chapga o'tkaziladi pageColumnsRightIT. Agar chap jadvaldagi qator o'ngda topilmasa, u o'chiriladi. Agar o'ng jadvalning satri chap tomonda bo'lmasa, u qo'shiladi va parametrda ko'rsatilganlardan tashqari barcha ustunlar qo'shiladi. pageColumnsRightIT

To'liq qo'shiling

Sintaksis: FullJoin(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Variantlar:
  • lineColumnsLeftIT- turi: String. Qiymatlari o'ng jadvaldagi qatorni qidirish uchun ishlatiladigan ustunlar.
  • To'g'ri IT- turi: Indekslangan jadval. Biriktirilgan stol.
  • IndexRightIT- turi: String, Number. O'ng jadvaldagi qatorlar qidiriladigan nom yoki indeks raqami. Indeks ustunlari soni qidiruv ustunlari soniga teng bo'lishi kerak (parametrga qarang lineColumnsLeftIT).
  • pageColumnsRightIT- turi: String. O'ngdagi jadvaldan chapga ko'chiradigan ustunlar ro'yxati. Ro'yxat formatda ko'rsatilgan "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- o'ngdagi jadvaldagi ustun nomi; agar chap jadvalda bunday ustun bo'lmasa, u yaratiladi.<ИмяКолНазн>- agar ko'rsatilgan bo'lsa, unda nom bilan o'ng jadval ustunidan qiymat<ИмяКолИст>chap jadval ustuniga ko'chiriladi<ИмяКолНазн>.

Tavsif: SQL buyrug'iga o'xshash operatsiyani bajaradi To'liq qo'shilish. Chap jadvaldagi har bir satr uchun (chap jadval joriy ob'ekt), o'ngdagi jadvalning kalit ifodasiga mos keladigan barcha satrlari qo'shiladi. Kalit ifoda parametr bilan aniqlanadi lineColumnsLeftIT. Parametrda ko'rsatilgan ustunlarning qiymatlari o'ng jadvaldan chapga o'tkaziladi pageColumnsRightIT. Agar chap jadvalning satri o'ngda topilmasa, chap jadval ustunlarining qiymatlari o'zgarishsiz qoladi. Agar o'ng jadvalning satri chap tomonda bo'lmasa, u qo'shiladi va parametrda ko'rsatilganlardan tashqari barcha ustunlar qo'shiladi. pageColumnsRightIT bo'sh qiymatlar bilan to'ldiriladi.

Birlashtirish

Sintaksis: Birlashtirish(TZ [, Indeks = ""] [, Ustunlar = ""])

Variantlar:
  • TK- turi: Indexed Table, Value Table. Ma'lumotlar yuklanadigan jadval.
  • Indeks- turi: String, Number. Manba jadvalidagi identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi. Agar ToR qiymatlar jadvali turiga tegishli bo'lsa, bu parametr e'tiborga olinmaydi.
  • Ustunlar- turi: String, Number. Manba jadvalidagi vergul yoki ustun raqami bilan ajratilgan ustunlar ro'yxati. Birlashtirish jarayonida ishtirok etadigan ustunlar ro'yxatini belgilaydi. Hech qanday qiymat ko'rsatilmagan yoki bo'sh qator ko'rsatilmagan bo'lsa, parametr e'tiborga olinmaydi.

Tavsif: manba jadvalidan joriy jadvalga qatorlar qo'shadi. Agar manba jadvalida joriy bo'lmagan ustunlar bo'lsa, ular yaratiladi. Birlashtirish manba jadvalining indeksi va filtrini hisobga olgan holda amalga oshiriladi.

Kesishuv / Bog'lanish

Variantlar:
  • TZ2- turi: Indekslangan jadval. Chorraha qurilgan jadval.
  • Joriy TK indeksi
  • IndexSecondTK
  • flAddLinesTZ2

Tavsif: ikkita jadvalning kalit maydonlar bilan kesishishi. Kesishish natijasi TK2 da bo'lgan joriy TK qatorlari va joriy TKda bo'lgan TK2 qatorlari (TK2 fl.ning Qo'shish satrlarini hisobga olgan holda) mavjud bo'lgan jadvaldir. Satrlar mosligi IndexCurrentTK va IndexTK2 indekslari bilan aniqlanadi. Indekslardagi ustunlar soni bir xil bo'lishi kerak.

Farq

Variantlar:
  • TZ2- turi: Indekslangan jadval. Farq tuzilgan jadval.
  • Joriy TK indeksi- turi: String, Number. Joriy jadvalning nomi yoki indeks raqami.
  • IndexSecondTK- turi: String, Number. TZ2 da nom yoki indeks raqami.
  • flAddLinesTZ2- turi: raqam. Natijaga TZ2 qatorlarini qo'shish uchun belgi.

Tavsif: kalit maydonlardagi ikkita jadval o'rtasidagi farq. Natijada joriy TK ning TK2da bo'lmagan satrlari va TK2 ning joriy TKda bo'lmagan satrlari (TK2 fl.ning Qo'shish satrlarini hisobga olgan holda) mavjud bo'lgan jadval hosil bo'ladi. Satrlar mosligi IndexCurrentTK va IndexTK2 indekslari bilan aniqlanadi. Indekslardagi ustunlar soni bir xil bo'lishi kerak.

Nusxalash

Sintaksis: Nusxalash([hCopyIndices = 0], [hCopyData = 1])

Variantlar:
  • hCopyIndices- turi: raqam. Agar 1 bo'lsa, indekslar va filtrlar ham nusxalanadi.
  • hCopyData- turi: raqam. Agar 1 bo'lsa, u holda ma'lumotlar nusxalanadi; agar 0 bo'lsa, u holda faqat struktura nusxalanadi.

Qaytaradi: turi: Indekslangan jadval. Ob'ektning nusxasi bo'lgan o'zgaruvchi.

Tavsif: jadvalning nusxasini yaratadi.

VFile / SaveToFile

Sintaksis: VFile(strFileName, [hFormat = 1], [Index = ""], [hColumnNames = 1])

Variantlar:
  • strFileName- turi: String. Jadval yozilishi kerak bo'lgan fayl nomi. Agar fayl allaqachon mavjud bo'lsa, uning ustiga yoziladi.
  • hFormat
  • Indeks
  • hSINamesColumns- turi: raqam. 1 - faylning birinchi qatorida ustunlar nomlari bo'ladi. Faqat csv fayllari uchun mantiqiy.

Tavsif: jadvalni faylga yozadi.

FromFile / LoadFromFile

Sintaksis: FromFile(strFileName, [hFormat = 1], [hColumnNames = 1])

Variantlar:
  • strFileName- turi: String. Jadval o'qilishi kerak bo'lgan fayl nomi.
  • hFormat- turi: raqam. Fayl formati. Quyidagi qiymatlarni qabul qilishi mumkin: 1 - qiymatlarni ichki formatda yozish; 2 - tashqi formatda qiymatlarni yozish; 3 - ichki formatdagi qiymatlari bo'lgan csv fayli; 4 - tashqi formatdagi qiymatlari bo'lgan csv fayli.
  • hSINamesColumns- turi: raqam. 1 - faylning birinchi qatori ustunlar nomlarini saqlaydi. Faqat csv fayllari uchun mantiqiy. Parametr = 0 bo'lsa, ustun nomlari __col__ shaklida hosil bo'ladi.<НомерКолонки>.

Qaytaradi: turi: raqam. 1 - jadval muvaffaqiyatli o'qildi; 0 - o'qish xatosi.

Tavsif: fayldan jadvalni o'qiydi.

INString / SaveToString

Sintaksis: INString([hFormat = 1], [Indeks = ""])

Variantlar:
  • hFormat- turi: raqam. 1 - qiymatlarni ichki formatda yozish; 0 - qiymatlarni tashqi formatda yozish.
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi. Faylga yuklash belgilangan indeks bo'yicha saralash va filtrlashni (agar mavjud bo'lsa) hisobga olgan holda amalga oshiriladi.

Qaytaradi: turi: string. Jadvalning qator ko'rinishi.

Tavsif: Jadvalni ketma-ketlashtirish uchun satr tasviriga aylantiradi. Olingan satr keyinchalik FromString() usulida ishlatilishi mumkin.

FromString / LoadFromString

Sintaksis: FromString(strRepresentation)

Variantlar:
  • sahifa taqdimoti- turi: String. Jadvalning qator ko'rinishi.

Tavsif: satr tasviridan jadvalni yuklaydi.

Line-ni tanlang

Sintaksis: Qatorni tanlang([Qator = 0], [strWindowTitle = ""], [hTimeout = 0], [Indeks = ""])

Variantlar:
  • Chiziq- turi: har qanday. Qiymat qo'yilgan o'zgaruvchi tanlangan qatorning raqamidir. Bu erda usulni chaqirganda, siz boshlang'ich qator raqamining qiymatini o'tkazishingiz mumkin.
  • pageTitleWindow- turi: String. Tanlov oynasining sarlavhasi.
  • hTimeout- turi: raqam. Tizim foydalanuvchi javobini kutadigan vaqt (sekundlarda). Belgilanmagan bo'lsa, kutish vaqti cheksizdir.
  • Indeks

Qaytaradi:

Tavsif:

Ko'rsatish / Ko'rsatish

Sintaksis: Ko'rsatish ([Indeks = ""])

Variantlar:
  • Indeks- turi: String, Number. Identifikator yoki indeks raqami. Sukut bo'yicha asosiy indeks hisoblanadi. Tanlash oynasida ko'rsatilgan indeks bo'yicha saralash va filtrni (agar mavjud bo'lsa) hisobga olgan holda qatorlar paydo bo'ladi.

Qaytaradi: turi: raqam. 1 - agar tanlov amalga oshirilsa ("OK" tugmasi bosiladi); 0 - agar tanlov amalga oshirilmasa ("CANCEL" tugmasi bosiladi).

Tavsif: Qiymatlar jadvalidagi qatorni interaktiv tanlash uchun oynani ochadi. Usul asosan disk raskadrovka uchun mo'ljallangan.