៤.១.១ Primary Datanearsite.weebly.com/uploads/2/4/6/2/24629833/newsarana.docx · Web...
Transcript of ៤.១.១ Primary Datanearsite.weebly.com/uploads/2/4/6/2/24629833/newsarana.docx · Web...
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
ជំពូកទី១សេសចក្តីសេ23ីម
១.១. បុព្វសេហ'ុនៃនការសិក្សាគ្រ6វគ្រជាវសព្វនៃ78សេនះ គ្របសេទសជាសេគ្រចីនសេ;សេលីពិភពសេ<កកំពុងតែ'វវិ'្តសេ>រកភាពរកីចំសេរនីយ៉ាB ងខ្លាD ងំ សេEីម្បីបំសេពញ តាម
'ំរវូការរបស់មនុស្សសព្វនៃ78។ ភាពរកីចំសេរនីសេនះវាពឹងតែ2Mកយ៉ាB ងខ្លាD ងំសេ>សេលីវស័ិយអប់រជំាចំបង សេគ្រPះសេយីងបានEឹងសេហីយថ្នាចំសេនះវជិាQ �ឺជាគ្រទព្យមួយតែEលគ្មាV នអ្វីមកកា'់នៃ7DបានសេWយី។ កាលណ្ឌាសេយីងមានចំសេនះEឹងខ្ពស់មានគ្រកមសីលធម៌លM មានវន័ិយ មានន័យថ្នាសេយីងជាមនុស្សមាន'ំនៃលក#ុងសង្គមសេហីយសេធ្វីសេ]យគ្របសេទសជា'ិសេយីងនិង ក#ុងសង្គមគ្រ�6ួរជាពិសេសសខDួនឯងផ្ទាa ល់មានភាពរកីចំសេរនីនិងមានសុភមង្គល។ ទនaឹមនឹងការរកីចំសេរនីតែ2#ក បសេច្ចកវទិ្យាព'៍មានវទិ្យាសេនះ2ងតែEលមានបណ្ឌា្ត លគ្របសេទសធំៗ ជាសេគ្រចីនសេ;សេលីសកលសេ<កក៏Eូចជា បណ្ឌា្ត គ្រកមុហ៊ុនសហគ្រគ្មាស'ូច ធ ំ ]ជីវកមVអង្គការ និង6g ប័នសេ2្សងៗ បាននឹងកំពុងយកចិ'3ទុកដាក់យ៉ាB ងជិ'ស#ិទ្ធសេEីម្ីបពគ្រងឹង សម'gភាពចំសេនះEឹងក#ុងន័យ2្សារភាQ ប់យ៉ាB ងជិ'ស#ិទ្ធសេ>នឹង វស័ិយព'៍មានវទិ្យាសេនះ សេគ្រPះថ្នាវា2្តល់2លគ្របសេយ៉ាជន៍តែEលមិន]ចកា'់នៃ7DបានEូចជា2្តល់ភាពងាយគ្រសលួក#ុងការសេគ្របីគ្របាស់មានភាពទាន់សម័យ និងចំសេណញសេពលសេវ<សេហីយគ្រពមទាងំ]ចសេដាះគ្រ6យបញ្ញាl មួយចំនួនធំ តែEលមនុស្សមិន]ចសេធ្វីបានសេទm'2ង។
មិនតែ'បសេណ្ឌាn ះវាក៏មានភាពងាយគ្រសលួក#ុងការ2្តល់នូវភាពទុកចិ'្តសុវ'gិភាពEល់ការគ្រ�ប់គ្រ�ង ការរក្សាទុកទិន#ន័យ និងការ�ណនាសេ2្សងៗ សេទីបមា្ច ស់2aះជួរមួយកតែនDងមានការសេពញចិ'្ត និងសំសេរចចិ'្តសេគ្រជីសសេរសីយកការសេគ្របីគ្របាស់ Computer មកសេធ្វីការគ្រ�ប់គ្រ�ងទុកទិន#ន័យអ'ិ7ិជនរបស់ខDួនចំនួសពីការសេគ្របីលិខិ'6# មសេគ្រចីនសេធ្វីសេ]យមានភាពសV�ុ6V ញ និងចំណ្ឌាយសេពលសេវ<យូរ។សេដាយសេមីលសេpីញពីបញ្ញាl លំបាកក#ុងការគ្រ�ប់គ្រ�ងអ'ិ7ិជន របស់មា្ច ស់2aះជួលសេហីយក៏Eូចជាបានទទូលការតែណរនាពីំសេ<កគ្រ�អូ#កគ្រ�សូេទីបគ្រកមុសេយីងខ្ញុំសហការគ្មា# សេEីម្ីបបសេងsី'ជាគ្របព័ន ្ធ Database មួយតែEលទាក់ទងសេ> នឹងការគ្រ�ប់គ្រ�ងបនaប់ជួលតាមរយះកមVវធិ ី MS. Access 2010 សេEីម្ីបបសេងsី'ជាគ្របព័ន្ធ Database មួយសេEីម្ីបគ្រ�ប់គ្រ�ងទិន#ន័យអ'ិ7ិជនសេ]យមា្ច ស់2aះជូល2ង និងសេEីម្ីបបញ្ចប់ថ្នា# ក់បរញិ្ញា& បគ្រ'រងរបស់គ្រកមុខ្ញុំ2ង។ ១.២. ចំសេណ្ឌាទបញ្ញាl
សេEីម្ីបបសេងsី'គ្របព័ន្ធ Database សេនះគ្រកមុសេយីងខ្ញុំបានចុះសេ>សេធ្វីការ6កសួរព័'៍មានសេដាយផ្ទាa ល់ជាមួយមា្ច ស់2aះជូលសេEីម្ីបសេ]យEឹងពីរសេបmបនៃនការគ្រ�ប់គ្រ�ងរបស់មា្ច ស់2aះជូល តែEលកំពុងជួបគ្របទះសព្វនៃ78សេនះថ្នា សេ'ីមានកតា្ត អ្វីខDះតែEលនាសំេ]យមាន2ល់លំបាកក#ុងការគ្រ�ប់គ្រ�ងសេនះ បនាa ប់មកសេទីបសេយីងបានEឹងថ្នាវាមានបញ្ញាl មួយចំនួនEូចខ្លាងសេគ្រកាម៖
ពិបាករក្សាទិន#ន័យរបស់អ'ិ7ិជន និងមិនសូវមានសុវ'gិភាព ពិបាកបញ្ចូលទិន#ន័យរបស់អ'ិ7ិជន ពិបាកតែស្វងរកទិន#ន័យរបស់អ'ិ7ិជន ពិបាកក#ុងការបូកសរបុបញQី6# មគ្របចាតំែខនីមួយៗ មានភាពយឺ'យ៉ាB វ និងកំហុសឆ្គង ក#ុងការសេចញវក័ិយប័គ្រ' ពិបាកក#ុងការសេធ្វី Report។
១.៣. សេគ្មាលបំណងនៃនការសិក្សា1
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងបនាa ប់ពីគ្រកមុរបស់ពួកខ្ញុំបានចុះសេ>គ្របមូលទិន#ន័យ និងបានពិភាក្សាអំពីបញ្ញាl តែEល មា្ច ស់2aះជូលបានជួប
គ្របទះរចួមកគ្រកមុរបស់សេយីងខ្ញុំក៏បានសំសេរចចិ'្តនសេងsី'គ្របព័នa Database មួយសេEីម្ីបជួយសគ្រមលូសេ]យ2aះជូលរបស់គ្មា'់មានការគ្រ�ប់គ្រ�ងមានភាពលMគ្របសេសីរ និងមានគ្របសិទ្ធិភាពជាងការគ្រ�ប់គ្រ�ងទិន#ន័យជាគ្រកដាស6# ម។ ភាពងាយទាសំេនាះមានEូចជា៖
មានសុវ'gិភាពក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យសេជmសសេវmងការបា'់ ងាយគ្រសលួក#ុងការលុបទិន#ន័យរបស់អ'ិ7ិជន បានយ៉ាB ងឆាប់រហ័ស ងាយគ្រសលួក#ុងការគ្រសង់ព'៍មានរបស់អ'ិ7ិជនមា# ក់ៗ បញ្ចូលព័'៌មានរបស់អ'ិ7ិជនបានឆាប់រហ័ស ងាយគ្រសលួតែស្វងរកព'៍មានរបស់អ'ិ7ិជន សេEីម្ីបសេមីលគ្របវ'្តិរបូ ងាយគ្រសលួ23ល់ព'៍មានសេ>សេ]យអ'ិ7ិជន អំពីការបង់គ្របាក់គ្របចាតំែខក#ុង មានសេល្បzនសេល{នក#ុងការ�ណនាគ្របាក់ជូនអ'ិ7ិជនរាល់តែខមួយៗ មានភាពច្បាស់<ស់រវាងសេលខកុងទ័រ(ទឹក,សេភDីង)សេ;តាមបនaប់របស់អ'ិ7ិជន។
១.៤. ទំហំតែEនកំន'់នៃនការសិក្សាសេដាយសេយ៉ាងសេ>តាមសេពលសេវ<តែEល6<បានកំន'់ សេហីយក៏EូចជាធនធានតែEលគ្រកមុសេយីងខ្ញុំមានEូសេច#ះ
គ្រកមុសេយីងខ្ញុំសូមកំន'់នូវទំហំនៃនការគ្រ�ប់គ្រ�ងសេដាយសេធ្វីការគ្រ�ប់គ្រ�ងEូចជា៖ គ្រ�ប់គ្រ�ងសេលីព'៍មានរបស់អ'ិ7ិជន។ គ្រ�ប់គ្រ�ងសេលីទិន#ន័យតែEលមានសេ;ក#ុង2aះជូល រមួមានទិន#ន័យទឹក, សេភDីង, បនaប់។ គ្រ�ប់គ្រ�ងសេលីការរក្សាទិន#ន័យ។ គ្រ�ប់គ្រ�ងសេលីគ្របព័ន្ធសុវ'្តិភាព។ គ្រ�ប់គ្រ�ងសេលីការទូទា'់គ្របាក់តែEលអ'ិ7ិជនគ្រ'វូចំណ្ឌាយ។ បសេងsី'ជា Report សេ]យអ'ិ7ិជនរាងរាល់ ១ តែខម3ង។
១.៥. 6រៈសំខ្លាន់នៃនការសិក្សាបនាa ប់ពីបានបញ្ចប់នូវកិច្ចការគ្រ6វគ្រជាវសេនះគ្រកមុសិក្សារបស់សេយីងខ្ញុំទុកថ្នា និងទទួលបាននូវអ'gគ្របសេយ៉ាជន៏
ជាសេគ្រចីនEូចជា៖ ចំសេPះមជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជាឥណ្ឌា្ឌ
- ]ចសេធ្វីសេ]យមជ្ឈមណ្ឌ មានភាពល្ីបល្បាញ សេដាយបានបណ្តុ ះបណ្ឌា្ត លសិស្សនិស្សិ'ទាងំចំសេនះEឹង និងការអនុវ'3ន៍ផ្ទាa ល់សេ;តាមគ្រកមុហុ៊ននានា។
- 2្សារភាQ ប់ទំនាក់រវាងមជ្ឈមណ្ឌ ល និងគ្រ�ប់6g ប័នតែEលគ្រកមុនិសិ្ស'បានចុះសេធ្វីកមVសិក្សា។- បានបន្សល់ទុកជាឯក6រសំរាប់និសិ្ស' ឫអ#កសិក្សាជំនាន់សេគ្រកាយតែEលមានចំណ្ឌាប់]រមVណ៍
សេលីគ្របព័ន្ធគ្រ�ប់គ្រ�ង2aះជួលមួយសេនះ។ ចំសេPះមា្ច ស់2aះជូល
- ]ចសេធ្វីសេ]យគ្រកមុហ៊ុន ឬ 6g ប័នមានអ'ិ7ិជន6្គ ល់សេគ្រចីន។- ងាយគ្រសលួក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យ រក្សារទិន#ន័យ តែស្វងរកទិន#ន័យ តែកទិន#ន័យ លុបទិន#ន័យ -ល-។
2
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង- ចំសេណញសេពលសេវ<។- ទទួលបាននូវគ្របព័ន្ធមួយតែEលមានសុវ'gភាពក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យទាងំ7Vី ទាងំចាស់។
2លគ្របសេយ៉ាជន៍ចំសេPះនិសិ្ស'មានEូចជា- 2្តល់ឱកាសក#ុងការបសេញ្ចញសមg'ភាពក#ុងរយៈសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង- 2្តល់បទពិសេ6ធន៍ក#ុងការសសេសរគ្របពន្ធ Database។- 2្តល់សេ]យសេយីងEឹងយ៉ាB ងច្បាស់នូវ6រៈគ្របសេយ៉ាជន៍របស់គ្របព័ន្ធគ្រ�ប់គ្រ�ងសេនះក៏Eូចជា Process
គ្រ�ប់គ្រ�ងទិន#ន័យ។- ជួយបំសេពញ និងតែស្វងរកនូវចំនុចខ្វះខ្លា' របស់ពួកសេយីងជាសេEីម -ល- ។
១.៦.រចនាសម្ព័ន្ធនៃនការសិក្សាការសិក្សាគ្រ6វគ្រជាវសេលីគ្របព័ន្ធគ្រ�ប់គ្រ�ងបនaប់ជូលសេ>សេ]យ Green Home សេនះ�ឺគ្រកមុរបស់ខ្ញុំបាន
តែបងតែចកសេចញជា ៦ ជំពូកធំៗតែEលមានEូចខ្លាងសេគ្រកាម៖ ជំពូកទី១: សេសចក្តីសេ2្តីមជំពូកទី២: ការរលឹំកគ្រទឹស្តីតែEលPក់ព័ន្ធជំពូកទី៣: សិក្សាទីតាងំភូមិ6គ្រស្ត និង6g នភាពរបស់2aះជួលជំពូកទី៤: វធីិ6គ្រស្តនៃនការគ្រ6វគ្រជាវជំពូកទី៥: សេសចក្តីសន#ិដា� ន និងការ2្តល់អនុ6សន៍ជំពូកទី៦: ឯក6រសេយ៉ាង (Reference)
3
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
ជំពូកទី២4
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងរលឹំកគ្រទឹស3ី
ក#ុងការសេធ្វី6រណ្ឌាគ្រកមុរបស់សេយីងខ្ញុំបានសេគ្រជីសសេរសីយកកមVវធីិ Microsoft Access 2010 សគ្រមាប់ សេធ្វីការសសេសរគ្របព័ន្ធគ្រ�ប់គ្រ�ងសេ>សេលីសេសវាកមVតែ2#ក2aះជួល Eូសេច#ះសេយីងគ្រ'វូសិក្សាអំពីរ Microsoft Access 2010 ។២.១. សេ'ី Microsoft Access ជាអ្វី ?
Microsoft Access 2010 ជា DBMS (Database Management System) ជាកមVវធីិមួយតែEលគ្រ'វូបានសេ�សេគ្របីគ្របាស់សគ្រមាប់សេធ្វីការសសេសរជាកមVវធីិខ្លា# '់'ូច។
Microsoft Access �ឺជាកមVវធីិមួយតែEលបានបសេងsី'សេWងីក#ុងសេគ្មាលបំណង សំរាប់សេ]យសេយីងសេគ្របីគ្របាស់ក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យ និងអនុញ្ញា& 'ិសេ]យសេយីងបសេងsី'នូវកមVវធីិ'ូចសំរាប់គ្រ�ប់គ្រ�ង]ជីវកមV ឬតាម6g ប័នមួយចំនួនEូចជាៈ
កាងារគ្រ�ប់គ្រ�ងស3ុក ការគ្រ�ប់គ្រ�ងសេភាជនីដា� ន កាងារការយិ៉ាល័យ កាងាររដា� បាល កាងារ�ណសេនយ្យ ]ជីវកមVខ្លា# ''ូច កាងារតាម6g ប័នសេ2្សងៗ ជាសេគ្រចីនសេទm' . . .ចំសេPះការបសេងsី'គ្របព័ន្ធ Database ឬគ្របព័ន្ធគ្រ�ប់គ្រ�ង សេ;ក#ុង Microsoft Access សេយីងគ្រ'វូពឹងតែ2Mកសេ>
សេលី Objects របស់ Microsoft Office Access ទាងំ៦ Eូចខ្លាងសេគ្រកាម៖ Table : សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Table Object Query: សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Query Object Form: សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Form Object Report: សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Report Object Macro: សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Macro Object
Module: សេគ្របីសគ្រមាប់2aុកទិន#ន័យរបស់ Module Object
២.២. គ្របសេភទ Data TypeData Type �ឺជាគ្របសេភទទិន#ន័យតែEលសេ�សេគ្របីសំរាប់កំន'់សេ>សេលី Fields ឬ Columns ថ្នាសេ'ី Fields នីមួយៗ
មានគ្របសេភទទិន#ន័យជាអ្វី? តែEល Data Type មានជា សេលខ ជាអក្សរ ជានៃ78តែខឆា# កំំសេនី' ជា OLE Object Currency -ល-។ Eូសេច#ះ
សេយីងគ្រ'វូកំណ'់គ្របសេភទ Data Type សេ]យសំគ្រសបសេ>តាមទិន#ន័យតែEលគ្រ'វូបញ្ចូលក#ុង Fields នីមួយៗ។ សេEីម្ីប គ្របសេភទទិន#ន័យ Data Type បានសេយីង�ប្ីបតែស្វងយល់ពីតារាងទិន#ន័យEូចខ្លាងសេគ្រកាម៖
គ្របសេភទទិន#ន័យ ពិពណ៌នា ទំហំText រក្សាទុកទិន#ន័យគ្របសេភទជាអក្សរឬសេលខតែ'មិន]ច�ណនាបានសេទ 2aុក'ួអក្សរពី០-២៥៥'ួ
5
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងEូចជា]សយដា� ន សេលខទូរស័ពa សេលខកូEសំគ្មាល់ជាសេEីម។ ។
Memoវាមានលក្ខណៈEូចជា Text Data Type តែEលតែ'វាខុសគ្មា#គ្រ'ង់ថ្នាវា]ច2aុក'ួអក្សរបានសេគ្រចីន។
2aុក'ួអក្សរពី ០ 'ួ ៤០០០។
Number ជាសេលខ]ច�ណនាបាន។ 2aុកទំហំ ៨ Byte។Date/Time រក្សាទុកទិន#ន័យគ្របសេភទជាកាលបរសិេច្ឆទ។ 2aុកទំហំ ៨ Byte។Currency រក្សារទិន#ន័យជារបិូយ៍ប័ណn 2aុកទំហំ ៨ Byte។Auto Number រក្សារទិន#ន័យជាសេលខសេរmងស្វ័យគ្របវ'្តិ។ 2aុកទំហំ ៨ Byte។Yes/No រក្សារទិន#ន័យជា Boolean �ឺពិ'ឬមិនពិ' 2aុកទំហំ ៨ Byte។OLE Object រក្សារទិន#ន័យជា របូភាព។ 2aុកទំហំ ១ GB។Hyperlink
រក្សារទិន#ន័យជាសេលខ ឬ អក្សរតែEលមានលក្ខណៈជា Hyperlink Address ឬ URL ជាសេEីម។
2aុក'ួអក្សរពី២០៤៨'ួ ។
Attachmentរក្សារទុកទិន#ន័យគ្រ�ប់គ្របសេភទ Data Type វាហាក់បីEូចជា File តែEលសេយីងបាន Attact តាម Email តែEរ។
Lookup Wizard
បសេងsី' File ]ចសេគ្រជីសសេរសីទិន#ន័យគ្រ6ប់ ៤ Bytes។
២.៣. ការកំន'់ Primary Key និង Foregn Key សេ;សេលី Table
តើ��តើ�ដាក់ Primary Key តើ��ម្ប�អ្វ�?សេ�ដាក់ Primary Key សេ>សេលី Field �ឺចង់ការPរទិន#ន័យមិនសេ]យសaួន និងសំរាប់ចង Relationship
ពី Table មួយសេ> Table មួយសេទm'តាមរយៈ Foreing Key សេ;ក#ុង Table។តើ��តើ�ដាក់ Foregn Key តើ��ម្ប�អ្វ�?
Foregn key �ឺជា Fields តែEលជា Primary key នៃន Table ណ្ឌាមួយសេហីយវាមានសេ;ក#ុង Table មួយសេ2្សងសេទm'Fields តែEលសេ;ក#ុង Table សេ2្សងសេទm'សេ�ថ្នា Foregn key។២.៤. រសេបmបបសេងsី' Table
សេ'ី Tables ជាអ្វី?Table: �ឺជា Database object មួយតែEលមាន'ួនាទី2aុកទិន#ន័យ សេហីយការ2aុកទិន#ន័យសេនាះ�ឺសgិ'សេ;ក#ុង
Row ឬ Records និង Columns ឬ Fields។សេយីង]ចនិយ៉ាយបានម្យា�ងសេទm'ថ្នា Tables �ឺជាតារាងសំរាប់2aុកទិន#ន័យតែEលសេកី'សេWងីពីការ23ុំគ្មា# រវាង Fields មួយ ឬ សេគ្រចីន។
មុនសេពលបសេងsី' Table សេយីងគ្រ'វូ6្គ ល់សេ]យច្បាស់រវាង Field និង Record ជាមុនសិន។ Field(column)
ជាសេ�V ះជួរឈរ រឯី Record (Row) ជាសេ�V ះជួរសេEក ។ សេយីង]ចបសេងsី' Table បានតាមសេគ្រចីនរសេបmបសេ2្សងៗគ្មា# Eូចខ្លាងសេគ្រកាម៖
បសេងsី'តាម Design View បសេងsី'តាម Datasheet view បសេងsី'តាម Table Template
ក#ុងឱកាសសេនះសេយីងសេលីកយករសេបmបបសេងsី' Table តាម Design View មកសិក្សា។ ការបសេងsី' Table តាមវធីិសេនះ �ឺសេយីងគ្រ'វូកំន'់លក្ខណៈសេ>សេលីទិន#ន័យនីមួយៗ សេដាយខDួនឯងទាងំអស់។ សេEីម្ីបបសេងsី'សូមអនុវ'្តន៍Eូចខ្លាង
6
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងសេគ្រកាយសេនះ៖
- សេបីក Database តែEលសេយីងចង់បសេងsី' Table- ចុចសេលី Menu Create សេហីយយក Table Design
- ជាបន្តសេយីងនឹងទទួលបានផ្ទាa ងំ Table Eូចខ្លាងសេគ្រកាមសេEីម្ីបសេ]យសេយីងបញ្ចូលទិន#ន័យសេ>សេលី Field នីមួយៗ សេ>តាម'ំរវូការ។
Field Name: សំរាប់វាយបញ្ចូលសេ�V ះ Field Data Type: សំរាប់កំណ'់គ្របសេភទទិន#ន័យរបស់ Field។ សេយីង]ចបញ្ចូល ជាអក្សរ ជាសេលខ
ជានៃ78 តែខ ឆា# -ំល- ។ Description: សំរាប់សរសេសរបញ្ញាQ ក់ពី'ួនាទីរបស់ Field នីមួយៗ ថ្នាសេ'ី Field សេនះសំរាប់សេធ្វីអ្វី ឬ
មាន'ួនាទីសេធ្វីអ្វី។២.៥. រសេបmបបសេងsី' Query
Query: �ឺជា Object មួយសេ;ក#ុងការបសេងsី' Database តែEលសេ�សេគ្របីសគ្រមាបរកុ រកទិន#ន័យតែEលមានសេ;ក#ុងតារាង ( Table ) យកមកបងាl ញសេEីម្ីបតែកតែគ្របទិន#ន័យ ឬលុបទិន#ន័យសេនាះសេចញពីរតារាង (Table) សេ>តាម'ំរវូការរបស់សេយីង។ Queries មានបួនគ្របសេភទៈ- Select queries: �ឺជា queries តែEលគ្រ'វូបានសេគ្របីសំរាប់ទាញយកនិងបងាl ញទិន#ន័យសេហីយទិន#ន័យវាបងាl ញតាមលក្ខខ័ណ្ឌ ជាក់<ក់។ វាជាគ្របសេភទមួយតែEលសេ�និយមសេគ្របីជាងសេ�។- Action queries: �ឺជា queries តែEលគ្រ'វូបានសេគ្របីសំរាប់សេធ្វីការតែកតែគ្របទិន#ន័យ។
- Action queries មានEួចជា Delete queries, Update queries, Append queries និង Make Table queries។
- Crosstab Queries: សេយីងសេគ្របី Crosstab queries សេEីម្ីប�ណនា និងសេរmបចំទិន#ន័យសេWងីវញិសេEីម្ីបងាយគ្រសលួវភិា�។
7
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង- SQL queries: ជាភា6តែEលសេគ្របីសំរាប់ Relational Database។
(របូសេនះបងាl ញអំពី Query Design តែEលបានបសេងsី'រចួជាគ្រ6ច់)
២.៦. រសេបmបបសេងsី' Form
២.៦.១ និយមន័យForm: �ឺជា Interface មួយតែEលសេ]យសេយីង'ុបតែ'ងសេWងីសគ្រមាប់ជំនួយEល់អ#កសេគ្របីគ្របាស់សេ]យកាន់តែ'
ងាយគ្រសយួក#ុងការសេគ្របីគ្របាស់គ្របព័ន្ធ Database ក#ុងការបញ្ចូលទិន#ន័យសេ>សេ]យតារាង (Table) ]នទិន#ន័យសេចញពីតារាង (Table) រកុរកទិន#ន័យពីតារាង (Table) និងEំសេណីរការសេ2្សងៗ សេទm'តែEលទាក់ទងសេ>នឹង 'ំរវូការរបស់user។ ក#ុងការបសេងsី' Form �ឺសេយីង]ចបសេងsី'បានសេគ្រចីនរសេបmបបតែន្ត ក#ុ ងសេពលសេនះសេយីងនិយ៉ាយតែ'ការបសេងsី'តាម Form តាម Design View តែ'បBុសេណ្ឌាn ះ។
២.៦.២ រសេបmបបសេងsី' Form តាម Design View
ចំសេPះការបសេងsី' Form តាមរយៈ Design view មានន័យថ្នាសេយីងសេធ្វីការបសេងsី' Form សេដាយសេធ្វីការ'ុបតែ'ងទំរង Form សេដាយខDួនឯង។ សេEីម្ីបសេធ្វីការបសេងsី' Form តាម Design View សេនះបានសេយីងគ្រ'វូអនុវ'្តEូចខ្លាងសេគ្រកាម៖
- ចុចសេលី Create
- ចុចសេលី Form Design សេ;សេលី Sub Menu
- បនាa ប់មកសេយីងនឹងទទួលបានទំរង់Form មួយEូចរបូខ្លាងសេគ្រកាម សេហីយសេយីងសេធ្វីការ Design Form សេ>តាមសេសចក្តីគ្រ'វូការរបស់សេយីងសេដាយទាញ Tool នីមួយៗ មក�ូសសេលី Form ជាការគ្រ6ច់។
8
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង២.៦.៣ បសេងsី' Unbound Form សេដាយសេគ្របី Design View
Unbound Form �ឺជា Properties Record Source របស់ Form មិនមាន'ំនៃលជាសេ�V ះ Table ឫ Query ណ្ឌាមួយសេWយី។ ចំសេPះការសេគ្របីគ្របាស់ Unbound Form មានលក្ខណៈលMជាង Bound Form គ្រ'ង់ថ្នាសេទាះបីជា User សេធ្វីការសេលីទិន#ន័យ ឫក៏បញ្ចូលទិន#ន័យ7Vីសេ>សេលី Field តែEលមានសេ;ក#ុង Table តាមរយៈ Tools តែEលមានសេ;សេលី Form ក៏សេដាយ ក៏ទិន#ន័យទាងំសេនាះមិនមានបBះPល់សេ;ក#ុង Table តែEរ។ គ្របសិនសេបីសេយីងចង់ឱ្យទិន#ន័យធាD ក់សេ>ក#ុង Table លុះគ្រតាតែ'សេយីងសរសេសរ Code សេដាយសេគ្របីភា6សរសេសរកមVវធីិមួយសេ�V ះថ្នា VBA Programming។
២.៦.៤ មូលដា� នគ្រ�ឹះរបស់ Controls
សេEីម្ីបបំសេពញ'ំរវូការបស់ User សេយីងគ្រ'វូសេចះសេគ្របីនូវ Control តែEលមានសេ;ក#ុង Toolbox របស់Microsoft
Access Eូចជា៖
Tools
Label Sub Form
Text Box Radio
Combo Box Check Box
List Box Option Group
Image Tab Control....
Button Report
២.៦.៤.១ Label
Label គ្រ'វូបានសេ�សេគ្របីសំរាប់បងាl ញការពិពណ៌នាសេលីអ'gបទ ឬដាក់ចំណងសេជីងបញ្ញាQ ក់នៃនទួនាទីនៃន Form សេ2្សងៗ សេ>តាមតែបបបទនៃន Form នីមួយសេនាះ។
២.៦.៤.២ Text Box
Text Box �ឺមានលក្ខណៈខុសគ្មា# ពី Label គ្រ'ង់វា]ចដាក់ Cursor សេ>ក#ុង TextBox សេហីយសេយីង]ចវាយទិន#ន័យចូលបានសេទm'2ង។ សេយីង]ចសេគ្របី TextBox បានតាមទំរង់ពីរ�ឺ Bound និង UnBound។ ក#ុងទំរង់ Bound �ឺសេយីងគ្រ'វូទាញទិន#ន័យពីរ Fileds ឬ Column ពីរ Table ណ្ឌាមួយសំរាប់សេគ្របីគ្របាស់ចំតែនកការសេគ្របី UnBound �ឺសេយីងគ្រ'វូយក TextBox មក�ូសសេលី Form រចួសសេសរទន#ន័យបញ្ចូល។
២.៦.៤.៣ ComboBox និង ListBox
ComboBox និង ListBox �ឺជា Control មួយតែEលនិយមសេគ្របីគ្របាស់សេEីម្ីបបសេងsី'ជា Application ក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យ សេ;ក#ុងកមVវធីិ Microsoft Access។ ពួកវាគ្រ'វូបានសេគ្របីគ្របាស់សំរាប់2aុកទិន#ន័យជាជំសេរសីមានគ្រ6ប់សេដាយពំុចាបំាច់សេធ្វីការបញ្ចូលទិន#ន័យEូចជា TextBox សេនាះសេទ។ វាមានលក្ខណៈនៃនការសេគ្របីគ្របាស់គ្របហាក់គ្របតែហលគ្មា# ។ បBុតែន្ត ComboBox បងាl ញទិន#ន័យតែ'មួយ Item តែ'បBុសេណ្ឌាn ះ ចំតែណក ListBox បងាl ញ Item ទាងំអស់តែEលមាន Column។ សេយីង]ចសេធ្វីការ Add Items សេ>ក#ុង ComboBox ឬ ListBox តាមរយៈមសេធ្យាបាយជាសេគ្រចីនEួចជា តាម Wizard ទាញសេចញពី Table, Add Items ចូលសេដាយផ្ទាa ល់តាម From ឬទាញទិន#ន័យមកដាក់សេដាយសេគ្របីគ្របាស់ SQL Statement។
9
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងរបូខ្លាងសេគ្រកាមសេនះ�ឺបងាl ញអំពីទំរង់ ComboBox និង List Box តែEលបានបសេងsី'រចួជាគ្រ6ច់សេEីម្ីបសេធ្វីការ
បងាl ញទិន#ន័យ។
(ListBox) (ComboBox)
២.៦.៤.៤ Image
សេ�សេគ្របី Image Control សេEីម្ីបដាក់របូភាពសេ>សេ]យ Form ឬ Interface។ សេEីម្ីបដាក់បាន�ឺសេយីងគ្រ'វូយក Tool Image មក�ូសសេលី Form សេហីយវានឹង Browse សេ>រកទីតាងំរបូភាពរបស់សេយីងរចួចុច OK ជាការគ្រ6ច់។
២.៦.៤.៥ Option Button
សេ�សេគ្របី Option Button សេEីម្ីបសេធ្វីការសេគ្រជីសសេរសីនូវចំនុចណ្ឌាមួយតែEលចាក់<ក់ ឧទាហរណ៍សេយីងមានចំនុចចំនួនពីរ �ឺសេភទគ្របសុ និងសេភទគ្រសី សេបីសេយីងសេភទគ្របសុ�ឺ Select យក គ្របសុ តែ'សេបីគ្រសីគ្រ'វូ Select យកគ្រសីមានន័យថ្នា Option Button សេយីង]ច selected បានតែ'មួយចំនួនបBុសេណ្ឌាn ះ។ របូខ្លាងសេគ្រកាមសេនះ�ឺបងាl ញអំពី Option Button តែEលបានបសេងsី'រចួជាគ្រ6ចសេEីម្ីបសេធ្វីការសេគ្រជីសថ្នាទួទា'់ជាគ្របាក់Eូ<D ឫជាគ្របាក់សេរmល។
២.៧ Report
និយមន័យ Report
Report: �ឺសេ�សេគ្របីសគ្រមាបបងាl ញទិន#ន័យ ឬ ព័'៌មានពីរតារាង (Table) និងសេបាះពុម្ពព័'៌មានតែEលព័'៌មានបានទាញយកពីរ តារាង (Table) ឬ Query។ សេហីយសេយីងក៏មានរបូEូចខ្លាងសេគ្រកាយមកសំ]ង៖របូខ្លាងសេគ្រកាមសេនះ�ឺបងាl ញអំពី Report តែEលបានបសេងsី'រចួជាគ្រ6ចសេEីម្ីបគ្រប�ល់ជួនអ'ិ7ិជនសេរmងរាល់មួយតែខម្តង។
10
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
11
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងជំពូកទី៣
ទីតាងំភូមិ6គ្រស្ត និង6g នភាពរបស់2aះជួល
៣.១ ទីតាងំភូមិ6គ្រស្ត2aះជួលតែEលគ្រកមុពួកខ្ញុំបានចុះសេនាះមានសេ�V ះ Green Home សេហីយមានទីតាងំសgិ'សេ;2aះសេលខ 40D
សងាs '់ភ#ំសេពញ7Vី ខ័ណ្ឌ តែសនសុខ រាជធានីភ#ំសេពញ។ មា្ច ស់2aះជួលមានសេ�V ះ pឹម រា�ដាព'៍មានបតែនgមសូមទាក់ទងតាមទូរសពaសេលខ 017325533 ។៣.២ 6g នភាពរបស់2aះជួល
2aះជូល2aះជូលសេ�V ះ Green Home តែEលខ្ញុំបានសេលីមកនិយ៉ាយសេនះ�ឺមានកំពស់ ៣ ជាន់សេហីយមាន ទីតាងំសgិ'សេ;ជិ'6<សេរmន និងមនaីសេពទ្យ តែEលទីតាងំសេនះ6កសមសំរាប់សិស្សានុសិស្សក៏Eូចជា6កសមជាលក្ខណះគ្រ�6ួរ6មញ&ជាពិសេសសជាងសេនះសេ>សេទm'៖
មានបរសិេវណធំទូ<យងាយគ្រសលួសំរាប់ទុកដាក់យ៉ាន3ជំនិះ និងមានបរយិ៉ាកាសលMគ្របព័ន្ធទឹកលូ មិនមានការកកសaៈនូវកាកសំណល់គ្របព័ន្ធសេភDីងលMពំុសូវមានការរខំ្លាន Eូចជាការ ដាច់សេភDីង និងមានសុវ'gិភាពមានគ្របព័ន្ធទឹក6M ' មាន�ុណភាពខ្ពស់ (លMសំរាប់សុខភាព)មានសុវ'gភាពសេពលយប់គ្របលប់មិនមានសំសេលងរខំ្លានពីមជ្ឈដា� នខ្លាងសេគ្រ� (សំសេលងមាB សីុនសេចញពីសេរាងចគ្រកជាសេEីម)
12
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
ជំពូកទី៤វធីិ6គ្រស្តនៃនការគ្រ6វគ្រជាវ
៤.១ Data Collectionជាទូសេ>ក#ុងការក6ងគ្របព័ន្ធគ្រ�ប់គ្រ�ងទិន#ន័យមួយបាន �ឺពិ'ជាជួបគ្របទះនូវបញ្ញាl រជាសេគ្រចីនEូចសេនះសេទីប'ំរវូ
សេ]យសេយីងមានការរកុរកនូវវធីិ6គ្រស្តលMៗ សេEីម្បីសេដាះគ្រ6យនូវ បញ្ញាl ជាក់តែស្តង តែEលបានជួបគ្របទះ។ Eំណ្ឌាក់កាលសេនះ�ឺជាEំណ្ឌាក់កាលនៃនការគ្របមូល រាល់ ទិន#ន័យទាងំអស់ មកចងគ្រកងជាកមVវធីិមួយនិងជាឯក6រសំរាប់ទុកវភិា� សេEីម្ីបEំសេណីរការគ្រ6វគ្រជាវគ្របកបសេដាយភាពសេជា�ជ័យ គ្រកមុសេយីងខ្ញុំបានសេធ្វីការសិក្សាគ្រ6វគ្រជាវតាមមសេធ្យាបាយមួយចំនួនEូចជា៖
៤.១.១ Primary Data
ការចុះសសេងs'សេ>សេលីការងារបស់មា្ច ស់2aះជួល ការសេរmបចំសំនួរតែEលទាក់ទងនឹងការសេធ្វីគ្របព័ន្ធគ្រ�ប់គ្រ�ងទុកជាមុន សេEីម្បីសេធ្វីការសំភាសន៍មា្ច ស់
2aះជួលសេដាយផ្ទាa ល់។៤.១.២ Secondary Data
ឯក6ររបស់6គ្រ6្ត ចារ្យតែEលសេ<កបានបងាl '់បងាl ញ ការសិក្សាគ្រ6វគ្រជាវតាម Internet , Library ... សេសmវសេ�តែEលទាក់ទងនឹងគ្របធានបទ។ ការសិក្សាអំពីមជ្ឈដា� នខ្លាងសេគ្រ�
៤.២ Actions
៤.២.១ Tool
ក#ុងការសេគ្រជីសសេរសីគ្របធានបទសេនះសេWងី�ឺគ្រកមុរបស់សេយីងសេគ្រជីសសេរសីយក Tools មួយចំនួនមក សេគ្របីគ្របាស់តែEលមានEូចខ្លាងសេគ្រកាម ៖
Microsoft Word 2010 សេគ្របីសំរាប់សេធ្វីការចងគ្រកងជាសេសmវសេ� តែEលមាន2aុករាល់ ទិន#ន័យទាងំអស់។ Microsoft Power Point 2010 សេគ្របីសំរាប់សេរmបចំបសេងsី'ជាSlide សេEីម្ីបសេធ្វីការ Presentation Microsoft Access 2010: �ឺជា Program សេគ្របីសំរាប់ បសេងsី' Interface (Form)
សរសេសរ Code និង2aុក Data សេ;ក#ុង Table នីមួយៗ ។ Adobe Photoshop CS5: �ឺជា Program សំរាប់ Design Button ផ្ទាa ងំ Background និងកា'់'
របូភាពមួយចំនួនតែEលសេធ្វីសេ]យកមVវធីិមានភាពទាក់ទាញមួយកំរ'ិសេទm'។ Adobe flash CS5: ជាកមVវធីិសំរាប់ Design Animation សេ2្សងៗសេEីម្ីបសេ]យកមVវធីិមានភាពរស់រសេវកី
ជាសេEីម។៤.២.២ System Requirement
Hardware Requirements
13
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងក#ុងការគ្រ�ប់គ្រ�ងទិន#ន័យសេនះ �ឺសេយីងបានសេគ្របីគ្របាស់ នូវ Hardware មួយចំនួនសេEីម្បីEំសេណីរការកមVវធីិ ក៏Eូចជា
បងាl ញទិន#ន័យ សេ2្សងៗសេ>តាមអ្វីតែEលសេយីងចង់បាន តែEលរមួមានៈ Hardware
- Desktop / Laptop - CPU Pentium 4 - Ram 512
- Display (1280 x 768)
- Printer
Software- Microsoft office 2007 or Up.
- Operating System (Window XP, Window Vista , Window 7
៤.៣ Work Plan
កាលបរសិេច្ឆទ និងរយៈសេពលនៃនការងារ សកមVភាព
28/05/2013 - 03/06/2013 តែស្វងរក2aះជូលសេEីម្ីបសេធ្វីការ6កសួរព័'៌មានតែEលពួកគ្រកមុសេយីងខ្ញុំចង់បានសេEីម្ីបសេធ្វីរបាយការណ៍ជួន6<។
04/06/2013 - 12/06/2013 សេ;ក#ុងកំWុងសេពលសេនះគ្រកមុរបស់ខ្ញុំបាទបានសេធ្វីការជួបជំុគ្មា# សេEីម្បីសេរmបចំសំនួរសេEីម្ីបសេធ្វីការសមា� សន៍ សេ>កាន់មា្ច ស់2aះជួល។
13/06/2013 - 20/06/2013 សេ;ក#ុងកំWុងសេពលសេនះគ្រកមុរបស់ខ្ញុំបាទបាន សេធ្វីការជួបជំុគ្មា# សេEីម្បីចុះសេ>គ្របមូលព័'៍មានពីទីតាងំតែEលបានកំណ'់។
21/06/2013 - 01/07/2013 សេ;ក#ុងកំWុងសេពលសេនះគ្រកមុរបស់ខ្ញុំបាទបានសេធ្វីការជួបជំុគ្មា# សេEីម្ីបចាប់សេ2្តីមសេធ្វីការវភិា�សេ>សេលីទិន#ន័យតែEលគ្របមូលបាន និងសេរmបចំជាសេសmវសេ�។
02/07/2013 - 25/07/2013សេ;ក#ុងកំWុងសេពលសេនះគ្រកមុរបស់ខ្ញុំបាទបានសេធ្វីការជួបជំុគ្មា# សេEីម្ីបការ Design Form សំរាប់សេ]យ User សេគ្របីគ្របាស់ និងសរសេសរសេសmវសេ�បន្តសេទm'។
25/07/2013 - 23/08/2013 សេ;ក#ុងកំWុងសេពលសេនះគ្រកមុរបស់ខ្ញុំបាទបានសេធ្វីការជួបជំុគ្មា# សេEីម្ីបចាប់សេ2្តីមសរសេសរ Code។
24/08/2013-01/09/2013សេ;ក#ុងកំWុងសេពលសេនះ គ្រកមុរបស់ខ្ញុំបាទបានសេធ្វីការសេ'ស និងសេ2a�ងផ្ទាa '់សេWយីវញិទាងំអស់សេEីម្បី'ំសេនីការ និងបញ្ចប់នៃនការសរសេសរសេសmវសេ�។
18/09/2013 - 10/10/2013សេ;ក#ុងកំWុងសេពលសេនះ គ្រកមុរបស់ខ្ញុំបាទ បានសេធ្វីការជួបជំុគ្មា# សេEីម្បីបញ្ចប់ការងារទាងំអស់ សេហីយ សេរmបចំ Slide សំរាប់សេធ្វីការ Presentation និងចាប់សេ2្តីមតែចកការងារគ្មា# សេEីម្ីបសេធ្វីPresentation។
14
DisplayUser SearchUser_Name
Not Found
Password
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៤ Database Design
៤.៤.១ Data Analysisសេគ្រកាយពីបានទទួលព'៍មានគ្រ�ប់គ្រគ្មាន់រចួរាល់មកគ្រកមុរបស់ពួកខ្ញុំបានសេធ្វីការវភិា�តែវកតែញករាល់ទិន#ន័យ
ទាងំសេនាះរចួរាល់ តែEលជាលទ្ធ2លគ្រកមុរបស់ពួកខ្ញុំបានសេរmបចំ និងតែបងតែចកបាន សេចញជា Table សំខ្លាន់ៗ ចំនួន ៩ ។តែEល Table ទាងំសេនាះរមួមានEូចជា ៖Tblcontrolapp: (id, password) តារាងសេនះសេគ្របីសគ្រមាបគ្រ�ប់គ្រ�ងសេលខ សមា8 '់របស់ អ#កគ្រ�ប់គ្រ�ង user។
Tbluser: (UserID, Name, Password) តារាងសេនះសេគ្របីសគ្រមាបគ្រ�ប់គ្រ�ងអ#ក សេគ្របីគ្របាស់គ្របព័្ធន Database សេនះ ។
Tblcus: (cusID, cus_name, cus_gender, cus_date_of_birth, cus_phone, cus_card,
cus_place_of_birth, regeter_date, date_out ) តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ងព'៍មានរបស់អ'ិ7ិជន ។
Tblroom: (roomid, room_cost, floor, Fireid, waterid) តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ងព័'៍មានបនaប់ និងសេលខកុងទ័រទឹក សេភDីង។
tbldetail: (roomid,floor, fireid, waterid, cusid, name, haveornot, pay) តារាងសេនះបងាl ញពីទីតាងំអ'ិ7ិជន6# ក់សេ; ព'៍មានអ'ិ7ិជន និង6g នភាពអ'ិ7ិជនថ្នាសេ'ីអ'ិ7ិជនបង់គ្របាក់រ ឺសេ;ជាសេEីម។
tblfire: (FireID, Fire_start, Fire_stop, Fire_use, Fire_cost, pay_amount) តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ងកុងទ័រសេភDីងទាងំមូល តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ងកុងទ័រទឹកទាងំមូល Eូចជាសេលខសេរmងកុងទ័រសេភDីង សេលខចាស់ សេលខ7Vី និង'ំនៃលសេភDីងក#ុងមួយ�ីWូ។ ។
tblwater: (waterId, water_start, water_stop, water_use, water_cost, pay_amount) តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ងកុងទ័រទឹកទាងំមូល Eូចជាសេលខសេរmងកុងទ័រទឹក សេលខចាស់ សេលខ7Vី និង'ំនៃលទឹកក#ុងមួយ�ីWូ។
Tblcheck: (ID, Date_Time, cusID, cus_name, FireID, Fire_start, Fire_stop, Fire_use,
Fire_cost, firepay_amount, waterId, water_start, water_stop, water_use, water_cost,
waterpay_amount, roomid, room_cost, pay_dollar, pay_reil, money, money_remain,
money_owed, User) តារាងសេនះសេគ្របីសគ្រមាប់គ្រ�ប់គ្រ�ង ព'៍មានរាល់ការសេគ្របីគ្របាស់សេលខកុងទ័រទឹក សេភDីង និងការចំណ្ឌាយសរបុរបស់អ'ិ7ិជនពីមួយតែខ សេ>មួយតែខ ។
៤.៤.២ Data Flow Diagram (DFD)ចំនុចសេនះបងាl ញពី Process របស់ Data Flow Diagram។
៤.៤.២.១ LogIn
15
user ព'៍មានអ7ិជន Show Form
user បញ្ចូលទិន#ន័យData
New Data
customer
user
customer
ID, Name
user Search show Form
រកមិនសេpីញ
User
Edit
Custom
er
ID, NameUser Search Show form
Not found
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
-User សេធ្វីការ Log In តែEលព'៍មានទាងំសេនាះទាញសេចញពីក#ុង Security។៤.៤.២.២ ព�៍មានអ�ិថិជន
- user ចុចសេលី Button ព័'៍មានអ'ិ7ិជន សេEីម្ីបសេបីក Form ព័'៍មានអ'ិ7ិជន។a. Button បញ្ចូលទិន#ន័យ7Vី
- សេបី user បញ្ចូលទិន#ន័យ7Vី សេ>ឱ្យ តារាង (Table) អ'ិ7ិជន ក#ុង Database ឬ Datastore។b. Combo ID Or Textsearchname (តែស្វងរក)
- សេបីអ#កសេគ្របីចង់ តែស្វងរកព'៍មានរបស់អ'ិ7ិជន តាមរយៈ សេលខសំគ្មាល់ រសឺេ�V ះពីក#ុងតារាង (Table) អ'ិ7ិជន ពី Database ឬ Data Store ។
- សេបីសិន រកមិនសេpីញ វាគ្រ'លប់សេ>អ#កសេគ្របីវញិសេEីម្ីបសេ]យអ#កសេគ្របី សេធ្វីការតែស្វងរក ម្តងសេទm'។ c. Button តែកតែគ្រប
16
user deleteID, Name
customer
user ប្វ'្តិរបូអ'ិ7ិជន show Form
user ព័'៍មានបនaប់ show Form
user ព'៍មានសេភDីង show Form
user ព'៍មានទឹក show Form
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
- User សេធ្វីការតែស្វងរកព'៍មានរបស់អ'ិ7ិជន បនាa ប់ពីរកសេpីញសេហីយ អ#កសេគ្របីគ្របាស់ សេធ្វីការតែកព'៍មានរបស់អ'ិ7ិជនរចួសេហីយតែកតែគ្របព'៍មានតែEលបានតែកសេហីយសេ>ក#ុង តារាង (Table) អ'ិ7ិជនក#ុង Database ឬ Data Store។
- បBុតែន3សេបីអ#កសេគ្របីគ្របាស់តែស្វងរកមិនសេpីញសេទសេនាះសេ]យអ#កសេគ្របីគ្របាស់សេធ្វីការតែស្វងរកម3ងសេទm' ។d. Button លុប
- User សេធ្វីការតែស្វងរកសេហីយបនaប់មកសេធ្វីការលុបព'៍មានរបស់ អ'ិ7ិជនពីក#ុង តារាងអ'ិ7ិជន (Table)។e. គ្របវ'្តិរបូអ'ិ7ិជន
- User ចុចសេលី Button គ្របវ'្តិរបូអ'ិ7ិជន សេEីម្ីបសេបីក Form គ្របវ'្តិរបូអ'ិ7ិជន ។ ៤.៤.២.៣ ព�៍មានបន្ទប់
- User ចុចសេលី Button ព'៍មានបនaប់ សេEីម្ីបសេបីក Form ព'៍មានបនaប់។
៤.២.៣ ព'៍មានកុងទ័រសេភDីង
- User ចុចសេលី Button ព័'៍មានសេភDីង សេEីម្ីបសេបីក Form ព័'៍មានសេភDីង។៤.៤.២.៤ ព័�៍មានកុងទ័រតើ !�ង
- User ចុចសេលី Button ព័'៌មានសេភDីងបងាl ញ Button សេEីម្ីបសេបីក Form ព័'៌មានសេភDីង។ ៤.៤.២.៥ ព័�៍មានកុងទ័រទឹក
17
user ចំណ្ឌាយរបស់អ'ិ7ិជន show Form
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
- User ចុចសេលី Button ព័'៌មានទឹកបងាl ញ Button សេEីម្ីបសេបីក Form ព័'៌មានទឹក។ ៤.៤.២.៦ ចំណ្ឌាយរបស់អ'ិ7ិជន
- User ចុចសេលី Button ចំណ្ឌាយរបស់អ'ិ7ិជនបងាl ញ Button សេEីម្ីបសេបីក Form ចំណ្ឌាយរបស់អ'ិ7ិជន។ ជា Form (Main Form) មួយសំរាប់សេបីក Form ការចំណ្ឌាយទឹក សេភDីង ការចំណ្ឌាយសរបុក#ុងតែខនីមួយៗ។៤.៥ Entities Relational Diagram
៤.៦ Data Dictionary
សេ;ក#ុងចំនុចសេនះ គ្រគ្មាន់តែ'ជាការបកគ្រ6យ គ្របសេភទទិន#ន័យរបស់ Field (Column) នីមួយ ៗ Data Type (គ្របសេភទទិន#ន័យ) របស់ Field នីមួយៗ, គ្របសេភទ Key តែEលបានដាក់សេ>សេលីទាងំអស់ Table ។
៤.៦.១ Tblcontrolapp
Field Data type Key Description
Id number Foreign key សេលខសមា្គ ល់អ#កគ្រ�ប់គ្រ�ង់
password Text Foreign key សេលខសមា8 '់
18
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៦.២ Tbluser
Field Data type Key Description
userId number Primary key សេលខសមា្គ ល់អ#កគ្រ�ប់គ្រ�ង់
name Text Foreign key សេ�V ះអ#កសេគ្របីគ្របាស់
password Text Foreign key សេលខសមា8 '់
៤.៦.៣ Tblroom
Field Data type Key Description
roomid Number Primary key សេលខសមា្គ ល់បនaប់
Room_cost Number Foreign key 'នៃមDបនaប់
Floor Number Foreign key សេលខជាន់នៃនបនាa ប់
Fireid Number Foreign key សេលខសេរmងនៃនកុងទ័រសេភDីង
waterid Number Foreign key សេលខសេរmងនៃនកុងទ័រទឹក
៤.៦.៤ Tblfire
Field Data type Key Description
FireID Number Primary key សេលខសមា្គ ល់កុងទ័រសេភDីង
Fire_start Number Foreign key សេលខចាប់សេ23ីមកុងសេភDីង
Fire_stop Number Foreign key សេលខបញ្ចប់កុងទ័រសេភDីង
Fire_use Number Foreign key ចំនួនសេគ្របីគ្របាស់
Fire_cost Number Foreign key 'នៃមDក#ុង១�ីWូ
pay_amount Number Foreign key 'នៃមDសេគ្របីគ្របាស់សរបុ
៤.៦.៥ tblwater
Field Data type Key Description
waterId Number Primary key សេលខសមា្គ ល់កុងទ័រទឹក
Water_start Number Foreign key សេលខចាប់សេ23ីមកុងទឹក
water _stop Number Foreign key សេលខបញ្ចប់កុងទ័រទឹក
19
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងwater _use Number Foreign key ចំនួនសេគ្របីគ្របាស់
water_cost Number Foreign key 'នៃមDក#ុង១�ីWូ
pay_amount Number Foreign key 'នៃមDសេគ្របីគ្របាស់សរបុ
៤.៦.៦ Tblcustomer
Field Data type Key Description
cusID Number Primary key សេលខសមា្គ ល់អ'ិ7ិជន
cus_name Text Foreign key សេ�V ះអ'ិ7ិជន
cus_gender text Foreign key សេភទអ'ិ7ិជន
cus_date_of_birth Date/ Time Foreign key តែខ ឆា# ំកំសេណី'
cus_phone Text Foreign key សេលខទូរស៏ពaអ'ិជន
cus_card Text Foreign key សេលខអ'្តញ្ញា& ណប័ណnអ_ជន
cus_place_of_birth Text Foreign key ទីកតែនDងកំសេណី'អ'ិ7ិជន
regeter_date Date / Time Foreign key នៃ78ចូលមកជូល
date_out ext Foreign key 6g នភាពអ'ិ7ិជនបច្ចុប្បន#
៤.៦.៧ Tbldetail
Field Data type Key Description
cusid Number Primary key សេលខសមា្គ ល់អ'ិ7ិជនName Text Foreign key សេ�V ះអ'ិ7ិជនRoomid Number Foreign key សេលខសមា្គ ល់បនaប់Fireid Number Foreign key សេលខសមា្គ ល់កុងទ័រសេភDីងWaterid Number Foreign key សេលខសមា្គ ល់កុងទ័រទឹកFloor Number Foreign key សេលខជាន់នៃនបនាa ប់haveornot Text Foreign key Eឹងថ្នាមានអ'ិ7ិជនឫអ'់Pay text Foreign key ]ចEឹងថ្នាអ'ិ7ិជនបង់លុយឫសេ;
៤.៦.៨ Tblcheck
Field Data type Key Description
20
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងID Number Foreign key សេលខសមា្គ ល់ Report
Date_Time Date / Time Foreign key នៃ78 តែខ ឆា# ំសេពលវា<
Cus_id Number Foreign key សេលខសមា្គ ល់អ'ិ7ិជន
cus_name Text Foreign key សេ�V ះអ'ិ7ិជន
FireID Number Foreign key សេលខសមា្គ ល់កុងទ័រសេភDីង
Fire_start Number Foreign key សេលខកុងទ័រសេភDីងចាប់សេ23ីម
Fire_stop Number Foreign key សេលខកុងទ័រសេភDីងបញ្ចប់
Fire_use Number Foreign key សេលខកុងទ័រសេភDីងសេគ្របីគ្របាស់
Fire_cost Number Foreign key 'នៃមDកុងទ័រសេភDីង/១�ីWូ
firepay_amount Number Foreign key 'នៃមDសរបុនៃនការសេគ្របីគ្របាស់
waterId Number Foreign key សេលខសមា្គ ល់កុងទ័រទឹក
Water_start Number Foreign key សេលខកុងទ័រទឹកចាប់សេ23ីម
Water_stop Number Foreign key សេលខកុងទ័រទឹកបញ្ចប់
Water_use Number Foreign key សេលខកុងទ័រទឹកសេគ្របីគ្របាស់
Water_cost Number Foreign key 'នៃមDកុងទ័រទឹក/១�ូប
Waterpay_amount Number Foreign key 'នៃមDសរបុនៃនកាសេគ្របីគ្របាស់
Roomid Number Foreign key សេលខសមាs ល់បនaប់
Room_cost Number Foreign key 'នៃមDបនaប់
pay_dollar Number Foreign key គ្របាក់គ្រ'វូបង់ (Eូ<D )
pay_reil Number Foreign key គ្របាក់គ្រ'វូបង់ (សេរmល)
Money Number Foreign key គ្របាក់ទទួល
money_remain Number Foreign key គ្របាក់បង់សេ;សល់ ឬខ្វះ
User Number Foreign key សេ�V ះអ#កទទួលគ្របាក់
dollar_cost Number Foreign key 'នៃមDគ្របាក់Eូ<D / ១Eូ<D
៤.៧ Appendix
៤.៧.១ Form Login
21
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
- Button បញ្ចូលអ#កសេគ្របីគ្របាស់7Vី: សេគ្របីសគ្រមាប់បញ្ចូលអ#កសេគ្របីគ្របាស់7Vី- Button ចូលសេគ្របីគ្របាស់: សេគ្របីសគ្រមាប់ចូលសេគ្របី Form សេ2្សងៗ- Button ចាកសេចញ: សេគ្របីសគ្រមាប់ចាកសេចញពីកមVវធីិ ឫបិ'កមVវធីិទាងំមូលតែ'ម្តង។
+ ការបង្ហា) ញ CodeOption Compare Database
Dim Db As DAO.Database, Rs As DAO.Recordset
Function User() As Boolean
Set Db = CurrentDb
Set Rs = Db.OpenRecordset(" Select* from tbluser where Name = '" & Me.Tusername & "'and
Password = '" & Me.Tpassword & "'")
If Not Rs.BOF Then
User = True
End If
Rs.Close
End Function
Private Sub cmdaddnew_Click()
BtnSound
DoCmd.Close
DoCmd.OpenForm "fradmin", acNormal
End Sub
22
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងPrivate Sub cmdaddnew_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As
Single)
'Me.Label21.Caption = "Click to create new user !"
Me.Label25.Visible = True
End Sub
Private Sub cmdcencel_Click()
BtnSound
DoCmd.OpenForm "frclose", acNormal
End Sub
Private Sub cmdcencel_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As
Single)
'Me.Label21.Caption = "click button to cencel from database !"
Me.Label27.Visible = True
End Sub
Private Sub cmdlogin_Click()
BtnSound
If User = True Then
Userlog
User_Login = Me.Tusername
DoCmd.Close acForm, "frlogin", acSaveYes
DoCmd.OpenForm "frmainand_total", acNormal
Else
DoCmd.OpenForm "frloginwrong", acNormal
Me.Tusername.SetFocus
Me.Tusername = ""
Me.Tpassword = ""
End If
End Sub
Sub Userlog()
Set Rs = CurrentDb.OpenRecordset("Tbluserlog", dbOpenDynaset)
Rs.AddNew
Rs("name") = Me.Tusername
Rs("password") = Me.Tpassword
Rs("date_time") = Me.Tdate
23
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងRs.Update
End Sub
Private Sub cmdlogin_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.Label26.Visible = True
End Sub
Private Sub Detail_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
LaH
End Sub
Private Sub Form_Load()
DoCmd.Maximize
TimerInterval = 150
Me.TimerInterval = 250
Set Db = CurrentDb
LaH
Tdate = Now
End Sub
Private Sub Form_Timer()
Me.Label24.ForeColor = QBColor(Rnd * 12)
End Sub
Sub LaH()
Me.Label25.Visible = False
Me.Label26.Visible = False
Me.Label27.Visible = False
End Sub
Private Sub Label28_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
LaH
End Sub
24
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.២ �ណនា
- Button �ណនា : សេគ្របីសគ្រមាប់�ណនានូវគ្របាក់សរបុសេ2្សងៗEូចជា នៃ7Dទឹក នៃ7DសេភDីង បន្ចប់ និងបូកទូទា'់គ្របាក់សរបុទាងំអស់Eល់អ'ិ7ិជន សេហីយសេយីងក៏]ចទូទា'់ជាគ្របាក់សេរmល ឫក៏ជាEូឡាបាន2ងតែEរ។
+ ការបង្ហា) ញ Code �ណនាOption Compare Database
Dim Db As DAO.Database, Rs As DAO.Recordset, Sqlfire, Sqlwater As String
Private Sub cmdclose_Click()
BtnSound
DoCmd.OpenForm "frclose", acNormal
End Sub
Sub C()
If Me.tfirestop = "" Or Me.Twaterstop = "" Then
MsgBox "Please check data again befor click calculate !", vbInformation, "Information"
Else
Dim Totalcentrymoto As Double
Me.Tfiretotal = CDbl(Me.tfirestop) - CDbl(Me.tfirestart)
Me.Twatertotal = CDbl(Me.Twaterstop) - CDbl(Me.Twaterstart)
Me.Tfirepay = CDbl(Me.Tfiretotal) * CDbl(Me.Tfirecost)
Me.Twaterpay = CDbl(Me.Twatertotal) * CDbl(Me.Twatercost)
Me.Ttotal = CDbl(Me.Tfirepay) + CDbl(Me.Twaterpay)
25
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Ttotal = CDbl(Me.Ttotal) / CDbl(Me.Tdollarcost)
Me.Ttotal = CDbl(Me.Ttotal) + CDbl(Me.Troomcost)
'Me.Ttotal = CDbl(Me.Ttotal) + CDbl(Me.Troomcost) + CDbl(Totalcentrymoto)
Me.Odollar.SetFocus
End If
End Sub
Sub Clear()
Me.tfireid = ""
Me.tfirestart = ""
Me.Tfirecost = ""
Me.tfirestop = ""
Me.Tfiretotal = ""
Me.Tfirepay = ""
Me.Twaterid = ""
Me.Twaterstart = ""
Me.Twatercost = ""
Me.Twatertotal = ""
Me.Twaterstop = ""
Me.Twaterpay = ""
Me.Troomid = ""
Me.Troomcost = ""
Me.comid = ""
tecusid = ""
Me.Tname = ""
Me.Ttotal = ""
Me.Ttotalr = ""
Me.Tresive = ""
Me.Teowe = ""
Me.Teremandreil = ""
Me.Teowe = ""
End Sub
Sub cus_pay()
Set Rs = CurrentDb.OpenRecordset("tbldetail", dbOpenDynaset)
Do While Not Rs.EOF
26
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង If UCase(Rs("roomid")) = UCase(Me.Troomid) Then
Rs.Edit
Rs("pay") = "Already"
Rs.Update
Exit Do
Else
Rs.MoveNext
End If
Loop
Rs.Close
End Sub
Sub Save()
Set Rs = CurrentDb.OpenRecordset("tblcheck", dbOpenDynaset)
Rs.AddNew
Rs("id") = Me.Tid
Rs("Date_Time") = Me.Tdate
Rs("cusID") = Me.tecusid
Rs("cus_name") = Me.Tname
Rs("fireid") = Me.tfireid
Rs("fire_start") = Me.tfirestart
Rs("fire_stop") = Me.tfirestop
Rs("fire_use") = Me.Tfiretotal
Rs("fire_cost") = Me.Tfirecost
Rs("firepay_amount") = Me.Tfirepay
Rs("waterid") = Me.Twaterid
Rs("water_start") = Me.Twaterstart
Rs("water_stop") = Me.Twaterstop
Rs("water_use") = Me.Twatertotal
Rs("water_cost") = Me.Twatercost
Rs("waterpay_amount") = Me.Twaterpay
Rs("roomid") = Me.Troomid
Rs("room_cost") = Me.Troomcost
Rs("pay_dollar") = Me.Ttotal
Rs("pay_reil") = Me.Ttotalr
27
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងRs("money") = Me.Tresive
Rs("money_remain") = Me.Teremandreil
Rs("dollar_cost") = Me.Tdollarcost
Rs("user") = Me.Tusername
Rs.Update
Me.cmdcalculate.Enabled = False
End Sub
Sub save_w()
Sqlfire = "update tblfire set fireid=" & Me.tfireid & ",fire_start=" & Me.tfirestart &
",fire_stop=" & Me.tfirestop & ",fire_use=" & Me.Tfiretotal & ",pay_amount=" & Me.Tfirepay
& " where fireid=" & Me.tfireid & ""
Db.Execute Sqlfire
Sqlwater = "update tblwater set waterid=" & Me.Twaterid & ",water_start=" & Me.Twaterstart
& ",water_stop=" & Me.Twaterstop & ",water_use=" & Me.Twatertotal & ",pay_amount=" &
Me.Twaterpay & " where waterid=" & Me.Twaterid & ""
Db.Execute Sqlwater
MsgBox "Save data is successfull"
End Sub
Private Sub cmdrepo_Click()
DoCmd.OpenReport "Report1", acViewReport, , "ID = " & Tid.Value, acDialog
End Sub
Private Sub Command105_Click()
DoCmd.OpenForm "fr_cus_pay", acNormal
End Sub
Private Sub Command110_Click()
DoCmd.OpenForm "frdollar", acNormal
End Sub
Private Sub Command99_Click()
BtnSound
Save
save_w
cus_pay
Call Clear
End Sub
28
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងPrivate Sub cmenew_Click()
BtnSound
Me.Tid = auto("tblcheck", "id")
Call Clear
Me.cmdcalculate.Enabled = False
Call Form_Load
End Sub
Private Sub comid_Click()
BtnSound
Me.tecusid = comid
Me.Tname.Value = DLookup("name", "tbldetail", "cusid=" & Me.comid & "")
Me.Troomid.Value = DLookup("roomid", "tbldetail", "cusid=" & Me.comid & "")
Me.Troomcost.Value = DLookup("room_cost", "tblroom", "roomid=" & Me.Troomid & "")
Me.tfireid.Value = DLookup("fireid", "tbldetail", "cusid=" & Me.comid & "")
Me.tfirestart.Value = DLookup("fire_stop", "tblfire", "fireid=" & Me.tfireid & "")
Me.Tfirecost.Value = DLookup("fire_cost", "tblfire", "fireid=" & Me.tfireid & "")
Me.Twaterid.Value = DLookup("waterid", "tbldetail", "cusid=" & Me.comid & "")
Me.Twaterstart.Value = DLookup("water_stop", "tblwater", "waterid=" & Me.Twaterid & "")
Me.Twatercost.Value = DLookup("water_cost", "tblwater", "waterid=" & Me.Twaterid & "")
Call ClearEnter
Me.Command95.Enabled = True
Me.tfirestop.SetFocus
End Sub
Sub ClearEnter()
Me.tfirestop = ""
Me.Tfiretotal = ""
Me.Tfirepay = ""
Me.Twatertotal = ""
Me.Twaterstop = ""
Me.Twaterpay = ""
Me.Ttotal = ""
Me.Ttotalr = ""
End Sub
Private Sub cmdcalculate_Click()
29
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងBtnSound
If Me.Tresive = "" Then
MsgBox "Please enter money !", vbInformation, "Infomation"
Else
If Me.Odollar.Value = True Then
Me.Tresive = Format(Me.Tresive, "#,##0 $ ")
ReDo
RemaDo
ElseIf Me.Oreil.Value = True Then
ReRe
ReMa
End If
End If
Me.Command99.Enabled = True
Me.cmdrepo.Enabled = True
End Sub
Sub ReDo()
Me.Teremandreil = CInt(Me.Ttotal) - CInt(Me.Tresive)
Me.Teowe = CDbl(Me.Teremandreil) * CDbl(Me.Tdollarcost)
End Sub
Sub RemaDo()
Dim RD As Double
Me.Teowe = CDbl(Me.Tresive) - CDbl(Me.Ttotal)
Me.Teremandreil = CDbl(Me.Teowe) * CDbl(Me.Tdollarcost)
End Sub
Sub ReMa()
Me.Teremandreil = CDbl(Me.Tresive) - CDbl(Me.Ttotalr)
Me.Teowe = CDbl(Me.Teremandreil) / CDbl(Me.Tdollarcost)
End Sub
Sub ReRe()
Me.Teremandreil = CDbl(Me.Tresive) - CDbl(Me.Ttotalr)
Me.Teowe = CDbl(Me.Teremandreil) / CDbl(Me.Tdollarcost)
End Sub
Private Sub Command95_Click()
30
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងBtnSound
If Me.tfirestop.Value = Null Then
MsgBox ("Please enter values fire stop .")
ElseIf Me.Twaterstop.Value = Null Then
MsgBox ("Please enter values water stop .")
Else
C
End If
End Sub
Private Sub Form_Load()
Tusername = User_Login
Me.Tid = auto("tblcheck", "id")
DoCmd.Maximize
Set Db = CurrentDb()
Me.Tfirecost.Enabled = False
Me.Tfiretotal.Enabled = False
Me.tfirestart.Enabled = False
Me.Twatercost.Enabled = False
Me.Twatertotal.Enabled = False
Me.Twaterstart.Enabled = False
Me.Ttotal.Enabled = False
Me.Ttotalr.Enabled = False
Me.Troomcost.Enabled = False
Me.Tname.Enabled = False
Me.Tdate = Now
Me.Tfirepay.Enabled = False
Me.Twaterpay.Enabled = False
Me.Odollar.Value = False
Me.Oreil.Value = False
Me.cmdcalculate.Enabled = False
Me.Tdollarcost.Enabled = False
Me.Tid.Enabled = True
Me.cmdrepo.Enabled = False
Me.tfireid.Enabled = False
31
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Twaterid.Enabled = False
Me.Troomid.Enabled = False
Me.Command99.Enabled = False
Me.Teremandreil.Enabled = False
Me.Command95.Enabled = False
Me.Teowe.Visible = False
Call Clear
End Sub
Private Sub Label87_Click()
Me.Teowe.Visible = True
End Sub
Private Sub Odollar_Click()
BtnSound
If Me.Odollar.Value = True Then
Me.Tresive = Format(Me.Tresive, "### $ ")
Me.Tresive.SetFocus
Me.Oreil.Value = False
Me.cmdcalculate.Enabled = True
Me.Teremandreil.Visible = True
Opclear
End If
End Sub
Sub Opclear()
Me.Tresive = ""
Me.Teremandreil = ""
Me.Teowe = ""
End Sub
Private Sub Oreil_Click()
BtnSound
If Me.Oreil.Value = True Then
Me.Odollar.Value = False
Me.Teremandreil.Visible = True
Me.Tresive.SetFocus
Me.cmdcalculate.Enabled = True
32
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Me.Tresive = Format(Me.Tresive, "### R ")
Opclear
End If
End Sub
៤.៧.៣ ព័�៌មានអ�ិថិជន
- Button ព័'៌មានអ'ិ7ិជន :សេគ្របីសគ្រមាប់បងាl ញព័'៌មានរបស់អ'ិ7ិជនទាងំមូល។ សេហីយក#ុងសេនាះ2ងតែEលសេយីងក៏]ចសេធ្វីការបញ្ចូលទិន#ន័យរបស់អ'ិ7ិជន7VីសេEីម Save, Update, Delete ទិន#ន័យជាសេEីម..។
+ ការបង្ហា) ញ Code Button ព័�៌មានអ�ិថិជនOption Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Private Sub cmdclose_Click()
BtnSound
DoCmd.Close acForm, "frcus", acSaveYes
Clear
End Sub
Sub Clear()
Me.Tcusname = ""
33
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Me.Tcusgender = ""
Me.Tcusdob = ""
Me.Tcusphone = ""
Me.Tcusidcardnumber = ""
Me.Tcusplaceofbrirth = ""
Me.Tregeterdate = ""
Me.Tdateout = ""
Me.Tcusid = ""
Me.cmdnew.SetFocus
End Sub
Private Sub cmddelete_Click()
BtnSound
Dim Idd As Integer
Idd = Tcusid.Value
Dim Yesno As Byte
Set Db = CurrentDb()
Yesno = MsgBox("Do you soucr to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblcus where cusid= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
End If
Me.List10.Requery
Me.List10 = Me.Tcusid
Clear
End Sub
Private Sub cmdedit_Click()
BtnSound
Set Rs = CurrentDb.OpenRecordset("tblcus", dbOpenDynaset)
Do While Not Rs.EOF
If UCase(Rs("cusID")) = UCase(Me.Tcusid) Then
Rs.Edit
Rs("cusid") = Me.Tcusid
Rs("cus_name") = Me.Tcusname
Rs("cus_gender") = Me.Tcusgender
34
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Rs("cus_date_of_birth") = Me.Tcusdob
Rs("cus_phone") = Me.Tcusphone
Rs("cus_card") = Me.Tcusidcardnumber
Rs("cus_place_of_birth") = Me.Tcusplaceofbrirth
Rs("regeter_date") = Me.Tregeterdate
Rs("date_out") = Me.Tdateout
Rs.Update
MsgBox "Edit is successfull", vbInformation, "Infomation"
Me.List10.Requery
Me.List10 = Me.Tcusid
Exit Do
Else
Rs.MoveNext
End If
Loop
Rs.Close
CusCo = Me.Tcusid
DoCmd.OpenForm "frdetail", acNormal
Call Clear
End Sub
Private Sub cmdnew_Click()
BtnSound
Me.Tcusid = auto("tblcus", "cusid")
Me.cmdsave.Enabled = True
BtnAutoClear
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Sub BtnAutoClear()
Me.Tcusname = ""
Me.Tcusgender = ""
Me.Tcusdob = ""
Me.Tcusphone = ""
Me.Tcusidcardnumber = ""
35
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Me.Tcusplaceofbrirth = ""
Me.Tregeterdate = ""
Me.Text22.SetFocus
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Private Sub cmdsave_Click()
BtnSound
If Me.Tcusid.Value = "" Or IsNull(Me.Tcusid.Value) = True Then
MsgBox "Please Enter ID"
Me.Tcusid.SetFocus
ElseIf Me.Tcusname.Value = "" Or IsNull(Me.Tcusname.Value) = True Then
MsgBox "Please Enter Name"
Tcusname.SetFocus
ElseIf Me.Tcusgender.Value = "" Or IsNull(Me.Tcusgender.Value) = True Then
MsgBox "Please Enter Gender"
Tcusgender.SetFocus
ElseIf Me.Tcusdob.Value = "" Or IsNull(Me.Tcusdob.Value) = True Then
MsgBox "Please Enter Date Of Birth"
Tcusdob.SetFocus
ElseIf Me.Tcusphone.Value = "" Or IsNull(Me.Tcusphone.Value) = True Then
MsgBox "Please Enter Phone Number"
Tcusphone.SetFocus
ElseIf Me.Tcusidcardnumber.Value = "" Or IsNull(Me.Tcusidcardnumber.Value) = True Then
MsgBox "Please Enter ID card"
Me.Tcusidcardnumber.SetFocus
ElseIf Me.Tcusplaceofbrirth.Value = "" Or IsNull(Me.Tcusplaceofbrirth.Value) = True Then
MsgBox "Please Enter Place Of Birth"
Me.Tcusplaceofbrirth.SetFocus
ElseIf Me.Tregeterdate.Value = "" Or IsNull(Me.Tregeterdate.Value) = True Then
MsgBox "Please Enter Living Date"
Me.Tregeterdate.SetFocus
ElseIf Me.Tdateout.Value = "" Or IsNull(Me.Tdateout.Value) = True Then
MsgBox "Please Enter Date Out"
36
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Me.Tdateout.SetFocus
Else
Set Rs = CurrentDb.OpenRecordset("Tblcus", dbOpenDynaset)
Rs.AddNew
Rs("cusid") = Me.Tcusid
Rs("cus_name") = Me.Tcusname
Rs("cus_gender") = Me.Tcusgender
Rs("cus_date_of_birth") = Me.Tcusdob
Rs("cus_phone") = Me.Tcusphone
Rs("cus_card") = Me.Tcusidcardnumber
Rs("cus_place_of_birth") = Me.Tcusplaceofbrirth
Rs("regeter_date") = Me.Tregeterdate
Rs("date_out") = Me.Tdateout
Rs.Update
MsgBox "Save is successfull", vbInformation, "Infomation"
Me.List10.Requery
Me.List10 = Me.Tcusid
DoCmd.OpenForm "frdetail", acNormal
End If
CusCo = Me.Tcusid
Call Clear
End Sub
Private Sub Command28_Click()
Me.Text22.SetFocus
DoCmd.OpenForm "frdetail", acNormal
End Sub
Private Sub CusBackground_Click()
Me.Text22.SetFocus
DoCmd.OpenForm "frcusdetail", acNormal
End Sub
Private Sub Form_Load()
DoCmd.Maximize
Tusername = User_Login
Set Db = CurrentDb()
37
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Text22.SetFocus
Me.cmdclose.Visible = False
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
cmdsave.Enabled = False
Clear
End Sub
Private Sub List10_Click()
LiCus
End Sub
Sub LiCus()
Dim sqlsearch As String
sqlsearch = "select *from tblcus where cusid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tcusid.Value = Rs("cusid")
Me.Tcusname.Value = Rs("cus_name")
Me.Tcusgender.Value = Rs("cus_gender")
Me.Tcusdob.Value = Rs("cus_date_of_birth")
Me.Tcusphone.Value = Rs("cus_phone")
Me.Tcusidcardnumber.Value = Rs("cus_card")
Me.Tcusplaceofbrirth.Value = Rs("cus_place_of_birth")
Me.Tregeterdate.Value = Rs("regeter_date")
Me.Tdateout.Value = Rs("date_out")
Me.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
Me.cmdsave.Enabled = False
End Sub
Private Sub Tcusid_Click()
BtnSound
Me.List10 = Me.Tcusid
Dim sqlsearch As String
sqlsearch = "select *from tblcus where cusid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tcusname.Value = Rs("cus_name")
38
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Tcusgender.Value = Rs("cus_gender")
Me.Tcusdob.Value = Rs("cus_date_of_birth")
Me.Tcusphone.Value = Rs("cus_phone")
Me.Tcusidcardnumber.Value = Rs("cus_card")
Me.Tcusplaceofbrirth.Value = Rs("cus_place_of_birth")
Me.Tregeterdate.Value = Rs("regeter_date")
Me.Tdateout.Value = Rs("date_out")
Me.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
Me.cmdsave.Enabled = False
End Sub
Private Sub Tdateout_Click()
cmdsave.Visible = True
End Sub
Private Sub TexSex_KeyUp(KeyCode As Integer, Shift As Integer)
Dim st As String, ID As String
If InStr(1, TexSex.Text, "'") > 0 Then
TexSex.Text = ""
End If
st = "select cusid, cus_name,
cus_gender,cus_date_of_birth,cus_phone,cus_card,cus_place_of_birth,regeter_date,date_out
FROM tblcus where cus_gender like'" & Me.TexSex.Text & "*' order by cus_gender"
List10.RowSource = st
If List10.ListCount = 0 Then
'Call ClearControl(Me)
Exit Sub
End If
List10.Selected(0) = True
End Sub
Private Sub TexSName_KeyUp(KeyCode As Integer, Shift As Integer)
Dim st As String, ID As String
If InStr(1, TexSName.Text, "'") > 0 Then
TexSName.Text = ""
End If
39
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង st = "select cusid, cus_name,
cus_gender,cus_date_of_birth,cus_phone,cus_card,cus_place_of_birth,regeter_date,date_out
FROM tblcus where cus_name like'" & Me.TexSName.Text & "*' order by cus_name"
List10.RowSource = st
If List10.ListCount = 0 Then
'Call ClearControl(Me)
Exit Sub
End If
List10.Selected(0) = True
End Sub
40
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៤ ព័�៌មានទ�តាងំរបស់អ�ិថិជន តាមបន្ទប់
- Button ចំនួនអ#ក6# ក់សេ; : សេគ្របីសគ្រមាប់បងាl ញនូវ ចំនួនអ'ិ7ិជន និងទីតាងំអ'ិ7ិជនតែEលមានEួចជា សេលខសេរmងបនaប់ជួល សេលខជាន់នៃនបនaប់ សេលខសេរmងកុងទ័រទឹក និងកុងទ័រសេភDីង។
+ ការបង្ហា) ញ Code Button ទ�តាងំរបស់អ�ិថិជន Option Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Private Sub cmdclose_Click()
BtnSound
DoCmd.Close
End Sub
Private Sub Command6_Click()
Call Form_Load
End Sub
Private Sub Form_Load()
Set Db = CurrentDb()
Width = 8.4667
Me.Text0.SetFocus
41
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងEnd Sub
Private Sub Text4_KeyUp(KeyCode As Integer, Shift As Integer)
Dim st As String, ID As String
If InStr(1, Text4.Text, "'") > 0 Then
Text4.Text = ""
End If
st = "select cusid,name,roomid,floor,fireid,waterid from tbldetail where roomid like'" &
Me.Text4.Text & "*' order by roomid"
List10.RowSource = st
If List10.ListCount = 0 Then
'Call ClearControl(Me)
Exit Sub
End If
List10.Selected(0) = True
End Sub
42
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៥ ព័�៌មានអំព�បន្ទប់
- Button ព័'៌មានបនaប់ : សេគ្របីសគ្រមាប់បសេងsី'នូវសេលខសេរmងបនaប់ជួល, សេលខសេរmងនៃនជាន់និងកំន'់'នៃមDបនaប់នីមួយៗសេហីយមិនតែ'បBុសេណ្ឌាn ះសេយីងក៏]ចសេធ្វីការ Update, Delete និង Save ទិន#ន័យទាងំអស់សេនាះបាន2ងតែEរ។
+ ការបង្ហា) ញ Code នៃន Button ព័�៌មានបន្ទប់
Option Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Private Sub cmdclose_Click()
BtnSound
DoCmd.Close acForm, "frroom", acSaveYes
DoCmd.OpenForm "frmain", acNormal
End Sub
Private Sub cmddelete_Click()
BtnSound
Dim Idd As Integer
Idd = Tid.Value
43
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងDim Yesno As Byte
Set Db = CurrentDb()
Yesno = MsgBox("Do you soucr to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblroom where roomid= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
End If
Cl
Me.List10.Requery
Me.List10 = Me.Tid
Tid = ""
Tcost = ""
End Sub
Private Sub cmdedit_Click()
BtnSound
If Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblroom", dbOpenDynaset)
Do While Not Rs.EOF
If UCase(Rs("roomID")) = UCase(Me.Tid) Then
Rs.Edit
Rs("roomid") = Me.Tid
Rs("room_cost") = Me.Tcost
Rs("floor") = Me.Cmbfloor
Rs("fireid") = Me.cfire
Rs("waterid") = Me.cwater
Rs.Update
MsgBox "Edit is Complete", vbInformation, "Infomation"
Cl
Me.List10.Requery
Me.List10 = Me.Tid
Exit Do
Else
44
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Rs.MoveNext
End If
Loop
Rs.Close
End If
Tid = ""
Tcost = ""
End Sub
Private Sub cmdnew_Click()
BtnSound
Me.Tid = auto("tblroom", "roomid")
Me.Tcost = ""
Me.Cmbfloor = ""
Me.cfire = ""
Me.cwater = ""
cmdsave.Enabled = True
cmddelete.Enabled = False
cmdedit.Enabled = False
End Sub
Private Sub cmdsave_Click()
BtnSound
If Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblroom", dbOpenDynaset)
Rs.AddNew
Rs("roomid") = Me.Tid
Rs("room_cost") = Me.Tcost
Rs("floor") = Me.Cmbfloor
Rs("fireid") = Me.cfire
Rs("waterid") = Me.cwater
Rs.Update
MsgBox "Save is successfull", vbInformation, "Infomation"
Cl
45
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.List10.Requery
Me.List10 = Me.Tid
End If
Tid = ""
Tcost = ""
End Sub
Private Sub Command3_Click()
DoCmd.OpenForm "frcheckroom", acNormal
End Sub
Private Sub Command4_Click()
DoCmd.OpenForm "frdetail", acNormal
End Sub
Private Sub Form_Load()
DoCmd.Maximize
Set Db = CurrentDb()
Me.cmdclose.Visible = False
Cl
cmdsave.Enabled = False
cmdedit.Enabled = False
cmddelete.Enabled = False
End Sub
Sub Cl()
Tid = ""
Me.Tcost = ""
Me.Cmbfloor = ""
Me.cfire = ""
Me.cwater = ""
End Sub
Private Sub List10_Click()
Dim sqlsearch As String
sqlsearch = "select *from tblroom where roomid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("roomid")
Me.Tcost.Value = Rs("room_cost")
46
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Cmbfloor = Rs("floor")
Me.cfire = Rs("fireid")
Me.cwater = Rs("waterid")
cmdedit.Enabled = True
cmddelete.Enabled = True
End Sub
Private Sub Tid_Click()
BtnSound
Me.List10 = Me.Tid
Dim sqlsearch As String
sqlsearch = "select *from tblroom where roomid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("roomid")
Me.Tcost.Value = Rs("room_cost")
cmdedit.Enabled = True
cmddelete.Enabled = True
End Sub
47
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៦ ព័�៌មានអំព�កុងទ័រតើ !�ង
- Button ព័'៌មានកុងទ័រសេភDីង : សេគ្របីសគ្រមាប់បងាl ញនូវព័'៌មានកុងសេភDីងEូចជាសេលខសេរmងនៃនកុងទ័រ, សេលខកុងទ័រចាស់, សេលខកុងទ័រ7Vី, និង'ំនៃលនៃនសេភDីងក#ុងមួយ�ីWូជាសេEីម ។ សេហីយសេយីងក៏]ចសេធ្វីការ Save , Update, Delete ទិន#ន័យជាសេEីម។
+ ការបង្ហា) ញ Code នៃន Button ព័�៌មានអំព�កុងទ័រតើ !�ង Option Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Sub Fclear()
Me.Tid = ""
Me.Tstart = ""
Me.Tstop = ""
Me.Tcost = ""
End Sub
Sub Clear()
Me.Tstart = ""
Me.Tstop = ""
Me.Tcost = ""
48
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងEnd Sub
Private Sub cmdclose_Click()
BtnSound
DoCmd.Close acForm, "frfire", acSaveYes
DoCmd.OpenForm "frmain", acNormal
End Sub
Private Sub cmddelete_Click()
BtnSound
Idd = Tid.Value
Dim Yesno As Byte
Set Db = CurrentDb()
Yesno = MsgBox("Do you soucr to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblfire where fireid= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
Dim Idd As Integer
End If
Me.List10.Requery
Me.List10 = Me.Tid
Call Fclear
End Sub
Private Sub cmdedit_Click()
BtnSound
If Me.Tstart.Value = "" Or IsNull(Me.Tstart.Value) = True Then
MsgBox "Please Enter metion start !"
ElseIf Me.Tstop.Value = "" Or IsNull(Me.Tstop.Value) = True Then
MsgBox "Please Enter metion stop !"
ElseIf Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblfire", dbOpenDynaset)
Do While Not Rs.EOF
If UCase(Rs("fireID")) = UCase(Me.Tid) Then
Rs.Edit
49
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Rs("fireid") = Me.Tid
Rs("fire_start") = Me.Tstart
Rs("fire_stop") = Me.Tstop
Rs("fire_cost") = Me.Tcost
Rs.Update
MsgBox "Edit is Complete", vbInformation, "Infomation"
Me.List10.Requery
Me.List10 = Me.Tid
Exit Do
Else
Rs.MoveNext
End If
Loop
Rs.Close
End If
Call Fclear
End Sub
Private Sub Command12_Click()
BtnSound
If Me.Tstart.Value = "" Or IsNull(Me.Tstart.Value) = True Then
MsgBox "Please Enter metion start !"
ElseIf Me.Tstop.Value = "" Or IsNull(Me.Tstop.Value) = True Then
MsgBox "Please Enter metion stop !"
ElseIf Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblfire", dbOpenDynaset)
Rs.AddNew
Rs("fireid") = Me.Tid
Rs("fire_start") = Me.Tstart
Rs("fire_stop") = Me.Tstop
Rs("fire_cost") = Me.Tcost
Rs.Update
MsgBox "Save is successfull", vbInformation, "Infomation"
50
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.List10.Requery
Me.List10 = Me.Tid
End If
Call Fclear
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Private Sub Command18_Click()
BtnSound
Me.Tid = auto("tblfire", "fireid")
Tstart = 0
Tstop = 0
Tcost = ""
Tcost.SetFocus
Me.Command12.Enabled = True
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Private Sub Form_Load()
DoCmd.Maximize
Me.Tid = auto("tblfire", "fireid")
Set Db = CurrentDb()
Call Clear
Me.cmdclose.Visible = False
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Private Sub List10_Click()
Dim sqlsearch As String
sqlsearch = "select *from tblfire where fireid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("fireid")
Me.Tstart.Value = Rs("fire_start")
Me.Tstop.Value = Rs("Fire_stop")
51
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.Tcost.Value = Rs("fire_cost")
Me.Command12.Enabled = False
Me.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
End Sub
Private Sub Tid_Click()
BtnSound
Me.List10 = Me.Tid
Dim sqlsearch As String
sqlsearch = "select *from tblfire where fireid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("fireid")
Me.Tstart.Value = Rs("fire_start")
Me.Tstop.Value = Rs("Fire_stop")
Me.Tcost.Value = Rs("fire_cost")
Me.Command12.Enabled = False
Me.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
End Sub
52
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៧ ព័�៌មានអំព�កុងទ័រទឹក
- Button ព័'៌មានកុងទ័រទឹក : សេគ្របីសគ្រមាប់បងាl ញនូវព័'៌មានកុងទឹកតែEលមានEូចជា សេលខសេរmងនៃនកុងទ័រសេលខកុងទ័រចាស់ សេលខកុងទ័រ7 Vី និង'ំនៃលនៃនសេភDីងក#ុងមួយ�ីWូជាសេEីម។ សេហីយសេយីងក៏]ចសេធ្វីការ Save Update, Delete ទិន#ន័យបាន2ងតែEរ។
+ ការបង្ហា) ញ Code នៃន Button ព័�៌មានកុងទ័រទឹកOption Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Private Sub cmdclose_Click()
BtnSound
DoCmd.Close acForm, "frwater", acSaveYes
DoCmd.OpenForm "frmain", acNormal
End Sub
Private Sub cmddelete_Click()
BtnSound
Dim Idd As Integer
Idd = Tid.Value
Dim Yesno As Byte
Set Db = CurrentDb()
53
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងYesno = MsgBox("Do you soucr to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblwater where waterid= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
End If
Me.List10.Requery
Me.List10 = Me.Tid
Call Wclear
End Sub
Private Sub cmdedit_Click()
BtnSound
If Me.Tstart.Value = "" Or IsNull(Me.Tstart.Value) = True Then
MsgBox "Please Enter metion start !"
ElseIf Me.Tstop.Value = "" Or IsNull(Me.Tstop.Value) = True Then
MsgBox "Please Enter metion stop !"
ElseIf Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblwater", dbOpenDynaset)
Do While Not Rs.EOF
If UCase(Rs("waterID")) = UCase(Me.Tid) Then
Rs.Edit
Rs("waterid") = Me.Tid
Rs("water_start") = Me.Tstart
Rs("water_stop") = Me.Tstop
Rs("water_cost") = Me.Tcost
Rs.Update
MsgBox "Edit is Complete", vbInformation, "Infomation"
Me.List10.Requery
Me.List10 = Me.Tid
Exit Do
Else
Rs.MoveNext
End If
54
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Loop
Rs.Close
End If
Call Wclear
End Sub
Private Sub cmdsave_Click()
BtnSound
If Me.Tstart.Value = "" Or IsNull(Me.Tstart.Value) = True Then
MsgBox "Please Enter metion start !"
ElseIf Me.Tstop.Value = "" Or IsNull(Me.Tstop.Value) = True Then
MsgBox "Please Enter metion stop !"
ElseIf Me.Tcost.Value = "" Or IsNull(Me.Tcost.Value) = True Then
MsgBox "Please enter price !"
Else
Set Rs = CurrentDb.OpenRecordset("Tblwater", dbOpenDynaset)
Rs.AddNew
Rs("waterid") = Me.Tid
Rs("water_start") = Me.Tstart
Rs("water_stop") = Me.Tstop
Rs("water_cost") = Me.Tcost
Rs.Update
MsgBox "Save is successfull", vbInformation, "Infomation"
Me.List10.Requery
Me.List10 = Me.Tid
End If
Call Wclear
End Sub
Private Sub Command3_Click()
BtnSound
Me.Tid = auto("tblwater", "waterid")
Me.Tstart = 0
Me.Tstop = 0
Tcost = ""
Tcost.SetFocus
55
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.cmdsave.Enabled = True
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Sub Wclear()
Me.Tid = ""
Me.Tstart = ""
Me.Tstop = ""
Me.Tcost = ""
End Sub
Sub Clear()
Me.Tstart = ""
Me.Tstop = ""
Me.Tcost = ""
End Sub
Private Sub Form_Load()
DoCmd.Maximize
'Tusername = UserLogin
Me.Tid = auto("tblwater", "waterid")
Set Db = CurrentDb()
Call Clear
Me.cmdclose.Visible = False
Me.cmdedit.Enabled = False
Me.cmddelete.Enabled = False
End Sub
Private Sub List10_Click()
Dim sqlsearch As String
sqlsearch = "select *from tblwater where waterid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("waterid")
Me.Tstart.Value = Rs("water_start")
Me.Tstop.Value = Rs("water_stop")
Me.Tcost.Value = Rs("water_cost")
Me.cmdsave.Enabled = False
56
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងMe.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
End Sub
Private Sub Tid_Click()
BtnSound
Me.List10 = Me.Tid
Dim sqlsearch As String
sqlsearch = "select *from tblwater where waterid=" & Me.List10.Column(0)
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Tid.Value = Rs("waterid")
Me.Tstart.Value = Rs("water_start")
Me.Tstop.Value = Rs("water_stop")
Me.Tcost.Value = Rs("water_cost")
Me.cmdsave.Enabled = False
Me.cmdedit.Enabled = True
Me.cmddelete.Enabled = True
End Sub
57
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៨ ការចំណាយរបស់អ�ិថិជន
- Button ការចំណ្ឌាយរបស់អ'ិ7ិជន : សេ�សេគ្របីសគ្រមាប់សេបីកនូវរាល់ទិន#ន័យ នៃនការចំណ្ឌាយរបស់អ'ិ7ិជនមា# ក់ៗតែEលបានជួល។
+ ការបង្ហា) ញ Code ការចំណាយរបស់អ�ិថិជនOption Compare Database
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Private Sub Command1_Click()
Dim Idd As Integer
Idd = Me.Tcusid.Value
Dim Yesno As Byte
Set Db = CurrentDb()
Yesno = MsgBox("Do you soucr to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblcheck where id= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
End If
End Sub
Private Sub cmdclose_Click()
BtnSound
58
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងDoCmd.Close
End Sub
Private Sub Command14_Click()
DoCmd.OpenReport "Report1", acViewReport, , "ID = " & Text11.Value, acDialog
End Sub
Private Sub Command2_Click()
BtnSound
Dim Idd As Integer
Idd = Text15.Value
Dim Yesno As Byte
Set Db = CurrentDb()
Yesno = MsgBox("Do you want to delete ?", vbYesNo)
If Yesno = vbYes Then
Db.Execute "delete from tblcheck where cusID= " & Idd
ElseIf Yesno = vbNo Then Exit Sub
End If
Me.List10.Requery
Me.List10 = Me.Tcusid
Me.Text7.SetFocus
End Sub
Private Sub Form_Load()
DoCmd.Maximize
Set Db = CurrentDb()
Me.Text7.SetFocus
Me.Command2.Enabled = False
Command14.Enabled = False
End Sub
Private Sub List10_Click()
' Sea
Me.Command2.Enabled = True
Command14.Enabled = True
End Sub
Sub Sea()
Dim sqlsearch As String
59
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងsqlsearch = "select *from tblcheck where id =" & Me.Tcusid & ""
Set Rs = Db.OpenRecordset(sqlsearch)
Me.Text11.Value = Rs("id")
Me.Text15.Value = Rs("cusid")
End Sub
Private Sub Tcusid_Click()
BtnSound
Me.List10 = Me.Tcusid
Sea
Me.Command2.Enabled = True
Command14.Enabled = True
End Sub
60
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.៩ សាខា
- Button 6ខ្លា : សេគ្របីសគ្រមាប់សេបីកនូវទិន#ន័យ2aះជួលតែEលមានទីតាងំមួយកតែនDងសេទm' សេEីម្បីសេធ្វីការបញ្ចូលទិន#ន័យសេ2្សងៗតែEលគ្រ'វូមាន បនាa ប់មកសេយីងសេធ្វីការ �ណនាទិន#ន័យសេ;តាមបនaប់នីមួយៗ។
+ ការបង្ហា) ញ Code សាខាផ្ទះជួលមួយកន្លែន!ងតើទ=�Option Compare Database
Dim Db As DAO.Database, Rs As DAO.Recordset, Sqlfire, Sqlwater As String
Private Sub Combo0_Click()
BtnSound
teid = Combo0
Me.tename.Value = DLookup("Name", "tblroom2", "cusid=" & Me.Combo0 & "")
Me.teroomid.Value = DLookup("roomid", "tblroom2", "cusid=" & Me.Combo0 & "")
Me.teroomcost.Value = DLookup("rcost", "tblroom2", "roomid=" & Me.teroomid & "")
Me.tefid.Value = DLookup("fireid", "tblroom2", "cusid=" & Me.Combo0 & "")
Me.tefstart.Value = DLookup("fstop", "tblfire2", "fireid=" & Me.tefid & "")
Me.tefcost.Value = DLookup("fcost", "tblfire2", "fireid=" & Me.tefid & "")
Me.tewid.Value = DLookup("waterid", "tblroom2", "cusid=" & Me.Combo0 & "")
Me.tewstart.Value = DLookup("wstop", "tblwater2", "waterid=" & Me.tewid & "")
Me.tewcost.Value = DLookup("wcost", "tblwater2", "waterid=" & Me.tewid & "")
tefstop.SetFocus
End Sub
61
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងPrivate Sub Command15_Click()
Call A
End Sub
Sub A()
Dim total, allD, allR, ch, am As Double
tewuse = CDbl(tewstop) - CDbl(tewstart)
tewpay = tewuse * tewcost
tefuse = CDbl(tefstop) - CDbl(tefstart)
tefpay = tefuse * tefcost
total = CDbl(tefpay) + CDbl(tewpay)
ch = total / tedollarcost
allD = ch + teroomcost
teamount = allD
teamountreil = allD * tedollarcost
'teamountR = allR
temoneyD.SetFocus
End Sub
Sub USD()
tereain = CDbl(temoneyD) - CDbl(teamount)
teamountreil = CDbl(teamount) * tedollarcost
End Sub
Sub Kh()
Me.tereain = CDbl(temoneyR) - CDbl(teamountreil)
temoneyD = CDbl(teamountreil) / CDbl(tedollarcost)
End Sub
Private Sub Command37_Click()
saveall
FSave
WSave
pay
MsgBox "Your insert data is succed .", vbInformation, "Infomation"
Cl
End Sub
Sub pay()
62
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងSet Rs = CurrentDb.OpenRecordset("tblroom2", dbOpenDynaset)
Do While Not Rs.EOF
If UCase(Rs("roomid")) = UCase(Me.teroomid) Then
Rs.Edit
Rs("pay") = "Already"
Rs.Update
Exit Do
Else
Rs.MoveNext
End If
Loop
Rs.Close
End Sub
Sub saveall()
Set Rs = Db.OpenRecordset("total")
Rs.AddNew
Rs.Fields(0) = tereport
Rs.Fields(1) = Me.tedate
Rs.Fields(2) = Me.teid
Rs.Fields(3) = Me.tename
Rs.Fields(4) = Me.tefstart
Rs.Fields(5) = Me.tefstop
Rs.Fields(6) = Me.tefuse
Rs.Fields(7) = tefcost
Rs.Fields(8) = tefpay
Rs.Fields(9) = tewstart
Rs.Fields(10) = tewstop
Rs.Fields(11) = tewuse
Rs.Fields(12) = tewuse
Rs.Fields(13) = tewcost
Rs.Fields(14) = teroomcost
Rs.Fields(15) = "Aleady"
63
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង Rs.Fields(16) = teamountreil
Rs.Fields(17) = User_Login
Rs.Update
End Sub
Sub FSave()
Sqlfire = "update tblfire2 set fireid=" & Me.tefid & ",fstart=" & Me.tefstart & ",fstop=" &
Me.tefstop & ",fuse=" & tefuse & ",fcost=" & Me.tefcost & ",fpay=" & Me.tefpay & "
where fireid=" & Me.tefid & ""
Db.Execute Sqlfire
End Sub
Sub WSave()
Sqlwater = "update tblwater2 set waterid=" & Me.tewid & ",wstart=" & Me.tewstart &
",wstop=" & Me.tewstop & ",wuse=" & Me.tewuse & ",wcost=" & Me.tewcost & ",wpay="
& Me.tewpay & " where waterid=" & Me.tewid & ""
Db.Execute Sqlwater
End Sub
Private Sub Command78_Click()
USD
End Sub
Sub Cl()
teid = ""
tename = ""
teroomid = ""
teroomcost = ""
Combo0 = ""
tefid = ""
tefstart = ""
tefstop = ""
tefuse = ""
tefcost = ""
tefpay = ""
tewid = ""
tewstart = ""
tewstop = ""
64
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង tewuse = ""
tewcost = ""
tewpay = ""
teamount = ""
temoneyR = ""
temoneyD = ""
teamountreil = ""
tereain = ""
teforcus.SetFocus
End Sub
Sub LoCl()
teid = ""
tename = ""
teroomid = ""
teroomcost = ""
Combo0 = ""
tefid = ""
tefstart = ""
tefstop = ""
tefuse = ""
tefcost = ""
tefpay = ""
tewid = ""
tewstart = ""
tewstop = ""
tewuse = ""
tewcost = ""
tewpay = ""
teamount = ""
temoneyR = ""
temoneyD = ""
teamountreil = ""
tereain = ""
teforcus.SetFocus
65
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងEnd Sub
Private Sub Command81_Click()
Cl
Me.tereport = auto("total", "report")
End Sub
Private Sub Command82_Click()
DoCmd.OpenReport "Report2", acViewReport, , "report = " & tereport.Value, acDialog
End Sub
Private Sub Command88_Click()
DoCmd.OpenForm "checkcuspay2", acNormal
End Sub
Private Sub Form_Load()
Set Db = CurrentDb()
tedollarcost = 4000
LoCl
tedate = Date
Me.tereport = auto("total", "report")
End Sub
66
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង៤.៧.១០ បិទកម្មវធិ�
- Button បិទ :សេគ្របីសគ្រមាប់បិទកមVវធីិទាងំមូលក#ុងសេនាះ2ងតែEល វាក៏]ចអនុញ្ញា& 'ិសេ]យសេយីងសេធ្វីការសេគ្រជីសសេរសីនូវជំសេរសី ចំនួនពីរសេ2្សងគ្មា# ថ្នា សេ'ីសេយីងសំរាច់ចិ'្តថ្នាបិ' ឫមិនបិ'កមVវធីិ។
+ ការបង្ហា) ញ Code នៃន Button បិទPrivate Sub Imcloseo_Click()
DoCmd.QuitEnd Sub
67
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រង
Modules (Module តែEលគ្រ'វូសេគ្របីគ្របាស់ក#ុង Database)
a) autonumber
Option Compare Database
Function auto(table$, field$) As Long
Dim rs As DAO.Recordset, db As DAO.Database, sqltext As String, X As Long
sqltext = " select " & field & " from " & table & " order by " & field
Set db = CurrentDb()
Set rs = db.OpenRecordset(sqltext)
With rs
If .RecordCount = 0 Then
X = 1
Else
If .Fields(0) > 1 Then
X = 1
Else
X = .Fields(0)
Do Until .EOF
.MoveNext
If .EOF Then
X = X + 1
Exit Do
ElseIf X + 1 <> .Fields(0) Then
X = X + 1
Exit Do
Else
X = .Fields(0)
End If
Loop
End If
End If
.Close
End With
Set db = Nothing
68
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងauto = X
End Function
b) Cusconect Option Compare Database
Public CusCo As String
Public Cusname As String
c) ModuCursor Option Compare Database
Public Const IDC_APPSTARTING = 32650&
Public Const IDC_HAND = 32649&
Public Const IDC_ARROW = 32512&
Public Const IDC_CROSS = 32515&
Public Const IDC_IBEAM = 32513&
Public Const IDC_ICON = 32641&
Public Const IDC_NO = 32648&
Public Const IDC_SIZE = 32640&
Public Const IDC_SIZEALL = 32646&
Public Const IDC_SIZENESW = 32643&
Public Const IDC_SIZENS = 32645&
Public Const IDC_SIZENWSE = 32642
Public Const IDC_SIZEWE = 32644&
Public Const IDC_UPARROW = 32516&
Public Const IDC_WAIT = 32514&
Declare Function LoadCursorBynum Lib "user32" Alias "LoadCursorA" _
(ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
Declare Function LoadCursorFromFile Lib "user32" Alias _
"LoadCursorFromFileA" (ByVal lpFileName As String) As Long
Declare Function SetCursor Lib "user32" _
(ByVal hCursor As Long) As Long
Function MouseCursor(CursorType As Long)
Dim lngRet As Long
lngRet = LoadCursorBynum(0&, CursorType)
lngRet = SetCursor(lngRet)
End Function
69
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងFunction PointM(strPathToCursor As String)
Dim lngRet As Long
lngRet = LoadCursorFromFile(strPathToCursor)
lngRet = SetCursor(lngRet)
End Function
d) Modulecommond Option Compare Database
Option Explicit
Public LngScreenWidth As Long
Public LngScreenHeight As Long
Public StrCurrentUser As String
e) Msound Option Compare Database
Option Explicit
Public Declare Function sndPlaySound Lib "winmm.dll" _
Alias "sndPlaySoundA" (ByVal lpszSoundName As String, _
ByVal uFlags As Long) As Long
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_NODEFAULT = &H2
Const SND_LOOP = &H8
Const SND_NOSTOP = &H10
Public Function Sound()
Dim soundfile As String
Dim wflags As Integer
soundfile = CurrentProject.Path & "\sounds\MouseMove.wav"
wflags = SND_ASYNC Or SND_NODEFAULT
Call sndPlaySound(soundfile, wflags)
End Function
Public Function BtnSound()
Dim soundfile As String
Dim wflags As Integer
soundfile = CurrentProject.Path & "\sounds\GUNSHOT.wav"
wflags = SND_ASYNC Or SND_NODEFAULT
70
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងCall sndPlaySound(soundfile, wflags)
End Function
f) Report Option Compare Database
Option Explicit
Sub Rep(ReportName As String, WhereCond As String)
DoCmd.OpenReport ReportName, acViewReport, , WhereCond, acDialog
End Sub
g) Room
Option Compare Database
Public CheckRoom As Integer
h) User
Option Compare Database
Public User_Login As String
71
មជ្ឈមណ្ឌ លអភិវឌ្ឍន៍សហគ្រ�ិនកម្ពុជា-ឥណ្ឌា្ឌ របាយការណ៍បញ្ចប់ការសិក្សាថ្នា# ក់បរញិ្ញា& បគ្រ'រងជំពូក ៥
សេសចក្តីសន#ិដា� ន
សេគ្រកាយពីការខិ'ខំ សិក្សាគ្រ6វគ្រជាវមកគ្រកមុរបស់សេយីងខ្ញុំ បានរមួសហការគ្មា# សេEីម្ីបក6ងគ្របព័ន្ធគ្រ�ប់គ្រ�ងមួយសេនះសេWងី សេដាយបានចំណ្ឌាយសេពលសេវ<អស់ជិ'៣តែខរចួមកតែEលជាលទលពួកសេយីងបានបញ្ចប់ការងារសេនះសេដាយសេជា�ជ័យ និងបាន2្តល់គ្របព័នa សេនះជូនEល់ សេ<កចនា្ត តែEលជាមា្ច ស់2្ចះជួរ សេ]យ គ្មា'់បាន6កល្បងសេធ្វីការសេគ្របីគ្របាស់។ ខ្ញុំពិ'ជាសេជ{ជាក់ថ្នា កមVវធីិគ្រ�ប់គ្រ�ងទិន#ន័យមួយសេនះ ពិ'ជា]ចជួយ សេ]យគ្រកមុហុ៊នមានការគ្រ�ប់គ្រ�ងកាន់តែ'ងាយគ្រសលួជាងមុនមួយកំរ'ិសេទm' និង]ចចំសេណញសេពល សេវ<បានសេគ្រចីនសេទm'2ង។ បBុតែន្តជាលទ្ធ2លជាក់តែស្តងពួកសេយីងយល់សេpីញថ្នាកមVវធីិមួយសេនះមិនតែមនជាកមVវធីិតែEលលMឥ'សេខ្លា្ច ះសេនាះសេWយីសេគ្រPះសេ;មានចំនុចខ្វះខ្លា'ជាសេគ្រចីន តែEលគ្រ'វូតែកលំអរមួមានទាងំ Code, Form, Table និងការ Design Background រកឺារបញQូលគ្រកាភ្វិចសេ2្សងៗ។
ចំនុចតែEល]ចចា'់ទុកថ្នាជាចំនុចលM តែEល]ចជួយសំរាលការងារ Eល់មា្ច ស់2aះជួរ មានEូចជា ៖- ]ចបសេងsីនសុវ'gិភាពសេ>សេលីទិន#ន័យទាងំមូល- ]ចតែកលទិន#ន័យ និងលុបបានយ៉ាB ងចាប់រហ័ស- ទិន#ន័យទាងំអស់]ចរក្សាទុកបានយ៉ាB ងងាយគ្រសលួ និងសុវ'gភាពជាទីបំ2ុ'- ]ចសេធ្វីសេ]យមានទាក់ទងរវាង Form មួយសេ>Form មួយសេទm'បានយ៉ាB ងរលួន- ]ចពិនិ'្យសេមីលទិន#ន័យអ'ិ7ិជន និង2aះជូរបានគ្រ�ប់សេពល។- ]ចសេធ្វីការ Print សេចញជា report សំរាប់ជួនEល់អ'ិ7ិជន- ងាយគ្រសលួសេធ្វី Report សេ2្សងៗ។
ម្យា�ងវញិសេទm' សេដាយសេពលសេវ<ខDី សេហីយគ្រកមុខ្ញុំពំុធាD ប់មានបទពិសេ6ធន៍បានសេធ្វីសេ]យការក6ងគ្របព័ន្ធគ្រ�ប់គ្រ�ងរបស់សេយីងបានបP្ចប់សេ>សេដាយចំនុចខ្វះខ្លា'មួយចំនួនEូចជា ៖
- មិនទាន់សេធ្វីការ6កល្បងគ្រ�ប់គ្រជងុសេគ្រជាយ ច្បាស់<ស់សេ;សេWយី ។- ការ Design Form សេ;ពំុទាន់បាន6M 'គ្រ�ប់គ្រជងុសេគ្រជាយ ។- មិនទាន់បានសេធ្វីការ Backup Data ទុក ។- ការដាក់ Security Password សេ;មិនទាន់មានសុវ'gិភាពខ្ពស់ ។- ការគ្រ�ប់គ្រ�ងមិនទាន់គ្រ�ប់គ្រជងុសេគ្រជាយ ។- ការសសេសរ Code Function និងSub Procedure សេ;មានកំរ'ិ ។
]គ្រស័យសេហ'ុសេនះ សូមមិ'្តអ#ក]ន និងសិស្សានុសិស្សជំំនាន់សេគ្រកាយតែEលកំពុងសិក្សាគ្រ6វគ្រជាវសូមសេមតា្តបតែនgមឬតែកល'ំរវូគ្របសិនសេបីមាននូវចំនុចខ្វះខ្លា'់ណ្ឌាមួយតែEលគ្រកមុសេយីងខ្ញុំសេEីមសេ]យគ្របព័ន្ធមានភាពងាយគ្រសលួជាមុន។
72