PDA

View Full Version : خبر: سیستم تاریخ هجری شمسی در نرم افزار همکاران سیستم



farshid_mi
جمعه 27 اسفند 1389, 22:10 عصر
داستان تاریخ هجری شمسی در نرم اکسس شاید حل شده باشد اما بازهم جای تعمل دارد . از این جهت حل شده است که افرادی (از جمله اینجانب) کدهای VBA محاسبات تاریخ هجری شمسی را در اینترنت به اشتراک گذاشته اند.

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

در ضمن اینکه در یکی از شرکتهایی که من نیز هستم از این روش در BI آنها نیز استفاده شده است .

در همکاران سیستم شما یک Table دارید که در آن :

یک شناسه- تاریخ هجری - تاریخ میلادی - چندمین روز سال- چندمین هفته - چه ماهی - چه روزی - چندمین روز تاریخ میلادی - روز تاریخ میلادی -

آمده است و تمامی محاسبات از روی این جدول و به کمک دستورات SQL انجام می شود مثلا اگر قرار است دو تاریخ از همدیگر کم شوند ابتدا ID آن دو تاریخ پیدا می شود و سپس این ID ها از هم کم می شوند

این جدول تا سال 1394 را در خودش دارد و البته فایل آنرا سعی می کنم که برای دوستان پیوست کنم.

نکته دیگر:
در سیستم تامین اجتماعی که بر اساس اوراکل است نیز مبدل تاریخ برنامه نویسی شده است یعنی بر خلاف همکاران سیستم البته باید تاکید کرد که برنامه آن با PL/SQL نوشته شده و توابع هجری را ساخته اند.

masoud903
جمعه 27 اسفند 1389, 23:58 عصر
آقا منتظر ادامه این بحث هستیم
و فایلی که خیلی مشتاقم زودتر ببینمش

با تشکر فراوان

Zero Defect
شنبه 28 اسفند 1389, 08:43 صبح
سلام

مواردی که در خصوص نحوه تعامل همکاران سیستم با مقوله تاریخ شمسی مطرح شده اندکی مبهم و تا حدودی از دلایل واقعی کاربرد اینگونه جداولی ممکنه به دور باشه , چرا که برداشتهای یک آنالیروز خارجی هستش ( در ادامه هم برداشتهای بنده وجود داره )

میشه با قطعیت عنوان کرد که از شرکت با سابقه ای همچون همکاران سیستم به دوره که فرضا حتی در مخیله خودشون این مورد رو مد نظر قرار داده باشند که بخوان از این جدول به جهت تفاضل دو تاریخ عادی استفاده کنند و یا دیگر مواردی همچون این مبحث ( گو اینکه ممکنه این کاربرد رو هم بشه داشته باشند ولی هدف از طراحی اون نبوده )

در سیستمهای کنترل تولید و نگهداری تعمیرات مقوله تقویم داخلی سیستم مطرح میشه

این تقویم جدای از تقویم های شمسی و میلادی موجود هستش ( تقویمی که همه اون رو رو به عنوان تاریخ سیستم میشناسند ) و در داخل اونها روزهای کاری و تعطیل به صورتی مجزا تعریف میشن تا مورد استفاده این دو سیستم قرار بگیرن
به طور مثال در یک شرکت خاص ممکنه روز یکشنبه به عنوان روز تعطیل و به تبع اون فرضا مبدا برنامه ریزی نگهداری و تعمیرات در نظر گرفته بشه , در شرکتهایی ممکنه توالی و تعداد روزهای تعطیل خیلی متفاوت باشه از اون چیزی که شما تصور اون رو میکنید ( فرضا سالی دو بار و هر بار 15 روز تعطیل میشن )
دوستان حتما با سیستم کنترل پروژه کار کردند , شما در داخل اون میتونید تقویمهایی مجزا رو طراحی کنید و اونها رو به عملیات موجود در داخل پروژه انتساب بدید

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

گو اینکه ایجاد همین اطلاعات هم توسط خود دوستان امکان پذیره و نیازی به جدوال شرکت همکاران سیستم هم ندارید

موفق باشید

farshid_mi
شنبه 28 اسفند 1389, 08:52 صبح
دانلود فایل Table تاریخ در سیستم همکاران با فرمت Excel 2007

farshid_mi
شنبه 28 اسفند 1389, 09:02 صبح
در این سیستم برای روزهای تعطیل هم تقویم جداگانه ای است و تا آنجایی که همکارم که ادمین سیستم هستند به من توضیح داد به جای ذخیره تاریخ در یک فیلد ، ID آن تاریخ در آن فیلد ذخیره می شود. یعنی تمامی مبنای تاریخ بر اساس جدول تاریخ است.

Zero Defect
شنبه 28 اسفند 1389, 09:32 صبح
سلام


همکارم که ادمین سیستم هستند به من توضیح داد

به دو دلیل لطفا بفرمایید در صورتی که مقدور هستش همکارتون در ادامه این مبحث ( البته اگر ادامه ای داشت ) شرکت کنند

1 - ایشون ادمین سیستم هستند ولی طراح سیستم که نیستند , ادمینهای سیستم در داخل شرکتها به افرادی گفته میشه که بیشترین سطح دسترسی رو داشته و این بیشترین سطح دسترسی هیچگونه ارتباطی با امکان دسترسی ایشون به بخش طراحی نداره ( در واقع میشه گفت ایشون هیچگونه دسترسی به این بخش ندارند و بیشترین ارتباطشون تنها در حد دسترسی به جداول ( بدون امکان تغییر در طراحی ) و طراحی گزارشات و صدور مجوزهای کاری برای دیگر اعضا و کاربران شرکت هستش ( اگر غیر از این هست نام شرکت و اسم این دوستمون رو به صورت پیغام خصوصی اعلام بفرمایید تا این مورد رو پیگیری کنم , چونکه همکاران سیستم این مجوز رو صادر نمیکنه )

2 - خوب به هر حال ایشون ادمین هستند و ارتباط با منبع از واسطه بهتره و امکان تبادل مستقیم اطلاعات سریعتر میشه

...............

فکر نمیکردم مقوله این جدول مجبور بشه که توضیحات تکمیلی و خارج از بحث رو براتون توضیح بدم , ولی این موارد رو اگر به صورت اجمالی هم بشنوید بد نیست

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

فرضا اگر کاربر تاریخ سیستم انبار رو جلو ببره و اقدام به صدور رسید و حواله بکنه این تغییر در کل سیستمها ایجاد اختلال میکنه ( معمولا دیگه سیستم اجازه به عقب برگردوندن تاریخ رو نباید بده مگر در مواردی بسیار خاص و اون هم فقط توسط خود ادمینها )
به طور مثال سیستم کنترل تولید و برنامه ریزی نمیتونه در این حالت , امروز اقدام به استفاده از قلم جنسی بکنه که به تاریخ فردا رسید شده چرا که موجودی فعلی صفر هستش , اگر سیستم طراحی شده شما در این حالت فاقد روال کنترلی لازم بوده باشه , کل پروسه محاسباتی دچار خطا میشه ( در این حالت باید امکانی جهت رسید صوری در داخل سیستم در نظر گرفته بشه و .... )

باید سیستم کنترلی به گونه ای بوده باشه که از انجام اینگونه تغییراتی جلوگیری به عمل بیاره و در به وقوع پیوستن بتونه اون رو مدیریت کنه

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

ضمن اینکه یک توضیح : توی سیستمهای همکاران سیستم تقویم پایین افتادنی DropDown Calendar وجود داره

یعنی ادمینتون ( و شما نظرتون اینه ) که اون تقویم پایین افتادنی میاد در موقع ذخیره سازی کد معادل رو در داخل این جدول پیدا میکنه و اون رو در داخل جدول ذخیره میکنه ! و در هنگام فراخوانی مجدد میاد اول کد رو از داخل جدول پیدا میکنه , اقدام به نمایش تاریخ معادل اون میکنه !

اگر این هست , واقعا باید برای همکاران سیستم متاسف شد ( که صد البته متاسف نمیشم چرا که رویه به این صورت نیست , چرا که همکارن سیستم لقمه رو مستقیم میخوره و دور سرش نمی چرخونه )

در هر صورت اگر این صجبت ادامه داشت بهتره دوست ادمینتون در مبحث شرکت کنند و اون هم تنها بیان و بگن که از این جدول در کجاها استفاده شده , اونجوری میشه گفت که این مبحث سمت و سوی آموزشی پیدا میکنه وگرنه اگر قرار باشه که اطلاعات چند سال رو بیایم و بی دلیل ذخیره کنیم هیچ منطقی نداره چرا که PDC قادر به استخراج این اطلاعات هستش ( کد شما رو نمیدونم )

موفق باشید

Zero Defect
یک شنبه 29 اسفند 1389, 08:54 صبح
سلام

در فایل پیوست اطلاعات به کمک PDC (http://cpsd.ir/pdc.asp) تهیه شده و به طور نمونه محدوده 1390 تا 1400 رو پوشش میده , امکان افزودن اطلاعات تکمیلی و با فرمتهای بیشتر نیز امکان پذیره که فایل مذکور تنها گوشه ای از اون رو در برگرفته

ولی همونطوری که گفتم در صورتی که نیازی به تقویمهای داخلی ندارید , نیازی هم به ایجاد اینگونه جداولی ندارید , چرا که این امر از طریق کد نویسی و با سرعت بسیار بالاتر قابل حصول هستش