Export
Ushbu bo'lim hujjat shablonlari bilan ishlash va ulardan foydalanish imkonini beradi
Eksport
Export bo'limi hujjat shablonlarini kiritish hamda loyihalarda ulardan foydalanish uchun ishlatiladi. Ixtiyoriy loyihalarda bir qator hisobotlarni shakllantirish uchun qo'l keladi.

Eksport bo'limida bir qator navigatsiya elementlari mavjud. Bular:
- Asosiy oynadagi
Eksporttugmasi orqali asosiy oynaga o'tish - Eksport resurslari jadvalida kiritilgan ma'lumotlarni
izlashnavigatori orqali izlash - Mavjud ma'lumotlarni
Sinxronizatsiyalashqilish tugmasi - Yangi resurslarni
Qo'shishtugmasi

Eksport resurslari ichidan ma'lumotni qidirish uchun izlash navigatoridan foydalanish mumkin. Bunda ma'lumotga tegishli biron bir elementni izlash oynasida yozib, qidirish tugmasi bosiladi. Agar resurslar ro'yxatida mavjud bo'lsa, tizim kiritilgan ma'lumot uchun bir nechta variantlarni chiqarib beradi. Foydalanuvchi shu variantlardan kerakligini tanlab foydalanish uchun ishlatadi.

Resurslar ro'yxatidagi ma'lumotlarni optimallashtirish uchun Sinxronizatsiyalash tugmasi bosiladi. Bu tugma metodlarga ulangan resurslarni tekshirib ma'lumotni optimallashtirish uchun xizmat qiladi.


Ixtiyoriy vaqtda export resurslari jadvalidagi ma'lumotlarni qanday shakllanganligini hamda qanday parametrlarni o'z ichiga olishini ko'rishimiz mumkin. Buning uchun jadvaldagi ma'lumotni ustiga bosish kifoya.

Eksport ma'lumotlariga yangi resurs qo'shish uchun Qo'shish tugmasi bosiladi. Ochilgan modal oynada bir qator ma'lumotlar kiritiladi. Kiritilayotgan resursning type elementiga qarab to'ldiriladigan maydonlar tuslanadi. Modal oynada type maydoni uchun Word elementi tanlanganda, quyidagi maydonlar generatsiya qilinadi:
- name - resursni mazmunan to'g'ri ifodalovchi qisqa nomlash uchun mo'ljallangan.
- type - export uchun mo'ljallangan faylning formatini ifodalaydi hamda unga mos parametrlarni ochilishi uchun xizmat qiladi.
- data_source_type -
sql,platon_tablehamdaplaton_apikabi parametrlarni o'z ichiga olib, resursning qanday ma'lumot ko'rinishida kelishini ifodalaydi. - template file - resursning tematikasi qanday bo'lishini ifodalash va shakllantirish uchun xizmat qiladi.
- output_file_name - chiquvchi fayl qay tarzda nomlanishini ifodalaydi.
- state - ushbu resursning holati qaysi tartibda turganligini ifodalaydi. O'z ichiga
active,hiddenhamdaarchivedkabi statuslarni oladi. - sql - ma'lumotlar bazasida so'rovlar orqali protsesni ifodalash uchun mo'ljallangan. Undan foydalanishni quyidagi misolda ko'rishingiz mumkin:
TODO
Is this true example?
http.get("https://e-auksion.uz/api/front/lots")
{
"totalPages": 193,
"totalRows": 1927,
"currentPage": 1,
"gaming_lots_cnt": 0,
"rows": [
{
"id": 2070118,
"lot_number": "2070118",
"name": "Қурилиши тугалланмаган мактаб биноси",
"full_address": "Ташкентская область, Янгиюльский район, Шўралисой КФЙ, Хўжаобод МФЙ",
"confiscant_categories_name": "Здания с незавершенным строительством",
"category_id": 4,
"start_price": 1.80503E9,
"zaklad_sum`ma": 9.02515E7,
"auction_date_str": "20.06.2022 10:00",
"order_end_time_str": "20.06.2022 09:00",
"zaklad_percent": 5.0,`
}]
}- params_sql - ma'lumotlar bazasida so'rovlar parametrlari ifodalash uchun mo'ljallangan. Undan foydalanishni quyidagi misolda ko'rishingiz mumkin:
select coalesce(concat(t.name1, 'нинг'), '') as org_name,
coalesce(concat(t.name1, 'нинг'), '') as org_name1,
coalesce(t.name2, '') as org_name2,
coalesce(concat(t.name3, 'ning'), '') as org_name3,
coalesce(t.name4, '') as org_name4,
coalesce(#search, '') as search,
coalesce(#org_id::bigint, $user.extraData.org_id) as org_id
from sm_orgs t
where t.state = 1
and t.id = $user.extraData.org_id- cache_seconds - ushbu maydon keshlash mexanizmi uchun xizmat qilib, qancha muddat oralig'ida yangilab borishini ifodalaydi. Bunda kiritiladigan ma'lumot butun (
int) sonlarda ifodalanishi kerak. - datasource - qo'llanilayotgan eksport ma'lumoti qaysi resursdan kelishini ifodalash uchun mo'ljallangan. U o'z ichiga
PostgreshamdaClickhouseresurslarini oladi.

data_source_type tanlangan turiga qarab modal oynada mos maydonlarni chiqarib beradi. U o'z ichiga uch turdagi ma'lumotni oladi. Bular:
- sql - sql so'rovlarni jalb qilish hamda ularni ishlatish uchun xizmat qiladi.
- platon_table - platon ma'lumotlarida mavjud bo'lgan jadvallarning nomi asosida shakllantirishga xizmat qiladi.
- platon_api - Platon ma'lumotlar bazasida mavjud ekspluatatsiya uchun ochiq bo'lgan API lardan foydalanish uchun xizmat qiladi.
- data_source_type da
platon_apituri tanlanganga modal oynada qo'shimcha data object maydoni ochiladi. Ushbu ochilgan maydonda kerakli API tanlanadi va eksport funksionalida ishlatilishi uchun kiritiladi.

data_source_type da sql turi tanlanganda modal oynada bir nechta maydonlar shakllanadi. Bular:
- template file - local diskda mavjud bo'lgan hujjatlarni jalb qilish uchun mo'ljallangan.
- output_file_name - chiquvchi fayl qanday nomlanishi kerakligini ifodalaydi.
- state - eksport resursining holatini ifodalash uchun xizmat qiladi.
- sql - ma'lumotlar bazasida so'rovlar orqali protsesni ifodalash uchun mo'ljallangan. Undan foydalanishni quyidagi misolda ko'rishingiz mumkin:
http.get("https://e-auksion.uz/api/front/lots")
{
"totalPages": 193,
"totalRows": 1927,
"currentPage": 1,
"gaming_lots_cnt": 0,
"rows": [
{
"id": 2070118,
"lot_number": "2070118",
"name": "Қурилиши тугалланмаган мактаб биноси",
"full_address": "Ташкентская область, Янгиюльский район, Шўралисой КФЙ, Хўжаобод МФЙ",
"confiscant_categories_name": "Здания с незавершенным строительством",
"category_id": 4,
"start_price": 1.80503E9,
"zaklad_sum`ma": 9.02515E7,
"auction_date_str": "20.06.2022 10:00",
"order_end_time_str": "20.06.2022 09:00",
"zaklad_percent": 5.0,`
}]
}- params_sql - ma'lumotlar bazasida so'rovlar parametrlari ifodalash uchun mo'ljallangan. Undan foydalanishni quyidagi misolda ko'rishingiz mumkin:
select coalesce(concat(t.name1, 'нинг'), '') as org_name,
coalesce(concat(t.name1, 'нинг'), '') as org_name1,
coalesce(t.name2, '') as org_name2,
coalesce(concat(t.name3, 'ning'), '') as org_name3,
coalesce(t.name4, '') as org_name4,
coalesce(#search, '') as search,
coalesce(#org_id::bigint, $user.extraData.org_id) as org_id
from sm_orgs t
where t.state = 1
and t.id = $user.extraData.org_id- cache_seconds - ushbu maydon keshlash mexanizmi uchun xizmat qilib, qancha muddat oralig'ida yangilab borishini ifodalaydi. Bunda kiritiladigan ma'lumot butun (
int) sonlarda ifodalanishi kerak. - datasource - qo'llanilayotgan eksport ma'lumoti qaysi resursdan kelishini ifodalash uchun mo'ljallangan. U o'z ichiga
Platon,PostgreshamdaClickhouseresurslarini oladi.

data_source_type da platon_table turi tanlanganga modal oynada qo'shimcha data object maydoni ochiladi. Ushbu ochilgan maydonda kerakli jadval nomi tanlanadi va eksport funksionalida ishlatilishi uchun kiritiladi.

Eksport modal oynasida sql hamda params_sql maydonlaridan ma'lumotlar bazasi so'rovlari uchun unumli foydalanish imkoniyati mavjud.

Modal oynada type maydonida Excel turi tanlanganida unga mos ravishda qo'shimcha maydonlar ochiladi. Bular:
- process_type - eksport resursini ishga tushirish darajasini kiritish uchun qo'llaniladi. Ushbu maydon o'z ichiga ikki xil tanlovni oladi
Immediate- zudlik bilan ishga tushirish uchun,Alternate- alternativ tartibda ishga tushirish uchun.

Modal oynada type maydonida Csv turi tanlanganida sql maydoni o'chiriladi. Ushbu holatda modal oynada bir qator maydonlar aks etadi. Bular:
- name - resursni mazmunan to'g'ri ifodalovchi qisqa nomlash uchun mo'ljallangan.
- type - export uchun mo'ljallangan faylning formatini ifodalaydi hamda unga mos parametrlarni ochilishi uchun xizmat qiladi.
- data_source_type -
sql,platon_tablehamdaplaton_apikabi parametrlarni o'z ichiga olib, resursning qanday ma'lumot ko'rinishida kelishini ifodalaydi. - data object - jadval nomlari orqali variantlarni berish va tanlash imkoniyatini beradi.
- output_file_name - chiquvchi fayl qanday nomlanishi kerakligini ifodalaydi.
- state - eksport resursining holatini ifodalash uchun xizmat qiladi.
- params_sql - ma'lumotlar bazasida so'rovlar parametrlari ifodalash uchun mo'ljallangan. Undan foydalanishni quyidagi misolda ko'rishingiz mumkin:
select coalesce(concat(t.name1, 'нинг'), '') as org_name,
coalesce(concat(t.name1, 'нинг'), '') as org_name1,
coalesce(t.name2, '') as org_name2,
coalesce(concat(t.name3, 'ning'), '') as org_name3,
coalesce(t.name4, '') as org_name4,
coalesce(#search, '') as search,
coalesce(#org_id::bigint, $user.extraData.org_id) as org_id
from sm_orgs t
where t.state = 1
and t.id = $user.extraData.org_id- cache_seconds - ushbu maydon keshlash mexanizmi uchun xizmat qilib, qancha muddat oralig'ida yangilab borishini ifodalaydi. Bunda kiritiladigan ma'lumot butun (
int) sonlarda ifodalanishi kerak.
Amaliy tajriba.
Yuqorida yozilgan ma'lumotlarni dev.realsoft.accademy saytida real loyihada ishlatib ko'ramiz. Buning uchun avval biz jadval va Excel fayl tayyorlab olishimiz kerak bo'ladi. Jadvalimiz quydagi ko'rinishga ega

Bizda quydagi jadval bor bo'lsa, so'ng quyidagicha Excel fayl yaratamiz:

Va ushbu Excel faylga примечаний (eslatma) lar qo'shamiz


Excel fayl ham tayyor bo'lgach endi export bo'limidan yangi export yaratamiz:

Endi ushbu yaratilgan export ni jadvalldagi tugmalarga ulaymiz.

Hamda ushbu tugma bosilganida Natijani ko'rishimiz mumkin.

Barcha kerakli ma'lumotlar tanlanib va to'ldirilib Saqlash tugmasi bosiladi. Shu tariqa eksport uchun kiritilgan ma'lumotlar jadvalda shakllanadi va foydalanish uchun ruhsatga ega bo'lgan ixtiyoriy dasturchi undan foydalanish huquqiga ega bo'ladi.