اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

السلام عليكم ورحمة الله وبركاته ..

أخواني الأعزاء

عندي سؤال أتمنى أن أجل له حل عندكم ..

لدي مجموعة عقارات أقوم بتأجير شقق ومحلات ، يقوم أصحاب المحلات بدفع الإيجارات كل شهر ، فالبرنامج يعتمد بشكل أساسي على الوقت ..

حيث أريد من البرنامج أن يقوم بحساب المبالغ المستحقة (المفروض تحصيلها) من المستأجرين بداية كل شهر ، وذلك عن طريق النظر في عقد الإيجار إذا كان ساري المفعول أم لا (عن طريق النظر في تاريخ انتهاء العقد) .

قمت بعمل الجداول و العلاقات ، ولكن أواجه صعوبة في الاستعلامات ..

أوجو مساعدتي فيها ..

وشكراً (:

Property Management - Copy.zip

قام بنشر

اخي العزيز

بعد الاطلاع على قاعدة بياناتك فان هناك امور غامضة وغير موجودة في الجداول مثل تاريخ انتهاء العقد وانا اعتبرت ان تاريخ الانتهاء هو بعد سنة من تاريخ توقيع العقد وعلية قمت بتصميم استعلام يقوم بحساب واستبعاد العقود التي تم توقيعها قبل اكثر من سنة ثم تم طرح التاريخ الحالي من (الشهر المدفوع) وبالتالي تبين لدينا عدد الاشهر المدفوعة او الغير مدفوعة ثم عمل شرط ليوضح ذلك ستجد كل ذلك في الاستعلام Query 1

ملاحظة: تم تحويل الملف الى امتداد 2003 وذلك كي يقوم باقي الاخوة بتقديم افكارهم والمساعدة باي استفسارات اخرى

Property Management - Copy.rar

قام بنشر

أخي الكريم أسامة

اشكرك على ردك ومساعدتي في حل المشكلة ، وآسف جداً لعدم شرحي البرنامج بشكل وافي وصحيح .

في البداية عندما يقوم أحد المستأجرين بالتعاقد معي ، أقوم بإضافة بياناته في جدول tblCustomer ثم أقوم بعمل سجل جديد في جدول tblRent Apartment وأقوم بإضافة البيانات ، وأضيف رقم المستأجر في حقل Customer No وكذلك باقي البيانات ...

ثم إذا أراد المستأجر الخروج من الشقة وانتهاء العقد (سواء أقل أم أكثر من سنة) أقوم بإضافة سجل جديد في جدول tblReturn Apartment وهو استرجاع الشقة ، وأقوم بإدخال البيانات مثل تاريخ الخروج من الشقة وغيرها ، ثم أذهب إلى العقد المطلوب في جدول tblRent Apartment وأقوم بإضافة رقم الاسترجاع من جدول tblReturn Apartment في جدول الـ tblRent Apartment

بحيث العقد الذي لا يحتوي على رقم Return No يعتبر عقد ساري المفعول ، والعقد الذي يحتوي على رقم الReturn No يجب حساب الفترة من بداية العقد وحتى تاريخ الانتهاء .

وهناك فكرة في بالي ، إذا كان تطبيقها سهل :

أن يقوم البرنامج بحساب الفترة بالشهور من بداية العقد وحتى تاريخ الاسترجاع ثم يقوم بضرب المبلغ بقيمة الإيجار ، حتى يظهر لي القيمة المفروض دفعها ، ثم يطرح منها المبالغ المدفوعة .

أتمنى أن يكون الشرح وافي ، وشكراً (:

قام بنشر (معدل)

أعتقد ان السؤال أو البرنامج معقد بعض الشيء (:

إذا كان الشرح غير مفهوم أو صعب ، أرجوا أن تبلغوني حتى أشرح أكثر

جزاكم الله خير (:

تم تعديل بواسطه GNMQ8
قام بنشر

اخي العزيز

ارجو ان تلتمس لنا العذر في التاخير

الصراحة الوقت قليل وضغط العمل كبير كان الله في العون

على كل حال اعتقد ان الجداول التي قمت بتصميمها كثيرة حيث انه لا داعي لجدول الزبائن على سبيل المثال فكل زبون سيوقع عقد واحد على الاغلب وبالتالي فان اسم الزبون وبياناته ممكن ادراجها في جدول العقود

اقترح عليك ان تنشئ جدول جديد للعقود يرتبط بجدول الشقق ويحتوي على بيانات العقد وبيانات الزبون ويتم وضع مربع خانة ( نعم/ لا) لانتهاء العقد وتاريخ الانتهاء وبالتالي فان عملية التعامل مع البرنامج ستكون اسهل

وبالتالي يمكن عمل استعلام للشقق الفارغة واخر للمؤجرة

بالنسبة لعمليات احتساب المتبقي التي قمت باقتراحها فانها ممكنة

اتمنى لك التوفيق ولا تتردد في طرح اي استفسار

قام بنشر

ألف شكر أخي العزيز أسامة

عسى الله يكون في عونك

بالنسبة لجدول الزبون ، فيوجد عدد لا بأس من الزبائن يوقعون أكثر من عقد ، أو يجددون عقودهم ، حتى لا يقوم المستخدم بإدخال بيانات المستأجر أكثر من مرة ، قمت بوضع جدول خاص للزبائن ويتم الربط بينهم برقم الزبون .

أما بالنسبة لجدول العقود ، قد تختلف التسمية ولكن جدول العقود هو نفسه الجدول tblRent Apartment حيث رقم العقد هو الرقم الأساسي فيه .

قمت بإضافة استعلامين وهم : بعد تشغيل الاستعلامين أدخل SH1

1- المبالغ المستحقة : يقوم بحساب المبالغ المطلوبة على جميع المستأجرين الحاليين ، وفي حال خروج المستأجر يقوم بحساب الفترة من بداية العقد وحتى خروجه بالشهور ثم يضربها بعدد الأشهر حتى يعطيني المبالغ المطلوبة منه .

2- المبالغ المدفوعة : جميع المبالغ المدفوعة من قبل المستأجرين ، ولكن لم أستطع عمل مجموع لكل مستأجر ، أي في حال أن المستأجر قام بدفع مبلغ لشهرين مختلفين ، يعطيني سجلين مختلفين ، تلاحظ هذه النقطة عند فتح الاستعلام يظهر لك اسم المستأجر مرتين في حال أنه دفع مرتين عن شهرين مختلفين .

أرجو أن يكون هذين الاستعلامين نافعين لكم في مساعدتكم لي ..

وأرجو أن تساعدني أخي أسامة في تطبيق العملين الحسابية التي اقترحتها سابقاً ..

ألف شكر على المساعدة (:

وجزاك الله خيراً .

Property Management - Copy (2).zip

قام بنشر

اخي العزيز

في المرفق ستجد عده استعلامات كل واحد منها يعرض لك البيانات بطريقة مختلفة والمبالغ المستحقة يتم حسابها تلقائيا بواسطة حساب عدد الاشهر وقيمة الايجار مطروحا منها المبالغ المستلمة

ارجو منك الاطلاع على المعادلات المستخدمة في الاستعلامات والاستفادة منها وعمل اي استعلام تجدة ضروري لبرنامجك

طبعا التعديل على الملف المحول الى 2003

Property Management - Copy.rar

قام بنشر (معدل)

الله يعطيك العافية

وجزاك الله خير

الصراحة قدمت لي خدمة كبيييرة (:

هذا هو المطلوب بالضبط .

ولكن هناك ملاحظة صغيرة :

الدالة التي تقوم بحساب عدد الأشهر هي هذه الدالة :

Sum((Year(Now())-Year([Start From]))*12+(Month(Now())-Month([Start From])))

ولكن هذه الدالة تقوم بحساب الأشهر فقط في حال العقود سارية المفعول(التي لا تحتوي على Date of Return) ، بحيث أن العقود المنتهية يقوم بحساب الأشهر لها من بداية العقد Start From وحتى تاريخ اليوم Now()

ولكن إذا استطعت عمل جملة شرطية IF :

1- إذا كان يوجد تاريخ انتهاء العقد Date of Return Not Null: يكون عدد الأشهر بطرح التاريخين( Date Of Return - Start From ) من بعض ثم استخراج عدد الأشهر من الناتج .

2- إذا كان تاريخ انتهاء العقد Date of Return يساوي Null : يكون عدد الأشهر يساوي طرح تاريخ اليوم Now() من تاريخ بداية العقد Start From "أي نفس الدالة التي وضعتها بالبرنامج" .

أما باقي البرنامج فتمام التمام ، الله يعطيك العافية .

أتمنى ان لا أكون أزعجتك بكثرة أسئلتي (:

وأكرر شكري ، تسلم .

تم تعديل بواسطه GNMQ8
قام بنشر

الحمد لله تعالى

قمت بعمل طريقة لعمل المطلوب ، وهي عن طريق إضافة Module قمت بإضافة دالة برمجية ، نفس الدالة التي أضفتها ، ولكن عن طريق البرمجة ..

أشكرك على مساعدتي ، الله يعطيك العافية .

تم رفع الملف لتعم الفائدة ..

بالتوفيق (:

Property Management - Copy (2).zip

قام بنشر

اشكرك اخي على رفعك للملف وخصوصا انك استخدمت كود Vba في معادلات الاستعلام حيث ان الكثير لا يستخدم هذه الطريقة بالرغم من فاعليتها

مع امنياتي لك بالتوفيق

  • 6 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information