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

[ تمت الإجابة ]كيفة تجميع ثلاثه اعمدة في عمود واحد لتكوين التاريخ

بدأه ثائر العراقي في 7 يوليو 2012 · 34 رد · 2,518 مشاهدة · في قواعد بيانات Visual FoxPro
مشاركة: واتساب X فيسبوك تيليجرام
#26

اخي العزيز ردا على مشاركتك

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

 CLOSE ALL 
SET date BRITISH
SET CENTURY on
SET TALK OFF 
USE table1
GO top
DO WHILE ! EOF()
year1 =   year(mdate1)   				
year2 =   year(mdate2)   				
cmyear = year2 - year1  	
month1 = month(mdate1) 
month12 = month(mdate2)            		
cmmonth = month12 - month1   
day1 = day(mdate1)              		
day2 = day(mdate2)              		
cmday = day2 - day1
If cmday   < 0
 cmmonth   = cmmonth   - 1
 cmday  = cmday  + 30
Endif
If cmmonth   < 0
 cmyear  = cmyear  -1
 cmmonth  = 12 + cmmonth 
Endif
replace myear WITH cmyear,;
 mmonth WITH cmmonth ,;
  mday WITH cmday
  SKIP 
 ENDDO 
 BROWSE

وبقي لديك كيفية التعامل مع الاشهر 30 و31 و 29 و28

واريد ان اسالك هل الكود المذكور من قبلك هو فكرتك او تعديل لكود منشور سابقاً

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

وان قمت بالتعديل فهذا يثبت لك انك مستوعب الفكرة وعمل الايعازات اي تطوير الفكرة وانا اؤيد وبشدة هذة الطريقة

وانا شخصيا اعتمدها في الكثير من الحالات لانها فكرة انك تكمل ما بدا به الاخرون وهو مفهوم التطوير

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

if ,case,do

تحياتي للجميع

#27

اخي العزيز كان لدي فكرة في البداية و لكني قمت بالاستفادة من كود اخر و في النهاية قمت بدمج الاثنين معا و الف شكر علي مشركاتك لاني بالفعل استفدت منها كثيرا

Persistent Fox

#29

نعم بأستخدام do casae و اضافة متغير تتغير قيمتة حسب عدد ايام الشهر ثم استخدام هذا المتغير لحساب عدد الايام

mcheck = 30

DO case

CASE month1 = 2 AND day1 = 28

mcheck = 28

CASE month1 = 2 AND day1 = 29

mcheck = 29

CASE day1 = 31

mcheck = 31

ENDCASE

Persistent Fox

#30
xcode كتب:

نعم بأستخدام do casae و اضافة متغير تتغير قيمتة حسب عدد ايام الشهر ثم استخدام هذا المتغير لحساب عدد الايام

mcheck = 30

DO case

CASE month1 = 2 AND day1 = 28

mcheck = 28

CASE month1 = 2 AND day1 = 29

mcheck = 29

CASE day1 = 31

mcheck = 31

ENDCASE

بارك الله فيك اخي العزيز

وانا اشجع وافرح جدا لهذا النشاط والبحث والتطوير ابقى على اصرارك وسوف تكون الاول

اما بخصوص الكود اعلاه اتمنى ان تضعهُ في برنامج لاختباره بطريقتك وليكون مفهوم للجميع تحياتي لك

#31
lion iraq كتب:

بارك الله فيك اخي العزيز

وانا اشجع وافرح جدا لهذا النشاط والبحث والتطوير ابقى على اصرارك وسوف تكون الاول

اما بخصوص الكود اعلاه اتمنى ان تضعهُ في برنامج لاختباره بطريقتك وليكون مفهوم للجميع تحياتي لك

اخي العزيز

do case لم تحل مشكلة الشهور 31 يوم و شهر فبراير بما ان المشكلة هيا معرفة ما اذا كان اخر يوم في الشهر 30 او 31 او 28 او 29

فان المعادلة التالية تحل المشكلة بشكل كامل

DAY((GOMONTH(frDate, 1) - DAY(GOMONTH(frDate, 1))))

برجاء مراجعة المرفقات

date.rar

Persistent Fox

#32
xcode كتب:

اخي العزيز

do case لم تحل مشكلة الشهور 31 يوم و شهر فبراير بما ان المشكلة هيا معرفة ما اذا كان اخر يوم في الشهر 30 او 31 او 28 او 29

فان المعادلة التالية تحل المشكلة بشكل كامل

DAY((GOMONTH(frDate, 1) - DAY(GOMONTH(frDate, 1))))

برجاء مراجعة المرفقات

السلام عليكم

اخي العزيز تحياتي لك واتمنى انك لا تتراجع او تستسلم في بالنهايه تكون الفائدة لك ولي وللجميع

واحب ان اطلق عليك لقب مني شخصيا ً هو Persistent Fox ولقد وصلت الى نهايه الحل للفكرة

تم تجاوز فبراير بنجاح ok واريد منك في برنامجك ادخال تاريخ متشابه في الخانتين مثلا

2012-01-01

ولاتنسى في الكود خاصتك يقوم بالتكرار كل مرة عدد اليوم الحالي للتاريخ

انتظرك يا Persistent Fox

#33

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

و بخصوص ادخال تاريخ متشابه يكون حساب الفرق خاطئ لذلك فقد جعلت الشرط كما كان دون استخدام "=" فاصبح الفرق صحيح

Persistent Fox

#34
xcode كتب:

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

و بخصوص ادخال تاريخ متشابه يكون حساب الفرق خاطئ لذلك فقد جعلت الشرط كما كان دون استخدام "=" فاصبح الفرق صحيح

اخي العزيز

اللقب استحققتهً باصرارك على دراسه الايعازات

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

تحياتي لك وللجميع

واتمنى ان تجعل توقيعك على المشاركات هو اللقب الذي احب اناديك بهَ انتظرك يا Persistent Fox

#35

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…