الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ماهي طريقة حساب متوسط الوقت ؟

مغلقمُجابرائج
بدأه tec4serv في 3 فبراير 2013 · 67 رد · 6,397 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
لهذا السؤال إجابة معتمدة — اضغط للانتقال إليها
#1 صاحب الموضوع

السلام عليكم ورحمة لله وبركاتة ....

 

اخواني الاعزاء ....

 

لدي جدول RequestsHistory

الجدول يحتوي على ...

 

ReqId

Date

Time

Status

ActionBy

 

مثال ...

 

post-263213-0-11027400-1359869745_thumb.

 

ارغب بطريقة تظهر لي متوسط الوقت المستغرق لعمل اكشن على الطلب لكل مستخدم على كل طلب

 

يعني مثلاً ارغب ان تظهر النتيجة كـ التالي

 

Ahmed  متوسط الوقت لعمل اكشن على الطلب هو 1 يوم و 4 ساعات .......

Mohammed متوسط الوقت هو 54 دقيقة ......

......

....

 

والله مشروعي متوقف عليها ،، انا بنتظار دعمكم المعهود

 

دمتم

#2

قم بحفظ قيمة الوقت عند الانشاء ومن ثم عند عمل Action قم بقراءة الوقت ، اطرح الوقت السابق من اللاحق وينتج لك الوقت ، قم باستخدام دوال Time Formatting لإظهار الوقت الناتج بتنسيق مقبول، طبعا في كل مره يتم عمل Action يتم زيادة عدد المرات counter ومن ثم عند حساب المتوسط يتم جمع النواتج وقسمتها على الــ counter

تحياتي

تم تعديل هذه المشاركة بواسطة mental-driller في 3 فبراير 2013 في 09:14

No intellectual battle was ever won through retreat
You do not watch Gintama? Dude, you are missing a lot!


صورةmsrgb1485.gif ocajavase7programmerclr.gif

#3
mental-driller كتب:

قم بحفظ قيمة الوقت عند الانشاء ومن ثم عند عمل Action قم بقراءة الوقت ، اطرح الوقت السابق من اللاحق وينتج لك الوقت ، قم باستخدام دوال Time Formatting لإظهار الوقت الناتج بتنسيق مقبول، طبعا في كل مره يتم عمل Action يتم زيادة عدد المرات counter ومن ثم عند حساب المتوسط يتم جمع النواتج وقسمتها على الــ counter

تحياتي

 

الله يعافيك

 

ولكن لا يوجد لدي صلاحيات لتعديل على الجداول

 

ارغب بطريقة اخرى

#4

اذا كان لديك صلاحيات لانشاء جداول اخرى قم بانشاء جدول يقوم بعملية tracking للجدول الحالي اذا لم يكن بمقدورك انشاء اي جداول المعلومات في الملف

No intellectual battle was ever won through retreat
You do not watch Gintama? Dude, you are missing a lot!


صورةmsrgb1485.gif ocajavase7programmerclr.gif

#5
mental-driller كتب:

اذا كان لديك صلاحيات لانشاء جداول اخرى قم بانشاء جدول يقوم بعملية tracking للجدول الحالي اذا لم يكن بمقدورك انشاء اي جداول المعلومات في الملف

للاسف لا يوجد لدي صلاحيات

#6

قم بخزن القيمه في الــregistry إذا!

No intellectual battle was ever won through retreat
You do not watch Gintama? Dude, you are missing a lot!


صورةmsrgb1485.gif ocajavase7programmerclr.gif

#7

upppp

 

هل من مساعده

#8

هذه محاولتي ،، ولكن لم تنجح

 

select t.ReqID,t.ActionBy,t.ssss
	from (

SELECT ReqID,ActionBy,
(' '
+ CAST(DATEDIFF(day, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) AS NVARCHAR(50)) + ' days ago.'
+ CAST(DATEDIFF(second, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) / 60 / 60 / 24 / 7 AS NVARCHAR(50)) + ' weeks, '
+ CAST(DATEDIFF(second, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) / 60 / 60 / 24 % 7 AS NVARCHAR(50)) + ' days, '
+ CAST(DATEDIFF(second, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) / 60 / 60 % 24 AS NVARCHAR(50)) + ' hours, '
+ CAST(DATEDIFF(second, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) / 60 % 60 AS NVARCHAR(50)) + ' minutes and '
+ CAST(DATEDIFF(second, min(ActionDate + ' ' + ActionTime), max(ActionDate + ' ' + ActionTime)) % 60 AS NVARCHAR(50)) + ' seconds ago.') AS ssss
from RequestsHistory
GROUP BY ReqID,ActionBy ) AS t

 


 


طبعاً الجدول عباره عن طلبات

 

 

ارغب ان يقوم الكود بأخذ مثلاً الطلب رقم 5511 ثم يقوم بعمل مقارنه كل سجل بسجل اللذي قبله ويظهر الفرق بين الوقتين

 

طبعا الجدول عباره عن ان يقوم الطالب بإدخال الطلب ويقوم المسؤول بتعميده

 

مثال

 

رقم الطلب 5511

44222222

44222222

sami

sami

khaled

تم تعديل هذه المشاركة بواسطة tec4serv في 5 فبراير 2013 في 15:13

#9

أخي لدي بعض الاستفسارات

 

كيف تريد الإجراء هل ضمن بيئة سيكوال أم ضمن برنامج بالسي شارب ؟

في حال كان بالسي شارب كيف تحضر الجدول هل باستخدام Linq to SQL  أم طريقة أخرى ؟

هل بالإمكان معرفة نوع معطيات العمودين Date و Time  هل هي string  أم DateTime أم TimeSpan

 

كيف يتم حساب الأكشن للطلب الواحد هل

وقت الاكتمال - وقت التحويل

أم

وقت الاكتمال - وقت الاعتماد

أم غير ذلك

وكيف نفعل في حال كان الطلب الواحد له يوزر مختلف لك حالة أي أن فلان حول الطلب وعلان اعتمده وعلنتان أكمله

 

هذه الإجابات تسهل الوصول للطريقة الصحيحة

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#10

قد يفيد هذا

select t.ReqID,t.ActionBy,(((DATEDIFF(second,dMinDate,dMaxDate))/nCount) as avgSecondNumber
	from (

			SELECT 
					ReqID,
					ActionBy,
					min(ActionDate +  ActionTime) as dMinDate
					max(ActionDate +  ActionTime) as dMaxDate,
					count(ReqID) as nCount
					from RequestsHistory
					GROUP BY ReqID,ActionBy ) AS t
#11
أبو أحمد المبرمج كتب:

أخي لدي بعض الاستفسارات

 

كيف تريد الإجراء هل ضمن بيئة سيكوال أم ضمن برنامج بالسي شارب ؟

لا يهم ، افضل ضمن SQL ولكن لا يمنع اذا كان في السي شارب

في حال كان بالسي شارب كيف تحضر الجدول هل باستخدام Linq to SQL  أم طريقة أخرى ؟

استخدم  SqlDataSource

هل بالإمكان معرفة نوع معطيات العمودين Date و Time  هل هي string  أم DateTime أم TimeSpan

DateTime ويكون بنفس الشكل الموجود في بداية الموضوع بصوره

كيف يتم حساب الأكشن للطلب الواحد هل

وقت الاكتمال - وقت التحويل

أم

وقت الاكتمال - وقت الاعتماد

أم غير ذلك

يختلف ،، ممكن ان يقوم المسؤول بتحويل الطلب لمسؤول اعلى منه ، او ممكن ان يعمده هو ،، الموضوع سهل ،، ارغب ان يكون الكود يقوم بعمل مقارنه بين السجل واللذي قبل لكل طلب لحساب الوقت

أبو أحمد المبرمج كتب:

وكيف نفعل في حال كان الطلب الواحد له يوزر مختلف لك حالة أي أن فلان حول الطلب وعلان اعتمده وعلنتان أكمله

يبين عن طريق حقل اسمه Order_Status

هذه الإجابات تسهل الوصول للطريقة الصحيحة

#12

اشكرك كل الشكر استاذ كريم على الرد ،،،، بارك الله فيك

 

بعد تعديل الكود اصبح بهذا الشكل

 

select t.ReqID,t.ActionBy,(((DATEDIFF(second,dMinDate,dMaxDate))/nCount)) as avgSecondNumber
	from (

			SELECT 
					ReqID,
					ActionBy,
					min(ActionDate + ' ' +  ActionTime) as dMinDate,
					max(ActionDate + ' ' +  ActionTime) as dMaxDate,
					count(ReqID) as nCount
					from RequestsHistory
					GROUP BY ReqID,ActionBy ) AS t

 

ولكن اغلب النتائج للمسؤولين هي 0 ... والبعض امامه 23 ثانيه والبعض 6000 ثانيه على بعض الطلبات ...

 

هل الكود يقوم بمقارنة السجل بالسجل اللذي قبله لإحتساب طريقة فرق الوقت ؟

 

لتوضيح .......

 

لدينا مثلاً استاذ كريم الطلب رقم 4988

 

يوجد به السجلات التاليه

post-263213-0-58827000-1360133842_thumb.

 

حيث ان اي ACTIONBY عباره عن ارقام هذا هو رقم الطالب ،،

انا اريد طريقة لمقارنة الوقت والتاريخ بين ادخال الطالب لطلب إلى ان تن إكماله او تعميده بحث لا يظهر لي طلبات الطلاب وإنما فقط المسؤولين

 

يااااااااااااااااااااااااااارب تحلون لي المشكلة

تم تعديل هذه المشاركة بواسطة tec4serv في 6 فبراير 2013 في 10:00

#13

حياك الله أخي ولكن لازال هناك لبس في الأمر

 

انظر مثلا إلى الجدول المثال في مشاركتك الأولى

 

فالطلب رقم 2255 يقابله 3 يوزر فكيف نحسب الوقت ؟

وفي عبارتك نقارن كل سجل بالذي قبله (بحيث يكونو لنفس المستخدم وحتى لو اختلف رقم الطلب أم أنه دائما يكون السجلين المتتاليين بنفس اليوزر ونفس الرقم ؟؟)

هل بالإمكان إدراج مثال أطول من السابق ؟

 

بالنسبة للاستفسار السابق الذي وضعه الأخ كريم - جزاه الله خيرا - وبحسب ما ذكرت أن معظم النتائج صفر علما أن الحساب بالثانية

فهذا ناتج عن المشكلة التي أسألك عنها

لأنه عندما يقوم بحساب الفرق بين سجلين متتاليين بحسب رقم الطلب من الممكن أن يكونا لاسمين مختلفين (وهذا غير مطلوب) والذان غالبا ما يكونا بنفس الوقت مثلا طلب محول ثم طلب معتمد

وبالتالي تكون النتيجة هي صفر والصحيح أن يتم اختيار سجيلين متتاليين بنفس رقم الطلب ونفس رقم اليوزر وهذا ما أردت التأكد منه م خلال سؤالي قبل قليل

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#14
أبو أحمد المبرمج كتب:

حياك الله أخي ولكن لازال هناك لبس في الأمر

 

انظر مثلا إلى الجدول المثال في مشاركتك الأولى

 

فالطلب رقم 2255 يقابله 3 يوزر فكيف نحسب الوقت ؟

وفي عبارتك نقارن كل سجل بالذي قبله (بحيث يكونو لنفس المستخدم وحتى لو اختلف رقم الطلب أم أنه دائما يكون السجلين المتتاليين بنفس اليوزر ونفس الرقم ؟؟)

هل بالإمكان إدراج مثال أطول من السابق ؟

 

بالنسبة للاستفسار السابق الذي وضعه الأخ كريم - جزاه الله خيرا - وبحسب ما ذكرت أن معظم النتائج صفر علما أن الحساب بالثانية

فهذا ناتج عن المشكلة التي أسألك عنها

لأنه عندما يقوم بحساب الفرق بين سجلين متتاليين بحسب رقم الطلب من الممكن أن يكونا لاسمين مختلفين (وهذا غير مطلوب) والذان غالبا ما يكونا بنفس الوقت مثلا طلب محول ثم طلب معتمد

وبالتالي تكون النتيجة هي صفر والصحيح أن يتم اختيار سجيلين متتاليين بنفس رقم الطلب ونفس رقم اليوزر وهذا ما أردت التأكد منه م خلال سؤالي قبل قليل

 

اشكر لك حماسك معي وجزاك الله عنا كل خير ......

 

مثلاً لدينا الطلب رقم 7777

قام الطالب بإدخال طلب .. له تاريخ ووقت ....

قام الموظف المسؤول عن استقبال الطلبات ( مثلاُ .. خالد ) بتحويلة إلى مشرف الكلية ( مثلاً .. طلال )... قام مشرف الكلية بتحويله إلى عميد الكلية ( مثلاً .. محمد )  ... قام عميد الكلية بتعميد الطلب .... انتهى .................

 

الطلب رقم 8888

قام الطالب بإدخال الطلب .. له تاريخ ووقت ....

قام الموظف المسؤول عن استقبال الطلبات ( مثلاُ .. خالد ) بتحويلة إلى مشرف الكلية ( مثلاً .. طلال )... قام مشرف الكلية بتعميده الطلب .... انتهى .....................

 

الطلب رقم 9999

قام الطالب بإدخال الطلب .. له تاريخ ووقت ....

قام الموظف المسؤول عن استقبال الطلبات ( مثلاُ .. خالد ) بتعميد الطلب بدون تحويل او توصية .................... انتهى ................................

 

 

 

المطلوب ،، ماهو متوسط الوقت المستغرق لتعميد الطلبات لكل مسؤول .. سواً موظف استقبال الطلبات او مشرف الكلية او عميد الكلية او غيره ..............

 

مع العلم انه يوجد حقل بأسم ActionBy  يوجد به اليوزر نيم للمسؤول واللذي يكون دائماً عبارة عن حروف .. وإذا كان ارقام يعني طالب .....

وايضاَ ... المفترض ان يكون لكل طلب طلب واحد فقط .. الصوره التي وضعتها فعلاً يوجد مشكلة في تكرار الطلب .

 

يارب وضحت الفكره

تم تعديل هذه المشاركة بواسطة tec4serv في 6 فبراير 2013 في 12:18

#15

جميل جدا

في الحالات الثلاث التي ذكرتها سنأخذ وقت الانتهاء ولكن ما الذي يتوجب أن نطرح منه في كل من الأمثلة الثلاث

هل هو تاريخ تسجيل الطلب من قبل الطالب أم ماذا

 

فمثلا في المثال الأول عميد الكلية هو من اعتمد الطلب وسنأخذ الوقت ثم أي وقت يجب أن نطرحه منه هل هو وقت تحويله من قبل المشرف أم وقت تحويله من قبل خالد أم وقت تسجيله من قبل الطالب ؟

ونفس السؤال بالنسبة للمثال الثاني

أما المثال الثالث فالأمر واضح لأنه لا يوجد إلا وقتين وهو وقت اعتماده منقوص منه وقت تسجيل الطالب

 

وبناء عليه فإني أتوقع أن يكون المطلوب هو تاريخ الاعتماد ناقص تاريخ التسجيل من قبل الطالب ويكون الوقت المحسوب هو لصالح المعتمد وأما أوقات التحويل فيتم تجاهلها

هذا ما أتوقعه

ولكن أحبب أن أتأكد منك أولا إن كان فهمي صحيح ؟

 

لعلي أسأل كثيرا ولكن حتى تكون النتائج صحيحة

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#16
أبو أحمد المبرمج كتب:

جميل جدا

في الحالات الثلاث التي ذكرتها سنأخذ وقت الانتهاء ولكن ما الذي يتوجب أن نطرح منه في كل من الأمثلة الثلاث

هل هو تاريخ تسجيل الطلب من قبل الطالب أم ماذا

 

فمثلا في المثال الأول عميد الكلية هو من اعتمد الطلب وسنأخذ الوقت ثم أي وقت يجب أن نطرحه منه هل هو وقت تحويله من قبل المشرف أم وقت تحويله من قبل خالد أم وقت تسجيله من قبل الطالب ؟

ونفس السؤال بالنسبة للمثال الثاني

أما المثال الثالث فالأمر واضح لأنه لا يوجد إلا وقتين وهو وقت اعتماده منقوص منه وقت تسجيل الطالب

 

وبناء عليه فإني أتوقع أن يكون المطلوب هو تاريخ الاعتماد ناقص تاريخ التسجيل من قبل الطالب ويكون الوقت المحسوب هو لصالح المعتمد وأما أوقات التحويل فيتم تجاهلها

هذا ما أتوقعه

ولكن أحبب أن أتأكد منك أولا إن كان فهمي صحيح ؟

 

لعلي أسأل كثيرا ولكن حتى تكون النتائج صحيحة

 

اشكرك ،، اسألتك ان دلت فإنما تدل على حرصك بارك الله فيك وبعلمك ...

 

المطلوب ... في المثال الاول مثلاً ....

 

من تاريخ ادخال الطالب لطلب ،، كم استغرق الوقت حتى قام خالد بعمل اكشن على الطلب .. ( كم اخذ الوقت من خالد ) .

ايضاً كم استغرق الوقت من ارسال خالد لطلب حتى قام مشرف الكلية بعمل اكشن عليه .. ( كم اخذ الوقت من مشرف الكلية ) .

ايضاً كم استغرق الوقت من ارسال مشرف الكلية الطلب إلى عميد الكلية حتى قام عميد الكلية بتعميده .. ( كم اخذ الوقت من العميد ) .

 

في الاخير ... ماهو متوسط الوقت لكل مسؤول على جميع الطلبات ......

 

يعني مثلاً .. مسجل الطلبات متوسط الوقت له حتى يتخذ اكشن على الطلب هو 10 ساعات ..

                 مشرف الكلية متوسط الوقت له حتى ياخذ اكشن على الطلبات هو يوم و 4 ساعات و 20 دقيقة ...

      ........................................................ إلخ

 

طبعاً يوجد اكثر من مسجل طلبات واكثر من مشرف كلية واكثر من عميد كلية .... واللذي يوضح ذالك هو ActionBy حيث انه هو اليوزر نيم للمسؤول

تم تعديل هذه المشاركة بواسطة tec4serv في 6 فبراير 2013 في 12:53

#17

الآن وضحت المسألة تماما إن شاء الله

 

سأجتهد بها ولعل الله يوفقنا إلى نتيجة مرضية بإذنه تعالى

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#18

سأضع الخوارزمية وأنت قل إن كانت صحيحة أو فيها خطأ

وسنحولها إلى سكربت

 

1 - تجميع النتائج بحسب رقم الطلب (مع إظهار التاريخ والوقت واليوزر وتجاهل ما سواها)

2 - ترتيب تصاعدي بحسب التاريخ ثم والوقت

3 - من أجل كل رقم طلب نقوم بطرح خانة (التاريخ-وقت) من الذي قبله (مع نتجاهل السجل الأول وهو تاريخ التسجيل من قبل الطالب لعدم إمكانية تطبيق عملية الطرح ولأن الطالب لا يعنينا)

4 - تخزين الفروقات مع اسم المستخدم في جدول جديد مؤقت

5 - تجميع  بحسب اسم المستخدم

6 - مجموع الفروقات على عددها

7 - نحصل على جدول مكون من عمودين الأول اسم المستخدم والآخر متوسط الوقت وعدد أسطر النتيجة هي بعدد أسماء المستخدمين

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#19
أبو أحمد المبرمج كتب:

سأضع الخوارزمية وأنت قل إن كانت صحيحة أو فيها خطأ

وسنحولها إلى سكربت

 

1 - تجميع النتائج بحسب رقم الطلب (مع إظهار التاريخ والوقت واليوزر وتجاهل ما سواها)

2 - ترتيب تصاعدي بحسب التاريخ ثم والوقت

3 - من أجل كل رقم طلب نقوم بطرح خانة (التاريخ-وقت) من الذي قبله (مع نتجاهل السجل الأول وهو تاريخ التسجيل من قبل الطالب لعدم إمكانية تطبيق عملية الطرح ولأن الطالب لا يعنينا)

4 - تخزين الفروقات مع اسم المستخدم في جدول جديد مؤقت

5 - تجميع  بحسب اسم المستخدم

6 - مجموع الفروقات على عددها

7 - نحصل على جدول مكون من عمودين الأول اسم المستخدم والآخر متوسط الوقت وعدد أسطر النتيجة هي بعدد أسماء المستخدمين

 

بيض الله وجهك

بضبط ،، ولكن رقم 3 .. لماذا نتجاهل السجل الاول .. السجل الاول نتجاهل فقط رقم الطالب ولكن لابد من اخذ التاريخ لنقارنه بأول معمد له واللذي سيكون تحته على طول

 

مثال ...

 

الطالب رقم 4455566 .. تاريخ تقديم الطلب 2013/01/20 ... الوقت 11:25:52:9 .. اول من عمل اكشن على الطلب هو خالد khaled نقوم بتنقيص تاريخ ووقت الاكشن من تاريخ ووقت تقديم الطلب ...

 

وضحت ان شاء الله ؟

#20

و وجهك إن شاء الله

 

ما قصدته نتجاهله من عملية (الطرح منه) لأنه لا يوجد قبله و أما طرحه من غيره فقد تم عندما نطبق العملية على أول سجل بعده

هذا ما قصدته ولم أقصد إقصاؤه نهائيا أي نتجاهله من تطبيق الخطوة 3 نفسها

 

وأظنها واضحة إن شاء الله

 

بقيت مسألة حتى نستخدم نفس الأسماء بالضبط

هل بالإمكان نسخ سكربت SQL إنشاء الجدول RequestsHistory  هنا لأنشيء به نفس المثال

وأضع به معلومات عشوائية للتجريب

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#21

هذا ما توصلت إليه

 

 


post-261046-0-06916000-1360188774_thumb.


 

للعلم ما تراه في الصورة من نتائج هو في زمن التصميم :)

وهذه إحدى إيجابيات الـ WPF  حيث تقوم بتنفيذ الكود وأنت تصمم مما يسمح برؤية النتائج مباشرة دون الحاجة للتنفيذ إلا عند الحاجة لتفاعل الأحداث

بقي أن ترفق بنية الجدول تماما كما هو معرف في الداتا بيز لديك لأقوم بتعديل الكود بما يناسب ويبقى عليك الربط

أو أن أحولها إلى سكربت ضمن SQL

تم تعديل هذه المشاركة بواسطة أبو أحمد المبرمج في 7 فبراير 2013 في 01:13

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#22
أبو أحمد المبرمج كتب:

هذا ما توصلت إليه

 

 

attachicon.gifSnapshot01.png

 

للعلم ما تراه في الصورة من نتائج هو في زمن التصميم :)

وهذه إحدى إيجابيات الـ WPF  حيث تقوم بتنفيذ الكود وأنت تصمم مما يسمح برؤية النتائج مباشرة دون الحاجة للتنفيذ إلا عند الحاجة لتفاعل الأحداث

بقي أن ترفق بنية الجدول تماما كما هو معرف في الداتا بيز لديك لأقوم بتعديل الكود بما يناسب ويبقى عليك الربط

أو أن أحولها إلى سكربت ضمن SQL

 

السلام عليكم ورحمة لله وبركاتة ....

 

آسف على التأخر بالرد لان لم استطيع دخول الانترنت نهاية الاسبوع

 

 

 

تفضل السكريبت ... علماً بأني اعمل على web application وليس windows application

 

ايضاً حبذا لو كان على شكل SQL

 

USE [RequestSystem]
GO

/****** Object:  Table [dbo].[RequestsHistory]    Script Date: 02/09/2013 08:02:55 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[RequestsHistory](
	[RequestsHistoryID] [int] IDENTITY(1,1) NOT NULL,
	[Req_ID] [int] NOT NULL,
	[ActionDate] [nchar](10) NOT NULL,
	[OrderStatus] [nvarchar](5) NOT NULL,
	[ActionType] [nvarchar](5) NOT NULL,
	[ActionBy] [nvarchar](50) NOT NULL,
	[AssignTo] [nvarchar](5) NULL,
	[ActionTime] [nchar](10) NULL
) ON [PRIMARY]

GO

تم تعديل هذه المشاركة بواسطة tec4serv في 9 فبراير 2013 في 12:57

#23
tec4serv كتب:

السلام عليكم ورحمة لله وبركاتة ....

 

آسف على التأخر بالرد لان لم استطيع دخول الانترنت نهاية الاسبوع

 

 

 

تفضل السكريبت ... علماً بأني اعمل على web application وليس windows application

 

ايضاً حبذا لو كان على شكل SQL

 

USE [RequestSystem]
GO

/****** Object:  Table [dbo].[RequestsHistory]    Script Date: 02/09/2013 08:02:55 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[RequestsHistory](
	[RequestsHistoryID] [int] IDENTITY(1,1) NOT NULL,
	[Req_ID] [int] NOT NULL,
	[ActionDate] [nchar](10) NOT NULL,
	[OrderStatus] [nvarchar](5) NOT NULL,
	[ActionType] [nvarchar](5) NOT NULL,
	[ActionBy] [nvarchar](50) NOT NULL,
	[AssignTo] [nvarchar](5) NULL,
	[ActionTime] [nchar](10) NULL
) ON [PRIMARY]

GO
#24

حياك الله أخي وسأحاول ما بوسعي إن شاء الله

المهم أن الفكرة أصبحت واضحة

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

#25

أخي الكريم

 

حصل لبس

فقد ذكرت مرة أن احتساب وقت الأكشن هو تاريخ التعميد مطروح منه تاريخ الأكشن الذي قبله

ثم ذكرة في مرة أخرى أن الوقت يحسب بوقت الاعتماد مطروح منه وقت تسجيل الطالب

وهما حالتان مختلفتان

لأنه في الحالة الثانية يجب أن نتجاهل كل السجلات التي تكون حالتها "طلب محول"

على اعتبار ما يهمنا تاريخ الاعتماد وتاريخ التسجيل فقط

 

أما في الحالة الأولى فيجب أخذها بعين الاعتبار إذا كنا نريد معرفة الوقت من لحظة وصول الطلب للمعتمد بحيث نكون منصفين ونحمله تأخير المحولين

 

فأيهما الصواب ؟

ما أقبـح المعصية ، تذهب لذتها ويبقى إثمها ... ومأ أحسن الطاعة ، تذهب مشقتها ويبقى ثوابها

كل نعيم دون الجنة غرور ... وكـل شقـاء دون النـار سرور

الدورة التطبيقية لتعليم التصميم بالإليستريتور

هذا الموضوع مغلق.

مواضيع مشابهة