تيسير نافع بتاريخ: 13 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 13 نوفمبر 2017 السلام عليكم ورحمة الله وبركاته اخواني الاعضاء الكرام عندي 2 بلوك احدهما داتابيز عبارة عن tabular form به رقم الموظف وتاريخ اليوم وزمن الحضور وزمن الانصراف والاخر كنترول بلوك به تكست ايتم لادخال تاريخ معين .. وزر when button pressed عملت عليه كيرسور لجلب الموظفين + go_block(employees) execute_query اريد الاستعلام عن حضور الموظفين في تاريخ معين باستخدام الكنترول بلوك .. بمعني ادخل التاريخ المعين في التكست ايتم اللي على الكنترول بلوك يعطيني الموظفين الحضور في هذا التاريخ على بلوك الموظفين المشكلة عند التنفيذ لا بقوم بفلترة الداتا وانما يجلب كل الموظفين.. وكأنما الكنترول بلوك لا يعمل مع العلم اني استخدمت خاصية default_where على تريقر pre_text_item SET_BLOCK_PROPERTY('emp_attendance', DEFAULT_WHERE, 'emp_attendance.attendance_date=:b2.attendance_date1' ); ولم تنفع كذلك ضبطت خاصية WHERE CLAUSE و نفس النتيجة ارجو المساعدة حتى تتم فلترة الداتا وجزاكم الله خير اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 13 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 13 نوفمبر 2017 انا مفهمتش التفاصيل بس لو مشكلتك فى set_item_property عدليها لـ SET_BLOCK_PROPERTY('emp_attendance', DEFAULT_WHERE, 'emp_attendance.attendance_date='||:b2.attendance_date1); اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
تيسير نافع بتاريخ: 13 نوفمبر 2017 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 13 نوفمبر 2017 انا مفهمتش التفاصيل بس لو مشكلتك فى set_item_property عدليها لـ SET_BLOCK_PROPERTY('emp_attendance', DEFAULT_WHERE, 'emp_attendance.attendance_date='||:b2.attendance_date1); مشكور استاذ اسلام على متابعتك ..انا عندي فورم به 2 بلوك الاول كنترول بلوك به حقل مفروض ادخل فيه تاريخ معين بناء عليه يعرض لي في البلوك التاني بيانات الموظفين اللي حضروا في هذا التاريخ بس عند التنفيذ يقوم بعرض كل الموظفين وكل التواريخ يعني مش بيعمل فلتر حسب التاريخ اللي انا مدخلاه .. اتمنى الفكرة تكون وضحت السؤال على اي تريقر يتم كتابة الكيرسور لجلب بيانات الموظف؟ انا كنت كاتباه على when button pressed اما جملة set_item_property كتبتها على تريقر pre_text_item دا الكود اللي بيجلب بيانات الموظفين كاتباه على الزر في الكنترول بلوك DECLARE cursor c2 is select E.EMP_ID,E.NAME,ATTENDANCE_DATE,A.ARRIVE_TIME,A.LEAVE_TIME,A.STATUS_ID,A.ATTENDANCE_NOTE FROM EMPLOYEES E,EMP_ATTENDANCE A WHERE E.EMP_ID = A.EMP_ID; BEGIN go_block('emp_attendance'); execute_query; first_record; for r in C2 loop :EMP_ATTENDANCE.emp_id:=r.emp_id; :EMP_ATTENDANCE.EMP_NAME:=R.NAME; :EMP_ATTENDANCE.ATTENDANCE_DATE:=r.ATTENDANCE_DATE; :EMP_ATTENDANCE.ARRIVE_TIME:=r.ARRIVE_TIME; :EMP_ATTENDANCE.LEAVE_TIME:=r.LEAVE_TIME; :EMP_ATTENDANCE.ATTENDANCE_NOTE:=r.ATTENDANCE_NOTE; :EMP_ATTENDANCE.STATUS_ID:=R.STATUS_ID; next_record; end loop; END; مرفق صورة من الفورم اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 13 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 13 نوفمبر 2017 (معدل) الكرسور ملوش لزمة.عدلى شرط البلوك فى تريجر الزرار وروحى البلوك نفذى الكويرى زرجعى شرط اابلوك تانى زى ما كان.فى تفاصيل تانية طبعا بس بكتب من الموبايل.جربى واغلطى وصلحى. تم تعديل 13 نوفمبر 2017 بواسطة eslam elbyaly اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
تيسير نافع بتاريخ: 15 نوفمبر 2017 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 الكرسور ملوش لزمة. عدلى شرط البلوك فى تريجر الزرار وروحى البلوك نفذى الكويرى زرجعى شرط اابلوك تانى زى ما كان. فى تفاصيل تانية طبعا بس بكتب من الموبايل. جربى واغلطى وصلحى. عدلت على الكود استغنيت عن الكيرسور ب for loop عدلت كذلك على شرط البلوك وغيرت مكانه من الزر الى تريقرات اخرى واعدته مرة اخرة للزر والمشكلة قائمة تظهر معي كل السجلات .. ماالحل؟ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 15 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 بتعملى كرسور ولا لووب ليه! انتى مش بتجيبى الداتا فى داتابيز بلوك؟واديكى بتنفذى الكويرى اهه. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 15 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 عذرا مش واخد بالى انه تاريخ. اى تاريخ او كاراكتر لازم تستخدمى Quotes جربيها كده set_block_property('emp',DEFAULT_WHERE,'HIREDATE='''||:B.T||''''); واستخدمى MESSAGE(GET_BLOCK_PROPERTY('EMP',DEFAULT_WHERE)); PAUSE; عشان تشوفى نتيجة الخاصية بقت ايه. واحتمال متشتغلش عشان الفورمات ماسك. لو حصل, استخدمى to_char. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
تيسير نافع بتاريخ: 15 نوفمبر 2017 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 بتعملى كرسور ولا لووب ليه! انتى مش بتجيبى الداتا فى داتابيز بلوك؟ واديكى بتنفذى الكويرى اهه. علشان الداتابيز بلوك من النوع tabular و عند الاستعلام بجملة سلكت العادية بيظهر خطأ برجوع اكتر من صف كنت مستخدمة ال Quotes على خصائص البلوك وكمان ال to_char واضفت ال get_block وعند الاستعلام تظهر please acknowledge ولازال الاسترجاع كامل SET_BLOCK_PROPERTY('emp_attendance', DEFAULT_WHERE,'to_char(ATTENDANCE_DATE,)='||''''||to_char(:b2.att1_date)||''); message(get_block_property('emp_attendance',default_where)); pause; هل الكنترول بلوك بيحتاج يتعمل له relation مع الداتابيز بلوك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 15 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 (معدل) يا اختى انتى لا هتعملى كرسور ولا لووب ولا سيليكت. هو انتى لما تعملى go_block('any_block'); execute_query; هيجيب داتا ولا لا؟! ------------------- انسى الـ to_char دلوقتى لحد ما تشوفى نتيجة تغيير الخاصية عشان تعرفى هتعملى ايه. انا قلتلك ممكن تحتاجيها وممكن لا. - يعنى ايه لا يزال الاسترجاع كامل؟ - انا مش كاتب كود عشان تخديه Copy&Past, انا كاتبه عشان انتى توظفيه على حسب التاسك بتعتك. - غيرى الخاصية بالكود وشوفى نتيجة التغيير ايه باظهار رسالة. - ملحوظة: جملة الـ set_block الى كتباها غلط خالص. تم تعديل 15 نوفمبر 2017 بواسطة eslam elbyaly اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
تيسير نافع بتاريخ: 15 نوفمبر 2017 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 يا اختى انتى لا هتعملى كرسور ولا لووب ولا سيليكت. هو انتى لما تعملى go_block('any_block'); execute_query; هيجيب داتا ولا لا؟! ------------------- انسى الـ to_char دلوقتى لحد ما تشوفى نتيجة تغيير الخاصية عشان تعرفى هتعملى ايه. انا قلتلك ممكن تحتاجيها وممكن لا. - يعنى ايه لا يزال الاسترجاع كامل؟ - انا مش كاتب كود عشان تخديه Copy&Past, انا كاتبه عشان انتى توظفيه على حسب التاسك بتعتك. - غيرى الخاصية بالكود وشوفى نتيجة التغيير ايه باظهار رسالة. - ملحوظة: جملة الـ set_block الى كتباها غلط خالص. كلامك صح انا خليت الزر يروح للبلوك الديتيل ويعمل اكسسيوت للكويري من غير كتابة اي جمل استرجاع .. بس لسه بيستدعي كل الداتا بالنسبة لل to_char من غير استخدامها كان بيعطيني ايرور invalid month ولما استخدمتها بقى يجيب داتا استرجاع كامل قصدت به يجيب لي كل الموظفين في كل التواريخ يعني مابيفلتر حسب التاريخ المعطى انا ماخدتش الكود كوبي بيست كنت كاتباه من الاول وكل شوية بعدل عليه ودا اول مشروع اعمله وبتطلع معي اخطاء كتيرة وبجرب الحلول المتاحة معي ولما ما اصل لنتيجة بطلب المساعدة واستفيد من الخبرات ربنا يجعلها في ميزان حسناتكم اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 15 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 علامات التعجب الى كتبتها كنت اقصد بيها انه مفيش داعى لحاجة معينة, مقصدتش اتكلم باسلوب عنيف يعنى. عذرا لو حسيتى بكده. - طلعتى رسالة وشفتى نتيجة تغيير الخاصية ايه؟ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
تيسير نافع بتاريخ: 15 نوفمبر 2017 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 15 نوفمبر 2017 علامات التعجب الى كتبتها كنت اقصد بيها انه مفيش داعى لحاجة معينة, مقصدتش اتكلم باسلوب عنيف يعنى. عذرا لو حسيتى بكده. - طلعتى رسالة وشفتى نتيجة تغيير الخاصية ايه؟ لا العفو مش قصدي خالص وماخدتش حتى بالي من علامات التعجب .. مافي اي مشكلة انت استاذنا ومعلمنا غيرت الشرط في خاصية البلوك بدل تاريخ ل ايتم تاني واستعلم بطريقة صحيحة .. يبدو انه المشكلة في صيغة التاريخ في الكنترول بلوك في حاجه مش مظبوطه بحاول تاني واشوف النتيجة اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 16 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 16 نوفمبر 2017 لازم هتقابلك مشكلة فى الكاراكتر والحروف عشان الـ Quotes, وفى التاريخ احتمال تقابلك مشكلة الفورمات ماسك عشان كده بقلك اظهرى الرسالة وشوفى قيمة الخاصية بعد تغييرها. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.