الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الرقابة علي المشتريات

بدأه عامر ابو مصعب في 21 مارس 2013 · 38 رد · 3,668 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله والحمد لله والصلاة والسلام علي رسول الله

احبتي في الله

في اثناء عملي لاحظت مشكلة تؤرق الادارة المالية وتخص المشتريات الا وهي

عند شراء الصنف س بالسعر ص يتم مراجعته من الحسابات لمعرفة المورد وطبعا طلب الشراء من الوحدة الطالبة وبالتأكيد موافقة الطالب علي ان المشتريات مطابقة للمواصفات  واخيرا ما يفيد توريدها لمخازن الشركة ثم يتم تسوية المبالغ التي تم الشراء بها لقسم المشتريات كل ده زي الفل لكن ظهرت مشكلة وهي ارتفاع بعض اسعار المشتريات وكان السؤال الاصناف دي اشتريناها اخر مرة بكام  ؟؟؟؟ واخينا اللي بيسجل شغل المخزن رجع لكارت الصنف ووجد ان السعر السابق اقل من السعر الجديد بحوالي 40%  وهنا تم توجيه سؤال لمراقبة حسابات المخازن

ليه لما السعر اتغير بالشكل ده مقلتش ؟؟؟؟؟

وكان سؤال مراقب حسابات المخازن ازي اعرف اصلا ان السعر اتغير حيث انه يعمل علي برنامج لا يظهر اخر سعر شراء كمان مش معقول يلاحظ كل صنف خاصة وان فيه 4 مخازن فيها اصناف مختلفة واصناف متشابه واجمالي الاصناف حوالي 50000 صنف ؟؟؟؟

 

وكان الجواب كالتالي

اولا :- يتم عرض اخر سعر في شاشة ادخال الاصناف عند الاضافة (ادخال سند الاضافة)

ثانيا :- بمجرد ادخال السعر الجديد البرنامج يقوم بعمل مقارنة بين السعر الجديد والسعر السابق واذا وجد الانحراف بين السعرين تجاوز 10% مثلا يعطي رسالة تفيد ان الانحراف قيمته كذا  وتطلب منك التأكد انك تضيف في الصنف المناسب وان الوحدة مظبوطه لان ممكن تكون اخر مرة اضفت الكرتونة بـ 1000 والمرة دي بتضيف بالعلبة بسعر 100ج مثلا

 

كدة تمام ازاي ننفذ ده بشكل عملي

 

اليكم المرفق

 

جرب وادعو لي ولوالدي وللمسلمين بالعفو من الله

 

 

 

النقل للرفع.rar

2

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#2

مساء الخير اخي عامر ابو صعب


نزلت المرفق ولم  يعمل لدي علما اني استخدم


اوفس 2003


img_468_60.gif
#3

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي العزيز وليد

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

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

تفضل المرفق

ولكن يفضل استخدام اوفيس 2010

 

النقل للرفع.rar

−1

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#4

السلام عليكم

الاخ المحترم

عامر ابو مصعب

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

سلمت يداك مجددا واذا كان لديك المزيد في هذا الموضوع وغيره فأرجوا ارفادنا به، وعسى الله ان يجعلها في ميزان حسناتك.

شكرا وتحياتي

أخوك صفاء

تم تعديل هذه المشاركة بواسطة salit في 26 مارس 2013 في 19:53

1
#5

استاذي العزيز

اشكرك على تلك الافكار الرائعة 

ارجو المساعدة لتشغيل البرنامج على الاوفس 2003

مع الشكر الجزيل

#6

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي الحبيب salit  وعليكم السلام ورحمة الله وبركاته  لك الف تحية وبارك الله فيك 

اخي  الحبيب alwa7eed لا شكر علي واجب وبارك الله فيك

واليك المرفق للعمل علي 2003

النقل للرفع.rar

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#7

ما شاء الله رائع

ارجو اذا تكرمت شرح كيفية اظهار اخر  سعر 

وهل استطيع ان اظهر ايضا اعلى سعر تم شراء المادة به 

مع الشكر الجزيل

#8

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي الحبيب

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

 

يتم عرض اخر سعر بوضع مربع نص غير منضم وكتابة الكود التالي بداخلة مع مراعاة اسماء الجداول والحقول واختلافها من مثال الي اخر

 

 

=IIf(IsNull(DLast("[UNIT-PRICE-add]";"[EZN-SARF-ASNAF]";"[SANF-NAME]= 
[sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] 
<>0"));0;DLast("[UNIT-PRICE-add]";"[EZN-SARF-ASNAF]";"[SANF-NAME]= 
[sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] 
<>0))

 

ولشرح الكود

نستخدم الدالة DLAST والتي مهمتها البحث عن سعر الوحدة المضافة UNIT_PRICE_ADD في جدول العمليات EZN_SARF_ASNAF  بشرط ان يكون كود الصنف في الجدول  الذي سيتم البحث عن اخر رصيد له مطابق لكود الصنف في النموذج   [sANF-NAME]= [sanf-cod]

ايضا في جدول العمليات توجد عمليات صرف وارتجاع للمخزن وارتجاع للمخزن وصرف عهد وكل هذه العمليات ستكون الكميات المضافة في الريكورد الخاصه بها خالي NULL اذا  يجب اضافة شرط اخر وهو الا تكون الكمية =NULL كما يلي  [QUNTITY-aded] <> NULL  ]  

وقد يلاحظ هنا انني اعتمدت علي الكمية وكان من المنطقي الاعتماد علي كود اذن الاضافة الا يكون خالي  ( اقول ذلك ممكن جدا  جرب واكتشف )

ايضا يجب الا تكون الكميه المضافة = صفر AND  [QUNTITY-aded] <>0

 هنا يأتي السؤال ماذا لو انه بعد البحث وجد ان قيمة السعر خالية =NULL

لذلك استخدمت الداله IF  مع ISNULL فيقوم الاختبار كما يلي

اولا :- اذا وجدت السعرخالي "وذلك بعد جميع الاختبارات السابقة طبعا " فقم بكتابة اخر سعر يساوي 0 وذلك لانه عند بداية تعريف الاصناف لايكون لها سعر مسبق او قد يكون هناك صنف اضيف ولم تصل فواتيره  .........الخ

IIf(IsNull(DLast("[uNIT-PRICE-add]";"[EZN-SARF-ASNAF]";"[sANF-NAME]= [sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] <>0"));0

ثانيا :- اذا قمت بالاختبارات السابقة ووجدت قيمة في السعر فقم بكتابتها علي انها اخر سعر 

((DLast("[uNIT-PRICE-add]";"[EZN-SARF-ASNAF]";"[sANF-NAME]= [sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] <>0"

 

واليك اخي الحبيب اعلي سعر وكمان اقل سعر وذلك باستبدال الدالة DLAST بالدالة DMAX لاعلي سعر والدالة DMIN لاقل سعر

 

ايضا اخي الحبيب يمكن تعديل طريقة العمل جذريا فبدلا من احتساب  مجموع الكميات المضافة وتخزينها في حقل خاص بها في جدول الاصناف يمكن استخدام الدالة DSUM  للحصول علي مجموع الكميات المضافة من كل صنف مع ملاحة ان الجمع سيكون علي الكميات وليس علي السعر كما بالكود التالي

=IIf(IsNull(DSum("[QUNTITY-aded]";"[EZN-SARF-ASNAF]";"[SANF-NAME]= [sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] <>0"));0;DSum("[QUNTITY-aded]";"[EZN-SARF-ASNAF]";"[SANF-NAME]= [sanf-cod]  AND  [QUNTITY-aded] <> NULL AND  [QUNTITY-aded] <>0"))

 

بالتوفيق اخي

النقل للرفع.rar

تم تعديل هذه المشاركة بواسطة عامر ابو مصعب في 18 أبريل 2013 في 13:26

1

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#9

بارك الله فيك ما شاء الله

احببت ان اشكرك قبل ان اقوم بتنزيل المرفق

الى الامام استاذي الحبيب

#10

PURCHASE.rarاستاذي الحبيب 

ارجو اذا تكرمت الاطلاع على المرفق 

وكيف اعالج عدة مواضيع منها المجموع واعلى سعر واقل سعر والرصيد

مع شكري وامتناني لك مسبقا 

تم تعديل هذه المشاركة بواسطة alwa7eed في 21 أبريل 2013 في 10:27

#11

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي الحبيب

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

لعلك لم تطلع علي المرفق ففيه معالجة جميع المشاكل التي تحدثت عنها في مرفق ليس عليك الا فتح الاكواد وتغيير اسماء الجداول والحقول

 

وابدا علي بركة الله واذا توقف امامك شئ انا تحت امرك

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#12

استغفر الله بالفعل قمت بتنزيل المرفق مسبقا 

وارجو ان لم يكن عندك مانع ارجو المساعدة على ملفي المرفق 

اذا سمحت واذا كان وقتك لا يسمح اعذرك وهذا من سوء حظي

لك كل احترام وتقدير 

وبالفعل انا بحاجة ماسة لايجاد الحلول عندي

#13

هل هناك مشكلة لو قمت حضرتك بتعديل المرفق 

وارسال نسخة معدله 

#14

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي الحبيب

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

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

وذلك لابد سيكون اكثر افادة لك واذا توقف شئ فلا بأس سنناقشة  فهذا قصدي كما اني ارجو ان تعذرني لضيق الوقت

تم تعديل هذه المشاركة بواسطة عامر ابو مصعب في 21 أبريل 2013 في 14:44

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#15

اشكرك اخي الحبيب 

استاذي انا لا اشك باي واحد في هذا المنتدى الرائع 

على العكس انتم اساتذتنا الاكارم 

ولكن يوجد عندي ضعف في موضوع الكود 

وانا فعلا بحاجة لهذا البرنامج في الوقت الحاضر 

سانتظر  مع شكري ودعائي لك ان شاء الله 

#16

بسم الله والحمد لله والصلاة والسلام علي رسول الله

اخي الحبيب

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

 

نبدأ بسم الله

1- بالنسبة لجميع النماذج قم بتغيير الخاصية navigation buttons الي   no

2- سيتم البحث عن أي طلب من خلال compo تم انشاء واحد لاعطاء الطلبات المنتهية والاخر لاعطاء الطلبات التي لا تزال قيد التنفيذ ويمكن اظهار كل compo مع المستخدم المناسب حسب صلاحيات كل مستخدم

3- كما تم وضع امر لعمل refresh للنموذج عند دخول الـ compo لتحديث بيانان النموذج

4- الان يتم ضبط فتح النموذج بحيث يكون خالي ومستعد لاستقبال طلب جديد وذلك من خلال وضع كود في حدث on load

5- تم بفضل الله معالجة اعلي سعر واقل سعر ومجموع الاضافات (المشتريات) لكل صنف

6- تم حساب المجاميع والضرائب والصافي واظهار المجموع بشكل نص

 

7- الفضل لله وحدة ومن باب من لم يشكر الناس لم يشكر الله فالفضل بعد الله لإخواننا في منتدانا الجميل الذين لم يبخلوا بما عندهم

8- تفضل المرفق يا اخي

PURCHASE.rar

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#17

استاذي الفاضل 

اتمنى ان اجد كلمة اكبر من شكرا 

ولكن علمنا الرسول عليه السلام 

ان من اراد ان يكرم اخاه فليدعوا له في ظاهر الغيب 

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

اشكرك اخي الحبيب واعدك ان اطلع على المثال بشكل صحيح وكامل 

بارك الله فيك وغفر لي ولك ولوالدينا والمسلمين

 

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

اعذرني اخي الحبيب على كثرة الاسئلة ولكن اسلوبك ما شاء الله بتوصيل المعلومة رائع جدا

بارك الله فيك 

تم تعديل هذه المشاركة بواسطة alwa7eed في 22 أبريل 2013 في 12:07

#18

اخي ماذا تريد ان يعرض التقرير ؟؟؟؟؟؟؟

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#19

استاذي الحبيب 

لقد راجعت الكود لاضهار اعلى سعر ووجدت خقل 

جديد اسمه [itmco_itmd1]

مخفي ما فائدة هذا الحقل

 

=DMax("[untprice]";"[orderd]";"[itmcod]=[itmcod_itmd1]")

اما ما اريد من طباعة جميع الحقول بطلب الشراء

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

تم تعديل هذه المشاركة بواسطة alwa7eed في 22 أبريل 2013 في 14:41

#20

استاذي العزيز

لقد قمت بتغير شيء 

وهو ان ليس كل المشتريات عليها ضريبة

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

واذا كان هناك ضريبة اضع في الحقل النسبة فيقوم بضربها في المجموع 

فيعطيني  قيمة الضريبة وبعدها يقوم بجمعه مع المبلغ الاجمالي

احببت ان اخبرك استاذي الحبيب بهذا التغيير

لك كل احترام وتقدير

#21

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

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

 

اما ما تريد طباعته فمما فهمت انك تريد طباعة الطلب وهذا لا يحتاج من الي تقارير فيمكنك طباعة النموذج مباشرة كم بالمرفق

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

PURCHASE.rar

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#22

اشكرك استاذي ولكن ارجو ان تعذرني

هل حضرتك الذي اوجدت هذا الحقل 

اين مصدر هذا الحقل اي كيف ارتبط بحقل الكود

اعذرني اتمنى ان استوعب بدون ان اتعبك ولكن لا فائدة

اذا كان بالامكان توضيح ذلك بشكل اعمق

مع شكري وامتناني

اما بالنسبة للجدول فهو جدول orderd

هذا الجدول الذي يتم التخزين فيه

للمرة الثانية ارجوك ان تعذرني 

فعلا اريد ان افهم ما عملت ولك الشكر الجزيل

iitmcod_itmd1 كيف تم ايجادة 

لم استوغب هذه النقطة 

تم تعديل هذه المشاركة بواسطة alwa7eed في 23 أبريل 2013 في 09:12

#23

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

 

بالنسبة للحقل الذي تريد معرفة مصدرة وكيف تم ايجاده   iitmcod_itmd1  اقول علي بركة الله

تلاحظ اخي ان جدول العملبات يحتوي علي جميع الاكواد لجمبع الاصناف تمام

المطلوب ان بتم البحث في الجدول عن صنف معين لاجراء الحسابات عليه وليكن 100100 مثلا

اذن ما هو المرجع الذي سيتخذه محرك البحث للمقارنه (كود الصنف في النموذج  ) تماااااااااااام  لكن النموذج مصدرة اصلا جدول العمليات وهنا تأتي المشكلة فلا يمكن عمل محرك البحث في جدول اعتمادا علي قيمة مقارنة في نفس الجدول   اذا ما الحل ؟؟؟؟؟؟

الحل :- ايجاد قيمة تنتمي لمصدر اخر(جدول اخر ) يتم المقارنة بناء عليها وهنا نسأل اين الجدول الذي يحتوي علي نفس الحقل كود الصنف (itmcod)

الاجابة ببساطة جدول الاصناف (itmd)  اذن كيف يتم ذلك عمليا ؟؟؟؟؟؟؟

الامر بسيييييييييييييييييييييط جدا انك تقوم بسحب حقل الكود من الجدول المذكور وافلاته داخل النموذج وهنا سيظهر معالج الاكسيس يطلب منك تحديد نوع العلاقة هل هي قائمة علي الكود بين الجدولين ام علي الاسم  نقوم علي بركة الله باختيار الاول (علي كود الصنف)

بعد ذلك نقوم بكتابة الاكواد فتجد انها تعمل بسلاسة وبدون مشاكل

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


#24

لقد حاولت كثيرا ولم تتم العميلة

واجو ان انوه هنا الى انني غيرت مصدر النموذج 

واصبح من استعلام وليس من جدول مباشرة 

واذا لاحظت حضرتك ان الاقام في الخانات التي عليها 

اي جمع لا اجدها في الجدول 

ارجو ان يتسع صدرك لكثرة اسئلتي 

رحم الله ابائنا وامهاتنا والمسلمين اجمعين

 

PURCHASE1.rar

#25

اخي الحبيب

 

ارجع الي المثال الذي قمت انت بإرفاقه اول الامر

ونفذ كما بالصورة التالية

 

h0E00.gif

 

افتح النموذج في وضع التصميم

1- افتح نافذة ادراج الحقول كما في رقم 1

2- قم باختيار جدول الاصناف واختر الحقل كود الصنف كما بالصورة 2

3- قم بسحب الحق وأدراجه عند رقم 4

4- ستظهر لك النافذة رقم 3

5- اختر الاختيار الاول واضغط موافق

*************

اما بالنسبة لعدم ظهور الحقو المحسوبة في الجدول فهذا لأنها حقول محسوبة من القيم المستدعاه من الجدول

اما بالنسبة لعمل استعلام ووووووووووو........ فهناك طرق متعددة للوصول لما تريد وبما انك سلكت طريق الاكواد لحل المشكلة فقد تم حلها من هذا الباب ويمكنك المحاولة باستخدام الاستعلام ولن تعكر صفوك بكتابة الاكواد ولكن الطريق سيكون اطول ؟؟؟؟؟ اتمني لك التوفيق وارجو ان اكون اوضحت المطلوب بالشرح

تم تعديل هذه المشاركة بواسطة عامر ابو مصعب في 23 أبريل 2013 في 11:05

ربنا اغفر لي ولوالدي وللمؤمنين يوم يقوم الحساب


 


 رب ارحمهما كما ربيان صغيرا


مواضيع مشابهة