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

نام تاپیک: نحوه استفاده از توابع تاريخ شمسي

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نحوه استفاده از توابع تاريخ شمسي

    با سلام
    1- بعد از جستجو فراوان توانستم 3 تابع تاريخ شمسي بيابم ولي در هيچكدام حتي با مثالهاي همراهشان نتوانستم راه استفاده كامل آنها را بيابم .
    2- تابع آقاي آزادي تاريخهاي بيش از سال 1399 را نميتواند درست نمايش و محاسبه كند . بنظر دو تابع ديگر كه يكي با Mtos()‌ و ديگر با TarikhShamsi تعريف ميشوند كاملتر هستند ولي ..
    3- استفاده از تاريخ ممكن است كوتاه يا بلند ، با روز هفته يا بدون آن است . خواهش بنده اين است كه اساتيد راهنمايي فرمايند . البته با مثال كه خيلي عالي است .
    4- يادآوري ميكنم جستجو را انجام دادم و حتي سر از انجمنهاي ديگر (VB.net ، VB ، PHp , Sql ,ASP و ...) در آوردم ولي نتيجه اي حاصل نشد
    5- درخواست بنده نحوه استفاده از توابع مذكور براي :
    الف) 1387/06/21
    ب) 87/6/21
    ج) پنج شنبه 1387/06/21 يا پنج شنبه 87/6/21 و ..
    د) پنج شنبه
    ه) 21/شهريور/87 يا 21/شهريور/1387 يا پنج شنبه 21/شهريور/87 و ...
    ....
    است

  2. #2
    کاربر دائمی آواتار مهدی قربانی
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    2,435

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    سلام
    توابع آقاي آزادي خواسته هاي شما رو برآورده ميكنه ، البته همونطور كه اشاره كرديد يكي از مشكلاتش محاسبه تاريخ تا 1399 هست .

    نمونه مرتبط با بهره گيري از ماجول تاريخ شمسي جناب آقاي آزادي :
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله مهدی قربانی : جمعه 22 شهریور 1387 در 07:37 صبح

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    باسلام و تشكر
    1- همانگونه كه فرموديد تابع آقاي آزادي تا سال 1399 كار نميكند كه براي برنامه ام مشكل ايجاد ميكند .
    2- منظورم بيان تابعي است كه بتوان آنگونه كه مثال زده‌ام به جواب برسيم . مثلاً تابع Dat() تاريخ روز به همراه روز هفته را ميآورد . تابع Shmasi() و تابع () Rooz() ,Mah , مشكل اينجاست كه چند جا خواسته‌ام استفاده كنم با مشكل مواجه شدم و وفقط تابع Dat‌ كار ميكرد .
    3- چگونه اين توابع را استفاده كنم كه اولاً مشكلات فوق بوجود نيايد ؟ ثانياً با ايمپورت ماژول نقص پيدا نكند ؟ ثالثاً هر كدام را چگونه و كجا بكار ببرم ( البته از مثال ارسالي مشخص است ولي بنظرم آمد يك آموزش متني بهتر كاربرد داشته باشد البته مكمل آن مثال است )
    4- دو توابع ديگر كه نميدانم كار چه كسي است كاملتر هستند اما توضيح مناسبي ندارند .
    توضيح اينكه مشكل زماني پيش ميآمد كه ميخواستم با استفاده از اين توابع برنامه دعاي روز كه كار دوستان بوده و مبتني بر فايل DLL بود را بصورت بازو با اين توابع تنظيم كنم .

  4. #4
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,955

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    نقل قول نوشته شده توسط Profesorjd مشاهده تاپیک
    باسلام و تشكر
    1- همانگونه كه فرموديد تابع آقاي آزادي تا سال 1399 كار نميكند كه براي برنامه ام مشكل ايجاد ميكند .
    2- منظورم بيان تابعي است كه بتوان آنگونه كه مثال زده‌ام به جواب برسيم . مثلاً تابع Dat() تاريخ روز به همراه روز هفته را ميآورد . تابع Shmasi() و تابع () Rooz() ,Mah , مشكل اينجاست كه چند جا خواسته‌ام استفاده كنم با مشكل مواجه شدم و وفقط تابع Dat‌ كار ميكرد .
    3- چگونه اين توابع را استفاده كنم كه اولاً مشكلات فوق بوجود نيايد ؟ ثانياً با ايمپورت ماژول نقص پيدا نكند ؟ ثالثاً هر كدام را چگونه و كجا بكار ببرم ( البته از مثال ارسالي مشخص است ولي بنظرم آمد يك آموزش متني بهتر كاربرد داشته باشد البته مكمل آن مثال است )
    4- دو توابع ديگر كه نميدانم كار چه كسي است كاملتر هستند اما توضيح مناسبي ندارند .
    توضيح اينكه مشكل زماني پيش ميآمد كه ميخواستم با استفاده از اين توابع برنامه دعاي روز كه كار دوستان بوده و مبتني بر فايل DLL بود را بصورت بازو با اين توابع تنظيم كنم .
    دوست عزيز اگر صرفا از تاريخ شمسي استفاده ميكنين ممكنه اين تاپيك به دردتون بخوره.
    https://barnamenevis.org/showth...t=87658&page=8
    ...................
    موفق باشيد

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  5. #5
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    باسلام
    خير دوست عزيز نميخواهم با استفاده از DLL از توابع تاريخ شمسي استفاده كنم .
    توابع آقاي آزادي توابعي خوبي هستند اگر مشكل زمان استفاده نداشت .
    دو توابع ديگر كه در همين سايت موجود است هم قابل استفاده هستند و هم مشكل زمان استفاده ندارند . منتهي طريق استفاده كامل آنان بصورتي كه سئوال شد و مدير محترم مثالش را آورده‌اند را ميخواهم بدانم .ضمناً غير از آقاي فلاح توابع DLL متعددي هستند مانند اكسين سافت ، سينا سافت ، فرساران و ...

  6. #6
    کاربر دائمی آواتار مهدی قربانی
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    2,435

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    دو توابع ديگر كه در همين سايت موجود است هم قابل استفاده هستند و هم مشكل زمان استفاده ندارند . منتهي طريق استفاده كامل آنان بصورتي كه سئوال شد و مدير محترم مثالش را آورده‌اند را ميخواهم بدانم
    سلام
    لينك اين ماجولها رو بذاريد تا بررسي بشه .

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    سلام . چون متأسفانه نتوانستم لينكش را بيابم كدش را آوردم . اين اوليش :

    Function Shamsi(Optional date1 As String, Optional SmallDate1 As Boolean) As String '================================================= === Dim d, P, w, mon, mm, ym, u, v, rp, X, i, ys, ms, dm, p1, d1, ds, DateShamsi d = Array(20, 19, 20, 20, 21, 21, 22, 22, 22, 22, 21, 21) P = Array(11, 12, 10, 12, 11, 11, 10, 10, 10, 9, 10, 10) w = Array("یکشنبه","دوشنبه","سه شنبه","چهارشنبه","پنج شنبه","جمعه","شنبه") If SmallDate1 = True Then mon = Array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12") Else mon = Array("اسفند", "بهمن", "دی", "آذر", "آبان", "مهر", "شهریور", "مرداد", "تیر", "خرداد", "اردیبهشت", "فروردین") End If If date1 = "" Then date1 = DateAdd("d", 1, Date) dm = Day(date1) mm = Month(date1) ym = Year(date1) u = 0 rp = 0 If (ym Mod 4) = 0 Then u = 1 If ((ym Mod 100) = 0 And (ym Mod 400) <> 0) Then u = 0 ys = ym - 622 X = ys - 22 X = X Mod 33 If ((X Mod 4) = 0 And X <> 32) Then rp = 1 i = Not (rp - 2) + Not (u - 2) * 2 X = 0 If (i = 0 And mm = 3) Then X = 1 If i = 0 Then i = 3 ms = (9 + mm) Mod 13 If ms < 10 Then ms = ms + 1 d1 = d(mm - 1) If (i = 1 And mm > 2) Then d1 = d1 - 1 If (i = 2 And mm < 3) Then d1 = d1 - 1 p1 = P(mm - 1) If (i = 1 And mm > 2) Then p1 = p1 + 1 If (i = 2 And mm < 4) Then p1 = p1 + 1 If (dm > 0 And dm <= d1) Then ds = p1 + dm + X - 1 X = 1 Else ds = dm - d1 ms = ms + 1 If ms = 13 Then ms = 1 X = 2 End If If ((mm = 3 And X = 2) Or mm > 3) Then ys = ys + 1 ds = Str(ds) If Len(Trim(ds)) = 1 Then ds = "0" + Trim(ds) If SmallDate1 = True Then' اگر سال به صورت دو کارکتری میخواهید خط زیر را از حالت کامنت در آورید' Shamsi = Mid(Trim(Str(Ys)), 3, 2) + "/" + Trim(mon(Ms - 1)) + "/" + Trim(Ds)' اگر سال به صورت چهار کارکتری میخواهید خط زیر را از حالت کامنت در آورید Shamsi = Trim(Str(ys)) + "/" + Trim(mon(ms - 1)) + "/" + Trim(ds) Else Shamsi = w(Weekday(Date) - 1) + " " + Str(ds) + " " + mon(ms - 1) + " " + Str(ys) End IfEnd Function

    البته اين توابع و توابع دومي در تاپيك مشكلات فارسي و سورسهاي مربوطه موجود هستند .

  8. #8
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام
    اساتيد گرامي ! كاربرد اين توابع را نيافته‌اند . البته بنده هنوز منتظر هستم

  9. #9
    کاربر دائمی آواتار مهدی قربانی
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    2,435

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    سلام
    در حال بررسي هستم .

  10. #10

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    دوست عزيز ميتوانيد از توابع زير استفاده كنيد. فقط بعد از وارد شدن به اكسس به محيط كد نويسي رفته و فايلهاي ضميمه را Import كنيد. اين توابع بسيار جالب و داراي فايل راهنما ميباشد.
    فایل های ضمیمه فایل های ضمیمه

  11. #11
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام .
    1- تشكر از جناب قرباني بابت قراردادن اين تاپيك در اعلان .
    2- در استفاده از توابع فوق با مشكل مواجه شدم . بطور معمولي تاريخ روز را حساب ميكنند حتي بعد از سال 1399 ولي براي استفاده از تاريخ با روز هفته يا ماه فارسي ( شهريور) با مشكل مواجه شدم .
    3- براي توضيح اينكه در اين توابع براي استفاده از تاريخ فارسي از تابع TBH‌ استفاده شد كه مشكل ايجاد كرد . ضمناً تبديل عدد به حروف هم در اعشار و هم در اعداد بالا مشكل دارد .
    4- اگر به اولين تاپيك دقت فرماييد توابع فارسي اعداد و تاريخ شمسي بسيار ديده‌ام ولي راهنما براي نحوه استفاده از آن بطور نمونه مثالهاي زده شده نيافتم . اگرچه راهنمايي توابع آقاي ميداني مناسب است ولي بازهم كامل نيست .

  12. #12
    کاربر دائمی آواتار mohsenna30ri
    تاریخ عضویت
    تیر 1385
    محل زندگی
    اردکان
    پست
    302

    Cool نحوه استفاده از توابع تاريخ شمسي با يک فايل dll

    بهترين و راحت ترين راه حل:

    اگر از ويندوز ايکس پي و آفيس 2003 استفاده مي کنيد راحت ترين راه حل فکر کنم اين تاپيک باشه:

    https://barnamenevis.org/showthread.php?t=85747

    با استفاده از اين فايل dll شما تاريخ هجري شمسي را در اکسس خواهيد داشت و احتياجي به تبديل تاريخ به هجري شمسي نخواهد بود
    البته حواستان باشد که در قسمت option تاريخ آنرا روي هجري تنظيم نمائيد.

  13. #13
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام و تشكر
    1- اين Dll مناسب است ولي براي ارسال برنامه براي ديگران بايد راه استفاده از آن را هم فرستاد ! . ضمناً جالب نيست كه براي برنامه‌هايي كه نوشته ميشود و براي ديگران كاربرد مي‌يابد از اين روش استفاده كرد .
    2- دوستان ! توابع تاريخ شمسي يا ماژولهايي براي ايجاد تاريخ شمسي براي خودم ( تك كاربر رايانه ) نميخواهم . راه استفاده با توجه به تاپيك اول نياز است .

  14. #14
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    چند روزي صبر کن ...
    موفق باشيد

  15. #15
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    کدهاي آقاي ازادي را (با اجازه) کمي دستکاري و تعديل کرده و کدهاي ديگري که مربوط به VB ‌ميشد به اين برنامه (کدها) اضافه کردم تقريباً جواب ميده
    البته به مقدار مشکل بازم هست
    با اون کار کنيد متوجه ميشويد...
    فایل های ضمیمه فایل های ضمیمه

  16. #16

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام
    از left می توانی استفاده کنی.مثلا در یک ستون بگویی از left 4 تا را بیار .

  17. #17
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام و تشكر
    1- توابع شمسي تاريخ ميلادي را به شمسي تبديل ميكنند . اما هميشه براي استفاده از آن يك حالت نياز نيست .
    2- گاهي تاريخ بصورت روز/ماه/سال ( 23/7/87) نياز است گاهي كامل 23/07/1387 . گاهي 23/مهر/87 و 1387
    گاهي 23 مهر . گاهي هم بصورت سه شنبه 23/مهر/ 1387 .
    3- left يا Right‌ يا .. نيازي نيست . مشكل اين است كه توابع تاريخ شمسي توضيحي براي استفاده از آنان براي استفاده از صور مختلف نمايش تاريخ ندارند .
    4- در همين سايت 3 توابع تاريخ شمسي وجود دارد ( در تاپيك نمونه برنامه هاي فارسي ) . اما اكثراً يا توضيح كامل ندارند يا براي استفاده از صور مختلف تاريخ ميبايد يا از روش جناب قرباني استفاده كرد كه با توجه به مشكلات تاريخ بعد از 1399 توابع جناب آزادي مشكل وجود دارد ( خودشان كه پيدا نميكنيم )
    5- توابعي كه جناب فلاح درست كرده اند بعد از 1399 يك روز اختلاف دارند ( دو روشي كه نوشته اند ) و ايضا اشتباه ميشوند .
    با توجه به موارد مزبور و وجود اين 3 توابع در سايت روش استفاده از آنان براي استفاده صور مختلف نمايش تاريخ نياز ميباشد .

  18. #18
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام
    1- مثل اينكه آموزشي براي نحوه استفاده از توابع تاريخ شمسي آماده نشد !
    2- تابع TarikhShamsi تاريخ را اشتباه محاسبه ميكند . مثلاً امروز را چهارشنبه 30/7/87 نشان ميدهد !
    3- مجموع توابع فارسي ( J_Date ) شامل ماژولهايي است كه بعضاً نيازي به آنها نيست ( مثل تبديل عدد به حروف ) البته تاكنون عملكرد خوبي داشته است . اساتيد راهي براي تفكيك اين توابع از هم كه به تنهايي قابل استفاده باشند نميابند ؟

  19. #19
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام
    1- فايل پيوست با استفاده از تابعي نوشته شده كه در همين سايت موجود است . روز هفته و نام ماه در آن استفاده شده است اما روز هفته را با استفاده از تابع خود اكسس نوشتم .
    2- انواع استفاده از تاريخ فارسي در آن چگونه نوشته ميشود ؟
    3- آنچه كه نوشته‌ام بصورت : امروز : جمعه 1387/08/03 آبان ، است ولي مد نظر بنده 03/آبان/1387 است كه نتوانستم راهي براي آن بيابم .
    4- چگونه از تابع HowDay‌ استفاده كنم كه برگردان نام روز هفته فارسي است كه اگر برنامه در ويندوزي استفاده شد كه فارسي آن نصب نبود بجاي "جمعه" Friday ننويسد ؟
    فایل های ضمیمه فایل های ضمیمه

  20. #20
    کاربر دائمی آواتار مهدی قربانی
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    تهران
    پست
    2,435

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    سلام
    پاسخ رديف 3 ، در Text3 موجود روي فرم مورد نظر فرمول رو به اين ترتيب بنويسيد :
    ="امروز : " & WeekdayName(Weekday(Now())) & " " & Mid(shamsi(Now());9;2) & "/" & HowMonth(Right(shamsi(Now());5)) & "/" & Mid(shamsi(Now());1;4)

    در مورد سئوال رديف 4 خوب در صورتي كه روي ويندوز فارسي ساز نصب نشده باشه كه فونتها مشكل پيدا مي كنه و درست نمايش داده نمي شه ! ؟
    آخرین ویرایش به وسیله مهدی قربانی : شنبه 04 آبان 1387 در 23:34 عصر دلیل: اصلاح شماره رديفها

  21. #21
    کاربر دائمی
    تاریخ عضویت
    مهر 1385
    محل زندگی
    تهران
    پست
    393

    نقل قول: نحوه استفاده از توابع تاريخ شمسي

    با سلام و تشكر
    1- تشكر از پاسخ به سئوال دوم !
    2- در مورد سئوال اول كه (اصل تاپيك براي آن است) راهي پيدا نشده است ؟
    3- سئوال سوم بصورت پيش‌فرض بيان شد !! بصورت طبيعي تابع WeekDay و ايضاً WeekDayName نام روز هفته را براساس تنظيمات سيستم انجام ميدهد . اگر فرض انگليسي باشد ( به فرض ) ضرورتاً تابع HowDay كاربرد خواهد داشت . بنده هم مد نظرم نحوه استفاده از اين تابع بود .
    4- آيا با وجود اين توابع ، ضروت دارد با ترفند و كدنويسي ( غير از هيجانش ) نام روز هفته يا ماه را بدست آورد ؟ نميشود مانند توابع آقاي آزادي با ذكر ()Dat مشكل را حل كرد ( اگر چه در خط توابعش قابل تغيير است ) ؟
    5- و آيا كسي از آقاي آزادي خبري دارد تا ضمن رعايت كپي رايت مشكل توابعش را رفع نمايد ؟

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

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