نمایش نتایج 1 تا 19 از 19

نام تاپیک: مقایسه تاریخ بین چند تاریخ در چند رکورد

  1. #1

    مقایسه تاریخ بین چند تاریخ در چند رکورد

    با سلام
    من یک برنامه دارم که تو اون شماره پرسنلی نفرات با تاریخ رفت و برگشت در اون ثبت میشه
    حالا زمانیکه یک نفر چندبار ماموریت میره برنامه باید چک کنه که تاریخ تکراری نباشه و از همه مهمتر اینکه تاریخ ماموریت سوم و یا چهارم با تاریخهای قبلی تکراری نباشه و یا بین اون تاریخها تداخل نداشته باشه . تکراری نبودن تاریخ که حله . ولای اینکه چطور باید چک کنم که تاریخ ماموریتهای بعدی با تاریخهای قبلی تداخل نداشته باشه نمی دونم .

  2. #2
    یه نکته خدمت دوستان عرض کنم و اون اینکه فرض کنید تاریخ شروع ماموریت یکنفر 84/1/1 و پایان اون 84/3/2 باشه و اگر ماموریت دیگری خواست ثبت بشه تاریخ شروع و پایان نباید تکرار بشه و از طرفی این نفر از 84/2/2 هم نمیتونه به یک ماموریت دیگه رفته باشه . چون تاریخ آخری بین دو تاریخ اول قرار داره . و از طرفی هر نفر به تعداد N دفعه میتونه ماموریت بره بشرط اینکه تاریخ شروع و پایان یکی نباشه و از طرفی تاریخ بین تاریخ شروع و پایان تا یک تاریخ دیگه باشه

  3. #3
    دوستان خواهشن کمک کنید

  4. #4
    باید از دستور max تئ کوری استفاده کنی
    مثلا
    Select Max(Date) as MaxDate from Table
    با این دستور بیشترین تار&#17406ع و پایان ماموریت را توی یک رکورد %1ا 1/1/84 حالا شما باید چک کنی تاریخی شروع ماموریت بعدی از این تاریخ کوچکتر یا مساوی نباشه
    به نظر من برای راحتی کارت هم باید شروع و پایان ماموریت را توی یک رکورد قرار نده برای هر کدوم یک رکورد درست کن چون من یک برنامه حضور و غیاب نوشته م و دیدم بهترین روش اینه
    آخرین ویرایش به وسیله hamid2002ir : دوشنبه 04 اردیبهشت 1385 در 07:58 صبح

  5. #5

    فایل ضمیمه

    دوست عزیز یعنی شما میگی که اول تاریخ رفت ماموریت رو تو رکورد ذخیره کنم و بعد تاریخ برگشت اونو تو یه رکورد دیگه ذخیره کنم ؟در ضمن من بانک مربوطه رو برای مثال میزارم اگر فرصت کردین نگاه کنین و نظر بدین . نکته مهم فقط تو تداخل پیدا نکردن تاریخ رفت و برگشت می باشد
    فایل های ضمیمه فایل های ضمیمه

  6. #6
    امیدوارم مشکلت با این برنامه حل بشه
    فایل های ضمیمه فایل های ضمیمه

  7. #7
    از توجهتون ممنون . تست میکنم

  8. #8
    دوست عزیز روش شما برا یک تاریخ بود . ولی من یک تاریخ رفت و یک تاریخ برگشت دارم که هر دو در یک رکورد ثبت میشن . و بعد از اینکه نفر دو الی سه بار ماموریت رفت باید سیستم چک کنه که اگر مثلا از تاریخ 84/1/2 تا 84/1/6 رفته دیگه این نفر نمیتونه از 84/1/5 یه ماموریت دیگه رفته باشد و تاریخ تداخل نداشته باشه

  9. #9
    شما کافیه یکی از فیلد های تاریخ چه رفت چه برگشت را چک کنید اگر وجود هر کدوم از رکورد ها پیدا بشه یعنی توی اون تاریخ ها قبلا به ماموریت رفته .
    در ضمن شما توی یک رکورد هم می تونین جستجو کنین مثلا
    Selcect * from Table where date1 < #84/1/1# Or date2 > #5/1/84#
    حالا اگر رکوردی پیداشد قبلا ماموریت رفته اگر هم نشد یعنی توی این تاریخ ها وارد شده ماموریت نرفته اگر خواستی برنامه اش را بنویسم

  10. #10
    اقا حمید دستت درد نکنه . من نمونه بانک برنامه رو بالا گذاشتم . اگر نگاه کنی متوجه میشی . فرمایش شما موقعی امکان داره که دقیقا همون تاریخ تکرار بشه . ولی اگه نفر 4 بار ماموریت رفته باشه مثلا از 84/1/1 تا 84/1/3 و ماموریت دیگه از 84/1/12 الی 84/1/16 بوده باشه . حالا اگر برای بار سوم خواست ماموریت بره و تو لوحه ماموریت تاریخ 84/1/2 الی 84/1/10 زد و یا از 84/1/6 الی 84/1/15 رفت چون هر دو تاریخ با تاریخ های اولی از لحاظ رفت و برگشت تداخل دارن برنامه قبول نکنه .

  11. #11
    در ضمن تداخل اونجاست که ماموریت سوم از 84/1/2 شروع شده که بین تاریخ ماموریت اوله و ماموریت چهارم هم از 84/1/6 شروع شده و تاریخ پایان اون یعنی 84/1/15 با تاریخ ماموریت دوم تداخل داره

  12. #12

    نمونه برنامه

    دوستان من نمونه برنامه رو گذاشتم . اگر کسی راه حلی به ذهنش رسید خواهشن به دلیل حساس بودن کار برای من و نیاز فوری سریعا جواب بدین . هر کی مشکل منو حل کنه یه شیرینی توپ پیش من داره !!!
    فایل های ضمیمه فایل های ضمیمه

  13. #13
    در ضمن فولدر مربوطه رو تو درایو e کپی کنین

  14. #14
    دوستان کمک کنید

  15. #15
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    36
    پست
    1,227
    دوست عزیز این تیکه برنامه رو چک کن ببین چطور
    من همه حالتهای به ذهنم نه رسید چند تا حالت چک کردم جواب داد ...
    یه مشکل کوچیک که داره حقیقت وقتشو نداشتم اینم درست کنم
    تاریخ برگشت اگه کوچکتر از تاریخ رفت باشه هم چک میکنه اینو دیگه خودت درست کن ....

    Dim Start_Date As Boolean
    Dim End_Date As Boolean
    Dim Check As Boolean

    For i = 0 To Val(Text2.Text)
    If (MaskEdBox1.Text < List1.List(i)) Or (MaskEdBox1.Text > List2.List(i)) Then
    Start_Date = True
    Else
    MsgBox "Warning"
    Start_Date = False
    Exit Sub
    End If
    If (MaskEdBox2.Text < List1.List(i)) Or (MaskEdBox2.Text > List2.List(i)) Then
    End_Date = True
    Else
    MsgBox "Warning"
    End_Date = False
    Exit Sub
    End If
    Next
    If Start_Date = True And End_Date = True Then MsgBox "Ok"


  16. #16
    از توجه شما ممنون . چک کنم ببینم جواب میده یا نه

  17. #17
    آقای فرهانی از لطفی که کردین بینهایت ممنون . مشکل حل شد . اگر در زمینه اکتیوایکس برا وی بی و دات نت چیزی خواستی برای تلافی و قدردانی من در خدمتم . یه سری چیزهای خوب دارم . برای تماس صبحا با شماره 09173688850 تماس بگیر

  18. #18
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    36
    پست
    1,227
    مرسی ... امیدوارم بتونم بازم از این کارها بکنم ........

  19. #19
    دستت درد نکنه . به هر حال یه سری چیزهای بدرد بخور برا وی بی 6 و وی بی دات نت دارم . اگر دوست داشتی تماس بگیر یا Pm بده

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •