# مهندسی نرم افزار > مباحث مرتبط با مهندسی نرم‌افزار > تحلیل و طراحی نرم افزار > سوال: آموزش ساخت نرم افزار حسابداری

## hosseinkh

کسی میتونه کتابی یا مقاله ای بهم معرفی کنه که بتونم یه نرم افزار حسابداری.. هرچند ساده و کوچک... طراحی کنم ؟!

لطفت کمک کنید :خیلی عصبانی:  :گریه:  :گریه:  :خیلی عصبانی:

----------


## Nima NT

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

----------


## hosseinkh

ممنون میشم دوستان کمک کنند....
یه پروژه میخوان بهمون بدن !
من که هیچ نمیدونم باید از کجا شروع کن . از چی استفاده کنم .؟!

لطفا کمک کنید :گریه:

----------


## mina.net

> لطفا کمک کنید


1- قبل از همه نباید گریه کنی(استقامت)
2- حتما باید با یک حسابدار خوب مشورت کنی اگه این حسابدار یک کم برنامه نویسی هم بدونه بهتره.
3- به این سایت سر بزن یک سایت حسابداری هست من اونجا یک تاپیک ایجاد کردم با عنوان تجریه و تحلیل ساخت یک نرم افزار

اگه حوصله داشته باشی خیلی چیزها اونجا یاد می گیری. برای من خیلی مفید بود. و اگر هم منتظر هلو برو تو گلو هستی چیزی پیدا نمی کنی.

----------


## HDDSoft2001

با سلام

  من پارسال یک برنامه حسابداری خفن برای موبایل فروش ها نوشتم بصورت سه لایه برنامه نویسی با سی شارپ و اسکیو ال سرور 2005 و تمام دستورات با sp و یک سیستم حسابداری دولایه بود. خلاصه خیلی روش کار کردم. (بابام در آمد  ولی چیز واقعا درستی شد. بدون اغراق)
در ضمن از هیچ ویزاردی هم برای برنامه استفده نکردم(برای تولید کد) و سعی کردم کاملا بهینه باشه.

پشنهاد اول : برنامه خیلی سنگینه بطوری واقعا پشیمون میشی که اصلا بی خیالش بشی و بری به تعطیلات تو بغداد (یا هر جای دیگه). پس بی خیال شو.(جدی میگم)

پشنهاد دوم : اگه بخوای بنویسی حتما با چند نفر بنویس. (وگرنه به سرنوشت پیشنهاد اول دچار میشی یا خیلی طول میگه البته بازم به خودت بستگی داره)

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

طریقه نوشتن : 


**  ابتدا باید یسری مفاهیم حسابداری رو یاد بگیری مثل سرفصل که ما برای هر سر فصل (حساب) یک کد تولید می کنیم و معمولا بصورت سه رقمی هست.
020 = بانک 
100 = مشتریان
040 = اسناد دریافتنی

سرفصل های مهم و پایه : 

*صندوق  : پول های نقد به این حساب می رود.  یعنی اگه پول نقد گرفتی سرفصل کل  اونو باید این سرفصل باشه.

*اسناد در یافتنی : چک ها - حواله ها و خلاصه هر چیزی که معادل یه کاغذ برابر پول هست و دراینده به پول تبدیل می شود که سیستم شما دریافت می کند به این حساب می رود.

*اسناد پرداختنی : مانند اسناد دریافتنی و اسنادی که شما می دهید. مثل کشیدن چک.
*خرید : هر چی خریدیم به این حساب می رود.
*فروش : هر چی بفروشیم به این حساب می رود.
*مشتریان : اشخاص که به/از  آنها  خرید/فروش می کنید.
*بانک : دریافت و پرداخت از حساب های بانکی.
*هزینه : هزینه مثل اجاره مغازه - خسارت ناشی از تعمیرات - قبوض آب/برق/گاز
*درامد : تعمیرات - فلش گوشی و ...



**  آشنایی با دفاتر کل - معین و تفضیلی
که اگه برنامه این سه تا قسمت را داشته باشد یعنی سه لایه (حسابداری) است.
وقتی میگیم یه حسابداری دولایه هست یعنی مثلا ما یک گروه(سرفصل) به نام گوشی تعریف میکنیم و سپس زیر گروهایی(سرفصل) مثل گوشی سونی - گوشی نوکیا - گوشی سونی اریکسون و ... ایجاد می کنیم. و میتونیم این رو تعمیم بدیم.
که در سیستم های بزرگ تا سه لایه هست ولی معمولا با دولایه کار می کنند.

که دفتر کل همون گروه اصلی (در مورد مثال ما) گوشی  و  دفتر معین زیر مجموعه های آن مثل گوشی نوکیا و گوشی سونی و ... .  و تفضیلی هم متونه زیر مجموعه دفتر معین باشه مثلا گوشی نوکیا 6600 - گوشی نوکیا 6630 و ... .

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

فروش گوشی های 6600 را در این ماه بده : 
  کافی است در جدول ثبت دنبال رکورهایی با کدتفضیلی (سرفصل) گوشی 6600 را با بازه تاریخ مربوطه فیلتر کنی و ستون بستانکار را با هم جمع کنی.

حالا اگه گفتن فروش کل گوشی ها چقدره :
    کافی است در جدول سند دنبال رکوردهایی با کد کل (سرفصل) گوشی را فیلتر کنی و ستون بستانکار شون را با هم جمع کنی.


+ شاید یه سوال برات پیش بیاد که چرا ستون بستانکار را جمع کردیم. جواب در قسمت بلافاصه بعدی.




** ماهیت حساب:  هر سرفصلی یا همیشه بدهکار است یا بستانکار و یا هر دو. خب این یعنی چی ؟ 

مثلا شما قبض اب را بصورت نقدی پرداخت می کنید. سندی که در سیستم حسابداری شما می خورد بصورت زیر است. 

سرفصل               -                      بد                             -                     بس
هزینه - قبض آب                            x
صندوق                                                                                              x

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




** سند : هر اتفاقی (هر خرید - فروش - دادن - گرفتن چک - پول و ... ) باید یه جایی ثبت بشه که فرمت آن بصورت زیر است.

سرفصل       -       تاریخ     -          توضیحات            -       بد            -           بس

مثلا 

خرید              22/04/88     خرید به آقای کاظمی               X                       0

از طریق این سنده که طرف میفهمه چیکار کرده.





** بدهکار و بستانکار :  یعنی یک طرف بدهکار و یک طرف بستانکار می شود.
   ببین هر کسی (سرفصل) که پول می گیره (صرف نظر از موجودیتش) می شود بدهکار و هر کسی که پول می دهد می شود بستانکار.

مثلا      شما کالایی را به مشتری با مبلغ x می فروشد.

سندی که می خورد بطورت زیر است:


سرفصل                           بدهکار                                          بستانکار 
--------------------------------------------------------------------------------------------
مشتری                              x                                                   
فروش                                                                                       x

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


حالا اگر مشتری پول بدهد سندی که می خورد بصورت زیر است.

سرفصل                           بدهکار                                          بستانکار 
--------------------------------------------------------------------------------------------
صندوق                               x
مشتری                                                                                     x                                                  
چون مشتری پول می دهد پس مشتری بستانکار می شود و چون ما (در حسابداری پول نقد وارد دخل یا اصطلاحا صندوق می شود) پول می گیریم ما بدهکار می شویم.


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

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

جدول سندتو این جو طراحی کن بقیش چرته دیگه :

ID - strColMoein - DateSanad - Bed - Bes - Comment
نوع هر فیلد هم معلومه دیگه
در ضمن نوع ستون strColMoein  هم استرینگه که برای هر بخش (لایه) سه رقم اضافه کن.
در موقع گزارش گرفتن با substring میتونی کدلایه مورد نظرتو در بیاری و فیلترش کنی.

بسته دیگه خسته شدم! :اشتباه: 

ختم کلام 

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

فکر کنم یک ساعتی هست که مینویسم
راستش من آدمی نبودم که زیاد جواب بدم (به خاطر وقتم) ولی نمی دونم چرا این همه مایه رفتم!!! (البته نمیخواهم خدای ناکرده منت بذارم ها.) ولی خوب زکات علم نشر آن است دیگه.

خلاصه نمیدونم مفید یا نه و من همینو تونستم بنویسم دیگه ببخش ما را. :خجالت: 

با تشکر  :لبخند:

----------


## shakilman

آقاجان كارت درست 
دست و پنجه ات درد نكنه :تشویق:  :تشویق:  :تشویق:  :تشویق:  :تشویق:  :تشویق:

----------


## منصور بروجرديان

با سلام 
قبل از هر كاري براي طراحي و برنامه نويسي نرم افزارهاي حسابداري توصيه مي كنم 
يه سري به وبلاگ ( مرجع حسابداران حرفه اي ايران ) بزنيد و از مطالب آموزنده آن كمك بگيريد .
آدرس اين وبلاگ :

http://www.padideh4.blogfa.com

----------


## msbmsb

با سلام و خسته نباشید به دوستان عزیز :
بنده توصیه اولم اینه که هر شخص هر سیستم حسابداری که می خواهد طراحی بکنه ابتدا با نرم افزار های مشابه کمی آشنا بشه حداقل 3-4 هفته مستمر کار بکنه که بتونه سند بزنه و گزارش مالی بگیره .
بعد بیاد و ببینه مشتری از حساب و کتاب چه می خواهد ( هدفش چیه ؟؟!!! )
مفاهیمی که دوستمان نوشته بود را حتما باهاش در سطح کاربردی آشنا بشه :
الف ) حساب های ماندگار  ، ب ) حساب های درآمد پ ) هزینه ها ، ت ) داراییها ، ث ) اسناد ،ج ) حسابهای انتظامی و ...
نکته مهم دیگه تشخیص سیستم حسابداریه که کمتر مورد توجه قرار میگیره :
* چه مدل حسابداری : حسابداری معمولی ( کل و معین ) گردش نقدی ، حسابداری و انبار ( چندین مدل 
است آن هم ) ، حسابداری صنعتی و ... 

آماده مشاوره با هریک از دوستان هستم . ( برای تحلیل سیستم )

با آرزوی موفقیت برای دوستان عزیز

----------


## tick-tock

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

----------


## farshadh

سلام به دوست عزیز
من دانشجوی حسابداری ام
اگر در زمینه حسابداری مشکلی دارید بفرمائید در خدمتتونم
من با دهها نرم افزار حسابداری کارکردم که به نظر من هلو از همه بهتر است
به شما توصیه می کنم که چند هفته با نرم افزار هلو نسخه جامع کار کنید سپس  اقدام به طراحی نرم افزار حسابداری کنید
هلو پرطرفدارترین نرم افزار حسابداری در ایران است اما بهترین نیست
بهترین نرم افزار حسابداری ایران نرم افزار حسابداری همکاران سیستم است که  اگر بخواهید نسخه جامع آن را خریداری کنید با هزینه پشتیبانی اش نزدیک به  60,000,000تومان می شود
خلاصه بعد از نرم افزار هلو نرم افزار رافع طرفدار زیادی دارد
برخی ها معتقدند که هلو از رافع بهتر است و برخی هم عکس این قضیه را قبول  دارند
من با نرم افزار هلو بیشتر از رافع کار کردم و فکر می کنم که نرم افزار هلو  بهتر باشد
پس به شما هم توصیه می کنم که اول با نرم افزار حسابداری هلو کار کنید بعد  اقدام به طراحی نرم افزار کنید
هر کمکی هم که باشه بنده در خدمت هستم
با تشکر

----------


## etanha

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

----------


## reza_shoaee

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

----------


## Ring Eshgh

با سلام و خسته نباشید

من یک سناریو کامل و جامع در خصوص موارد زیر می خوام ممنوم می شم کمکم کنید.

در حوزه مالی
مدیریت مالی و حسابداری  مدیریت وجوه
  مدیریت اموال و دارایی ثابت
  مدیریت سهام
  صورتهای مالی اساسی
  حسابداری ارزی
  حسابداری تجمیعی و تلفیقی

در حوزه اداری
اتوماسیون اداری
 مدیریت دبیرخانه
  مدیریت کارگزینی
  مدیریت حقوق ودستمزد

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


با تشکر

----------


## siavash.elyasiyeh

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

----------

