إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

كيف أدخل قيم من المستخدم ؟؟ Pl/sql


1 رد (ردود) على هذا الموضوع

#1 kame

kame

    عضو

  • الأعضــاء
  • 1 مشاركة

تاريخ المشاركة 04 January 2009 - 02:27 PM

السلام عليكم

مثل ما هو واضح من العنوان أنا عندي مشروع وأبغى المستخدم يدخل كلمة مرور وبعدين أنا أقبلها كمتغير ...

كيف أقدر أسوي هالشيء مع العلم إني أستخدم Oracle 10g express edition

#2 Ahmad.Hasan

Ahmad.Hasan

    مشرف قسم الـ Forms & Reports والمشاريع

  • فريق الإشراف
  • 4,869 مشاركة
  • الاسم الأول:Ahmad
  • اسم العائلة:Hasan
  • البـلـد: Country Flag
  • المنصب الحالي:Oracle HCM Consultant

تاريخ المشاركة 05 January 2009 - 12:27 AM

السلام عليكم اخي الكريم
اولا يجب عليك انشاء هذا الجدول
------------------------------------------
CREATE TABLE  "USERS_ACCOUNT" 
   (	"USR_ID" VARCHAR2(100), 
	"USR_ANAME" VARCHAR2(100), 
	"USR_ENAME" VARCHAR2(100), 
	"USR_PASSWORD" VARCHAR2(50), 
	"USR_TYPE" NUMBER, 
	"USR_STATUS" NUMBER, 
	"USR_EXP_FLAG" NUMBER, 
	"USR_EXP_FROM" DATE, 
	"USR_EXP_TO" DATE, 
	 CONSTRAINT "GBT_LOGIN_PK" PRIMARY KEY ("USR_ID") ENABLE
   )
/
----------------------------------------------
وتعمل شاشة LOGIN وتكتب هذا الكود بــ PROGRAM UNIT واستدعي البروسيجر داخل زر الدخول
طبعا عدل على الكود حسب برنامجك
---------------------------------------------
PROCEDURE P_CHECKUSER IS
VN_COUNT   NUMBER(10) := 0; 
VV_USRSTS  NUMBER(1)  := ''; 
VV_USRTYPE NUMBER(1)  := '';
VV_TYPE	NUMBER;
VV_FLAG	NUMBER(1):='';
VV_EXP_TO  DATE;
V DATE;

-------------------------------------------------------------------------------------------------------   
BEGIN 
----------------------- áÊÃßÏ ãä ÇÓã ÇáãÓÊÎÏã æßáãÉ ÇáÓÑ
BEGIN 
SELECT COUNT(1)--- ÊÇßÏ ãä æÌæÏ ÇáãÓÊÎÏã Ýí ÞÇÚÏÉ ÇáÈíÇäÇÊ
INTO   VN_COUNT 
FROM   GBT_LOGIN
WHERE  UPPER(USR_ID) = UPPER(:BLKLOGIN.USR_ID) AND UPPER(USR_PASSWORD) = UPPER(:BLKLOGIN.USR_PASSWORD);
EXCEPTION WHEN NO_DATA_FOUND THEN
VN_COUNT := 0;
END;

IF VN_COUNT = 0 THEN
:PARAMETER.P_TRIALS := NVL(:PARAMETER.P_TRIALS,0) + 1;--- ãÊÛíÑ äÖÚå áßí äÚØí ÇáãÓÊÎÏã ËáÇË ãÍÇæáÇÊ ááÏÎæá æÈÚÏåÇ íÎÑÌ ãä ÇáÈÑäÇãÌ 
IF :PARAMETER.P_TRIALS = 3 THEN
EXIT_FORM(NO_COMMIT,NO_VALIDATE);
ELSE
	MESSAGE('ÇáÑÌÇÁ ÅÏÎÇá ÑÞã ÇáãÓÊÎÏã Çæ ßáãÉ ÇáãÑæÑ');
	  MESSAGE('ÇáÑÌÇÁ ÅÏÎÇá ÑÞã ÇáãÓÊÎÏã Çæ ßáãÉ ÇáãÑæÑ');
GO_BLOCK('BLKLOGIN'); ---ÇáÐåÇÈ Çáì ÇáÈáæß 
CLEAR_BLOCK(NO_COMMIT);
GO_BLOCK('BLKLOGIN');
END IF;
ELSE
	
BEGIN 
-- ÇÎÐ ÇáãÚáæãÇÊ ÇáÎÇÕÉ ÈÇáãÓÊÎÏã
SELECT USR_STATUS , USR_TYPE
INTO   VV_USRSTS , VV_USRTYPE
FROM   GBT_LOGIN 
WHERE  UPPER(USR_ID) = UPPER(:BLKLOGIN.USR_ID) AND UPPER(USR_PASSWORD) = UPPER(:BLKLOGIN.USR_PASSWORD);
EXCEPTION WHEN NO_DATA_FOUND THEN
NULL;
END;
----------------------------------------------------------------------------------------------------------
:GLOBAL.P_USER_TYPE:=VV_USRTYPE;	
:GLOBAL.P_USER_ID:=:BLKLOGIN.USR_ID; 
NEW_form('F:GBT_SYS\FRM\MAIN_PAGE.fmx');
CLEAR_BLOCK(NO_COMMIT);
END IF;

END;
--------------------------
بالتوفيق ولا تنسونا من الدعاء ولاخوانكم بغزة

تم التعديل بواسطة PALI.ORACLE, 05 January 2009 - 12:35 AM.

.Oracle E-Business Suite R12 HCM Certified Implementation Specialist

 

.Oracle Fusion Human Capital Management 11g Human Resources Certified Implementation Specialist