DWH mind map · G‘aznachilik

III. Расходы hisobotini qayta qurish xaritasi

Nima qilyapmiz: DMBAT’dagi «III. Расходы» hisobotini DWH’da o‘zimiz qayta qurish uchun uning har bir raqami qaysi kod va qaysi jadvaldan kelishini ildiz jadvalgacha kuzatyapmiz. DMBAT’dan faqat ikki narsa so‘raladi: kod (procedure, funksiya, view, MV) yoki jadval Excel’i (barcha ustunlari bilan). Jadval topilgan joyda shox tugaydi.

Olingan (kod yoki Excel bor) Hali olinmagan jadval Ishchi jadval (hisobot paytida to‘ladi)
Tugunni ikki marta bosing: nomi shu yerda o‘zgaradi
Fakt

Hisobot 5 oqimdan yig‘iladi

Reja, kassa, fakt, o‘zaro hisob va balans. Hammasini write_month_exp_out bitta ishchi jadvalga (TEMP_BUDGET_REPORTS) yozadi, hisobot uni view orqali o‘qiydi.

Fakt

Kassa zanjiri yopildi

PAYDOCS_OLD_BUDGET_EXP_MV → PAYDOCS_OLD_ACC_EXP_MV → PAYDOCS_OLD_MV → PAYDOCS_OLD + PAYEXPENSE_OLD. Qolgani faqat ikki jadval Excel’i.

Fakt

O‘zaro hisob rejasi get_oper’ga bog‘liq

Reja faqat operatsiyasida 61* bor qatorlardan olinadi (WriteTempF4, 104). Rospis operatsiyasini get_oper beradi, u hali olinmagan.

Fakt

Balans jim xato qilishi mumkin

getOver hisob raqami topilmasa xato chiqarmaydi: getsaldo 0 qaytaradi. Qoldiq sanaga qarab COA_ACCOUNTS yoki COA_SALDO’dan olinadi.

Fakt

Shartnoma va hisob-faktura ustunlari bo‘sh

Hisobot contr => 'N' bilan chaqiradi (month_mest_out_htm, 125). Bu ustunlar faqat contr = 'Y' da to‘ladi, shuning uchun ularning manbasi kerak emas.

Xulosa

REPMF1OX ildiz jadval

Olingan kodlarning hech biri uni to‘ldirmaydi, hammasi faqat o‘qiydi. Endi faqat Excel’i so‘raladi.

Olingan Hali olinmagan Kerak emas P procedure F funksiya C cursor MV V view J jadval K konstanta

DMBAT’ga yuboriladigan ro‘yxat. Jadvallar yangi narsa ochmaydi, shuning uchun Excel’larni kod bilan bir vaqtda so‘rash mumkin.

Kod (procedure va funksiya matni)

NomiMuhimlikQayerda chaqiriladiNima uchun

Excel (jadval, barcha ustunlari bilan)

Qator soni muhim emas, bir necha qator yetadi. Muhimi: jadval nomi va to‘liq ustunlari.

NomiMuhimlikNimaga kerak

Hozir qayerdamiz

Eng chuqur zanjir 6 qavat: month_mest_out_htm → write_month_exp_out → getOver → get_oper_accounts → get_accfull → form_accfull. Kassa va fakt shoxlari jadvalgacha yopildi, barcha 10 ta MV olingan. Ochiq qolgani ikki shox: o‘zaro hisob (get_oper va 2 ta kichik procedure) hamda balans (to‘liq hisob raqamini yig‘ish).

Qancha qoldi (taxmin)

1-BOSQICH · KEYINGI

9 ta kod va 29 ta Excel

Kod: get_oper, getzerosignsumall, setzero, form_accfull, get_mainfinsrc va get_incomext, listFilial, V_BUDGETTYPE, 2 ta tekshiruv. Excel’lar shu bilan birga, ular yangi narsa ochmaydi.

2-BOSQICH

3-6 ta jadval, 0-3 ta kichik funksiya

1-bosqich kodlari ochadigan qoldiq. Ko‘pi allaqachon ro‘yxatdagi jadvallarni o‘qiydi deb kutiladi (maket, rospis jadvallari). Yangisi asosan V_BUDGETTYPE va BUDGETS ichidan chiqishi mumkin.

3-BOSQICH · EHTIMOL

1-2 ta oxirgi obyekt

Faqat 2-bosqichda kutilmagan funksiya chiqsa kerak bo‘ladi. Bo‘lmasa yig‘ish 2-bosqich bilan tugaydi.

Oxirida taxminan qancha bo‘ladi

OlinganKerak, olinmaganOxirida (taxmin)
Kod (procedure, funksiya, cursor)28 qator8 qator + 2 konstanta~40-45 qator
MV10010
View123-4 (BUDGETS view bo‘lsa 4)
Jadval1227~42-45
Jadval, MV, view jami2329~55-60

Nimani qisqartirish mumkin

DWH’da qayta qurishda tekshiruv kodlari kerak emas: check_account, check_income, check_expense, isexist*, ArraySpr. Ular faqat xato matnini yozadi, raqamni o‘zgartirmaydi. Shularni chiqarsak, raqamga ta’sir qiladigan majburiy kod 4 ta qoladi: get_oper, getzerosignsumall, setzero, form_accfull.

Tavakkal joylar

1) BUDGETS view bo‘lib chiqsa, kodi yana 1-2 jadval ochadi. 2) V_BUDGETTYPE kodi 1 ta jadval ochishi mumkin. 3) MEMORDER_VZAIM_CURR izohda “тек. таблица” deyilgan; view bo‘lib chiqsa, kodi kerak bo‘ladi. Umumiy yo‘nalish: oxirgi ikki paketda har yangi kod asosan allaqachon ma’lum jadvallarni o‘qidi, ya’ni zanjir yopilyapti.