Kirish Roʻyxatdan oʻtish

Docx

  • Referatlar
  • Diplom ishlar
  • Boshqa
    • Slaydlar
    • Referatlar
    • Kurs ishlari
    • Diplom ishlar
    • Dissertatsiyalar
    • Dars ishlanmalar
    • Infografika
    • Kitoblar
    • Testlar

Dokument ma'lumotlari

Narxi 50000UZS
Hajmi 4.7MB
Xaridlar 0
Yuklab olingan sana 16 May 2025
Kengaytma docx
Bo'lim Kurs ishlari
Fan Informatika va AT

Sotuvchi

Javohir Muhiddinov

Ro'yxatga olish sanasi 16 May 2025

0 Sotish

Tashkilot miqyosida masofadan muloqot qilish.

Sotib olish
  O ZBEKISTON RESPUBLIKASI ʻ
OLIY TA’LIM, FAN VA INNOVATSIYALAR VAZIRLIGI
MIRZO ULUG‘BEK NOMIDAGI MILLIY UNIVERSITETININIG
JIZZAX FILIALI
AMALIY MATEMATIKA  FAKULTETI
«  KOMPYUTER ILMLARI VA DASTURLASHTIRISH  » kafedrasi
“ALGORITMIK TILLAR VA DASTURLASH” FANIDAN
Mavzu: Tashkilot miqyosida masofad an muloqot qilish.
Bajardi: “ 60610200-Axborot   tizimlari   va   texnologiyalari(tarmoqlar   va
sohalar   bo ‘ yicha) ”   yo ‘ nalishi   3-kurs   915_21-guruh   talabasi
Muhiddinov Jahongir
Ilmiy rahbar: Tojiyev  A . H .
1KU
RS
ISHI Jizzax  – 2025
MUNDARIJA
KIRISH  ……………………………………………………………………..…...3
I BOB.  NAZARIY QISM
1.1 .  C#  Obyektga yo‘naltirilgan dasturlash(OYD)………………………..6
1.2. C#   Windows Forms boshqaruv elementlari……..…….…………....9
II BOB. TASHKILOT MIQYOSIDA HUJJAT ALMASHINUVI TIZIMI
2.1 Tashkilot   miqyosida   hujjat   almashinuvining   dasturiy   ta’minotini
ishlab chiqish……………………………………………………..……….14
2.2 Ma’lumotlar bazasi bilan ishlash……………………………………15
2.3 Dasturdan olingan natijalar………………………………………….20
Xulosa …………………………………… ………………………………………….26
Foydalanilgan adabiyotlar ro‘yxati ..................................................................27
ILOVALAR
2 KIRISH
C# (“C Sharp” deb talaffuz qilinadi) - zamonaviy ob y ektga yo ‘ naltirilgan va
xavfsiz   turdagi   dasturlash   tili.   C#   dasturi   ishlab   chiquvchilarga   .NET   da
ishlaydigan har xil turdagi xavfsiz va ishonchli ilovalarni yaratish imkonini beradi.
C# tili taniqli C tillari oilasiga mansub bo ‘ lib, C, C++, Java yoki JavaScript bilan
ishlagan   har   bir   kishiga   tanish   bo ‘ ladi.   Bu   C#   va   undan   oldingi   tillarning   asosiy
komponentlariga   umumiy   nuqta   bo‘ladi.   Agar   siz   tilni   interaktiv   misollar   bilan
o ‘ rganmoqchi   bo ‘ lsangiz,   C#   tiliga   kirish   darslari   orqali   ishlashingizni   tavsiya
qilamiz.
C# - bu obyektga va komponentlarga yo ‘ naltirilgan  dasturlash tili. C# ushbu
operatsiya konsepsiyasini  bevosita qo ‘ llab-quvvatlash  uchun til konstruksiyalarini
taqdim   etadi.   Bu   C#   ni   dasturiy   ta’minot   komponentlarini   yaratish   va   ishlatish
uchun   mos   keladi.   Yaratilganidan   beri   C#   yangi   ish   yuklamalari   va   zamonaviy
dasturiy ta’minotni ishlab chiqishning ilg ‘ or tajribalarini qo ‘ llab-quvvatlash uchun
xususiyatlar   bilan   boyitilgan.   C#   -   bu     obyektga   yo ‘ naltirilgan   til.   Siz   turlarni   va
ularning hatti-harakatlarini aniqlaysiz.
Bu   yerda   C#   tilining   mustahkam   ilovalar   yaratish   imkonini   beruvchi   bir
nechta   xususiyatlari   bor.   Axlat   yig ‘ ish     kirish   imkoni   bo ‘ lmagan
foydalanilmaydigan   obyektlar   bilan   band   bo ‘ lgan   xotirani   avtomatik   ravishda
bo ‘ shatadi.   Null   bo ‘ ladigan   turlar   ajratilgan   obyektlarga   murojaat   qilmaydigan
o ‘ zgaruvchilardan   himoya   qiladi.   Istisnolardan   foydalanish   xatolarni   aniqlash   va
tiklash uchun tizimli va kengaytirilgan yondashuvni ta’minlaydi. Lambda ifodalari
funksional   dasturlash   usullarini   qo ‘ llab-quvvatlaydi.   LINQ   sintaksisi   har   qanday
manbadan   olingan   ma ’ lumotlar   bilan   ishlash   uchun   umumiy   shablonni   yaratadi.
Asinxron   operatsiyalar   uchun   tilni   qo ‘ llab-quvvatlash   taqsimlangan   tizimlarni
3 yaratish   uchun   sintaksisni   ta’minlaydi.   C#   da   yagona   turdagi   tizim     mavjud.
Barcha C# turlari, shu jumladan    int   va    double   kabi ibtidoiy turlari, bir xil ildiz
turi obyektidan meros bo ‘ lib qoladi.  Bundan   tashqari,   C#   foydalanuvchi
tomonidan  belgilangan  mos  yozuvlar  turlarini  ham,  qiymat  turlarini  ham  qo ‘ llab-
quvvatlaydi.   C#   sizga   obyektlarni   dinamik   ravishda   joylashtirish   va
soddalashtirilgan   tuzilmalarni   stekda   saqlash   imkonini   beradi.   C#   yaxshilangan
turdagi xavfsizlik va ishlashni ta ’ minlaydigan umumiy usullar va turlarni qo ‘ llab-
quvvatlaydi. C# to ‘ plam sinfini amalga oshiruvchilarga mijoz kodi uchun maxsus
hatti-harakatlarni aniqlash imkonini beruvchi iteratorlarni taqdim etadi.
C#   dastur   va   kutubxonalar   o ‘ zgarganda   mos   bo ‘ lishini   ta’minlash   uchun
versiyalashtirishga   urg ‘ u   beradi.   Versiyalash   muammolari   alohida   modifikatorlar
kabi   C#   ishlanmasining   jihatlariga   sezilarli   ta ‘ sir   ko ‘ rsatdi   virtual   va   override ,
usulning haddan tashqari yuklanishini hal qilish qoidalari va interfeys a’zolarining
aniq deklaratsiyasini qo ‘ llab-quvvatlaydi.
C#   dasturlari   umumiy   til   ish   vaqti   (CLR)   va   sinf   kutubxonalari   to ‘ plamini
chaqiruvchi virtual ijro tizimi .NET da ishlaydi. Umumiy tilda ishlash vaqti (CLR)
Microsoft   tomonidan   ishlab   chiqarilgan.   Umumiy   til   infratuzilmasi   (CLI)   ning
xalqaro   standart   tatbiqidir.   CLI   tillar   va   kutubxonalar   bir-biri   bilan   shaffof
ishlaydigan ish vaqti va ishlab chiqish muhitini yaratish uchun asosdir.
                C#   da   yozilgan   manba   kodi   CLI     spetsifikatsiyalariga   mos   keladigan
oraliq   tilda   (IL)   tuzilgan.   IL   kodi   va   resurslari,   jumladan   bitmaplar   va   satrlar
odatda   .dll   kengaytmasi   bilan   yig ‘ ilishda   saqlanadi.   Assambleyada   ushbu
assambleyaning turlari, versiyasi, madaniyati haqidagi ma’lumotlarga ega manifest
mavjud.
Kurs   ishining   maqsadi:   Kurs   ishimning   maqsadi   tashkilotlar   o‘rtasidagi
hujjat   almashinuvi   tizimini   avtomatik   ravishda   bajarish   uchun   ishlab   chiqilgan.
Chunki bu tizim orqali inson faoliyati ancha kamayishi uchun ishlab chiqildi.
4 Mavzuning   dolzarbligi :   Tashkilot   va   muassasa   miqyosida   hujjat
almashinuvini osonlashtirish va ish sifatini oshirish uchun qulaylik yaratish .Inson
xatolarini kamaytirishdan iboratdir.
Kurs   ishi   tuzilmasining   tavsifi :   Mazkur   tadqiqot   ishi   kirish,   tanlangan
obyektlar   va   tadqiqot   usullari,   kurs   ishi   boblari,   xulosa   hamda   foydalanilgan
adabiyotlar ro‘yxatidan iboratdir.
Kurs   ishining   kirish   qismida   qaralayotgan   ishning   dolzarbligi,   ishning
maqsadi, ishning ilmiyligi, tadqiqotning amaliy ahamiyati va kurs ishining tuzilishi
to‘g‘risidagi umumiy ma’lumotlar keltirilgan.
Kurs ishining birinchi bobida OYD va Windows Forms boshqaruv panellari
haqida ma’lumot berilgan.
Kurs   ishining   xulosa   qismida   bajarilgan   ishning   amaliyotda   qo‘llanilishi
natijasida kelib chiqadigan xulosalar va tavsiyalar keltiriladi.
Kurs   ishining   so‘ngida   esa   foydalanilgan   adabiyotlar,   elektron   kitoblar
ro‘yxatlari keltirilgan.
5 I.NAZARIY QISM.
1.1.Obyektga yo‘naltirilgan dasturlash(OYD).
Obyektga   yo‘naltirilgan   dasturlash   yoki   OYD   –   haqiqiy   hayotiylikka
asoslangan   dasturlash   usulidir.   Yana   protsedurali   dasturlash   tillari   (masalan,
Paskal, Basic, Fortan) ham mavjud. OYD ning undan asosiy farqi shundaki, OYD
asosan   obyektlarga   asoslangan   holda   ishlasa,   protsedural   dasturlash   tillari   esa
asosan   funksiyalarga   asoslangan   bo‘ladi   ya ’ ni   bu   usuldagi   dasturlashda   har   bitta
buyruqlar qadamma-qadam bajarilib boriladi. 
6 Obyekt   –   Obyekt   sinf   turidagi   o‘zgaruvchi.   Obyekt   bu   sinf   bilan   farqli
tushuncha   hisoblanadi.   Obyekt   biz   yozgan   sinfimizdagi   har   xil   qoidalarga
bo‘ysunadigan ma’lumot bo‘lib, u tezkor xotirada saqlanadi, sinf esa qattiq diskda
saqlanadi.   Har   bir   yasalgan   obyekt   tezkor   xotiraning   ma’lum   bir   xonachalariga
joylashadi.   Hayotiy   bir   misol,   masalan,   ko‘p   qavatli   binoni   tezkor   xotira   deb
qarasak,   unda   istiqomat   qiluvchi   insonlar   esa   unda   saqlanuvchi   obyektlar   bo‘lib,
agar   biz   insonning   xususiyatlari,   bajaradigan   ishlari   va   hakoza   xususiyatlari
haqidagi bilimlarni qog‘ozga tushursak bu qoralamani sinf deb qaralishi mumkin.
Garchi   u   texnik   usulda   yozilmagan   bo‘lsa   ham.   Biz   ana   o‘sha   qoralamani
sinfimizda kompyuter tushunadigan tilga keltiramiz.
Sinf   – OYDning marzkazi hisoblanadi va u har xil kodlar, ma’lumotlar va shu
ma’lumotlar   qay   tarzda   o‘zgarishini   ifodalovchi   xususiyatlar   saqlanadi.
Boshqacharoq   qilib   aytadigan   bo‘lsak   hayotiy   obyektlarning   qanday   faoliyat
yuritishi,   nimalardan   iborat   ekanligi,   qanday   xususiyatlarga   ega   ekanligini
tavsiflovchi kichik bir hujjat sifatida qarash ham mumkin. C# da hamma narsa Sinf
ichida   sodir   bo‘ladi.   Sinf   o‘z   ichiga   o‘zgaruvchilar   va   metodlar(funksiyalar)   va
qiymati o‘zgarmaydigan konstantalarni  oladi. Yana shuni  ham  ta’kidlash kerakki,
har   bitta   sinf   bitta   o‘zgaruvchi   turi   bo‘lib   ham   xizmat   qiladi.   Huddi     string   yoki
boshqa turlar kabi har bir sinf ham ma’lum bir tur sifatida qaralishi mumkin.
Meros   olish(Inheritance)-   ma’lum   obyekt   asosida   boshqa   obyektni   yaratish
jarayoniga   aytiladi.   Bunda   obyektning   barcha   xususiyatlarini   meros   qilib   oladi
ya’ni   private(shaxsiy)   bo‘lmagan   o‘zgaruvchilari,   funksiyalari,   konstantalarini
bemalol   foydalanish.   Meros   olishdan   dastur   ishchi   vaqtida   ko‘p   formalikdan
foydalaniladi.
Vorislik   –   bu   shunday   jarayonki,   unda   bir   ob y ekt   boshqasining   xossalarini
o‘zlashtirishi   mumkin   bo‘ladi.   Vorislik   orqali   mavjud   sinflar   asosida   h osilaviy
sinflarni   qurish   mumkin   bo‘ladi.     Hosilaviy   sinf   (avlod   sinf)   o‘zining   “ona”
sinfidan (ajdod sinfdan) berilganlar va funksiyalarni vorislik bo‘yicha oladi, hamda
7 ular qatoriga faqat o‘ziga xos bo‘lgan qirralarni amalga oshirishga imkon beruvchi
berilgan va funksiyalarni qo‘shadi.  
Ko‘p   formalik   (Polymorphism)   OYDning   uchinchi   ustuni.   Yuqorida
berilgan ustunlar bilan doim birga yuradi. Ma’lum obyekt asosida boshqa obyektni
yaratish   jarayoniga   aytiladi.   Bir   sinfning   boshqa   sinfdan   meros   olishi   yordamida
amalga   oshiriladi.   Meros   olingan   obyekt   ota   obyektdagi   xususiyatlarni   tanlovga
ko‘ra meros oladi. 
Polimorfizm     –   bu   kodning,   bajarilish   paytidan   yuzaga   keladigan   holatga
bog‘liq   ravishda   o‘zini   turlicha   amal   qilish   xususiyatidir.   Polimorfizm   faqat
obyektlar   xususiyati   bo‘lmasdan,   balki   funksiya-a’zolar   xususiyatidir   va   ular
xususan, bitta nomdagi funksiya-a’zo vositasida har xil turdagi argumentlarga ega,
bajaridagan amali unga uzatiladigan argumentlar turiga bog‘liq bo‘lgan funksiyalar
turkumidan   foydalanish imkoniyatida namoyon bo‘ladi. Bu holatga funksiyalarni
qayta   yuklash   deyiladi.   Polimorfizm   amallarga   ham   qo‘llanishi   mumkin,   ya’ni
amal   mazmuni   (natijasi)   operand   (berilgan)   turiga   bog‘liq   bo‘ladi.
Polimorfizmning bunday turiga amallarni qayta yuklash deyiladi.
Mavhumlik   –   Abtraksiya   (Abstraction). Obyekt   bu   real   jism.   Abstraksiya
esa   ushbu   jismni   reallikdan   uzoq   deb   tassavur   qilib,   u   haqida   fikr   yuritishga
aytiladi.   Abstraksiyaga   fikrlar   to‘plami   sifatida   ham   qarasa   bo‘ladi.   Misol   uchun
telefon   jiringlasa,   telefonga   qo‘ng‘iroq   bo‘layotganini   bilamiz   lekin   uning   ichida
nima jarayon bo‘layotganini bilmaymiz.
Berilganlarni   abstraktlash   –   berilganlarni   yangi   turini   yaratish   imkoniyati
bo‘lib,   bu   turlar   bilan   xuddi   berilganlarning   tayanch   turlari   bilan   ishlagandek
ishlash mumkin. Odatda yangi turlarni berilganlarning abstrakt turi deyiladi, garchi
ularni   soddaroq   qilib   “foydalanuvchi   tomonidan   aniqlangan   tur”   deb   atash
mumkin.
Enkapsulyatsiya   (Encapsulation)- ma’lumotlar   va   funksiyalarni   bir
komponent   ichiga   yig‘ishga   aytiladi.   Buning   uchun   sinflardan   foydalaniladi.
Enkapsulatsiya   tanlov   asosida   sinfning   ba’zi   xususiyatlarini   foydalanuvchidan
8 yashirish imkonini beradi. Bunga misol qilib, ustidan maxsus modda bilan o‘ralgan
dorilarni keltirsak bo‘ladi.
Inkapsulyatsiya –   bu berilganlar va ularni qayta ishlovchi kodni birlashtirish
mexanizmidir.   Inkapsulyatsiya     berilganlar   va   kodni   tashqi   ta’sirdan   saqlash
imkonini beradi.
1.2.C#  Windows Forms boshqaruv elementlari
WinForm   (Windows   form   .Net)   –   bu   UI   framework   bo‘lib   kompyuter
dasturlarini   yaratishda   foydalaniladi.   Ishlab   chiqish   platformasi   boshqaruvni
boshqarish,   grafikalar,   ma’lumotlarni   bog‘lash   va   foydalanuvchini   kiritish   kabi
dasturlarni ishlab chiqish funksiyalarini o‘zida jamlagan. WinForm Visual  Studio
orqali   formaga   komponentlarni   osongina   tashlash   va   ularni   qo‘zg‘atish   orqali
kerakli joyga joylashtirib visual dizayn yaratish mumkin.
AFZALLIKLARI:
1. Bu ancha eski va ko‘p bora ishlatilgan va sinalgan.
2. Allaqachon   3-tomon   kontrollari   bilan   boy   bo‘lib,   tekin   yoki   sotib   olish
uchun tayyor.
3. Visual   Studio   dizayner   qismi   WPF   dan   ko‘ra   WinForms   uchun   yaxshiroq,
WPF   da   ko‘p   ishlarni   o‘zingiz   qilishingizga   to‘g‘ri   keladi.   O‘qish   tavsiya
qilinadi: 
WinForm va WPF ning asosiy farqlari.
WinFormda   siz   dasturlarni   oflayn   tarzda   yoki   internetga   ulangan   holatda
yangilanishlarni   olish   va   ulardan   foydalanishingiz   mumkin.   WinForm   o‘zi   ishlab
turgan kompyuter xotirasiga murojaat qilishi va undan ma’lumotlar olishi mumkin.
Bugundan boshlab sizlar bilan WinForm da dasturlarni qanday qilib yaratish
haqida gaplashamiz.
9 Buning   uchun   bizga   Visual   studio   dasturi   kerak   bo‘ladi. WinForm   bilan
ishlash ketma-ketligi:
1.Yangi forma yaratish
2. Formaga komponentlar qo‘shish
3.Kontrollerlarga event (hodisa) orqali funksiya berish
4.Formani ishga tushirish
Kelinglar bir boshdan boshlaymiz. Bizga Visual Studio dasturi kerak bo‘ladi.
1. Visual Studio dasturini ishga tushiramiz
2. “ Создание нового проекта ”   bo ‘ limitanlanadi
Visual Studio 2019
10 1.2.1-rasm.  Visual studio 2019da yangi loyiha yaratish.  Созданиепроекта
bo‘limiga winforms deb yozamiz va ENTER ni bosamiz.
5. Dasturlash tillari orasidan C# ni tanlaymiz. 
6.   Template(andoza)lar   orasidan   Приложение   Windows   Forms
( платформа  . NET  Framework) ni tanlaymiz.
11 1.2.2-rasm.
Loyiha   uchun   kerak   bo‘lgan   turni   tanlash   oynasi(Bizga   keragi   windowsform
oynasini tanlang)
Настройкановогопроекта menyusi   ochiladi   va   biz   endi   yaratmoqchi
bo‘lgan   dasturimiz   nomini   Project   name   bandiga   yozamiz.   Tayyor   endi   “ Далее ”
tugmasini bosamiz .
Bundan   tashqari   siz   ushbu   bo‘limda   dastur   qayerda   saqlanishi   kerakligini
ham   kiritib   ketishingiz   mumkin.   Buning   uchun   “Location”   qismidagi   ...   (uch
nuqta) ustiga bosib xotiradagi kerakli joyni tanlab qo‘yasiz.
O‘zi   aslida   Visual   Studio   sizga   “Form1[Design]”   loyiha   qismini   ochib
beradi   lekin   agarda   sizda   ochilmasa   “ Обозревательрешений ”   dan   “Form1”   ni
topib   ustiga   sichqonchaning   chap   tugmasini   ikki   marotaba   bosamiz   (keyingi
o‘rinlarda   ushbu   jarayon   double-click   deb   yuritiladi. Visual   Studio da   Windows
Form  ko‘rinishidagi dasturlarni yaratishda e’tiborimizni qaratishimiz zarur bo‘lgan
asosiy 4 ta qism to‘g‘risida to‘xtalib o‘tamiz.
1.2.3-rasm
Solution   Explorer   yaratilgan   loyihaning   qismlari,   fayllari,   kodlari,
resurs(manba)lari shu oynada ko‘rinib turadi.
12 Properties   (xususiyatlar)   bu   oynada   tanlangan   elementning   xususiyatlarini
sozlash mumkin bo‘ladi. Misol uchun, Solution Explorer dan biror bir dastur qismi
yoki   faylni   tanlasangiz   ushbu   qism   uchun   mavjud   bo‘lgan   xusuyitalarni   sozlash
mumkin   bo‘ladi.   Bundan   tashqari   Forma   va   unga   tashlangan   komponentlarning
ham xususiyatlarini o‘zgartirish mumkin. 
Form   Designer   (forma   dizayn   qismi)   Formaning   dizayn   qismi   bu   yerga
Toolbox   dan   komponentlarni   tashlashingiz   va   joylashtirishingiz   mumkin.   Bu
orqali   foydalanuvchi   uchun   qulay   va   chiroyli   bo‘lgan   foydalanuvchi   interfeysi
(user interface - UI) tayyorlaysiz. 
Toolbox   bu yerdan dasturingiz uchun kontroller(komponentlar) ni olishingiz
mumkin.   Buning   uchun   kerakli   komponent   ustiga   ikki   marta   bosiladi   yoki
komponentni tanlab surib olib o‘tsa ham bo‘ladi.
Back   Color:   forma   fon   rangini   belgilaydi.   Ushbu   xususiyatni   bosish   orqali
biz   tavsiya   etilgan   ranglar   ro‘yxatidan   yoki   ranglar   palitrasidan   o‘zimizga   mos
rangni tanlashimiz mumkin.
1.2.4-rasm.  Kompanenta uchun xossalar oynasi
BackgroundImage:  Shaklning fon rasmiga ishora qiladi
13 BackgroundImageLayout:   BackgroundImage   xususiyatida   ko‘rsatilgan
tasvir formada qanday joylashishini aniqlaydi.
ControlBox:   Shakl   menyusi   ko‘rsatiladimi   yoki   yo‘qligini   ko‘rsatadi.
Bunday holda, menyu deganda dastur belgisi, shakl sarlavhasi, shuningdek, shaklni
minimallashtirish   tugmalari   va   xoch   joylashgan   yuqori   darajadagi   menyu
tushuniladi.   Agar   bu   xususiyat   “yolg‘on”   ga   o‘rnatilgan   bo‘lsa,   biz   odatda   shakl
yopilgan belgi yoki xochni ko‘rmaymiz.
Cursor:  formada ishlatiladigan kursor turini belgilaydi
Enabled:   Agar   bu   xususiyat   noto‘g‘ri   o‘rnatilgan   bo‘lsa,   u
foydalanuvchidan   ma’lumotni   qabul   qila   olmaydi,   ya’ni   biz   tugmalarni   bosa
olmaymiz, matn maydonlariga matn kirita olmaymiz va hokazo.
Font:   butun   forma   va   undagi   barcha   boshqaruv   elementlari   uchun   shriftni
o‘rnatadi. Biroq, forma elementlari uchun maxsus shriftni o‘rnatish orqali biz uni
bekor qilishimiz mumkin.
ForeColor:  shakl shrift rangi.
Form Border Style:  shakl chegarasi va sarlavha satri qanday ko‘rsatilishini
belgilaydi.  Ushbu   xususiyatni   Yo‘q   deb   o‘rnatish   orqali   siz   erkin  shakldagi   ilova
ko‘rinishini yaratishingiz mumkin.
Help   Button:   formaning   yordam   tugmasi   ko‘rsatiladimi   yoki   yo‘qligini
belgilaydi.
Icon:  forma belgisini o‘rnatadi.
Location:   Start   Position   xususiyati   o‘rnatilgan   bo‘lsa,   ekranning   yuqori
chap burchagiga nisbatan pozitsiyani belgilaydi
MaximizeBox:   forma sarlavhasidagi  oynani kattalashtirish tugmasi  mavjud
yoki yo‘qligini belgilaydi.
MinimizeBox:  oynani kichraytirish tugmasi mavjudligini belgilaydi. 
MaximumSize:  formaning maksimal hajmini belgilaydi.
MinimumSize:  formaning minimal hajmini belgilaydi. 
Opacity:  shaklning shaffofligini o‘rnatadi.
14 Size:  shaklning dastlabki hajmini belgilaydi.
StartPosition:   forma   ekranda   paydo   bo‘ladigan   boshlang‘ich   pozitsiyasini
ko‘rsatadi.
Matn:  shakl sarlavhasini belgilaydi.
II BOB .  TASHKILOT MIQYOSIDA HUJJAT ALMASHINUV TIZIMI.
2.1 Dasturiy ta’minotni ishlab chiqish
Dasturiyta ’ minotniishlabchiqishdanavvalunialbattaloyihalabolishzarur ,
uningtashqiinterfeysiqulaybo ‘ lishifoydalanuvchiuchunjudamuhimhisoblanadi . Dast
uruchtajadvaldaniborattashkilot ma ’ lumotlar bazasinisaqlashikerak .   Birinchisi   bitta
yozuvda   quyidagi   maydonlarni   o ‘ z   ichiga   oladi :   Birinchisi   bitta   yozuvda   quyidagi
maydonlarni   o ‘ z   ichiga   oladi :   id ,   ism ,   familiya ,   telefon   raqami ,   jinsi ,   tug ‘ ilg ‘ an
yili ,   manzil ,   mehnat   daftarcha ,   mehformat ,   fayl ,   fayformat , l   login ,
parol .   Ikkinchisiga   quyidagilar   kiradi:   Id,   pasport,   lavozimId,   kelgan   vaqti,
shartnoma,   shartformati.Uchinchisiga   quyidagilar   kiradi:   id,   ishchiID,   olingan
vaqt,   kun,   miqdori,   hisobchiId.   Shuningdek,   dastur   yozuvlarni   qo‘shish,
o‘zgartirish, o‘chirish imkoniyatiga ega bo‘lishi kerak.
15 Dastur   taqdimot   standartlari   yordamida   ma ‘ lumotlar   bazasini   qattiq   diskda
saqlashi kerak.
Funksionallik:   dastur   qo‘shimcha   maxsus   komponentlarni   talab
qilmaydigan to‘liq dasturiy mahsulot bo‘lishi kerak.
Ishonchlilik:  dastur mustaqil bo‘lishi kerak.
Samaradorlik:   dastur   operatsion   tizimda   ishlashi   va   dasturning   maqsadi
hamda   mohiyatiga   muvofiq,   apparat   resurslariga   kichik   talablar   qo‘yishi
kerak.Dastur   intuitiv   foydalanuvchi   uchun   qulay   grafik   interfeysga   ega   bo‘lishi
kerak.
Dasturning   barqaror   ishlashi   kafolatlangan   kompyuterning   minimal   texnik
xususiyatlari:
kompyuter / protsessor: Pentium 4 toifali protsessorli kompyuter;
Xotira: 512mb;
monitor: 640x480 piksel yoki undan ortiq piksellar soniga ega monitor;
operatsion tizim: WindowsXP operatsion tizimi, Microsoft .NET Framework
Runtime v4.0 talab qilinadi;
Ma’lumotlar   bazasi   hajmi   bilan   belgilanadigan   qattiq   diskda   bo‘sh   disk
maydoni mavjudligi.
Tashqi funktsiyalari:
1. Tashkilot xodimlarini ma’lumotlar bazasiga qo‘shish;
2. Tashkilot xodimlarini ma’lumotlarini o‘zgartirish;
3. Xodimlarni chetlashtirish;
4. Ma’lumotlar bazasida turli mezonlar bo‘yicha qidirish;
5. Xodimlarni id bo‘yicha ko‘rish;
6. Dastur barcha funksiyalarni cheklangan vaqt ichida bajarishi kerak;
Kritik holatlar:
Jurnal   ma’lumotlar   bazasini   saqlashda   qattiq   diskda   bo‘sh   joy
yetishmasligi.   Fayl tizimidagi har qanday operatsiyani bekor qilish kerak;
Windows-ni o‘chirish.   Bunday holda, dastur o‘z ishini tugatishi kerak.
16 Interfeys   quyi   tizimi   dasturning   foydalanuvchi   interfeysini   amalga
oshiradi.   Ma’lumotlar   bazasi   jadval   ko‘rinishida   №,   Joylar,   Erkin   va   Rezidentlar
ustunlari   bilan   ma’lumotlarni   saralash   va   belgilangan   mezon   bo‘yicha   qidirish
imkoniyatiga ega.
Ma’lumotlar   bazasi   bilan   ishlash   quyi   tizimi   ma ’ lumotlar   bazasini
boshqarishga kirishni ta’minlaydi:
Ma’lumotlar bazasi yozuvlarini yaratish, o‘chirish, o‘zgartirish;
  Boshqa quyi tizimlar uchun ma’lumotlarni taqdim etish
Qidiruv   quyi   tizimi   ma’lum   qiymat   uchun   to‘g‘ridan-to‘g‘ri   ma’lumotlar
bazasida qidiruvni amalga oshiradi.
Eksport   quyi   tizimi   ma’lumotlar   bazasidan   ma’lumotlarni   vizual   taqdim
etish uchun umumiy formatlarga saqlash usullarini amalga oshiradi.
2.2 Ma’lumotlar bazasi bilan ishlash
C# da tizim resurslaridan foydalanadigan ba’zi obyektlar mavjud. Uni olib
tashlash,   yopish,     yo‘q   qilish   va   hokazo.   C#   da   siz   yangi   resurs   namunasini
yaratish,   uni   ishlatish,   yopish,   tozalash   va   undan   xalos   bo‘lish   uchun   kod
yozishingiz   mumkin.   Yoki,   boshqa   tomondan,   siz   yaratilgan   obyekt   yopilgan,
tozalangan   va   utilizatsiya   qilinadigan,   so‘ngra   resurslar   boshqa   jarayonlar
tomonidan   qayta   ishlatilishi   mumkin   bo‘lgan   ushbu   using   blokidan
foydalanishingiz   mumkin.   Bu   ramka   har   bir   jarayon   uchun   eng   yaxshi   harakatni
amalga oshirishini ta ’ minlaydi.
SqlDataAdapter
SqlDataAdapter   sinfi ADO.NET C# ma’lumotlar provayderining bir qismi
bo‘lib,   System.Data.SqlClient   nom   maydonida   joylashgan.   SqlDataAdapter
ma’lumotlar to‘plami va SQL ma’lumotlar bazasi  o‘rtasidagi  aloqani ta’minlaydi.
17 Biz   SqlDataAdapter   obyektini   ma ’ lumotlar   to‘plami   obyekti   bilan   birgalikda
ishlatishimiz   mumkin.   DataAdapter   ma’lumotlar   to‘plamidagi   ma’lumotlarni
ma’lumotlar manbasidagi ma’lumotlarga mos keladigan tarzda o‘zgartiradigan Fill
usuli va ma’lumotlar manbasidagi  ma’lumotlarni DataSetga mos keladigan tarzda
o‘zgartiruvchi Update(yangilash) usuli bilan ushbu kombinatsiyani ta’minlaydi.
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.Fill(ds);
SqlDataAdapter   Obyekti   va   DataSet   obyektlari   SQL   Server   ma’lumotlar
bazasida   ma’lumotlarga   kirish   va   ma’lumotlarni   manipulyatsiya   qilish
operatsiyalarini bajarish uchun birlashtirilgan. Foydalanuvchi  Dataset  obyektidagi
ma’lumotlarda   Tanlash,   Insert(qo‘yish)   va   hokazo   kabi   SQL   operatsiyalarini
bajarganida,   foydalanuvchi   SqlDataAdapterda   Update(yangilash)   usulini
chaqirmaguncha ma’lumotlar bazasiga bevosita ta’sir qilmaydi.
SQLCommand
SQLCommand   obyekti ma’lumotlar manbasiga qarshi SQL operatorlari va
saqlangan   protseduralarni   bajarish   uchun   ishlatiladi.   U   barcha   turdagi   SQL
so‘rovlarini bajaradi, masalan, qo‘shish, yangilash va hokazo.
SqlCommand cmd = new SqlCommand(“your sql statements”, Connection);
cmd.ExecuteNonQuery();
SqlCommandBuilder
SqlCommandBuilder   siz   taqdim   etgan   tanlash   buyrug‘i   asosida   SQL
so‘rovlarini   yaratish   va   bajarish   uchun   ishlatilishi   mumkin.   U   DataSet   yoki   SQL
Server   ma ’ lumotlar   namunasiga   kiritilgan   o zgarishlarni   aks   ettirish   imkoniyatiniʻ
beradi.   CommandBuilder   DataAdapter   ob’ekti   bilan   bog‘langan   ulanishni   ochadi
va har safar serverni aylanib o‘tadi va amal so‘rovlarini yaratish so‘raladi.
SqlCommandBuilder   obyekti   har   doim   DataAdapter   xususiyati
o‘rnatilganda   RowUpdating   hodisasi   uchun   tinglovchi   vazifasini   bajaradi.
SqlDataAdapter-ning   SelectCommand   xususiyatini   o‘rnatgan   bo‘lsangiz,   bitta
18 jadval   yangilanishi   uchun   SQL   bayonotlarini   avtomatik   ravishda   yaratish   uchun
SqlCommandBuilder ob y ektini yaratishingiz mumkin.
2.2.1- rasm  SQL serverni yaratish
2.2.2- rasm  SQL bazada yaratilgan jadvallar majmuasi
19 2.2.3- rasm  SQL bazada yaratilgan jadvallar va unga kiritilgan ma’lumotlar
2.2.4-  rasmda
Dasturning   asosiy   bazaviy   diagrammasi   keltirilgan . Admini   lavozim   bilan
bog ‘ laymiz   chunki   admin   lavozim   tayinlaydi   vaishchilarni   oylika   bog ‘ l aymiz
20 sababi   ishchilar   qancha   oylik   olishni   hisobchi   qaysi   odamga   qancha   oylik
berganini   bazaga   kiritib   qoyadi . Hisobchi   oylikka   bog ‘ lanadi ,   sababi   hisobchi
ishchilarga   qancha   oylik   berishni   taqsimlab   beradi .
2.3. Dasturdan olingan natijalar
2.3.1-rasm . 
Dasturning   kirish   qismi.   Bu   faol   oyna   faqat   admin,   ishchi,   buxgaltereya
bo‘limlari uchun ajratilgan foydalanuvchilari uchun ishlaydi.Bu bo‘limlar har biri
foydalanuvchi uchun alohida login va parol tayinlangan va shu login va parolsiz bu
ko‘rsatilgan bo‘limlarga kira olmaydi.
21 2.3.2-rasm.  Admin oynasi.
2.3.3-rasm
22 Ishchilar   ma’lumot   oynasi.   Bu   faol   oynada   admin   tomonidan   ishlaydi   va
admin ishchi  ma’lumotlarini oladi va ma’lumotlar bazasiga  qo‘shadi . Qo‘shilgan
ma’lumotlar ishchi  tomonidan to‘liq   ro‘yxatdan   o‘tgan bo‘lsa ro‘yxatdan o‘tgan
deb   bazaga   ma’lumot   keladi   aks   holda   ro‘yxatdan   o‘tmagan   deb   bazada   ko‘rinib
turadi.
2.3.4-rasm
Lavozimlar   qo‘shish   oynasi.   Bu   oynada   tashkilot   uchun   kerakli   lavozimni
qo‘shamiz va o‘zgartira olamiz .
23 2.3.5- rasm
Ishchi   oynasidan   registratsiyadan   o‘tish.   Ishchi   registratsiya   o‘tish   uchun
admin   tomonidan   kiritilgan   pasport   seriyasi   bo‘yicha   dasturga   kira   oladi   chunki
admin   bizga   kelgan   ishchini   pasport,lavozim   va   shartnomasini   bazaga   yuklagan
bo‘lsagina     bu   bo‘limga     kira   oladi   aks   holda   ishchiga   ro‘yxatdan     o‘ tmagansiz
so‘rovi ostida  murojaat qilinadi.
24 2.3.6-rasm
  Registratsiyadan   o‘tish   jarayoni.Ishchi   bu   oynada   to‘liq   ro‘yxatdan   o‘tishi
zarur aks holda ma’lumot yetarli emas deb ishchiga ogohlantrish  yuboriladi.Ishchi
admin tomonidan tayinlangan lavozim bo‘yicha  ro‘yxatdan  o‘ta  oladi.
2.3.7 rasm  Bugalteriya oynasiga kirish
25 2.3.8-rasm
Bugalteriya   profili   oynasi.Bu   oynada   bugalter   har   bir   ishchi   uchun   maosh
tayinlay   oladi.   Har   bir   ishchi   uchun   tayinlangan   oylik   bazaga   yozilib   boraveradi.
Buxgalter   faqat   admin   tomonidan   kiritilgan   va   ro‘yxatdan   o‘tgan   ishchi   uchun
maosh chiqara oladi.
26 XULOSA
Men yaratgan loyiha nomi “Tashkilot miqyosida hujjat almashinuvi tizimi”. 
Bu tizimda bizga kerakli bo‘lgan bo‘limlar oynasini qilib chiqdim. Birinchi Admin
oynasida   ishchi   va   lavozimlar   haqida   ma’lumotlar   oynasini   yaratdim.Yaratilgan
oynada   ma’lumotlar   bazasini   shakllantirdim.   Bizga   qulaylik   beradigan   jihati
ishchilar   orasida   ro‘yxatdan   o‘tmaganlarni   osonlikcha   ajratib   olish
mumkin.Ikkinchi   oynamizda   esa   ishchilarni   qabul   qilish   jarayoni   biz   uchun
osonlashtirilgan   qismi   mavjud.Ya’ni   ishchining   ma’lumotlarini   fayl   shaklida
jo‘natib   bazaga   osonlikcha   qo‘shish   imkonini   beradi.Uchinchi   qismda
buxgaltereya qismida ishchiga ish kuniga nisbatan oylik maosh tayinlashga imkon
beradi.Har   bir   ishchiga   sarflangan   oylik   miqdorini   qayd   etib   saqlab   qo‘yish
mumkin.
Bu   bilan   tashkilotlarning   ishini   avtomatik   ishlashi   uchun   yaqindan   yordam
beradigan   tizimi   hosil   bo‘ldi.   Tashkilotlarning   ishini   bu   tizimda   ancha
yegillashtirish imkonini beradi.
Bu   tizmni   hosil   qilishda   “Sqlserver”   va   “WindowsForm”   bilan   ishlash
ko‘nikmasi   yanada   ko‘paydi   va   oshdi.   SQL   serverda   qanday   ishlash   va   qanday
tartibda ma’lumot almashinishni o‘rgandim.
Tashkilotlar   o‘rtasida   hujjat   almashinuvi   tizimining   maqsadi   inson   yo‘l
qo‘yishi mumkin bo‘lgan   xatolarni yo‘qotish uchun   va   ish jarayonining sifatini
tezkorligini oshirishga xizmat qiladi.
Bu  tizimni   qilish  jarayonida  shuni  bildimki  ,  AKT   butun dunyoda,  ayniqsa
bizning yurtimizda eng ilg‘or rivojlanayotgan sohalardan biri hisoblanadi. Hozirgi
kunda davlatimizda AKTni rivojlantirish maqsadida ko‘plab ishlar olib borilmoqda
va   ushbu   ishlarni   davlat   xizmatlari:   tibbiyot,   ta’limni   raqamlashtirilayotgani
misolida   ko‘rsak   bo‘ladi.     Albatta,   bu   jarayonda   eng   muhim   omillardan   biri
bo‘lgan yosh, aqlli, kreativ va IT ni yaxshi tushunadigan kadrlarga ehtiyoj kattaligi
kelib chiqadi.
27 Foydalanilgan adabiyotlar ro‘yxati 
1.Head First C#, Jennifer Greene, Andrew Stellman (ruscha: Learning C#, D.
Greene,   E.   Stillman).   Mashqlarni   o‘z   ichiga   oladi.   Yangi   boshlanuvchilar   uchun
yaxshi kitob sifatida ko‘pchilik tomonidan tavsiya etilgan .
2.C# 5.0 dasturlash tili va .NET 4.5 platformasi - Endryu Troelsen. Ommabop
kitob,   yangi   boshlanuvchilar   uchun   juda   yaxshi,   ko‘p   odamlar   u   bilan   til
o‘rganishni boshlaydilar.
3.C# 4.0: Gerbert Shildt tomonidan to‘liq qo‘llanma. Bu kitob ham mashhur,
men undan boshladim.
4. C# orqali CLR. Microsoft .NET Framework 4.5 C# tilida dasturlash Jeffri
Rixter tomonidan. Allaqachon klassik C# kitobi, har bir o‘zini hurmat qiladigan C#
dasturchisi uni kamida bir marta o‘qishi kerak.
5.C# 6.0 qisqacha, Jozef Albahari, Ben Albahari. Ajoyib ma’lumotnoma
6.Essential  C# 5.0, Mark Michaelis.  Dasturchilar  uchun yaxshi  kitob. Ushbu
kitobni   o‘qishdan   oldin   boshqa   tillarda   boshlang‘ich   bilimga   ega   bo‘lish   tavsiya
etiladi, ya'ni yangi boshlanuvchilar uchun tavsiya etilmaydi.
Internet manbalari
7. http://google.com/microsoft.com
8.http://google.com/c-sharp.pro
9. https://docs.dot-net.uz/c-.net/desktop/winform-windows-form/1-dars.-
forma-yaratish
28 ILOVALAR
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
using  System.Text;
using  System.Threading.Tasks;
using  System.Windows.Forms;
namespace  XodimHujjatlari
{
publicpartialclass Bosh  : Form
    {
        Kirish k =  null ;
public Bosh ()
        {
            InitializeComponent();
        }
privatevoid  button3_Click( object  sender, EventArgs e)
        {
            k =  new  Kirish(1, this );
            k.Show();
        }
privatevoid  button1_Click( object  sender, EventArgs e)
        {
            k =  new  Kirish(2, this );
            k.Show();
        }
privatevoid  button2_Click( object  sender, EventArgs e)
        {
            k =  new  Kirish(3, this );
            k.Show();
        }
privatevoid  Bosh_Click( object  sender, EventArgs e)
        {
            k.Close();
        }
    }
}
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
29 using  System.Text;
using  System.Threading.Tasks;
using  System.Windows.Forms;
using  System.Data.SqlClient;
using  System.Drawing.Printing;
using  System.IO;
using  System.Configuration;
namespace  XodimHujjatlari
{
publicpartialclass Admin  : Form
    {
string  admin, path =  "" ;
        SqlConnection connection =  new  
SqlConnection(ConfigurationManager.ConnectionStrings[ "MTMDB" ].ConnectionString);
int  index,index1;
public Admin (String admin)
        {
this .admin = admin;
            InitializeComponent();
        }
privatevoid  Admin_Load( object  sender, EventArgs e)
        {
            label1.Text = admin;
        }
privatevoid  panel4_Paint( object  sender, PaintEventArgs e)
        {
        }
privatevoid  button1_Click( object  sender, EventArgs e)
        {
try
            {
                path =  "" ;
                panel4.Visible =  true ;
                label5.Text = label3.Text;
                pictureBox2.Image = Properties.Resources.ish; 
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
                DataTable table =  new  DataTable();
                cmd.CommandText =  $"select w.Id, w.pasport as 'Pasport serya 
raqami', w.lavozim, w.kelgan as 'Ishga kelgan vaqti' from Worker w " ;
                connection.Open();
                table.Load(cmd.ExecuteReader());
                connection.Close();
                table.Columns.Add( "Mehnat shartnomasi" );
                table.Columns.Add( "Ro'yxatdan o'tganlar" );
for  ( int  i=0; i<table.Rows.Count; i++)
                {
                    DataTable ish =  new  DataTable();
30 if  (table.Rows[i][2].Equals( "Hisobchi" ))
                        cmd.CommandText =  $"select * from Hisobchi where 
id= {table.Rows[i][0]} " ;
else
                        cmd.CommandText =  $"select * from Ishchi where 
id= {table.Rows[i][0]} " ;
                    connection.Open();
                    ish.Load(cmd.ExecuteReader());
                    connection.Close();
if  (ish.Rows.Count > 0)
                    {
                        table.Rows[i][5] =  "O'tgan" ;
                    }
else  table.Rows[i][5] =  "O'tmagan" ;
                    table.Rows[i][4] =  " ??????  Open fayl" ;
                }
                DataTable table1 =  new  DataTable();
                cmd.CommandText =  $"select * from Lavozim" ;
                connection.Open();
                table1.Load(cmd.ExecuteReader());
                connection.Close();
for ( int  i=0; i<table1.Rows.Count; i++)
                {
                    comboBox2.Items.Add(table1.Rows[i][1]);
                }
                dataGridView1.DataSource = table;
                panel4.Visible =  true ;
                panel5.Visible =  false ;
            } catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button2_Click( object  sender, EventArgs e)
        {
try
            {
while (comboBox2.Items.Count!=0)
                    comboBox2.Items.RemoveAt(0);
                panel4.Visible =  true ;
                label5.Text = label4.Text;
                pictureBox2.Image = 
Properties.Resources.businessmen_podium_standing_three_podiums_bars_reaching_up_77
922530;
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
                DataTable table =  new  DataTable();
                cmd.CommandText =  $"select * from Lavozim" ;
                connection.Open();
                table.Load(cmd.ExecuteReader());
                connection.Close();
                dataGridView2.DataSource = table;
31                 panel5.Visible =  true ;
                panel4.Visible =  false ;
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button8_Click( object  sender, EventArgs e)
        {
try
            {
if  (!textBox3.Text.Equals( "" ))
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    DataTable table =  new  DataTable();
                    cmd.CommandText =  $"select * from Lavozim where 
nomi=' {textBox3.Text} '" ;
                    connection.Open();
                    table.Load(cmd.ExecuteReader());
                    connection.Close();
if  (table.Rows.Count < 1)
                    {
                        cmd.CommandText =  $"insert into Lavozim 
values(' {textBox3.Text} ')" ;
                        connection.Open();
                        cmd.ExecuteNonQuery();
                        connection.Close();
                        DataTable table1 =  new  DataTable();
                        cmd.CommandText =  $"select * from Lavozim" ;
                        connection.Open();
                        table1.Load(cmd.ExecuteReader());
                        connection.Close();
                        dataGridView2.DataSource = table1;
                        MessageBox.Show( "Qo'shildi" );
                        textBox3.Text =  "" ;
                    }
else
                    {
                        MessageBox.Show( "Bunday lavozim bor" );
                        textBox3.Text =  "" ;
                    }
                }
else
                {
                    MessageBox.Show( "Maydonni to'ldiring" );
                }
            } catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
32             }
        }
privatevoid  dataGridView2_CellClick( object  sender, DataGridViewCellEventArgs e)
        {
            index = e.RowIndex;
if  (e.RowIndex!=-1 && e.RowIndex != dataGridView2.Rows.Count)
            {
                textBox3.Text = 
dataGridView2.Rows[e.RowIndex].Cells[1].Value.ToString();
            }
        }
privatevoid  button7_Click( object  sender, EventArgs e)
        {
try
            {
if  (index != -1 && index != dataGridView2.Rows.Count - 1)
                {
if  (!textBox3.Text.Equals( "" ))
                    {
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        DataTable table =  new  DataTable();
                        cmd.CommandText =  $"select * from Lavozim where 
nomi=' {textBox3.Text} ' and id!= {dataGridView2.Rows[index].Cells[0].Value} " ;
                        connection.Open();
                        table.Load(cmd.ExecuteReader());
                        connection.Close();
if  (table.Rows.Count < 1)
                        {
                            cmd.CommandText =  $"update Lavozim set 
nomi=' {textBox3.Text} ' where id= {dataGridView2.Rows[index].Cells[0].Value} " ;
                            connection.Open();
                            cmd.ExecuteNonQuery();
                            connection.Close();
                            MessageBox.Show( "Muavfaqiyatli yangilandi" );
                            dataGridView2.Rows[index].Cells[1].Value = 
textBox3.Text;
                            textBox3.Text =  "" ;
                        }
else
                        {
                            MessageBox.Show( "Bunday lavozim bor" );
                            textBox3.Text =  "" ;
                        }
                    }
else
                    {
                        MessageBox.Show( "Maydonni to'ldiring" );
                    }
                }
else
                {
33                     MessageBox.Show( "O'zgartirilayotgan satrni tanlang" );
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button9_Click( object  sender, EventArgs e)
        {
try
            {
if  (index != -1 && index != dataGridView2.Rows.Count - 1)
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"delete from Lavozim where 
id= {dataGridView2.Rows[index].Cells[0].Value} " ;
                    connection.Open();
                    cmd.ExecuteNonQuery();
                    connection.Close();
                    MessageBox.Show( "O'chirildi" );
                    textBox3.Text =  "" ;
                    dataGridView2.Rows.RemoveAt(index);
                }
else
                {
                    MessageBox.Show( "O'chirilayotgan satrni tanlang" );
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button3_Click( object  sender, EventArgs e)
        {
try
            {
if  (!textBox1.Text.Equals( "" ) && comboBox2.SelectedIndex>-1 && !path.Equals( "" ))
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    DataTable table =  new  DataTable();
                    cmd.CommandText =  $"select * from Worker where 
pasport=' {textBox1.Text} '" ;
                    connection.Open();
                    table.Load(cmd.ExecuteReader());
                    connection.Close();
                    String s = DateTime.Now.ToString( "yyyy-MM-dd" );
34 if  (table.Rows.Count < 1)
                    {
                        cmd.CommandText =  $"insert into 
Worker(pasport,lavozim,kelgan,shartnoma,format) values(' {textBox1.Text} ', 
' {comboBox2.SelectedItem} ',' {s} ',@shart,' {path.Substring(path.LastIndexOf( '.' ))} ')
" ;
                        FileStream fs =  new  FileStream(path, FileMode.Open, 
FileAccess.Read);
                        Byte[] qa =  new  Byte[fs.Length];
                        fs.Read(qa, 0, qa.Length);
                        fs.Close();
                        SqlParameter prm =  new  SqlParameter( "@shart" , 
SqlDbType.VarBinary, qa.Length, ParameterDirection.Input,  false , 0, 0,  null , 
DataRowVersion.Current, qa);
                        cmd.Parameters.Add(prm);
                        connection.Open();
                        cmd.ExecuteNonQuery();
                        connection.Close();
                        DataTable table1 =  new  DataTable();
                        cmd.CommandText =  $"select w.Id, w.pasport as 'Pasport 
serya raqami', w.lavozim, w.kelgan as 'Ishga kelgan vaqti' from Worker w " ;
                        connection.Open();
                        table1.Load(cmd.ExecuteReader());
                        connection.Close();
                        table1.Columns.Add( "Mehnat shartnomasi" );
                        table1.Columns.Add( "Ro'yxatdan o'tganlar" );
for  ( int  i = 0; i < table1.Rows.Count; i++)
                        {
                            DataTable ish =  new  DataTable();
                            cmd.CommandText =  $"select * from Ishchi where 
id= {table1.Rows[i][0]} " ;
                            connection.Open();
                            ish.Load(cmd.ExecuteReader());
                            connection.Close();
if  (ish.Rows.Count > 0)
                            {
                                table1.Rows[i][5] =  "O'tgan" ;
                            }
else
                            {
                                DataTable his =  new  DataTable();
                                cmd.CommandText =  $"select * from Hisobchi where 
id= {table1.Rows[i][0]} " ;
                                connection.Open();
                                his.Load(cmd.ExecuteReader());
                                connection.Close();
if  (his.Rows.Count > 0)
                                {
                                    table1.Rows[i][5] =  "O'tgan" ;
                                }
else
                                     table1.Rows[i][5] =  "O'tmagan" ;
                            }
                            table1.Rows[i][4] =  " ??????  Open fayl" ;
35                         }
                        dataGridView1.DataSource = table1;
                        MessageBox.Show( "Qo'shildi" );
                        textBox1.Text =textBox4.Text=path=  "" ;
                    }
else
                    {
                        MessageBox.Show( "Bunday ishchi bor" );
                        textBox1.Text =  "" ;
                    }
                }
else
                {
                    MessageBox.Show( "Maydonni to'ldiring" );
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button4_Click( object  sender, EventArgs e)
        {
try
            {
if  (index1 != -1 && index1 != dataGridView1.Rows.Count - 1)
                {
if  (!textBox1.Text.Equals( "" ) && comboBox2.SelectedIndex!=-1)
                    {
bool  hisob =  false ;
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        DataTable table =  new  DataTable();
if  (dataGridView1.Rows[index1].Cells[2].Value.Equals( "Hisobchi" ))
                            hisob =  true ;
                        cmd.CommandText =  $"select * from Worker where 
pasport=' {textBox1.Text} ' and id!= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                        connection.Open();
                        table.Load(cmd.ExecuteReader());
                        connection.Close();
if  (table.Rows.Count < 1)
                        {
if  (path.Equals( "" ))
                            {
if  (hisob && comboBox2.SelectedItem.Equals( "Hisobchi" ))
                                {
                                    cmd.CommandText =  $"update Worker set 
pasport=' {textBox1.Text} ', lavozim=' {comboBox2.SelectedItem} ' where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                                    connection.Open();
                                    cmd.ExecuteNonQuery();
36                                     connection.Close();
                                    MessageBox.Show( "Muavfaqiyatli yangilandi" );
                                    dataGridView1.Rows[index1].Cells[1].Value = 
textBox1.Text;
                                    dataGridView1.Rows[index1].Cells[2].Value = 
comboBox2.SelectedItem;
                                }
else
                                {
if  (!hisob)
                                    {
                                        cmd.CommandText =  $"update Worker set 
pasport=' {textBox1.Text} ', lavozim=' {comboBox2.SelectedItem} ' where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                                        connection.Open();
                                        cmd.ExecuteNonQuery();
                                        connection.Close();
                                        MessageBox.Show( "Muavfaqiyatli 
yangilandi" );
                                        dataGridView1.Rows[index1].Cells[1].Value 
= textBox1.Text;
                                        dataGridView1.Rows[index1].Cells[2].Value 
= comboBox2.SelectedItem;
                                    }
else
                                        MessageBox.Show( "Hisobchi ishchini 
lavozimini o'zgartira olmaysiz" );
                                }
                            }
else
                            {
if  (hisob && comboBox2.SelectedItem.Equals( "Hisobchi" ))
                                {
                                    cmd.CommandText =  $"update Worker set 
pasport=' {textBox1.Text} ', lavozim=' {comboBox2.SelectedItem} ', shartnoma=@shart, 
format=' {path.Substring(path.LastIndexOf( '.' ))} ' where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                                    FileStream fs =  new  FileStream(path, 
FileMode.Open, FileAccess.Read);
                                    Byte[] qa =  new  Byte[fs.Length];
                                    fs.Read(qa, 0, qa.Length);
                                    fs.Close();
                                    SqlParameter prm =  new  SqlParameter( "@shart" , 
SqlDbType.VarBinary, qa.Length, ParameterDirection.Input,  false , 0, 0,  null , 
DataRowVersion.Current, qa);
                                    cmd.Parameters.Add(prm);
                                    connection.Open();
                                    cmd.ExecuteNonQuery();
                                    connection.Close();
                                    MessageBox.Show( "Muavfaqiyatli yangilandi" );
                                    dataGridView1.Rows[index1].Cells[1].Value = 
textBox1.Text;
37                                     dataGridView1.Rows[index1].Cells[2].Value = 
comboBox2.SelectedItem;
                                }
else
                                {
if  (!hisob)
                                    {
                                        cmd.CommandText =  $"update Worker set 
pasport=' {textBox1.Text} ', lavozim=' {comboBox2.SelectedItem} ', shartnoma=@shart, 
format=' {path.Substring(path.LastIndexOf( '.' ))} ' where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                                        FileStream fs =  new  FileStream(path, 
FileMode.Open, FileAccess.Read);
                                        Byte[] qa =  new  Byte[fs.Length];
                                        fs.Read(qa, 0, qa.Length);
                                        fs.Close();
                                        SqlParameter prm =  new  
SqlParameter( "@shart" , SqlDbType.VarBinary, qa.Length, ParameterDirection.Input, 
false , 0, 0,  null , DataRowVersion.Current, qa);
                                        cmd.Parameters.Add(prm);
                                        connection.Open();
                                        cmd.ExecuteNonQuery();
                                        connection.Close();
                                        MessageBox.Show( "Muavfaqiyatli 
yangilandi" );
                                        dataGridView1.Rows[index1].Cells[1].Value 
= textBox1.Text;
                                        dataGridView1.Rows[index1].Cells[2].Value 
= comboBox2.SelectedItem;
                                    }
else
                                        MessageBox.Show( "Hisobchi ishchini 
lavozimini o'zgartira olmaysiz" );
                                }
                            }
                            textBox1.Text =  "" ;
                        }
else
                        {
                            MessageBox.Show( "Bunday ishchi bor" );
                            textBox1.Text =  "" ;
                        }
                    }
else
                    {
                        MessageBox.Show( "Maydonni to'ldiring" );
                    }
                }
else
                {
                    MessageBox.Show( "O'zgartirilayotgan satrni tanlang" );
                }
38             }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button5_Click( object  sender, EventArgs e)
        {
try
            {
if  (index != -1 && index != dataGridView2.Rows.Count - 1)
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    connection.Open();
                    cmd.CommandText =  $"delete from oylik where 
ishchiId= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                    cmd.ExecuteNonQuery();
                    cmd.CommandText =  $"delete from Ishchi where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                    cmd.ExecuteNonQuery();
                    cmd.CommandText =  $"delete from Hisobchi where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                    cmd.ExecuteNonQuery();
                    cmd.CommandText =  $"delete from Worker where 
id= {dataGridView1.Rows[index1].Cells[0].Value} " ;
                    cmd.ExecuteNonQuery();
                    connection.Close();
                    MessageBox.Show( "O'chirildi" );
                    path =  "" ;
                    textBox1.Text =  "" ;
                    dataGridView1.Rows.RemoveAt(index1);
                }
else
                {
                    MessageBox.Show( "O'chirilayotgan satrni tanlang" );
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  textBox2_TextChanged( object  sender, EventArgs e)
        {
try
            {
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
                DataTable table =  new  DataTable();
39                 cmd.CommandText =  $"select w.Id, w.pasport as 'Pasport serya 
raqami', w.lavozim, w.kelgan as 'Ishga kelgan vaqti' from Worker w where (pasport 
like '% {textBox2.Text} ' or pasport like '% {textBox2.Text} %' or pasport like 
' {textBox2.Text} %')" ;
                connection.Open();
                table.Load(cmd.ExecuteReader());
                connection.Close();
                table.Columns.Add( "Mehnat shartnomasi" );
                table.Columns.Add( "Ro'yxatdan o'tganlar" );
for  ( int  i = 0; i < table.Rows.Count; i++)
                {
                    DataTable ish =  new  DataTable();
if  (table.Rows[i][2].Equals( "Hisobchi" ))
                        cmd.CommandText =  $"select * from Hisobchi where 
id= {table.Rows[i][0]} " ;
else
                        cmd.CommandText =  $"select * from Ishchi where 
id= {table.Rows[i][0]} " ;
                    connection.Open();
                    ish.Load(cmd.ExecuteReader());
                    connection.Close();
if  (ish.Rows.Count > 0)
                    {
                        table.Rows[i][5] =  "O'tgan" ;
                    }
else  table.Rows[i][5] =  "O'tmagan" ;
                    table.Rows[i][4] =  " ??????  Open fayl" ;
                }
                dataGridView1.DataSource = table;
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  label3_Click( object  sender, EventArgs e)
        {
        }
privatevoid  button10_Click( object  sender, EventArgs e)
        {
this .Close();
new  Bosh().Show();
        }
privatevoid  Print(Panel pl)
        {
            PrinterSettings ps =  new  PrinterSettings();
        }
privatevoid  printDocument1_PrintPage( object  sender, 
System.Drawing.Printing.PrintPageEventArgs e)
40         {
            e.Graphics.DrawString( "Salom" ,  new  Font( "Times new Romans" , 16, 
FontStyle.Bold), Brushes.Black,  new  PointF(55, 140)); 
        }
privatevoid  label1_Click( object  sender, EventArgs e)
        {
        }
privatevoid  label2_Click( object  sender, EventArgs e)
        {
        }
privatevoid  textBox4_Click( object  sender, EventArgs e)
        {
            openFileDialog1.Filter =  "Select 
file(*.pdf;*.docx;*.doc;*.xlsx;*.ppt;*.txt)|
*.pdf;*.docx;*.doc;*.xlsx;*.ppt;*.txt" ;
if  (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                textBox4.Text = openFileDialog1.FileName;
                path = openFileDialog1.FileName;
            }
        }
privatevoid  dataGridView1_CellClick( object  sender, DataGridViewCellEventArgs e)
        {
            index1 = e.RowIndex;
if (index1!=-1 && index1 != dataGridView1.Rows.Count)
            {
                textBox1.Text = 
dataGridView1.Rows[index1].Cells[1].Value.ToString();
                comboBox2.SelectedItem = 
dataGridView1.Rows[index1].Cells[2].Value.ToString();
                textBox4.Text =  "Fayl" ;
            }
if  (e.ColumnIndex == 4)
            {
                DataGridViewRow row = dataGridView1.Rows[index1];
int  d =  int .Parse(row.Cells[0].Value.ToString());
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText =  $"select shartnoma,format from Worker where 
id= {d} " ;
                DataTable table1 =  new  DataTable();
                connection.Open();
                table1.Load(cmd.ExecuteReader());
                connection.Close();
var  name = row.Cells[1].Value.ToString();
var  fayl = (Byte[])(table1.Rows[0][0]);
var  format = table1.Rows[0][1];
41 var  newFileName = name + format;
                File.WriteAllBytes(newFileName, fayl);
                System.Diagnostics.Process.Start(newFileName);
            }
if (e.ColumnIndex==5 && 
dataGridView1.Rows[e.RowIndex].Cells[5].Value.Equals( "O'tgan" ))
            {
int  f= int .Parse(dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString());
if  (dataGridView1.Rows[e.RowIndex].Cells[2].Value.Equals( "Hisobchi" ))
                {
this .Close();
new  Form2(f, admin).Show();
                }
else
                {
this .Close();
new  Malumot(f, admin).Show();
                }
            }
        }
    }
}
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
using  System.Text;
using  System.Threading.Tasks;
using  System.Windows.Forms;
using  System.Data.SqlClient;
using  System.Configuration;
namespace  XodimHujjatlari
{
publicpartialclass Kirish  : Form
    {
        SqlConnection connection =  new  
SqlConnection(ConfigurationManager.ConnectionStrings[ "MTMDB" ].ConnectionString);
int  k;
        Form f;
string  comand;
public Kirish ( int  i,Form f)
        {
this .k = i;
this .f = f;
            InitializeComponent();
        }
privatevoid  Form1_Load( object  sender, EventArgs e)
        {
42 switch  (k)
            {
case  1:
                    {
                        comand =  $"select * from Admin where login=@login and 
parol=@parol" ;
                        panel2.Visible =  true ;
                        panel1.Visible =  false ;
break ;
                    }
case  2:
                    {
                        panel2.Visible =  false ;
                        panel1.Visible =  true ;
break ;
                    }
case  3:
                    {
                        comand =  $"select * from Hisobchi where login=@login and 
parol=@parol" ;
                        panel2.Visible =  true ;
                        panel1.Visible =  false ;
                        label1.Visible =  true ;
break ;
                    }
            }
        }
privatevoid  button2_Click( object  sender, EventArgs e)
        {
try
            {
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = comand;
                cmd.Parameters.AddWithValue( "@login" , textBox4.Text);
                cmd.Parameters.AddWithValue( "@parol" , textBox3.Text);
                DataTable table =  new  DataTable();
                connection.Open();
                table.Load(cmd.ExecuteReader());
                connection.Close();
if  (table.Rows.Count > 0)
                {
this .Close();
                    f.Hide();
if  (k == 1)  new  Admin(table.Rows[0][1].ToString()).Show();
if  (k == 3)  new  oylik( int .Parse(table.Rows[0][0].ToString())).Show();
                }
else
                {
                    MessageBox.Show( "Login yoki parolingiz xato" );
                    textBox4.Text = textBox3.Text =  "" ;
                }
43             }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button1_Click( object  sender, EventArgs e)
        {6
this .Close();
        }
privatevoid  label1_Click( object  sender, EventArgs e)
        {
            panel2.Visible =  false ;
            panel1.Visible =  true ;
        }
privatevoid  button3_Click( object  sender, EventArgs e)
        {
try
            {
                SqlCommand cmd = connection.CreateCommand();
                cmd.CommandType = CommandType.Text;
if (k==3)
                    cmd.CommandText =  $"select * from Worker where 
pasport=' {textBox2.Text} ' and lavozim='Hisobchi'" ;
else
                        cmd.CommandText =  $"select * from Worker where 
pasport=' {textBox2.Text} '" ;
                DataTable table =  new  DataTable();
                connection.Open();
                table.Load(cmd.ExecuteReader());
                connection.Close();
if  (table.Rows.Count > 0)
                {
if (k==2)
                    cmd.CommandText =  $"select * from Ishchi where 
id= {table.Rows[0][0]} " ;
else
                        cmd.CommandText =  $"select * from Hisobchi where 
id= {table.Rows[0][0]} " ;
                    DataTable table1 =  new  DataTable();
                    connection.Open();
                    table1.Load(cmd.ExecuteReader());
                    connection.Close();
if  (table1.Rows.Count < 1)
                    {
this .Close();
                        f.Hide();
if (k==2)
new  Regstr( int .Parse(table.Rows[0][0].ToString())).Show();
44 if  (k == 3)
new  Ishchi ( int .Parse(table.Rows[0][0].ToString()), table.Rows[0]
[1].ToString()).Show();
                     }
else
                    {
                        MessageBox.Show( "Bu passportdan oldin ro'yxatdan o'tgan" );
                    }
                }
else
                {
                    MessageBox.Show( "Siz ro'yxatdan o'tmagansiz" );
                    textBox2.Text=  "" ;
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  label8_Click( object  sender, EventArgs e)
        {
        }
    }
}
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
using  System.Text;
using  System.Threading.Tasks;
using  System.Data.SqlClient;
using  System.Windows.Forms;
using  System.Configuration;
namespace  XodimHujjatlari
    {
publicpartialclass oylik  : Form
        {
int  id, ishId;
bool  ishchi =  true ;
            DataTable qiymat;
            SqlConnection connection =  new  
SqlConnection(ConfigurationManager.ConnectionStrings[ "MTMDB" ].ConnectionString);
public oylik ( int  id)
            {
this .id = id;
                InitializeComponent();
45             }
privatevoid  oylik_Load( object  sender, EventArgs e)
            {
try
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"select * from Hisobchi where id= {id} " ;
                    DataTable kim =  new  DataTable();
                    connection.Open();
                    kim.Load(cmd.ExecuteReader());
                    connection.Close();
                    label1.Text = kim.Rows[0][4] +  ""  + kim.Rows[0][3] +  " 
profilingizga xush kelibsiz" ;
                    cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id " ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button1_Click( object  sender, EventArgs e)
            {
try
                {
                    ishchi =  true ;
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id " ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
46 privatevoid  button2_Click( object  sender, EventArgs e)
            {
try
                {
                    ishchi =  false ;
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId" ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button6_Click( object  sender, EventArgs e)
            {
try
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
if  (ishchi)
                    {
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id "  +
$"where (i.ism like '% {textBox2.Text} ' or i.ism like '% {textBox2.Text} %' or i.ism 
like ' {textBox2.Text} %' or i.familya like '% {textBox2.Text} ' or i.familya like '%
{textBox2.Text} %' or i.familya like ' {textBox2.Text} %')" ;
                    }
else
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId "  
+
$"where (i.ism like '% {textBox2.Text} ' or i.ism like '% {textBox2.Text} %' or i.ism 
like ' {textBox2.Text} %' or i.familya like '% {textBox2.Text} ' or i.familya like '%
{textBox2.Text} %' or i.familya like ' {textBox2.Text} %')" ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
47 catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  dataGridView1_CellClick( object  sender, DataGridViewCellEventArgs e)
            {
try
                {
if  (e.RowIndex != -1 && e.RowIndex != dataGridView1.Rows.Count - 1 && ishchi)
                    {
                        ishId 
= int .Parse( dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString());
                        textBox6.Text = 
dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
                        ishchi =  false ;
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId 
where i.id= {dataGridView1.Rows[e.RowIndex].Cells[0].Value} " ;
                        DataTable data =  new  DataTable();
                        connection.Open();
                        data.Load(cmd.ExecuteReader());
                        connection.Close();
                        dataGridView1.DataSource = data;
                    }
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button4_Click( object  sender, EventArgs e)
            {
this .Close();
new  Bosh().Show();
            }
privatevoid  label1_Click( object  sender, EventArgs e)
            {
            }
privatevoid  button3_Click( object  sender, EventArgs e)
            {
48 try
                {
if  (!textBox1.Text.Equals( "" ) && !textBox3.Text.Equals( "" ) && !
textBox6.Text.Equals( "" ))
                    {
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
string  date =DateTime.Now.ToString( "MM/dd/yyyy" );
int  kun =  int .Parse(textBox1.Text);
double  miq =  double .Parse(textBox3.Text);
                        cmd.CommandText =  $"insert into 
oylik(ishchiId,olgavVaqt,kun,miqdor,hisobchiId) values"  +
$"( {ishId} ,' {date} ', {kun} , {miq} , {id} )" ;
                        connection.Open();
                        cmd.ExecuteNonQuery();
                        connection.Close();
                        MessageBox.Show( "Oylik mavfaqiyatli to'landi" );
                        textBox1.Text = textBox6.Text = textBox3.Text =  "" ;
                    }
else
                    {
                        MessageBox.Show( "Maydonlarni to'ldiring" );
                    }
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
        }
    }
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
using  System.Text;
using  System.Threading.Tasks;
using  System.Windows.Forms;
using  System.Data.SqlClient;
using  System.IO;
using  System.Configuration;
namespace  XodimHujjatlari
{
publicpartialclass Ishchi  : Form
    {
string   img =  "" ,pas;
int  id;
49         SqlConnection connection =  new  
SqlConnection(ConfigurationManager.ConnectionStrings[ "MTMDB" ].ConnectionString);
public Ishchi ( int  id, string  pas)
        {
this .id = id;
this .pas = pas;
            InitializeComponent();
        }
privatevoid  Ishchi_Load( object  sender, EventArgs e)
        {
            textBox6.Text = pas;
        }
privatevoid  button2_Click( object  sender, EventArgs e)
        {
try
            {
if (!textBox1.Text.Equals( "" ) && !textBox2.Text.Equals( "" ) && !
textBox4.Text.Equals( "" ) && !img.Equals( "" ) && !textBox5.Text.Equals( "" ))
                {
if  (textBox4.Text.Equals(textBox5.Text))
                    {
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        cmd.CommandText =  $"select * from Hisobchi where 
login=' {textBox2.Text} '" ;
                        DataTable data =  new  DataTable();
                        connection.Open();
                        data.Load(cmd.ExecuteReader());
                        connection.Close();
if  (data.Rows.Count < 1)
                        {
                            FileStream fs1 =  new  FileStream(img, FileMode.Open, 
FileAccess.Read);
                            Byte[] rasm =  new  Byte[fs1.Length];
                            fs1.Read(rasm, 0, rasm.Length);
                            fs1.Close();
string  jins = radioButton1.Checked ? radioButton1.Text : radioButton2.Text;
                            cmd.CommandText =  $"insert into 
Hisobchi(id,login,parol,ism,familya,tel,jins,rasm) "  +
$"values ( {id} , ' {textBox2.Text} ', ' {textBox4.Text} ', ' {textBox1.Text} ', 
' {textBox3.Text} ',' {maskedTextBox1.Text} ',' {jins} ', @fayl)" ;
                           SqlParameter p2 =  new  SqlParameter( "@fayl" , 
SqlDbType.VarBinary, rasm.Length, ParameterDirection.Input,  false , 0, 0,  null , 
DataRowVersion.Current, rasm);
                            cmd.Parameters.Add(p2);
                            connection.Open();
                            cmd.ExecuteNonQuery();
                            connection.Close();
                            MessageBox.Show( "Muavfaqiyatli ro'yxatdan o'tdingiz" );
                            textBox1.Text = textBox2.Text = textBox3.Text = 
textBox4.Text = textBox5.Text = textBox6.Text =  maskedTextBox1.Text = img =  "" ;
50 this .Close();
new  Bosh().Show();
                        }
else
                        {
                            MessageBox.Show( "Bunday logindan allaqochon ro'yxatdan
o'tilgan" );
                            textBox5.Text =  "" ;
                        }
                    }
else
                    {
                        MessageBox.Show( "Parollar mos kelmayabdi" );
                        textBox6.Text = textBox4.Text =  "" ;
                    }
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
                connection.Close();
            }
        }
privatevoid  button1_Click( object  sender, EventArgs e)
        {
try
            {
                openFileDialog1.Filter =  "Select image(*.jpg;*.png;*.Gif)|
*.jpg;*.png;*.Gif" ;
if  (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    pictureBox1.Image = Image.FromFile(openFileDialog1.FileName);
                    img = openFileDialog1.FileName.ToString();
                }
            }
catch  (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }
}
using  System;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Linq;
using  System.Text;
using  System.Threading.Tasks;
using  System.Data.SqlClient;
using  System.Windows.Forms;
51 using  System.Configuration;
namespace  XodimHujjatlari
    {
publicpartialclass oylik  : Form
        {
int  id, ishId;
bool  ishchi =  true ;
            DataTable qiymat;
            SqlConnection connection =  new  
SqlConnection(ConfigurationManager.ConnectionStrings[ "MTMDB" ].ConnectionString);
public oylik ( int  id)
            {
this .id = id;
                InitializeComponent();
            }
privatevoid  oylik_Load( object  sender, EventArgs e)
            {
try
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"select * from Hisobchi where id= {id} " ;
                    DataTable kim =  new  DataTable();
                    connection.Open();
                    kim.Load(cmd.ExecuteReader());
                    connection.Close();
                    label1.Text = kim.Rows[0][4] +  ""  + kim.Rows[0][3] +  " 
profilingizga xush kelibsiz" ;
                    cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id " ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button1_Click( object  sender, EventArgs e)
            {
try
                {
                    ishchi =  true ;
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
52                     cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id " ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button2_Click( object  sender, EventArgs e)
            {
try
                {
                    ishchi =  false ;
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId" ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  button6_Click( object  sender, EventArgs e)
            {
try
                {
                    SqlCommand cmd = connection.CreateCommand();
                    cmd.CommandType = CommandType.Text;
if  (ishchi)
                    {
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', i.tel as 'telefon nomer',lavozim as 'Lavozimi' from Ishchi i inner join
Worker w on i.id=w.id "  +
$"where (i.ism like '% {textBox2.Text} ' or i.ism like '% {textBox2.Text} %' or i.ism 
like ' {textBox2.Text} %' or i.familya like '% {textBox2.Text} ' or i.familya like '%
{textBox2.Text} %' or i.familya like ' {textBox2.Text} %')" ;
53                     }
else
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId "  
+
$"where (i.ism like '% {textBox2.Text} ' or i.ism like '% {textBox2.Text} %' or i.ism 
like ' {textBox2.Text} %' or i.familya like '% {textBox2.Text} ' or i.familya like '%
{textBox2.Text} %' or i.familya like ' {textBox2.Text} %')" ;
                    DataTable data =  new  DataTable();
                    connection.Open();
                    data.Load(cmd.ExecuteReader());
                    connection.Close();
                    dataGridView1.DataSource = data;
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
                }
            }
privatevoid  dataGridView1_CellClick( object  sender, DataGridViewCellEventArgs e)
            {
try
                {
if  (e.RowIndex != -1 && e.RowIndex != dataGridView1.Rows.Count - 1 && ishchi)
                    {
                        ishId 
= int .Parse( dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString());
                        textBox6.Text = 
dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
                        ishchi =  false ;
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
                        cmd.CommandText =  $"select i.id,i.ism+i.familya as 'Ism 
familiya', o.olgavVaqt as 'Oxirgi oylik sanasi',o.kun as 'Ish kuni', o.miqdor as 
'Oylik miqdori(so`m)', h.familya+h.ism as 'Oylik chiqargan hisobchi' from oylik o 
inner join Ishchi i on i.id=ishchiId inner join Hisobchi h on h.id=o.hisobchiId 
where i.id= {dataGridView1.Rows[e.RowIndex].Cells[0].Value} " ;
                        DataTable data =  new  DataTable();
                        connection.Open();
                        data.Load(cmd.ExecuteReader());
                        connection.Close();
                        dataGridView1.DataSource = data;
                    }
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
54                 }
            }
privatevoid  button4_Click( object  sender, EventArgs e)
            {
this .Close();
new  Bosh().Show();
            }
privatevoid  label1_Click( object  sender, EventArgs e)
            {
            }
privatevoid  button3_Click( object  sender, EventArgs e)
            {
try
                {
if  (!textBox1.Text.Equals( "" ) && !textBox3.Text.Equals( "" ) && !
textBox6.Text.Equals( "" ))
                    {
                        SqlCommand cmd = connection.CreateCommand();
                        cmd.CommandType = CommandType.Text;
string  date =DateTime.Now.ToString( "MM/dd/yyyy" );
int  kun =  int .Parse(textBox1.Text);
double  miq =  double .Parse(textBox3.Text);
                        cmd.CommandText =  $"insert into 
oylik(ishchiId,olgavVaqt,kun,miqdor,hisobchiId) values"  +
$"( {ishId} ,' {date} ', {kun} , {miq} , {id} )" ;
                        connection.Open();
                        cmd.ExecuteNonQuery();
                        connection.Close();
                        MessageBox.Show( "Oylik mavfaqiyatli to'landi" );
                        textBox1.Text = textBox6.Text = textBox3.Text =  "" ;
                    }
else
                    {
                        MessageBox.Show( "Maydonlarni to'ldiring" );
                    }
                }
catch  (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    connection.Close();
} }}}
55
Sotib olish
  • O'xshash dokumentlar

  • Agile va Scrum metodologiyalari dasturiy ta'minot ishlab chiqish
  • Talabalar haqida ma'lumot saqlovchi tizim
  • HTML tili, uning asosiy elementlari. Jadval va rasm hosil qilish. Gipermatn va freymlar joylashtirish
  • Internet to‘lov tizimlari ular orqali to‘lovlar va haridlarni amalga oshirish
  • Jamiyatni axborotlashtirishning muhim xususiyatlari

Xaridni tasdiqlang

Ha Yo'q

© Copyright 2019-2025. Created by Foreach.Soft

  • Balansdan chiqarish bo'yicha ko'rsatmalar
  • Biz bilan aloqa
  • Saytdan foydalanish yuriqnomasi
  • Fayl yuklash yuriqnomasi
  • Русский