ใช้ ASP เพื่อใช้การควบคุมการอนุญาตตามลำดับชั้น
บทความนี้ใช้การควบคุมการอนุญาตตามลำดับชั้นในระบบการจัดการบัญชี โปรแกรมนี้เขียนขึ้นใน ASP และ JavaScript และทำงานบนเซิร์ฟเวอร์ Win NT ที่ติดตั้ง IIS4.0 มันง่ายและง่ายต่อการบำรุงรักษา
ระดับการอนุญาตถูกแบ่งดังนี้:
①. หัวหน้าแผนกคณบดีและการเงิน: ไม่สามารถเข้าสู่การสอบถามและสถิติได้ไม่ จำกัด
②. รองประธาน: หากคุณไม่สามารถป้อนได้คุณสามารถสอบถามและนับบัญชีของแผนกที่รับผิดชอบ;
③. หัวหน้าแผนก: หากคุณไม่สามารถป้อนได้คุณสามารถสอบถามและนับบัญชีของแผนกนี้ได้
④. การบัญชี: คุณสามารถป้อนบัญชีของแต่ละแผนก (บางครั้งนักบัญชีจำเป็นต้องสร้างบัญชีของหลายแผนก) และคุณสามารถสอบถามและนับบัญชีที่คุณป้อนด้วยตัวเองเท่านั้น
ฐานข้อมูลและฟิลด์ที่เกี่ยวข้องมีดังนี้
①. ฐานข้อมูลและฟิลด์ JK_USER: ID (หมายเลขซีเรียล), BMID (หมายเลขแผนก), ชื่อผู้ใช้ (ชื่อผู้ใช้), PWD (รหัสผ่าน), ขวา (ค่าสิทธิ์);
②. ฐานข้อมูลและฟิลด์ BM: ID (หมายเลขซีเรียล), BMID (หมายเลขแผนก);
③, ฐานข้อมูลและฟิลด์ JZPZ: ID (หมายเลขซีเรียล), BM (แผนก), ZGS (บริษัท ย่อย), XMZ (กลุ่มโครงการ), XM (โครงการ), SR (รายได้), ZC (ค่าใช้จ่าย), SZFX (ทิศทางรายได้), SZXS
RQ (วันที่), JBR (ผู้จัดการ), LRR (inputer), SZSM (คำสั่งขาเข้า);
④, ฐานข้อมูลและฟิลด์ ZGS: ID (หมายเลขซีเรียล), ZGS (บริษัท ย่อย) ชื่อ (ชื่อ บริษัท ), BMID (หมายเลขแผนก)
1. ก่อนอื่นตรวจสอบความถูกต้องตามกฎหมายของผู้ใช้
เปรียบเทียบชื่อผู้ใช้และรหัสผ่านที่ส่งโดยผู้ใช้กับฟิลด์ในฐานข้อมูล jk_user เพื่อกำหนดความถูกต้องตามกฎหมาย เฉพาะผู้ใช้ตามกฎหมาย (ผู้ดูแลระบบระบบเปิดบัญชีสำหรับพวกเขา) เท่านั้นที่สามารถป้อนได้ ผู้ใช้ตามกฎหมายมี
มีสี่ระดับการอนุญาตและค่าอนุญาตสี่ค่าให้กับ "1", "2", "3" และ "4" (ละเว้นโปรแกรม)
2. การบัญชีบัตรกำนัล (การควบคุมการอนุญาตระดับ)
ฟังก์ชั่นการบัญชีบัตรกำนัลใช้เป็นพิเศษสำหรับนักบัญชีและไม่สามารถใช้งานได้โดยผู้อื่น ตัวอย่างเช่นเมื่อป้อนอินเทอร์เฟซรายการบัตรกำนัลเป็นแบบไม่ใช้บัญชีเท่านั้นสามารถมองเห็นปุ่มฟังก์ชั่น "Query Accounting Voucher" ได้เท่านั้นและฟังก์ชั่นอื่น ๆ
ปุ่มไม่สามารถมองเห็นได้ บัตรกำนัลที่ป้อนจะถูกเก็บไว้เป็นครั้งแรกในตารางชั่วคราวซึ่งเรียกว่า "ห้องสมุดบัตรกำนัลที่ไม่ได้บัญชี" หลังจากเรียกใช้ฟังก์ชั่น "บัตรกำนัลบัญชี" คุณสามารถป้อนห้องสมุดบัตรกำนัลในบัตรกำนัล "Unaccounted Voucher Library"
ปรับปรุงใหม่. ขั้นตอนบางอย่างมีดังนี้:
'บุคลากรที่ไม่ได้บัญชีเข้าสู่ปุ่มฟังก์ชั่น "บัตรกำนัลบัตรกำนัล" และ "บันทึกบัตรกำนัลที่ไม่มีเอกสาร" ไม่แสดง
ถ้า (thispage.firstentered) แล้ว
ถ้าเซสชัน ("ขวา") <> "1" แล้ว
button1.hide
button2.hide
สิ้นสุดถ้า
-
'กรอกเวลาและผู้ให้บริการโดยอัตโนมัติ
textbox7.value = ปี (วันที่) & "-" & เดือน (วันที่) & "-" & วัน (วันที่)
textbox9.Value = เซสชัน ("ชื่อผู้ใช้")
ตั้งค่า cnn1 = server.createObject ("adodb.connection")
ตั้งค่า rst1 = server.createObject ("adodb.recordset"))
CNN1.CursorLocation = 3
cnn1.connectiontimeout = 30
cnn1.open "dsn = jky"
rst1.open "เลือก * จาก bm", cnn1,1,1, adcmdtext
ถ้า rst1.recordcount> 0 แล้ว
rst1.movefirst
id = rst1.fields ("id")
ทำในขณะที่ไม่ใช่ rst1.eof