الانتقال إلى المحتوى

تقرير يتحكم فى الاصناف المشتراه والمباعه


ahmed elkyal

Recommended Posts

السلام عليكم

الزملاء الاعزاء أتمنى المساعده فى عمل تقرير يساعد فى التحكم فى الاصناف المشتراه والمباعه بحيث يتم بيع الاصناف وفق سياسة الوارد اولا ... صادر اولا 

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

مثال :-

كود الصنف - الصنف                  -  رقم الرساله  - تاريخ الفاتوره   - الكميه المشتراه

1001      - شيبسي عائلي طماطم   - 501         - 1/11/2013   -  400

1001      - شيبسي عائلي طماطم   - 502         - 2/11/2013   -  200

فعند الصرف احتاج لصرف الرساله الاولى وهى رقم (501) حتى تنفذ الكميه وهى (400)

ثم يتم الصرف من الرساله التى تليها وهكذا ...

رابط هذا التعليق
شارك

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

رابط هذا التعليق
شارك

انا محتاج اعمل view يكون كالتالى

كود الصنف   - الصنف               -  رقم الرساله   - تاريخ الفاتوره     -رصيد اول  -   الكميه المشتراه - مرتد مشتريات - مبيعات - مرتد مبيعات - رصيد الرساله

1001      - شيبسي عائلي طماطم   - 501         - 1/11/2013    - 0       -  400          - 50                - 150   -   10            -  210

1001      - شيبسي عائلي طماطم   - 501         - 2/11/2013     -  210   -    0         - 0                 - 110  -    0              - 100

 

مع العلم ان كود الصنف - اسم الصنف من جدول الاصناف   item_code , item_name from items

و رقم الرساله و تاريخ الفاتوره والكميه المشتراه و مرتد المشتريات من جدول المشتريات    msg_no , pur_date , quantaty

و  والكميه المباعه و مرتد المبيعات من جدول المبيعات                                         inv_date , quantaty

ولكن لا اصل الى النتيجه المطلوبه والجمله التى الستخدمها

SELECT      v1.ITEM_CODE ,v1.ITEM_name, V6.VALIDATION_DATE ,v6.MSG_NO ,
nvl(v2.PUR_Q,0) pur  , nvl(v3.SALES_Q,0) SALES ,nvl(v4.PUR_R_Q,0) ,  nvl(v5.SALES_R_Q,0)
FROM
(SELECT   ITEM_CODE ,ITEM_name FROM ITEMS ORDER BY 1) v1,
(SELECT    VALIDATION_DATE , MSG_NO FROM PUR_DETAILS)V6 ,

(SELECT   PUR_DETAILS.ITEM_CODE , MSG_NO , SUM(NVL (PUR_DETAILS.QUANTATY, 0)) Pur_Q
FROM       PUR_DETAILS
WHERE    TYPE_CODE = 1
GROUP BY ITEM_CODE , MSG_NO ) v2 ,

(SELECT   INV_DETAILS.ITEM_CODE , SUM(NVL (INV_DETAILS.QUANTATY, 0)) SALES_Q , MSG_NO
FROM       INV_DETAILS
WHERE    INV_dETAILS.TYPE_CODE = 3
GROUP BY ITEM_CODE , MSG_NO )V3  ,

(SELECT   PUR_DETAILS.ITEM_CODE ,   SUM(NVL (PUR_DETAILS.QUANTATY, 0)) Pur_R_Q ,
MSG_NO
FROM       PUR_DETAILS
WHERE    TYPE_CODE = 2
GROUP BY ITEM_CODE , MSG_NO ) v4 ,

(SELECT   INV_DETAILS.ITEM_CODE ,SUM(NVL (INV_DETAILS.QUANTATY, 0)) SALES_R_Q , MSG_NO
FROM       INV_DETAILS  
WHERE    INV_dETAILS.TYPE_CODE = 4
 GROUP BY ITEM_CODE , MSG_NO )V5

WHERE     V1.ITEM_CODE = V2.ITEM_CODE(+)
AND          V1.ITEM_CODE = V3.ITEM_CODE(+)
AND          V1.ITEM_CODE = V4.ITEM_CODE(+)
AND          V1.ITEM_CODE = V5.ITEM_CODE(+)
AND          V1.ITEM_CODE =1001




 

تم تعديل بواسطة ahmed elkyal
رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

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

×   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

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

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

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية