بازدید: ۵٢۶

استفاده و ایجاد تغییر در تاریخها با استفاده از تابع DatePart (آموزش پیشرفته اکسس)

بازگشت به صفحه اصلی آموزش پیشرفته اکسس

 

به زبان ساده می توان گفت که تابع DatePart این امکان را به ما می دهد تا قسمتی از یک تاریخ داده شده را جدا کنیم و در ادامه ممکن است بخواهیم رکوردهای مربوط به آن تاریخ (یا مدت زمانی) را دسته بندی کرده یا بازیابی و اصلاح کنیم. با قرار دادن یک پارامتر interval، برای اکسس مشخص می کنیم که کدام قسمت از تاریخ مدنظر ما می باشد و پارامتر دوم هم خود تاریخ است. نحوه نوشتن (Syntax) تابع مورد نظر به صورت زیر می باشد:

 

DatePart("Interval", DateValue)

 

پارامتر interval دقیقا شبیه به همان مقادیری است که قبلا در تابع DatDiff از آن استفاده کردیم. این مقادیر می توانند سال (“yyyy”)، ربع (“q”) یا ماه (“m”) باشند. پارامترهای  interval  دیگری نیز وجود دارند همانند ساعت، دقیقه و ثانیه.

در این مثال ما مقدار m را بعنوان پارامتر interval و fldDate(فیلدی از جدول) را برای پارامتر تاریخ قرار دادیم و آن را بصورت زیر نوشتیم:


DatePart("m", [fldDate])

 

نتیجه حاصله از این تابع، یک مقدار عددی برای ماه می باشد. بعنوان مثال، اگر تاریخ موجود در فیلد fldDate، 16/09/2011 بوده باشد، تابع مقدار 9 را بر می گرداند. زمانی استفاده از این تابع مناسب است که ما لیستی از تاریخها داریم و می خواهیم برحسب یک ماه مشخص در یک فرم پرس و جو یا گزارش، آنها را گروه بندی کنیم.

 

تغییر تاریخ

شکل 1: لیستی از سفارشات به همراه تاریخها

 

اکنون می خواهیم نگاهی به نحوه استفاده از تابع DatePart در یک فرم پرس و جو بپردازیم و با استفاده از آن رکوردها را برحسب ماه دسته بندی کنیم.

 

تابع DatePart

شکل 2

 

همانطور که در شکل فوق مشاهده می کنید، با استفاده از تابع DatePart، یک فیلد محاسبه شده به نام TheMonth ایجاد کرده ایم. کاراکتر M بعنوان اولین پارامتر قرار داده شده است و پارامتر دوم به فیلد OrderDate از جدول tblOrders رجوع می کند. همچنین ما برروی آیکون TOTALS از گروه SHOW/HIDE نوار ابزار Design کلیک کرده ایم و فیلدهای TheMonth و Total را به ترتیب بر روی Group BY و SUM تنظیم کرده ایم.
با اجرای فرم پرس و جوی(Query) مربوطه، هر ماهی که حاوی سفارش می باشد، در سطر جداگانه ای از نتایج ما نمایش داده خواهد شد. اولین ستون، ماه حاصله از تابع DatePart  است که در فیلد TheMonth نمایش داده می شود. دومین فیلد حاوی جمع کل سفارشات در همان ماه می باشد. شکل زیر نتیجه فرم پرس و جو را برای داده های نمونه ما نشان می دهد:

 

فرم پرس و جو تابع DatePart

شکل 3: نتایج حاصله از فرم پرس و جو (Query) که با استفاده از تابع DatePart بدست آمده اند. فیلد SunOfTotal، جمع کل سفارشات هر ماه را نشان می دهد.

 

می توان برای فیلتر گذاری گروهی از رکوردها برحسب یک شرط از تابع DatePart استفاده کرد. بعنوان مثال، اگر بخواهیم رکوردهای مربوط به سفارشات موجود در ماه May را نمایش دهیم، باید یک فرم پرس و جو بصورت زیر ایجاد کنیم:

 

استفاده از تابع DatePart

شکل 4

 

همانطور که مشاهده می کنید فیلد محاسبه شده TheMonth را نگه داشته ایم. اگرچه، به جای گروه بندی تمامی رکوردهای جدول tblOrders برحسب ماه، مقدار ماه را بصورت یک شرط (=5) در این ستون وارد کرده ایم. با اجرای این فرم پرس و جو، تمامی سفارشات ماه May نمایش داده می شوند.

 

فرم پرس و جو سفارشات ماه May

شکل 5: نتایج دومین فرم پرس و جو که تمامی سفارشات ماه May را نمایش می دهد.

 

اگر بخواهیم می توانیم این فرم پرس و جو را به یک فرم پرس و جوی پارامتری تبدیل کنیم و از آن بعنوان یک منبع داده (Data Source) برای یک گزارش استفاده کنیم.

 

بازگشت به صفحه اصلی آموزش پیشرفته اکسس

طراحی سایت و سئو توسط ضابط