Options on Conditional Statements
Options on Conditional Statements
What Else?
Introduction
We saw that the primary way to address a condition in code is with the help of the IF operator. As it happens, there could be many other options to consider when trying to solve a problem.
Practical Learning: Introducing Conditions
-- Stellar Water Point /* Types of Accounts OTH - Other BUS - General Business RES - Residential Household SGO - Social/Government/Non-Profit Organization UUO - Unidentified or Unclassified Type of Organization WAT - Water Intensive Business (Laudromat, Hair Salon, Restaurant, etc */ DECLARE @acntNbr NVarChar(15) = N'9279-570-8394'; DECLARE @type nchar(3) = N'RES'; DECLARE @counterReadingStart numeric = 5205; DECLARE @counterReadingEnd numeric = 5222; DECLARE @consumption int = @counterReadingEnd - @counterReadingStart; DECLARE @HCFTotal numeric(10, 2) = @consumption * 748.05; DECLARE @gallons numeric = @consumption * 748.05;; DECLARE @firstTier numeric(10, 2) = @HCFTotal * 41.50 / 10000.00; DECLARE @secondTier numeric(10, 2) = @HCFTotal * 32.50 / 10000.00; DECLARE @lastTier numeric(10, 2) = @HCFTotal * 26.00 / 10000.00; DECLARE @waterCharges numeric(10, 2) = @firstTier + @secondTier + @lastTier; DECLARE @sewerCharges numeric(10, 2) = @waterCharges * 6.826941 / 100; DECLARE @environmentCharges numeric(10, 2) = @waterCharges * 0.022724; DECLARE @serviceCharges numeric(10, 2) = @waterCharges * 0.145748; DECLARE @totalCharges numeric(10, 2) = @waterCharges + @sewerCharges + @environmentCharges + @serviceCharges; DECLARE @localTaxes numeric(10, 2) = @totalCharges * 0.031574; DECLARE @stateTaxes numeric(10, 2) = @totalCharges * 0.016724; DECLARE @amountDue numeric(10, 2) = @totalCharges + @localTaxes + @stateTaxes; PRINT '======================================================'; PRINT 'Stellar Water Point - Customer Invoice'; PRINT '------------------------------------------------------'; PRINT CONCAT('Account Number: ', @acntNbr); PRINT '======================================================'; PRINT 'Meter Reading'; PRINT '------------------------------------------------------'; PRINT CONCAT('Counter Reading Start: ', @counterReadingStart); PRINT CONCAT('Counter Reading End: ', @counterReadingEnd); PRINT CONCAT('Total Gallons Consumed: ', @consumption); PRINT CONCAT('HCF Total ', @HCFTotal); PRINT CONCAT('Gallons ', @gallons); PRINT '======================================================'; PRINT 'Therms Evaluation'; PRINT '------------------------------------------------------'; PRINT CONCAT('First Tier Consumption: ', @firstTier); PRINT CONCAT('Second Tier Consumption: ', @secondTier); PRINT CONCAT('Last Tier Consumption: ', @lastTier); PRINT '------------------------------------------------------'; PRINT CONCAT('Water Use Charges: ', @waterCharges); PRINT CONCAT('Sewer Charges: ', @sewerCharges); PRINT '======================================================'; PRINT 'Bill Values'; PRINT '------------------------------------------------------'; PRINT CONCAT('Environment Charges: ', @environmentCharges); PRINT CONCAT('Service Charges: ', @serviceCharges); PRINT CONCAT('Total Charges: ', @totalCharges); PRINT CONCAT('Local Taxes: ', @localTaxes); PRINT CONCAT('State Taxes: ', @stateTaxes); PRINT '------------------------------------------------------'; PRINT CONCAT('Amount Due: ', @amountDue); PRINT '======================================================';
====================================================== Stellar Water Point - Customer Invoice ------------------------------------------------------ Account Number: 9279-570-8394 ====================================================== Meter Reading ------------------------------------------------------ Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 ====================================================== Therms Evaluation ------------------------------------------------------ First Tier Consumption: 52.77 Second Tier Consumption: 41.33 Last Tier Consumption: 33.06 ------------------------------------------------------ Water Use Charges: 127.16 Sewer Charges: 8.68 ====================================================== Bill Values ------------------------------------------------------ Environment Charges: 2.89 Service Charges: 18.53 Total Charges: 157.26 Local Taxes: 4.97 State Taxes: 2.63 ------------------------------------------------------ Amount Due: 164.86 ======================================================
Introduction to IF...ELSE Conditions
If you use an IF condition to perform an operation and if the result is true, we saw that you could execute the statement. Any other result would be ignored. To address an alternative to an IF condition, you can use a keyword named ELSE. The formula to use it is:
IF condition statement_1; ELSE statement_2;
As you can see, the new section uses the ELSE keyword. That section must come after an IF clause. That section doesn't have a condition, only a statement. If its
As seen with the IF conditional statement, if statement_2 is short, you can write it on the same line with the ELSE condition. Here is an example:
DECLARE @value numeric(6, 2); DECLARE @choice nvarchar(12) = N'Residential'; IF @choice = N'Residential' SET @value = 16.55; ELSE SET @value = 19.25; PRINT 'Account Type: Residential'; PRINT CONCAT('Value: ', @value); PRINT '==================================';
This would produce:
Account Type: Residential Value: 16.55 ==================================
To make your code easy to read, you should write statement_2 on its own line.
Practical Learning: Introducing IF...ELSE Condition
-- Stellar Water Point /* Types of Accounts OTH - Other BUS - General Business RES - Residential Household SGO - Social/Government/Non-Profit Organization UUO - Unidentified or Unclassified Type of Organization WAT - Water Intensive Business (Laudromat, Hair Salon, Restaurant, etc */ DECLARE @acntNbr NVarChar(15) = N'6003-386-3955'; DECLARE @type nchar(3) = N'OTH'; DECLARE @counterReadingStart numeric = 5205; DECLARE @counterReadingEnd numeric = 5222; DECLARE @consumption int = @counterReadingEnd - @counterReadingStart; DECLARE @HCFTotal numeric(10, 2) = @consumption * 748.05; DECLARE @gallons numeric = @consumption * 748.05;; DECLARE @firstTier numeric(10, 2); DECLARE @secondTier numeric(10, 2); DECLARE @lastTier numeric(10, 2); DECLARE @sewerCharges numeric(10, 2); DECLARE @environmentCharges numeric(10, 2); DECLARE @serviceCharges numeric(10, 2); IF @type = N'RES' SET @firstTier = @HCFTotal * 41.50 / 10000.00; ELSE SET @firstTier = @HCFTotal * 48.00 / 10000.00; IF @type = N'RES' SET @secondTier = @HCFTotal * 32.50 / 10000.00; ELSE SET @secondTier = @HCFTotal * 32.00 / 10000.00; IF @type = N'RES' SET @lastTier = @HCFTotal * 26.00 / 10000.00; ELSE SET @lastTier = @HCFTotal * 20.00 / 10000.00; DECLARE @waterCharges numeric(10, 2) = @firstTier + @secondTier + @lastTier; IF @type = N'RES' SET @sewerCharges = @waterCharges * 6.826941 / 100; ELSE SET @sewerCharges = @waterCharges * 9.202615 / 100; IF @type = N'RES' SET @environmentCharges = @waterCharges * 0.022724; ELSE SET @environmentCharges = @waterCharges * 0.221842; IF @type = N'RES' SET @serviceCharges = @waterCharges * 0.145748; ELSE SET @serviceCharges = @waterCharges * 0.210248; DECLARE @totalCharges numeric(10, 2) = @waterCharges + @sewerCharges + @environmentCharges + @serviceCharges; DECLARE @localTaxes numeric(10, 2) = @totalCharges * 0.031574; DECLARE @stateTaxes numeric(10, 2) = @totalCharges * 0.016724; DECLARE @amountDue numeric(10, 2) = @totalCharges + @localTaxes + @stateTaxes; PRINT '======================================================'; PRINT 'Stellar Water Point - Customer Invoice'; PRINT '------------------------------------------------------'; PRINT CONCAT('Account Number: ', @acntNbr); PRINT '======================================================'; PRINT 'Meter Reading'; PRINT '------------------------------------------------------'; PRINT CONCAT('Counter Reading Start: ', @counterReadingStart); PRINT CONCAT('Counter Reading End: ', @counterReadingEnd); PRINT CONCAT('Total Gallons Consumed: ', @consumption); PRINT CONCAT('HCF Total ', @HCFTotal); PRINT CONCAT('Gallons ', @gallons); PRINT '======================================================'; PRINT 'Therms Evaluation'; PRINT '------------------------------------------------------'; PRINT CONCAT('First Tier Consumption: ', @firstTier); PRINT CONCAT('Second Tier Consumption: ', @secondTier); PRINT CONCAT('Last Tier Consumption: ', @lastTier); PRINT '------------------------------------------------------'; PRINT CONCAT('Water Use Charges: ', @waterCharges); PRINT CONCAT('Sewer Charges: ', @sewerCharges); PRINT '======================================================'; PRINT 'Bill Values'; PRINT '------------------------------------------------------'; PRINT CONCAT('Environment Charges: ', @environmentCharges); PRINT CONCAT('Service Charges: ', @serviceCharges); PRINT CONCAT('Total Charges: ', @totalCharges); PRINT CONCAT('Local Taxes: ', @localTaxes); PRINT CONCAT('State Taxes: ', @stateTaxes); PRINT '------------------------------------------------------'; PRINT CONCAT('Amount Due: ', @amountDue); PRINT '======================================================';
====================================================== Stellar Water Point - Customer Invoice ------------------------------------------------------ Account Number: 6003-386-3955 ====================================================== Meter Reading ------------------------------------------------------ Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 ====================================================== Therms Evaluation ------------------------------------------------------ First Tier Consumption: 61.04 Second Tier Consumption: 40.69 Last Tier Consumption: 25.43 ------------------------------------------------------ Water Use Charges: 127.16 Sewer Charges: 11.70 ====================================================== Bill Values ------------------------------------------------------ Environment Charges: 28.21 Service Charges: 26.74 Total Charges: 193.81 Local Taxes: 6.12 State Taxes: 3.24 ------------------------------------------------------ Amount Due: 203.17 ======================================================Notice that the counter reading values are the same, but the calculated results are different
Beginning and Ending an ELSE Clause
As seen with an IF condition, if an ELSE section involves a long or many statements, you must add a body to it. Its body must start with a BEGIN keyword and end with the END keyword. The formula to follow would be:
IF condition statement(s); ELSE BEGIN statement_1; statement_2; . . . statement_n; END
Of course, the IF section can have its own BEGIN...END body too:
IF condition BEGIN if-statement1; if-statement2; . . . if-statement_n; END ELSE BEGIN statement_1; statement_2; . . . statement_n; END
Variants of an ELSE Conditional Statement
If you use an IF...ELSE situation, you can process only two statements. In some cases, you may deal with more than two conditions. In this case, you can use an IF...ELSE IF condition. The primary formula to follow is:
IF condition_1 statement_1; ELSE IF condition_2 statement_2;
If a statement is long or the section includes many statement, you must create a BEGIN...END body for it. This would be done as follows:
IF condition_1 statement_1; ELSE IF condition_2 BEGIN statement_1; statement_2; . . . statement_n; END
The first condition, condition_1, would first be checked. If condition_1 is true, then statement_1 would execute. If condition_1 is false, then condition_2 would be checked. If condition_2 is true, then the statement(s) in its section would execute. Any other result would be ignored. Here is an example:
DECLARE @employmentStatus NVARCHAR(150) = 'This employment requires C# certification. We will get back to you.';
DECLARE @certification char = 'y';
IF @certification = 'y'
SET @employmentStatus = 'The employment applicant fullfils the basic requirements.';
ELSE IF @certification = 'Y'
SET @employmentStatus = 'Employment requirements validated.';
PRINT '==================================================================================================';
PRINT 'Employment Verification';
PRINT '--------------------------------------------------------------------------------------------------';
PRINT CONCAT('Candition holds certification: ', @certification);
PRINT CONCAT('Decision Status: ', @employmentStatus);
PRINT '==================================================================================================';
This would produce:
================================================================================================== Employment Verification -------------------------------------------------------------------------------------------------- Candition holds certification: y Decision Status: The employment applicant fullfils the basic requirements. ==================================================================================================
Practical Learning: Using ELSE IF
DECLARE @taxRate numeric(8, 2) = 0.00;
DECLARE @grossSalary numeric(8, 2) = 582.97;
-- Mississippi
IF @grossSalary >= 10000
SET @taxRate = 5.00;
ELSE IF @grossSalary >= 5000
SET @taxRate = 4.00;
ELSE IF @grossSalary >= 1000
SET @taxRate = 3.00;
DECLARE @taxAmount numeric(8, 2) = @grossSalary * @taxRate / 100.00;
DECLARE @netPay numeric(8, 2) = @grossSalary - @taxAmount;
PRINT '==============================================';
PRINT ' - Mississippi - State Income Tax -';
PRINT '----------------------------------------------';
PRINT CONCAT('Gross Salary: ', @grossSalary);
PRINT CONCAT('Tax Rate: ', @taxRate, '%');
PRINT CONCAT('Tax Amount: ', @taxAmount);
PRINT CONCAT('Net Pay: ', @netPay);
PRINT '==============================================';
============================================== - Mississippi - State Income Tax - ---------------------------------------------- Gross Salary: 582.97 Tax Rate: 0.00% Tax Amount: 0.00 Net Pay: 582.97 ==============================================
DECLARE @taxRate numeric(8, 2) = 0.00;
DECLARE @grossSalary numeric(8, 2) = 3582.97;
-- Mississippi
IF @grossSalary >= 10000
SET @taxRate = 5.00;
ELSE IF @grossSalary >= 5000
SET @taxRate = 4.00;
ELSE IF @grossSalary >= 1000
SET @taxRate = 3.00;
DECLARE @taxAmount numeric(8, 2) = @grossSalary * @taxRate / 100.00;
DECLARE @netPay numeric(8, 2) = @grossSalary - @taxAmount;
PRINT '==============================================';
PRINT ' - Mississippi - State Income Tax -';
PRINT '----------------------------------------------';
PRINT CONCAT('Gross Salary: ', @grossSalary);
PRINT CONCAT('Tax Rate: ', @taxRate, '%');
PRINT CONCAT('Tax Amount: ', @taxAmount);
PRINT CONCAT('Net Pay: ', @netPay);
PRINT '==============================================';
============================================== - Mississippi - State Income Tax - ---------------------------------------------- Gross Salary: 3582.97 Tax Rate: 3.00% Tax Amount: 107.49 Net Pay: 3475.48 ==============================================
DECLARE @taxRate numeric(8, 2) = 0.00;
DECLARE @grossSalary numeric(8, 2) = 7582.97;
-- Mississippi
IF @grossSalary >= 10000
SET @taxRate = 5.00;
ELSE IF @grossSalary >= 5000
SET @taxRate = 4.00;
ELSE IF @grossSalary >= 1000
SET @taxRate = 3.00;
DECLARE @taxAmount numeric(8, 2) = @grossSalary * @taxRate / 100.00;
DECLARE @netPay numeric(8, 2) = @grossSalary - @taxAmount;
PRINT '==============================================';
PRINT ' - Mississippi - State Income Tax -';
PRINT '----------------------------------------------';
PRINT CONCAT('Gross Salary: ', @grossSalary);
PRINT CONCAT('Tax Rate: ', @taxRate, '%');
PRINT CONCAT('Tax Amount: ', @taxAmount);
PRINT CONCAT('Net Pay: ', @netPay);
PRINT '==============================================';
============================================== - Mississippi - State Income Tax - ---------------------------------------------- Gross Salary: 7582.97 Tax Rate: 4.00% Tax Amount: 303.32 Net Pay: 7279.65 ==============================================
DECLARE @taxRate numeric(8, 2) = 0.00;
DECLARE @grossSalary numeric(8, 2) = 17582.97;
-- Mississippi
IF @grossSalary >= 10000
SET @taxRate = 5.00;
ELSE IF @grossSalary >= 5000
SET @taxRate = 4.00;
ELSE IF @grossSalary >= 1000
SET @taxRate = 3.00;
DECLARE @taxAmount numeric(8, 2) = @grossSalary * @taxRate / 100.00;
DECLARE @netPay numeric(8, 2) = @grossSalary - @taxAmount;
PRINT '==============================================';
PRINT ' - Mississippi - State Income Tax -';
PRINT '----------------------------------------------';
PRINT CONCAT('Gross Salary: ', @grossSalary);
PRINT CONCAT('Tax Rate: ', @taxRate, '%');
PRINT CONCAT('Tax Amount: ', @taxAmount);
PRINT CONCAT('Net Pay: ', @netPay);
PRINT '==============================================';
============================================== - Mississippi - State Income Tax - ---------------------------------------------- Gross Salary: 17582.97 Tax Rate: 5.00% Tax Amount: 879.15 Net Pay: 16703.82 ==============================================
IF... ELSE IF... ELSE
Because there can be other alternatives, you can provide a last ELSE section. The formula to use it is:
IF condition_1 statement_1; ELSE IF condition_2 statement_2; ELSE statement-n;
Here is an example:
DECLARE @employmentStatus NVARCHAR(120);
DECLARE @certification nchar = N'y';
IF @certification = 'y'
SET @employmentStatus = N'The employment applicant fullfils the basic requirements.';
ELSE IF @certification = 'Y'
SET @employmentStatus = N'Employment requirements validated.';
ELSE
SET @employmentStatus = N'This employment requires C# certification. We will get back to you.';
PRINT '========================================================================================';
PRINT 'Employment Verification';
PRINT '----------------------------------------------------------------------------------------';
PRINT CONCAT('Candition holds certification: ', @certification);
PRINT CONCAT('Decision Status: ', @employmentStatus);
PRINT '========================================================================================';
This would produce:
======================================================================================== Employment Verification ---------------------------------------------------------------------------------------- Candition holds certification: y Decision Status: The employment applicant fullfils the basic requirements. ========================================================================================
Here is another version of the code:
DECLARE @employmentStatus NVARCHAR(120); DECLARE @certification nchar = N'I am not sure'; IF @certification = 'y' SET @employmentStatus = N'The employment applicant fullfils the basic requirements.'; ELSE IF @certification = 'Y' SET @employmentStatus = N'Employment requirements validated.'; ELSE SET @employmentStatus = N'This employment requires C# certification. We will get back to you.'; PRINT '==================================================================================================='; PRINT 'Employment Verification'; PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Candition holds certification: ', @certification); PRINT CONCAT('Decision Status: ', @employmentStatus); PRINT '===================================================================================================';
This would produce:
Employment Verification --------------------------------------------------------------------------------------------------- Candition holds certification: I Decision Status: This employment requires C# certification. We will get back to you. ===================================================================================================
If necessary, you can or must add a BEGIN...END body to the ELSE section
IF condition_1 statement_1; ELSE IF condition_2 statement_2; ELSE BEGIN statement_1; statement_2; . . . statement_n; END
IF...ELSE IF ... ELSE IF and ELSE
Remember that you can start a condition examination with with an IF condition. If there are many possibilities to check, you can add as many ELSE IF section as you judge necessary, then add a last ELSE section.
Practical Learning: Introducing if...else if...else
-- Stellar Water Point /* Types of Accounts OTH - Other BUS - General Business RES - Residential Household SGO - Social/Government/Non-Profit Organization UUO - Unidentified or Unclassified Type of Organization WAT - Water Intensive Business (Laudromat, Hair Salon, Restaurant, etc */ DECLARE @acntNbr NVarChar(15) = N'9279-570-8394'; DECLARE @type nchar(3) = N'RES'; DECLARE @counterReadingStart numeric = 5205; DECLARE @counterReadingEnd numeric = 5222; DECLARE @consumption int = @counterReadingEnd - @counterReadingStart; DECLARE @HCFTotal numeric(10, 2) = @consumption * 748.05; DECLARE @gallons numeric = @consumption * 748.05;; DECLARE @firstTier numeric(10, 2); DECLARE @secondTier numeric(10, 2); DECLARE @lastTier numeric(10, 2); DECLARE @sewerCharges numeric(10, 2); DECLARE @environmentCharges numeric(10, 2); DECLARE @serviceCharges numeric(10, 2); DECLARE @acntType NVARCHAR(120); IF @type = N'RES' SET @acntType = N'RES - Residential Household'; ELSE IF @type = N'SGO' SET @acntType = N'SGO - Social/Government/Non-Profit Organization'; ELSE IF @type = N'BUS' SET @acntType = N'BUS - General Business'; ELSE IF @type = N'UUO' SET @acntType = N'UUO - Unidentified or Unclassified Type of Organization'; ELSE IF @type = N'WAT' SET @acntType = N'WAT - Water Intensive Business (Laudromat, Hair Salon, Restaurant, etc'; ELSE SET @acntType = N'OTH - Other'; IF @type = N'RES' SET @firstTier = @HCFTotal * 41.50 / 10000.00; ELSE IF @type = N'SGO' SET @firstTier = @HCFTotal * 46.00 / 10000.00; ELSE IF @type = N'BUS' SET @firstTier = @HCFTotal * 45.00 / 10000.00; ELSE IF @type = N'UUO' SET @firstTier = @HCFTotal * 25.00 / 10000.00; ELSE IF @type = N'WAT' SET @firstTier = @HCFTotal * 50.00 / 10000.00; ELSE SET @firstTier = @HCFTotal * 48.00 / 10000.00; IF @type = N'RES' SET @secondTier = @HCFTotal * 32.50 / 10000.00; ELSE IF @type = N'SGO' SET @secondTier = @HCFTotal * 50.00 / 10000.00; ELSE IF @type = N'BUS' SET @secondTier = @HCFTotal * 45.00 / 10000.00; ELSE IF @type = N'UUO' SET @secondTier = @HCFTotal * 35.00 / 10000.00; ELSE IF @type = N'WAT' SET @secondTier = @HCFTotal * 40.00 / 10000.00; ELSE SET @secondTier = @HCFTotal * 32.00 / 10000.00; IF @type = N'RES' SET @lastTier = @HCFTotal * 26.00 / 10000.00; ELSE IF @type = N'SGO' SET @lastTier = @HCFTotal * 4.00 / 10000.00; ELSE IF @type = N'BUS' SET @lastTier = @HCFTotal * 25.00 / 10000.00; ELSE IF @type = N'UUO' SET @lastTier = @HCFTotal * 40.00 / 10000.00; ELSE IF @type = N'WAT' SET @lastTier = @HCFTotal * 10.00 / 10000.00; ELSE SET @lastTier = @HCFTotal * 20.00 / 10000.00; DECLARE @waterCharges numeric(10, 2) = @firstTier + @secondTier + @lastTier; IF @type = N'RES' SET @sewerCharges = @waterCharges * 6.826941 / 100; ELSE IF @type = N'SGO' SET @sewerCharges = @waterCharges * 4.162522 / 100; ELSE IF @type = N'BUS' SET @sewerCharges = @waterCharges * 8.315136 / 100; ELSE IF @type = N'UUO' SET @sewerCharges = @waterCharges * 10.626147 / 100; ELSE IF @type = N'WAT' SET @sewerCharges = @waterCharges * 12.025135 / 100; ELSE SET @sewerCharges = @waterCharges * 9.202615 / 100; IF @type = N'RES' SET @environmentCharges = @waterCharges * 0.022724; ELSE IF @type = N'SGO' SET @environmentCharges = @waterCharges * 0.118242; ELSE IF @type = N'BUS' SET @environmentCharges = @waterCharges * 0.161369; ELSE IF @type = N'UUO' SET @environmentCharges = @waterCharges * 0.082477; ELSE IF @type = N'WAT' SET @environmentCharges = @waterCharges * 0.413574; ELSE SET @environmentCharges = @waterCharges * 0.221842; IF @type = N'RES' SET @serviceCharges = @waterCharges * 0.145748; ELSE IF @type = N'SGO' SET @serviceCharges = @waterCharges * 0.102246; ELSE IF @type = N'BUS' SET @serviceCharges = @waterCharges * 0.242627; ELSE IF @type = N'UUO' SET @serviceCharges = @waterCharges * 0.186692; ELSE IF @type = N'WAT' SET @serviceCharges = @waterCharges * 0.412628; ELSE SET @serviceCharges = @waterCharges * 0.210248; DECLARE @totalCharges numeric(10, 2) = @waterCharges + @sewerCharges + @environmentCharges + @serviceCharges; DECLARE @localTaxes numeric(10, 2); DECLARE @stateTaxes numeric(10, 2); IF @type = N'RES' SET @localTaxes = @totalCharges * 0.031574; ELSE IF @type = N'SGO' SET @localTaxes = @totalCharges * 0.035026; ELSE IF @type = N'BUS' SET @localTaxes = @totalCharges * 0.122517; ELSE IF @type = N'UUO' SET @localTaxes = @totalCharges * 0.105737; ELSE IF @type = N'WAT' SET @localTaxes = @totalCharges * 0.153248; ELSE SET @localTaxes = @totalCharges * 0.125148; IF @type = N'RES' SET @stateTaxes = @totalCharges * 0.016724; ELSE IF @type = N'SGO' SET @stateTaxes = @totalCharges * 0.008779; ELSE IF @type = N'BUS' SET @stateTaxes = @totalCharges * 0.042448; ELSE IF @type = N'UUO' SET @stateTaxes = @totalCharges * 0.067958; ELSE IF @type = N'WAT' SET @stateTaxes = @totalCharges * 0.081622; ELSE SET @stateTaxes = @totalCharges * 0.013746; DECLARE @amountDue numeric(10, 2) = @totalCharges + @localTaxes + @stateTaxes; DECLARE @lateAmountDue numeric(10, 2); IF @type = N'RES' SET @lateAmountDue = @amountDue + 8.95; ELSE IF @type = N'SGO' SET @lateAmountDue = @amountDue + (@amountDue / 4.575); ELSE IF @type = N'BUS' SET @lateAmountDue = @amountDue + (@amountDue / 12.315); ELSE IF @type = N'UUO' SET @lateAmountDue = @amountDue + (@amountDue / 7.425); ELSE IF @type = N'WAT' SET @lateAmountDue = @amountDue + (@amountDue / 15.225); ELSE SET @lateAmountDue = @amountDue + (@amountDue / 6.735); PRINT '==================================================================================================='; PRINT 'Stellar Water Point - Customer Invoice'; PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Account Number: ', @acntNbr); PRINT CONCAT('Account Type: ', @acntType); PRINT '==================================================================================================='; PRINT 'Meter Reading'; PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Counter Reading Start: ', @counterReadingStart); PRINT CONCAT('Counter Reading End: ', @counterReadingEnd); PRINT CONCAT('Total Gallons Consumed: ', @consumption); PRINT CONCAT('HCF Total ', @HCFTotal); PRINT CONCAT('Gallons ', @gallons); PRINT '==================================================================================================='; PRINT 'Therms Evaluation'; PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('First Tier Consumption: ', @firstTier); PRINT CONCAT('Second Tier Consumption: ', @secondTier); PRINT CONCAT('Last Tier Consumption: ', @lastTier); PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Water Use Charges: ', @waterCharges); PRINT CONCAT('Sewer Charges: ', @sewerCharges); PRINT '==================================================================================================='; PRINT 'Bill Values'; PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Environment Charges: ', @environmentCharges); PRINT CONCAT('Service Charges: ', @serviceCharges); PRINT CONCAT('Total Charges: ', @totalCharges); PRINT CONCAT('Local Taxes: ', @localTaxes); PRINT CONCAT('State Taxes: ', @stateTaxes); PRINT '---------------------------------------------------------------------------------------------------'; PRINT CONCAT('Amount Due: ', @amountDue); PRINT CONCAT('Late Amount Due: ', @lateAmountDue); PRINT '===================================================================================================';
=================================================================================================== Stellar Water Point - Customer Invoice --------------------------------------------------------------------------------------------------- Account Number: 9279-570-8394 Account Type: RES - Residential Household =================================================================================================== Meter Reading --------------------------------------------------------------------------------------------------- Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 =================================================================================================== Therms Evaluation --------------------------------------------------------------------------------------------------- First Tier Consumption: 52.77 Second Tier Consumption: 41.33 Last Tier Consumption: 33.06 --------------------------------------------------------------------------------------------------- Water Use Charges: 127.16 Sewer Charges: 8.68 =================================================================================================== Bill Values --------------------------------------------------------------------------------------------------- Environment Charges: 2.89 Service Charges: 18.53 Total Charges: 157.26 Local Taxes: 4.97 State Taxes: 2.63 --------------------------------------------------------------------------------------------------- Amount Due: 164.86 Late Amount Due: 173.81 ===================================================================================================
=================================================================================================== Stellar Water Point - Customer Invoice --------------------------------------------------------------------------------------------------- Account Number: 9249-379-6848 Account Type: BUS - General Business =================================================================================================== Meter Reading --------------------------------------------------------------------------------------------------- Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 =================================================================================================== Therms Evaluation --------------------------------------------------------------------------------------------------- First Tier Consumption: 57.23 Second Tier Consumption: 57.23 Last Tier Consumption: 31.79 --------------------------------------------------------------------------------------------------- Water Use Charges: 146.25 Sewer Charges: 12.16 =================================================================================================== Bill Values --------------------------------------------------------------------------------------------------- Environment Charges: 23.60 Service Charges: 35.48 Total Charges: 217.49 Local Taxes: 26.65 State Taxes: 9.23 --------------------------------------------------------------------------------------------------- Amount Due: 253.37 Late Amount Due: 273.94 ===================================================================================================
=================================================================================================== Stellar Water Point - Customer Invoice --------------------------------------------------------------------------------------------------- Account Number: 4820-375-2842 Account Type: SGO - Social/Government/Non-Profit Organization =================================================================================================== Meter Reading --------------------------------------------------------------------------------------------------- Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 =================================================================================================== Therms Evaluation --------------------------------------------------------------------------------------------------- First Tier Consumption: 58.50 Second Tier Consumption: 63.58 Last Tier Consumption: 5.09 --------------------------------------------------------------------------------------------------- Water Use Charges: 127.17 Sewer Charges: 5.29 =================================================================================================== Bill Values --------------------------------------------------------------------------------------------------- Environment Charges: 15.04 Service Charges: 13.00 Total Charges: 160.50 Local Taxes: 5.62 State Taxes: 1.41 --------------------------------------------------------------------------------------------------- Amount Due: 167.53 Late Amount Due: 204.15 ===================================================================================================
=================================================================================================== Stellar Water Point - Customer Invoice --------------------------------------------------------------------------------------------------- Account Number: 9618-579-2577 Account Type: UUO - Unidentified or Unclassified Type of Organization =================================================================================================== Meter Reading --------------------------------------------------------------------------------------------------- Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 =================================================================================================== Therms Evaluation --------------------------------------------------------------------------------------------------- First Tier Consumption: 31.79 Second Tier Consumption: 44.51 Last Tier Consumption: 50.87 --------------------------------------------------------------------------------------------------- Water Use Charges: 127.17 Sewer Charges: 13.51 =================================================================================================== Bill Values --------------------------------------------------------------------------------------------------- Environment Charges: 10.49 Service Charges: 23.74 Total Charges: 174.91 Local Taxes: 18.49 State Taxes: 11.89 --------------------------------------------------------------------------------------------------- Amount Due: 205.29 Late Amount Due: 232.94 ===================================================================================================
=================================================================================================== Stellar Water Point - Customer Invoice --------------------------------------------------------------------------------------------------- Account Number: 7028-405-9381 Account Type: WAT - Water Intensive Business (Laudromat, Hair Salon, Restaurant, etc =================================================================================================== Meter Reading --------------------------------------------------------------------------------------------------- Counter Reading Start: 5205 Counter Reading End: 5222 Total Gallons Consumed: 17 HCF Total 12716.85 Gallons 12717 =================================================================================================== Therms Evaluation --------------------------------------------------------------------------------------------------- First Tier Consumption: 63.58 Second Tier Consumption: 50.87 Last Tier Consumption: 12.72 --------------------------------------------------------------------------------------------------- Water Use Charges: 127.17 Sewer Charges: 15.29 =================================================================================================== Bill Values --------------------------------------------------------------------------------------------------- Environment Charges: 52.59 Service Charges: 52.47 Total Charges: 247.52 Local Taxes: 37.93 State Taxes: 20.20 --------------------------------------------------------------------------------------------------- Amount Due: 305.65 Late Amount Due: 325.73 ===================================================================================================
|
|||
Previous | Copyright © 2007-2025, FunctionX | Last Update: Sunday 06 April 2025, 14:35 | Next |
|