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

نام تاپیک: سال مالي

  1. #1
    کاربر دائمی آواتار niknam_mh
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    شيراز
    پست
    242

    سال مالي

    سلام دوستان
    اگه يه برنامه حسابداري نوشته باشيم و حالا بخواهيم براش سال مالي بسازيم بايد از کجا شروع کنيم هم در مورد اس کيو ال سرور و هم در مورد کدهاي وي بي دات نت
    لطفا هرکي در موردش مطلبي داره راهنمايي کنه ممنون ميشم.

  2. #2

    نقل قول: سال مالي

    روش هاي زيادي براي اين سناريو وجود داره يكي از روش هاي خوب و اصولي اينه كه شما يك بانك اطلاعاتي خام با ساختار مشخص داشته باشي مثلا Acc.mdf كه توش جداول ثابت و متغيير بصورت خالي تعريف شود (تو اسكيوال ) بعدش تو برنامه براي هر سال مالي يك كپي از ساختار اين بانك با نام جديد مثلا Acc91.mdf براي سال 90 كه در آن جداول ثابت كپي شده و جداول متغير آماده هست وبراي هرسال مالي تو برنامه يك كانكشن استرينگ پويا درست كنيد و در ابتداي برنامه براي ورود سال مالي هم لحاظ بشه

  3. #3
    کاربر دائمی آواتار niknam_mh
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    شيراز
    پست
    242

    نقل قول: سال مالي

    دوستان کسي يه سورس کوچولو برا نمونه داره تا کل مبحث مشخص بشه.

  4. #4
    مدیر بخش آواتار gilsoft
    تاریخ عضویت
    آبان 1386
    محل زندگی
    رشت
    پست
    753

    Post نقل قول: سال مالي

    سلام دوست عزیز

    اگه از بانکهای اطلاعاتی SQL استفاده میکنی ... بهتر است که یک Database داشته باشی (همکاران سیستم از این روش استفاده کرده) و فقط با فیلتر کردن بر اساس سال میتونی به سال مالی دسترسی داشته باشی .. بدین ترتیب که : برای جداول اصلی یک ستون بنام Year ایجاد کنی و فقط عدد سال مالی مورد نظر رو در آن ذخیره کنی و تو Selectها و Viewها و کلا Queryها بر اساس سال مورد نظر اونو فیلتر کنی

    FinancialYear : نام فیلد(ستون) سال مالی

    مثال 1: از تابع BETWEEN برای Query گرفتن بین چند سال استفاده شده ....
    SELECT * FROM AccVoucher  WHERE FinancialYear BETWEEN 1390 AND 1392


    مثال 2 : Query گرفتن از سند شماره 25 مربوط به سال 1392
    SELECT * FROM AccVoucher  WHERE FinancialYear=1392 and VoucherNum=25


    نگران نباش ! SQLSERVER طاقتش بیشتر از ایناست
    قوانین سایت برنامه نویس [به هیچ عنوان از طریق پیام خصوصی به سوالات پاسخ داده نمی‌شود.]
    حمید محرابی

    چون وا نمیکنی گِره‌ای خود گِره مّشو / ابرو گشاده باش چو دستت گشاده نیست

  5. #5
    مدیر بخش آواتار gilsoft
    تاریخ عضویت
    آبان 1386
    محل زندگی
    رشت
    پست
    753

    نقل قول: سال مالي

    سلام مجدد

    درباره نظر دوست عزیزمون nowar1352 بایدعرض کنم که : این روش رو من نمی‌پسندم ! چرا ؟!

    چون برای ایجاد هر سال مالی باید یک Database ایجاد کنیم ... حالا مشکل چیه ؟!

    مشکل اینه که از طرف بخواد برای کارگاه (یا دفتر و یا شرکت و یا ...) خودش 2تا دفتر ایجاد کنه چی ؟! .... این 2 دفتره (یکی رسمی <جهت دارائی> و دیگری اصلی) رو امروزه همه تقاضا مي‌کنند .... اگه به روشی که در پست قبل عرض کردم عمل کنی .. اونوقت برای هر دفتر یک Database خام رو کپی و Add ميکنیم .....

    امیدوارم که تونسته باشم منظورمو برسونم ....

    باز هم اگه سئوالی هست بپرس دوست من .......
    قوانین سایت برنامه نویس [به هیچ عنوان از طریق پیام خصوصی به سوالات پاسخ داده نمی‌شود.]
    حمید محرابی

    چون وا نمیکنی گِره‌ای خود گِره مّشو / ابرو گشاده باش چو دستت گشاده نیست

  6. #6
    کاربر دائمی آواتار niknam_mh
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    شيراز
    پست
    242

    نقل قول: سال مالي

    نقل قول نوشته شده توسط gilsoft مشاهده تاپیک
    سلام دوست عزیز

    اگه از بانکهای اطلاعاتی SQL استفاده میکنی ... بهتر است که یک Database داشته باشی (همکاران سیستم از این روش استفاده کرده) و فقط با فیلتر کردن بر اساس سال میتونی به سال مالی دسترسی داشته باشی .. بدین ترتیب که : برای جداول اصلی یک ستون بنام Year ایجاد کنی و فقط عدد سال مالی مورد نظر رو در آن ذخیره کنی و تو Selectها و Viewها و کلا Queryها بر اساس سال مورد نظر اونو فیلتر کنی

    FinancialYear : نام فیلد(ستون) سال مالی

    مثال 1: از تابع BETWEEN برای Query گرفتن بین چند سال استفاده شده ....
    SELECT * FROM AccVoucher WHERE FinancialYear BETWEEN 1390 AND 1392


    مثال 2 : Query گرفتن از سند شماره 25 مربوط به سال 1392
    SELECT * FROM AccVoucher WHERE FinancialYear=1392 and VoucherNum=25


    نگران نباش ! SQLSERVER طاقتش بیشتر از ایناست
    سلام
    يعني اينکه هيچ وقت هيچ کدوم از تيبل ها بسته نشه و فقط با فيلتر کردن به سالها دسترسي داشته باشيم؟
    من همين کارو ميکنم ولي بعد از يه مدتي حجم تيبل ها بالا ميره و سرعت نرم افزار کم مشه مثلا ما ميخوايم حساب شخصي رو محاسبه کنيم بايد از اولين رکوردي که براي اين شخص ثبت شده فيلتر کنيم تا امروز و اين کار زمان ميبره و باعث کندي نرم افزار ميشه.
    لطفا بيشتر راهنمايي کنيد ممنونم

  7. #7
    مدیر بخش آواتار gilsoft
    تاریخ عضویت
    آبان 1386
    محل زندگی
    رشت
    پست
    753

    Post نقل قول: سال مالي

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

    پیشنهاد من به شما اینه که : از Viewها و خصوصا Indexها استفاده کنی
    قوانین سایت برنامه نویس [به هیچ عنوان از طریق پیام خصوصی به سوالات پاسخ داده نمی‌شود.]
    حمید محرابی

    چون وا نمیکنی گِره‌ای خود گِره مّشو / ابرو گشاده باش چو دستت گشاده نیست

  8. #8
    کاربر دائمی آواتار niknam_mh
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    شيراز
    پست
    242

    نقل قول: سال مالي

    نقل قول نوشته شده توسط gilsoft مشاهده تاپیک
    سلام دوست عزیز

    پیشنهاد من به شما اینه که : از Viewها و خصوصا Indexها استفاده کنی
    دوست خوبم ممنون از جوابهاي خوبتون
    من با view ها کار کردم البته براي گرفتن اطلاعات گروهي ولي در مورد گرفتن اطلاعات تکي(فيلتر کردن براي حساب يک شخص) تا حالا کار نکرده ام
    و در مورد index ها هم هيچ سر رشته اي ندارم اگه امکانش هست در اين موردها راهنماييم کنيد .ممنونم

  9. #9
    کاربر دائمی آواتار niknam_mh
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    شيراز
    پست
    242

    نقل قول: سال مالي

    سلام دوستان
    کسي نيست کمک کنه ؟

  10. #10
    کاربر دائمی آواتار behrooz69
    تاریخ عضویت
    اردیبهشت 1390
    محل زندگی
    Gorgan
    سن
    33
    پست
    469

    نقل قول: سال مالي

    سلام داداش پیروو پ خ هات جوابتو میدم داداشی .

    ببین دوست من ، من با این روش و سال مالی کار نکردم چون برنامه حسابداری کار نکردم .

    ولی جواب دوستم اقای gilsoft تو پست 4 خیلی منطقیه به نظر من .

    سال مالی واسه 2 جا استفاده میشه : 1کیش این که بخوای اطلاعاتتو بر حسب سالت مشخص کنی . 1کیشم واسه طبقه بندی داده هاته .

    ولی اگه هم رکورد هات همشون یجا باشن با یه دستور سلکت ساده میتونی اینکارو انجام بدی که چه سالی ، چه ماهی ، چه شماره فاکتوری ، چه روزی رو واسه گزارش بگیره یا نشون بده همش با 1 تکس باکس و یه کمبو باکسه .

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

    هر برنامه ای وقتی واردش میشی مثل مهک بالا سمت راست 1 کمبو باکس داره که توش سال مالی هست . از مثلا 1390 تا 1400 . مثلا میگم .

    با انتخابش سال برنامت به اون سال میره . این روشش چیه ؟؟ هیچی به خدا فقط یه Create Table سادست .

    تو اجرای برنامه میاد چک میکنه که تو چه سالی هستیم حالا با proc شخصی یا موجود تو بازار ( تقویم فارسی ) . بعد میاد واست بر حسب سال جدیدت 1 Table میسازه تو دیتابیسش . و اطلاعات جدید رو میریزه تو تیبل جدید .

    همه اینکارا یه جورایی کلک رشتیه .

    شما هم بیا واسه هر سال مالیت 1 تیبل بساز که هم تفکیک کنی . هم کارت تو سرچ و حذف و بکاپ و ریستور و ... راحت باشه . هم کنترل کنی .هم همه مدیریت های کار آمد چون تفکیک شدس .

    هربارم که کاربر خواست برگرده به سال قبل یا جدید فقط با چند تا شرط و 1 کمبو باکس اینکارو انجام میدی .

    به نظر من بهترین سناریو هستش . بازم نظر با اساتید برنامه نویسیه .

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

    نقل قول: سال مالي

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

  12. #12
    مدیر بخش آواتار gilsoft
    تاریخ عضویت
    آبان 1386
    محل زندگی
    رشت
    پست
    753

    نقل قول: سال مالي

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

    هیچ مشکلی نیست

    فقط یه نکته که : برای همچین حجمی ( از لحاظ تعداد رکوردها ) دیگه نباید از SqlExpress استفاده کرد ! حداقل باید از Sql Enterprise استفاده کنی ...
    قوانین سایت برنامه نویس [به هیچ عنوان از طریق پیام خصوصی به سوالات پاسخ داده نمی‌شود.]
    حمید محرابی

    چون وا نمیکنی گِره‌ای خود گِره مّشو / ابرو گشاده باش چو دستت گشاده نیست

  13. #13
    کاربر دائمی
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    همه جای ایران سرای من است
    سن
    41
    پست
    190

    نقل قول: سال مالي

    سلام
    این روش که بازای هر سال مالی یک جدول ایجاد گردد کار اشتباهی است چون کار غیر اصولی است و باعث ایجاد مشکلاتی می شود از جمله مشکل در جستجو و بررسی وجود رکودهای مرتبط و نیز مشکل در تهیه گزارشات : مثلا اگر بخواهید یک گزارش از گردش یک حساب یک شخص ، از تاریخ 89/01/01 تا 92/11/27 (که در چند تا سال مالی جداگانه است) تهیه کنید این امکان فراهم نمی شود!

    روش درست این است که یک فیلد سال مالی در جدول مربوطه داشته باشی و سال مالی جاری را در آن فیلد ذخیره کنید.
    توضیح اینکه روش چند جدولی بیشتر باعث اتلاف منابع و سرعت می شود.
    اگر حجم رکوردها زیاد است که نمایانگر وسعت بالای کار شرکت است سعی گردد از طریق ارتقاء سخت افزار ، مشکل برطرف شود که هزینه آن نباید برای شرکتی با این حجم کار خیلی مهم باشد همچنین مبنای کارت نیز این باشد که تا جای ممکن از لود کردن تعداد زیادی رکورد جلوگیری شود.
    آخرین ویرایش به وسیله مهدی د : پنج شنبه 01 اسفند 1392 در 16:35 عصر

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

    نقل قول: سال مالي

    نقل قول نوشته شده توسط مهدی د مشاهده تاپیک
    سلام
    این روش که بازای هر سال مالی یک جدول ایجاد گردد کار اشتباهی است چون کار غیر اصولی است و باعث ایجاد مشکلاتی می شود از جمله مشکل در جستجو و بررسی وجود رکودهای مرتبط و نیز مشکل در تهیه گزارشات : مثلا اگر بخواهید یک گزارش از گردش یک حساب یک شخص ، از تاریخ 89/01/01 تا 92/11/27 (که در چند تا سال مالی جداگانه است) تهیه کنید این امکان فراهم نمی شود!

    روش درست این است که یک فیلد سال مالی در جدول مربوطه داشته باشی و سال مالی جاری را در آن فیلد ذخیره کنید.
    توضیح اینکه روش چند جدولی بیشتر باعث اتلاف منابع و سرعت می شود.
    اگر حجم رکوردها زیاد است که نمایانگر وسعت بالای کار شرکت است سعی گردد از طریق ارتقاء سخت افزار ، مشکل برطرف شود که هزینه آن نباید برای شرکتی با این حجم کار خیلی مهم باشد همچنین مبنای کارت نیز این باشد که تا جای ممکن از لود کردن تعداد زیادی رکورد جلوگیری شود.
    منم میخواستم همینو بگم یه فیلد سال مالی مشکل رو حتما حل میکنه

تاپیک های مشابه

  1. انتخاب سال مالي پيش فرض
    نوشته شده توسط smakhavan در بخش Access
    پاسخ: 5
    آخرین پست: دوشنبه 24 آبان 1389, 11:00 صبح
  2. سوال: سال مالي به وسيله يه فيلد اضافه
    نوشته شده توسط s_mokhtari در بخش SQL Server
    پاسخ: 21
    آخرین پست: پنج شنبه 01 مهر 1389, 09:18 صبح
  3. خطا هنگام افتتاح سال مالي جديد از روي فايل Backup
    نوشته شده توسط ali_najari در بخش VB.NET
    پاسخ: 4
    آخرین پست: چهارشنبه 13 مرداد 1389, 10:29 صبح
  4. سوال: تعيين سال مالي
    نوشته شده توسط Fatollah_ghazi در بخش Access
    پاسخ: 4
    آخرین پست: جمعه 07 خرداد 1389, 22:18 عصر
  5. سوال: ايجاد سال مالي
    نوشته شده توسط HAMRAHSOFT.IR در بخش SQL Server
    پاسخ: 4
    آخرین پست: دوشنبه 27 اردیبهشت 1389, 18:06 عصر

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

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