بتاريخ: 10 مايو 200817 سنة comment_128398 بسم الله الرحمن الرحيملو تسمحو يا اخواني الاعزاءانا سويت المشروع اوانتهيت منهبس الان باقي معي كيف اسوي شاشة يكون فيها تكست اكتب فية مسار حفظ نسخة احتياطية ثم اضغط على كومند يعمل نسخة احتياطية في المكان المحددوكذلك نفس الشي لاستراجاع النسخة الاحتياطيةمع ملاحظة اني كتبت الاستفسار هذا من قبل لاكن كانت الاجابات اني ادخل للدوز واكتب امر النسخ او امر الاسترجاعلاكن مش معقول اني اجيب اسم وكلمة سر قاعدة البيانات للذي سيعمل النسخ الاحتياطيةوكمان مش معقول انهم كل ما يشتو يعملو نسخة احتياطية يتصلولي عشان اعملهم نسخةارجو من الذي سيجيب على السوال ان يطرح الاجابة بشكل مبسط ومشروح عشان المبتدئين امثالي يفهمو الطريقةوجزاكم الله كل خير تقديم بلاغ
بتاريخ: 10 مايو 200817 سنة comment_128415 قم بإدراج 4 مربع نص ، ويكون أسمائهم علي التواليTXT_UNAMETXT_PASSWORDTXT_SERVER_NAMETXT_PATHوبعد ذلك أدرج 2 زر أمر ، الأول تحت إسم CMD_EXPORT ، والثاني تحت إسم CMD_IMPORT ، وأنشأ الغرض التالي لإختبار المدخلات : FUNCTION CHECK_INPUT RETURN BOOLEAN AS BOL BOOLEAN; BEGIN BOL := FALSE; IF(:TXT_UNAME IS NULL)THEN MESSAGE('رجاء إدخال إسم المستخدم'); MESSAGE('رجاء إدخال إسم المستخدم'); BOL := TRUE; GO_ITEM('TXT_UNAME'); END IF; IF(:TXT_PASSWORD IS NULL)THEN MESSAGE('رجاء إدخال كلمة المرور'); MESSAGE('رجاء إدخال كلمة المرور'); BOL := TRUE; GO_ITEM('TXT_PASSWORD); END IF; IF(:TXT_SERVER_NAME IS NULL)THEN MESSAGE('رجاء إدخال إسم خادم أوراكل'); MESSAGE('رجاء إدخال إسم خادم أوراكل'); BOL := TRUE; GO_ITEM('TXT_USER_NAME'); END IF; IF(:TXT_PATH IS NULL)THEN MESSAGE('رجاء تحديد مسار ملف البيانات'); BOL := TRUE; GO_ITEM('TXT_USER_NAME'); END IF; <<EXIT_FUNCTION>> RETURN BOL; END; وبعد ذلك أكتب الكود التالي في زر أمر CMD_EXPORT لتصدير البيانات : IF(CHECK_INPUT = FALSE)THEN HOST('EXP ' || :TXT_UNAME || '/' || :TXT_PASSWORD || '@' || :TXT_SERVER_NAME || ' FILE = ' || :TXT_PARH); END IF; وأكتب الكود التالي لإستيراد البيانات من جديد : IF(CHECK_INPUT = FALSE)THEN HOST('IMP SYSTEM/MANAGER@' || :TXT_SERVER_NAME || ' FROMUSER = ' || :TXT_UNAME || ' TOUSER = ' || :TXT_UNAME || ' FILE = ' || :TXT_PATH); END IF; ملحوظة ، هذا مجرد مثال ، ولكن يمكنك توسيع العملية كما تشاءشكراً تقديم بلاغ
بتاريخ: 11 مايو 200817 سنة كاتب الموضوع comment_128481 بسم الله الرحمن الرحيماولا مشكور يا اخي على الاجابةبس انت ما فهمت قصديمن طريقتك هذي سوف اكتب اسم المستخدم وكلمة المرور واسم قاعدة البيانات كمانمع ان هذي الحاجات ما يعرفهاش المستخدم للنضام يعني انا اريد ان تضهر له شاشة فيها زر عمل نسخة وزر استعادة نسخة مع وجود تكست لماكن الحفظ والاستعادةبدون كتابة كلمة السر والمستخدموبارك الله فيك تقديم بلاغ
بتاريخ: 11 مايو 200817 سنة comment_128488 السلام عليكم ورحمة الله وبركاتهاخي الكريميمكنك الاستفاد من الكود التالي للوصول لمتداد الملف في حال تغير موقع ملف البرنامج FUNCTION getpath RETURN VARCHAR2 IS path VARCHAR2(255) := Get_Application_Property(CURRENT_FORM); slash PLS_INTEGER; BEGIN slash := instr(path,'\',-1) ; Return(substr(path,1,slash)); END; DECLARE USER_NAME VARCHAR2(30); PASS_WORD VARCHAR2(30); CONN_STRG VARCHAR2(30); BEGIN USER_NAME := GET_APPLICATION_PROPERTY(USERNAME); PASS_WORD := GET_APPLICATION_PROPERTY(PASSWORD); CONN_STRG := GET_APPLICATION_PROPERTY(CONNECT_STRING); IF USER_NAME = 'ADMINISTRATOR' THEN Host('EXP '||USER_NAME||'/'||PASS_WORD||'@'||CONN_STRG||' '||'FILE='||getpath||'copydata\'||USER_NAME||to_char(sysdate,'DD-MM-YYYY')||'.DMP'||' '||'OWNER='||USER_NAME||' '||'LOG='||getpath||'copydata\'||USER_NAME||to_char(sysdate,'DD-MM-YYYY')||'.TXT'); END IF; END ; جزاك الله كل خير تقديم بلاغ
بتاريخ: 11 مايو 200817 سنة كاتب الموضوع comment_128503 مشكور اخي الكريم جمال بس لو تقلي فين اكتب الكود المكتوب وايش اضيف من عناصر على الفورم وهل الكود نفسة اكتبة عشان عمل نسخة وكمان عشان استرجع نسخة او يجب ان اغير شي في الكود وجزاك الله كل خير تقديم بلاغ
بتاريخ: 11 مايو 200817 سنة comment_128508 الأخ الكريم ، الأفكار كلها تعتمد أساساً علي أمر الـ Imp لإستيراد البيانات ، وأمر Exp لتصدير البيانات !!!فبإمكانك صناعة ما تريدة !!!إذا كنت لا ترغب في عرض إسم المستخدم وكلمة المرور للمستخدم العادي فيمكنك حذف مربعات النص ومن يم إدخال يدوي لإسم المستخدم وكلمة المرور كما تشاء نفرض أن لديك مستخدم يدعي DB وكلمة المرور هي DB2008 ، قم بإدراج مربع نص واحد تحت إسم TXT_PATH ومن ثم أدرج 2 زر أمر ، الأول للتصدير ، والثاني للإستيراد ، وأكتب له الكود المناسب في حدث WHEN-BUTTON-PRESSED !!!1- زر أمر التصدير : HOST('Exp DB/DB2008 File=' || :TXT_PATH || ' Log=' || :TXT_PATH); 2-زر أمر إستيراد : Host('Imp System/Manager FromUser=DB ToUser=DB File=' || :TXT_PATH); شكراً تقديم بلاغ
بتاريخ: 11 مايو 200817 سنة كاتب الموضوع comment_128523 مشكور اخيبا اجرب الفكرة واشوف الناتجولكم جزيل الشكر وجزاكم الله كل خير تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.