منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
حساب فرق الوقت و التسعيرة - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : حساب فرق الوقت و التسعيرة (/showthread.php?tid=27221)



حساب فرق الوقت و التسعيرة - محمد خيري - 31-10-18

السلام عليكم.اخواني بحق تعبت بالبحث هنا و بالمنتديات الاجنبية و ما لقيت الحل
اريد لما اضغط على الباتون 1 يظهر الفارق التوقيت بالتاكست بكس4 بهاذا الشكل 

لاني كل ماوجدتو يظهر التوقيت بالثواني فقط مثال 4 دقايق تظهر بالتاكست بكس 240 .اريدها يظهر الفرق مثل الصورة.بالكود يعمل بالملف لكن حسيت انو فيه نقص و لا يشاغل تمام.و بعدين حسب الفرق التوقيت بالتاكست4 و السعر المضبوط بالتاكست بكس2 يظهر بالتاكست5 الثمن النهائي
انا عملت شرح بالملف و ربنا يبارك فيكم يارب العالمين


RE: حساب فرق الوقت و التسعيرة - elgokr - 31-10-18

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

بناءاً على ما يوجد بمحتوى المرفق
وحيث ان عند عدد ساعتين يصبح اجمالى المبلغ 197.14 فرنك

بالمعادلة ( 2 ساعة * 60 دقيقة * 60 ثانية ) يصبح الاجمالى 7200 ثانية
المبلغ الكلى لعدد ( الساعتين 197.14 / عدد الثانى 7200 ) يصبح لكل ثانية 0.0273805555555556 تقريباً

الان نعمل زر جديد واستخدم الكود التالى أو يمكن استخدام الكود داخل الـ Timer
كود :
       Dim TimeWatch_ As Date = CDate(TextBox4.Text)
       Dim ii As Integer = Val(TimeWatch_.Hour * 60 * 60) + Val(TimeWatch_.Minute * 60) + Val(TimeWatch_.Second)
       TextBox5.Text = Math.Round(Val(ii * 0.0273805555555556), 2).ToString("0.00")

وبكده سيكون الناتج النهائي فى TextBox5 القيمة الفاعلية للفرنك عن كل ثانية بيتم المرور

يمكن عمل شرط قبل السطر التالى ويصبح هذا السطر بداخل الشرط
كود :
       TextBox5.Text = Math.Round(Val(ii * 0.0273805555555556), 2).ToString("0.00")

بحيث يكون الشرط اذا تحقق ii اكبر من او يساوى 7200 اى ساعتين يبداء بعرض المبلغ المستحق
اتمنى هذا ما تريده طبقاً لما تم شرحه فى المشروع المرفق

تحياتى لك
وتمنياتى لك التوفيق



RE: حساب فرق الوقت و التسعيرة - محمد خيري - 01-11-18

بارك الله فيك استاذ elgokr و مبروك الترقية لاكبر منها  تستاهل اكثر و ربنا يعلم. انا جربت كمثال عملت  التسعيرة 60.32
شوف اخي elgokr التوقيت من البداية باللون الاحمر 00:09:09 و شوف باللون الاخضر الثمن 15.03 .من المفروض 15 فرنك توصل لما يكون ربع ساعة 00:15:00 لانو 15 فرنك هي ربع التسعيرة 60.32 من المفروض لما يكون التوقيت بالتاكست بكس4 00:15:00  تكون الثمن بالتاكست بكس 5 هو بالضبط 15.08.و الله املي بالله ثم بك كبير استاذ elgokr و شغلي متوقف على النقطة هذي بارك الله فيك



RE: حساب فرق الوقت و التسعيرة - elgokr - 01-11-18

شوف انسى الامر اللى المفترض
تعامل معاها كانك بتحاسب شخص بشكل عام مش هقول ندخل فى امور برمجة او حسابة

انت المفروض بتقول ان الساعة حالياً 60.32 ولا الساعة 98.57
لان بناءا على الرقم ده هنقدر نوصل القيمة الصحيحة لكل ثانية

لان قيمة 15.03 عن مدة 9 دقائق و 9 ثواني هى مبنية على ان الساعة بـ 98.57
خلاف انك كاتب ان القيمة ثابتة اى انها غير متغير ولا تقبل للتغير بناءاً على الكلام

اذا كان سعر الساعة بيعتمد على ما يتم كتابته فى TextBox2 اى كان 60 او 100 او حتى 1000
فالامر ايضاً سهل وبسيط لكن كل ما احتاجه فقط ان توضح القيمة الاجمالى عن كل ساعة

حتى اشرح لك ما التعديل البسيط على السورس المرفق سابقاً

وللتوضيح لما تم شرحه مسبقاً
اذا كان الساعة = 98.57
يبقي الرقم المدرج فى الشرح السابق وهو [ 0.0273805555555556 ] صحيح
واذا كان الساعة = 60.32
فاصبح مطلوب منك تغيير هذا الرقم الذى تحدثنا عليه فى الاعلى الى الرقم التالى
0.0167555555555556 ] وهذا هى القيمة الصحيحة عن كل ثانية عن الساعة = 60.32

تحياتى لك
وتمنياتى لك لاتوفيق



RE: حساب فرق الوقت و التسعيرة - محمد خيري - 01-11-18

الله يبارك فيك استاذ elgokr يا ابن الاصول.الان الحساب مضبوط مية بالمية بعد ما جربتو.للم انتبه ان الحساب الاول كان حسب القيمة الاولى الله يكرمك.انا لما قلت القيمة ثابتة يعني ثابتة لفترة و قد اغيرها ربما بعد 6 او 7 شهور حسب قيمة العمل .
بقيت نقطة استاذ حتى لا اضطر لاتعبك معي
كيف تحصلت على القيم يعني ما هي العملية التي اقوم بها لاحصل على العدد الطويل الله يرزقك الجنة
خلاص استاذ .عرفت كيف اسف بجد.ربنا يبارك فيك يا رب و يعطيك ما تتمنى خلصتني من ورطة كبيرة ربنا يخلصك من كل سوء


RE: حساب فرق الوقت و التسعيرة - elgokr - 01-11-18

الحمد لله على كل حال

بخصوص المعادلة انا شرحتها فى الرد الاول لى وهو :
(31-10-18, 11:25 PM)elgokr كتب :
بناءاً على ما يوجد بمحتوى المرفق
وحيث ان عند عدد ساعتين يصبح اجمالى المبلغ 197.14 فرنك

بالمعادلة ( 2 ساعة * 60 دقيقة * 60 ثانية ) يصبح الاجمالى 7200 ثانية
المبلغ الكلى لعدد ( الساعتين 197.14 / عدد الثانى 7200 ) يصبح لكل ثانية 0.0273805555555556 تقريباً

والشرح هنا كان على 2 ساعة
ومن حيث ساعة واحدة نفس الفكرة لكن بدل 2 اجعلها 1 لتصبح
[1*60*60] لتكون القيمة = 3600
الان السعر وهو 60.32 / 3600 (اى السعر للساعة على عدد الثواني ) تصبح القيمة = 0.0167555555555556

ناتى الان لتجربة 
قيمة الثانية : 0.0167555555555556 * عدد [15 دقيقة * 60 ثانية] عدد (900 ثانية )
بمعنى انه سيتم ضرب (0.0167555555555556 * 900 ) يبقي القيمة للربع ساعة هى = 15.08 لاقرب نسبة مئوية 0.00

وبما ان القيمة متغيير وليس ثابت
فكل ما عليك فعله هو اعلى السطر التالى
كود :
TextBox5.Text = Math.Round(Val(ii * 0.0167555555555556), 2).ToString("0.00")

قم باضافة هذا السطر
كود :
Dim money_ As Double = Val(TextBox2.Text) / Val(1 * 60 * 60)

وتعال على السطر التالى
كود :
TextBox5.Text = Math.Round(Val(ii * 0.0167555555555556), 2).ToString("0.00")

وقم بتعديله الى هذا الشكل
كود :
TextBox5.Text = Math.Round(Val(ii * money_), 2).ToString("0.00")

وبكده بمجرد انك تقوم بتغيير القيمة من 60.32 الى مثلا 72.44 وليكن
ستجد المعدلة تلقائي تتغير للقيمة الصحيحة عن كل ثانية دون الحاجة لاعادة التعديل على السورس

تحياتى لك
وتمنياتى لك التوفيق



RE: حساب فرق الوقت و التسعيرة - محمد خيري - 01-11-18

الله يبارك فيك اخي elgokr على الجواب السليم و شرحك الوافي ربنا يرزقك بكل الخيرات ان شاء الله


RE: حساب فرق الوقت و التسعيرة - elgokr - 02-11-18

(01-11-18, 11:31 AM)محمد خيري كتب : الله يبارك فيك اخي elgokr على الجواب السليم و شرحك الوافي ربنا يرزقك بكل الخيرات ان شاء الله


اللهم امين ولنا جميعاً باذن الله


تحياتى لك
وتمنياتى لك التوفيق