بتاريخ: 2 أبريل 201214 سنة comment_222651 السلام عليكم ورحمة اللهتحية طيبة للزملاء اعضاء المنتدىبرجاء من فضلكم انا لدى مشكلة فى Form Builderلدى جملة استعلام لاكثر من جدول تتم فى داخل SQL بنجاح ولكن على الفورم يظهر خطأ Compileانا ارسلت جملت الاستعلم يمكن يكون فى طريقة اخرى اقدر استعملهابرجاء الرد للأهمية select emp.id,f_name, (select livesal from emp_sal where emp_sal.emp_id(+)=emp.id) sal, (select sum(action_value) from sal_effect where action_type= 1 and dat_effect='01/04/12' and emp_num(+)=emp.id) discount, (select sum(action_value) from sal_effect where action_type= 2 and dat_effect='01/04/12' and emp_num(+)=emp.id) sick, (select sum(action_value) from sal_effect where action_type= 3 and dat_effect='01/04/12' and emp_num(+)=emp.id) penalty, (select sum(action_value) from sal_effect where action_type= 4 and dat_effect='01/04/12' and emp_num(+)=emp.id) permision, (select sum(action_value) from sal_effect where action_type= 5 and dat_effect='01/04/12' and emp_num(+)=emp.id) loan from emp order by emp.id تم تعديل 2 أبريل 201214 سنة بواسطة mohamed.ramadan تقديم بلاغ
بتاريخ: 2 أبريل 201214 سنة comment_222655 السلام عليكمواجهتني نفس المشكلة وبعد البحث تبين ان طريقة كتابة جملة الـ Select بهذه الطريقة لا يدعمها الفورم...فابمكانك حل الموضوع كالتالي:عمل بروسيجر على الداتا بيز بحيث يتم تخزين ناتج الجملة السابقة في جدول اخر.نفذ البروسيجر من خلال الفورم ومن ثم قراءة البيانات من الجدول الجديد وبعد ذلك قم بحذف البيانات.موفق. تقديم بلاغ
بتاريخ: 2 أبريل 201214 سنة كاتب الموضوع comment_222656 السلام عليكم واجهتني نفس المشكلة وبعد البحث تبين ان طريقة كتابة جملة الـ Select بهذه الطريقة لا يدعمها الفورم... فابمكانك حل الموضوع كالتالي: عمل بروسيجر على الداتا بيز بحيث يتم تخزين ناتج الجملة السابقة في جدول اخر. نفذ البروسيجر من خلال الفورم ومن ثم قراءة البيانات من الجدول الجديد وبعد ذلك قم بحذف البيانات. موفق. مشكور جدا يابشمهندس احمد على سرعة ردكولكن اعذرنى على طلبى ممكن تشرحلى ازاى انشىء بروسيجر على الدتابيز ثم انفذه على الفورم؟؟؟؟؟؟؟؟؟؟؟؟وشكرا مرة اخرى تقديم بلاغ
بتاريخ: 2 أبريل 201214 سنة comment_222658 السلام عليكمقم بانشاء جدول جديد: Create Table Emp_Tbl (Id Number, F_Name Varchar2(200), Sal Number, Discount Number, Sick Number, Penalty Number, Permision Number, Loan Number) ثم انشيء بروسيجر لادخال البيانات: Create Or Replace Procedure My_Proc Is Begin Insert Into Emp_Tbl (Id, F_Name, Sal, Discount, Sick, Penalty, Permision, Loan) Select Emp.Id,F_Name, (Select Livesal From Emp_Sal Where Emp_Sal.Emp_Id(+)=Emp.Id) Sal, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 1 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Discount, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 2 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Sick, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 3 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Penalty, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 4 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Permision, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 5 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Loan From Emp Order By Emp.Id End My_Proc; / وبامكانك تمرير التاريخ في البروسيجر كـ Parameter حتى يكون Dynamic.في الفورم نفذ البروسيجر: My_Proc; ومن ثم اعمل Select للبيانات من الجدول.موفق. تقديم بلاغ
بتاريخ: 2 أبريل 201214 سنة كاتب الموضوع comment_222659 السلام عليكمقم بانشاء جدول جديد: Create Table Emp_Tbl (Id Number, F_Name Varchar2(200), Sal Number, Discount Number, Sick Number, Penalty Number, Permision Number, Loan Number) ثم انشيء بروسيجر لادخال البيانات: Create Or Replace Procedure My_Proc Is Begin Insert Into Emp_Tbl (Id, F_Name, Sal, Discount, Sick, Penalty, Permision, Loan) Select Emp.Id,F_Name, (Select Livesal From Emp_Sal Where Emp_Sal.Emp_Id(+)=Emp.Id) Sal, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 1 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Discount, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 2 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Sick, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 3 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Penalty, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 4 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Permision, (Select Sum(Action_Value) From Sal_Effect Where Action_Type= 5 And Dat_Effect='01/04/12' And Emp_Num(+)=Emp.Id) Loan From Emp Order By Emp.Id End My_Proc; / في الفورم نفذ البروسيجر: My_Proc; ومن ثم اعمل Select للبيانات من الجدول.موفق. بصراحة انا مش لاقى كلام اقوله لحضرتك على سرعة تلبيتك وشرحك الوافىمتشكر جدا يابشمهندس احمد مرة اخرىوهـبلغ حضرتك بعد الانتهاء تقديم بلاغ
بتاريخ: 2 أبريل 201214 سنة comment_222670 فكرة جميلة ماشاء الله يابشمهندس احمد بجد بجد عجبنى جدا طريقة تفكيرك تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.