ASPを使用して、階層的許可制御を実装します
この記事では、会計管理システムにおける階層的権限の制御を実装しています。このプログラムはASPとJavaScriptで記述されており、IIS4.0を搭載したWIN NTサーバーで実行されます。迅速でメンテナンスが簡単です。
許可レベルは次のように分割されます。
①。ディーンとファイナンスセクションのチーフ:入力できません。無制限の問い合わせと統計が見つかります。
②。副社長:入力できない場合は、担当部門のアカウントを照会してカウントできます。
③。部門のリーダー:入力できない場合は、この部門のアカウントを照会してカウントできます。
④。会計:各部門のアカウントを入力することができます(会計士はいくつかの部門のアカウントを作成する必要がある場合があります)。また、自分で入力したアカウントのみを照会してカウントできます。
関係するデータベースとフィールドは次のとおりです
①。 JK_USERデータベースとフィールド:ID(シリアル番号)、BMID(部門番号)、ユーザー名(ユーザー名)、PWD(パスワード)、右(許可値);
②。 BMデータベースとフィールド:ID(シリアル番号)、BMID(部門番号);
③、JZPZデータベースとフィールド:ID(シリアル番号)、BM(部門)、ZGS(子会社)、XMZ(プロジェクトグループ)、XM(プロジェクト)、SR(収益)、ZC(支出)、SZFX(収益方向)、SZXS(収益形式)、
RQ(日付)、JBR(マネージャー)、LRR(入力者)、SZSM(着信声明);
④、ZGSデータベースおよびフィールド:ID(シリアル番号)、ZGS(子会社)名(会社名)、BMID(部門番号)。
1.最初に、ユーザーIDの合法性を確認します
ユーザーが提出したユーザー名とパスワードをデータベースjk_userのフィールドと比較して、その合法性を決定します。法務ユーザー(システム管理者がアカウントを開きます)のみが入力できます。法律ユーザーは持っています
4つの許可レベルがあり、4つの許可値が「1」、「2」、「3」、および「4」に与えられます。 (プログラム省略)。
2。バウチャー会計(レベルの許可制御)
バウチャー会計機能は、会計士に特別に使用されており、他の人が使用することはできません。たとえば、バウチャーエントリインターフェイスを非会計士として入力する場合、「クエリアカウンティングバウチャー」関数ボタンのみが表示され、その他の機能が表示されます。
ボタンが表示されません。入力されたバウチャーは、最初に一時的なテーブルに保存されます。これは「未計上のバウチャーライブラリ」と呼ばれます。 「バウチャーアカウンティング」関数を実行した後のみ、「未計算バウチャーライブラリ」バウチャーにバウチャーライブラリに入力できます。
改訂。いくつかの手順は次のとおりです。
「非会計担当者が入力し、「バウチャー会計」と「文書化されていないバウチャーを保存」関数ボタンが表示されません
if(thispage.firstentered)then
session( "right")<> "1"その後
Button1.hide
Button2.hide
ifを終了します
…………
'時間とオペレーターを自動的に入力します
textbox7.value = year(date)& " - "&month(date)& " - "&day(date)
textbox9.value = session( "username")
cnn1 = server.createobject( "adodb.connection")を設定します
rst1 = server.createObject( "adodb.recordset")を設定します
cnn1.cursorlocation = 3
cnn1.connectiontimeout = 30
cnn1.open "dsn = jky"
rst1.open "select * from bm"、cnn1,1,1、adcmdtext
rst1.recordcount> 0の場合
rst1.movefirst
id = rst1.fields( "id")
rst1.eofではありません