الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

ممكن حل لمشكلة Divisor Equal To Zero

Featured Replies

بتاريخ:

function CF_AVG_COSTFormula return Number is
 TOTAL_PRCH   NUMBER(15,2);
 TOTAL_RVRS   NUMBER(15,2);
 RVRS_QTY	 NUMBER(15,2);
 PRCH_QTY	 NUMBER(15,2);
BEGIN

 BEGIN
SELECT SUM((QUANTITY * UNIT_PRICE)- (UNIT_DISCOUNT_PRICE) + (UNIT_EXTRA_DISCOUNT_PRICE) + (UNIT_DEBIT_PRICE) - (UNIT_CREDIT_PRICE) )
INTO   TOTAL_PRCH
FROM   STK_PRCH_DTL
WHERE ITEM_TYPE = :ITEM_TYPE
AND   ITEM_CODE = :ITEM_CODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN
TOTAL_PRCH :=0;
END;

 BEGIN
SELECT SUM((QUANTITY * UNIT_PRICE)- (UNIT_DISCOUNT_PRICE) +  (UNIT_DEBIT_PRICE) - (UNIT_CREDIT_PRICE) )
INTO   TOTAL_RVRS
FROM   STK_PRCH_RVRS_DTL
WHERE ITEM_TYPE = :ITEM_TYPE
AND   ITEM_CODE = :ITEM_CODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN
TOTAL_RVRS :=0;	
END;
  BEGIN
SELECT SUM(PCS_PER_PACKET * QUANTITY)
INTO   PRCH_QTY
FROM   STK_PRCH_DTL
WHERE ITEM_TYPE				  = :ITEM_TYPE
AND   ITEM_CODE				  = :ITEM_CODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN
PRCH_QTY :=0;
END;

 BEGIN
SELECT SUM(PCS_PER_PACKET * QUANTITY)
INTO   RVRS_QTY
FROM   STK_PRCH_RVRS_DTL
WHERE ITEM_TYPE			= :ITEM_TYPE
AND   ITEM_CODE			= :ITEM_CODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RVRS_QTY:=0;	
END;
  RETURN (((NVL(TOTAL_PRCH,0) - NVL(TOTAL_RVRS,0)) / (NVL(PRCH_QTY ,0)- NVL(RVRS_QTY,0))) * NVL(:CF_TOTAL_SALS_QTY,0));
  END;


في البدايه طبعا هذا تقرير ارباح اصناف
ويكون بالطريقه هذي (اجمالي قيمة الشراء - اجمالي قيمة المرتجع )/ (اجمالي كمية الشرا - اجمالي كمية مرتجع الشراء) * في الكميه المباعه
هذي معادلة استخراج اجمالي التكلفه
انا عرفت سبب المشكله بس ماعرفت كيف احلها
المشكله سببها اذا مافي كمية مشتراه
راح يكون 0 وفي القسمه ماراح يقسم على 0
فتظهر رسالة
DIVISOR EQUAL TO ZERO
عند ال RUN

بتاريخ:
  • كاتب الموضوع

?استخدمها بعد RETURN
وايش الكود اللي اكتبه ياليت توضح لي
ومشكور ع الرد

بتاريخ:
  • كاتب الموضوع

RETURN (NVL((TOTAL_PRCH - TOTAL_RVRS),0) / NVL((PRCH_QTY - RVRS_QTY),1) * NVL(:CF_TOTAL_SALS_QTY,0)) ;

حليت المشكله بالشكل التالي
جعلته اذا مافي قيمه يقسم على 1 هل هي طريقه صحيححه

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

بتاريخ:

السلام عليكم
اما انك بتستخدم الـ Exception بعد Return كالتالي:


Exception When Zero_Divide Then
Return (0);



أو قم بتغيير الكود الأخير كالتالي:



Return (((Nvl(Total_Prch,0) - Nvl(Total_Rvrs,0)) / Nvl(Nvl(Prch_Qty ,0) - Nvl(Rvrs_Qty,0)), 1) * Nvl(:Cf_Total_Sals_Qty, 1));




بالتوفيق.

بتاريخ:
  • كاتب الموضوع

<p><abbr class="published" title="2012-09-16T09:04:18+00:00">PM</abbr></p>
<div class="post entry-content ">RETURN (NVL((TOTAL_PRCH - TOTAL_RVRS),0) / <span style="color: #0000ff"><strong class="bbc">NVL((PRCH_QTY - RVRS_QTY),1)</strong></span> * NVL(:CF_TOTAL_SALS_QTY,0)) ;<br />
<br />
حليت المشكله بالشكل التالي<br />
جعلته اذا مافي قيمه يقسم على 1 هل هي طريقه صحيححه<br />
<br />
والشيء الاخر<br />
عند ظهور التقرير لابد من عمل فاتورة مشتريات ومرتجع مشتريات ومبيعات ومرتجع مبيعات</div>
<div class="post entry-content "><span style="font-size:18px;"><strong>بعد التدقيق الحل خطأ يعطي نتائج غير صحيحه</strong></span></div>

بتاريخ:
  • كاتب الموضوع
السلام عليكم اما انك بتستخدم الـ Exception بعد Return كالتالي:
 Exception When Zero_Divide Then Return (0);

أو قم بتغيير الكود الأخير كالتالي:

 Return (((Nvl(Total_Prch,0) - Nvl(Total_Rvrs,0)) / Nvl(Nvl(Prch_Qty ,0) - Nvl(Rvrs_Qty,0)), 1) * Nvl(:Cf_Total_Sals_Qty, 1)); 

بالتوفيق.



السلام عليكم استاذي الفاضل

عند تجربة الكود التالي
طلع رسالة ERROR
WRONG NUMBER OR TYPE OF ARGUMENT IN CALL TO NVL
بتاريخ:

السلام عليكم
جرب الكود التالي:

Return (Nvl(Total_Prch,0) - Nvl(Total_Rvrs,0)) /  (Nvl(Nvl(Prch_Qty ,0) - Nvl(Rvrs_Qty, 0), 1) * Nvl(:Cf_Total_Sals_Qty, 1));

بتاريخ:
  • كاتب الموضوع

السلام عليكم
جرب الكود التالي:

Return (Nvl(Total_Prch,0) - Nvl(Total_Rvrs,0)) /  (Nvl(Nvl(Prch_Qty ,0) - Nvl(Rvrs_Qty, 0), 1) * Nvl(:Cf_Total_Sals_Qty, 1));





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

NET_PRCH_QTY := (NVL(PRCH_QTY,0) - NVL(RVRS_QTY,0));

IF NET_PRCH_QTY > 0 THEN
RETURN ( ((NVL(TOTAL_PRCH,0) - NVL(TOTAL_RVRS,0)) / NVL(NET_PRCH_QTY,0))* NVL(:CF_TOTAL_SALS_QTY,0) );
ELSE
RETURN(0);

ومره اخرى مشكور ع الردود

بس ممكن فضلا لا امرا احد يساعدني في نظام البريد بين المستخدمين بحثت عنه كثير في المنتدى ومالقيت في المشاركات اي مرفقات يمكن انحذفت المرفقات
فيه مواضيع بس بدون المرفقات للبرنامج
الرجاء للضروره

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.