IF statement infront of an aggregate SUM function

I have a large transactional table that I'm trying to roll-up to produce a few summarized views. Here's the portion of the table that I'm interested in summarizing:


Transaction Period   |   Qty  |  Bill_Rt   | Pay_Rt  |  Type
June                             100       10                         REV
June                             200        12                        REV
July                               200       13                         REV
June                             100                     8             LAB
June                               200                    11           LAB
June                             200                      12           LAB
           
The end output I'd like is one line for june and one line for july showing the weighted average of the bill rate and pay rate

Transaction Period   |   Qty   |        Bill_Rt                                   |          Pay_Rt
June                            300      (10*100+200*12)/(100+200)=11.33     (100*8+200*11)/100+200)=10    
July                             200                      13                                                   12                        

I've used the formula: Sum(Bill_Rt*Qty)/Sum(Qty) with some nested IFs to check whether type = REV or LAB and summarize accordingly. However, I need a final check to see whether the divisor = 0 to avoid a #error. Please advise...

SELECT [Master ABC Transactional].Sell_Dist, [Master ABC Transactional].Mnmt_Dist, [Master ABC Transactional].Home_Dist, [Master ABC Transactional].Cust_ID, [Master ABC Transactional].Cust_Name, [Master ABC Transactional].Project, [Master ABC Transactional].Empl_ID, [Master ABC Transactional].Empl_Name, Sum([Master ABC Transactional].Quantity) AS SumOfQuantity, Last([Master ABC Transactional].Sys_Src) AS LastOfSys_Src, Last([Master ABC Transactional].Comm_Margin) AS LastOfComm_Margin, Last([Master ABC Transactional].Jrnl_Line_Descrip) AS LastOfJrnl_Line_Descrip, Last([Master ABC Transactional].Svc_Line) AS LastOfSvc_Line, Last([Master ABC Transactional].Source) AS LastOfSource, Last([Master ABC Transactional].Trans_Pd) AS LastOfTrans_Pd, Sum([Master ABC Transactional].CM_REV) AS SumOfCM_REV, [Master ABC Transactional].ProjType, [Master ABC Transactional].FiscYr, [Master ABC Transactional].Acct_Pd, [Master ABC Transactional].BU, Sum(IIf([Res_Type]="REV",Amount,Null)) AS REV, Sum(IIf([Res_Type]="LAB",Amount,Null)) AS Labor, 
 
Sum(IIf([Res_Type]="REV",Bill_Rt*Quantity,null))/Sum(IIf([Res_Type]="REV",Quantity,null)), Sum(IIf([Res_Type]="LAB",Pay_Rt*Quantity,null))/Sum(IIf([Res_Type]="LAB",Quantity,null)),
 
 
Sum(IIf([Res_Type]="EXP",Amount,Null)) AS Expense, Sum(IIf([Res_Type]="BCH",Amount,Null)) AS Bench, Sum(IIf([Res_Type]="PDO",Amount,Null)) AS PDO, Sum(IIf([Res_Type]="HOL",Amount,Null)) AS Holiday, Sum(IIf([Res_Type]="NBS",Amount,Null)) AS NBS, Sum(IIf([Res_Type]="FRG",Amount,Null)) AS Fringe, Sum(IIf([Res_Type]="TAX",Amount,Null)) AS Tax, Sum(IIf([Res_Type]="RCT",Amount,Null)) AS Recruiter, Sum(IIf([Res_Type]="SUP",Amount,Null)) AS Support
 
 
FROM [Master ABC Transactional]
GROUP BY [Master ABC Transactional].Sell_Dist, [Master ABC Transactional].Mnmt_Dist, [Master ABC Transactional].Home_Dist, [Master ABC Transactional].Cust_ID, [Master ABC Transactional].Cust_Name, [Master ABC Transactional].Project, [Master ABC Transactional].Empl_ID, [Master ABC Transactional].Empl_Name, [Master ABC Transactional].ProjType, [Master ABC Transactional].FiscYr, [Master ABC Transactional].Acct_Pd, [Master ABC Transactional].BU;

Open in new window

jimbofish8Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Vadim RappConnect With a Mentor Commented:
SELECT
Table1.period,
Sum(NZ([AverageBilLRate],0)) AS Expr1,
Sum(NZ([AveragePayRate],0)) AS Expr2

FROM
[SELECT TABLE1.period,
Sum(BILL_RT*QTY)/Sum(QTY) AS [AverageBilLRate],
Sum(QTY*PAY_RT)/Sum(QTY) AS [AveragePayRate]
FROM TABLE1
WHERE QTY<>0
GROUP BY TABLE1.period, TABLE1.type
]. AS S
RIGHT JOIN Table1 ON S.period = Table1.period
GROUP BY Table1.period;
0
 
GRayLCommented:
You show a Pay_Rt of 12 for July when there is no value in the detail table??
0
 
jimbofish8Author Commented:
Sorry the last line "June                             200                      12           LAB"
should be for July
0
Build your data science skills into a career

Are you ready to take your data science career to the next step, or break into data science? With Springboard’s Data Science Career Track, you’ll master data science topics, have personalized career guidance, weekly calls with a data science expert, and a job guarantee.

 
Vadim RappCommented:
SELECT
s.period,
Sum(s.[Average Bill Rate]) AS [SumOfAverage Bill Rate],
Sum(s.[Average Pay Rate]) AS [SumOfAverage Pay Rate]

FROM

[SELECT TABLE1.period,
Sum(BILL_RT*QTY)/Sum(QTY) AS [Average Bill Rate],
Sum(QTY*PAY_RT)/Sum(QTY) AS [Average Pay Rate]
FROM TABLE1
GROUP BY TABLE1.period, TABLE1.type
]. AS s

GROUP BY s.period
ORDER BY s.period;
0
 
jimbofish8Author Commented:
The problem I have is that there are some cases where QTY = 0. I need some sort of if statement that will output 0 if QTY is 0
0
 
Emil_GrayCommented:
OK.
If QTY <> 0 Then _
SELECT 
s.period, 
Sum(s.[Average Bill Rate]) AS [SumOfAverage Bill Rate], 
Sum(s.[Average Pay Rate]) AS [SumOfAverage Pay Rate]
 
FROM 
 
[SELECT TABLE1.period, 
Sum(BILL_RT*QTY)/Sum(QTY) AS [Average Bill Rate], 
Sum(QTY*PAY_RT)/Sum(QTY) AS [Average Pay Rate]
FROM TABLE1
GROUP BY TABLE1.period, TABLE1.type
]. AS s
 
GROUP BY s.period
ORDER BY s.period;
 
Else
 
[Average Bill Rate] = 0
[Average Pay Rate] = 0
 
End If

Open in new window

0
 
GRayLCommented:
A somewhat easier way to look at it.  Use an alias for long table names to ease the typing.  Are there any other [Res_Type]'s other than those listed?  If not why not include [Res_Type] in the GROUP BY and Sum(a.Amount)?  The query can simplify to the latter SQL
SELECT 
a.Sell_Dist, 
a.Mnmt_Dist, 
a.Home_Dist, 
a.Cust_ID, 
a.Cust_Name, 
a.Project, 
a.Empl_ID, 
a.Empl_Name, 
Sum(a.Quantity) AS SumOfQuantity, 
Last(a.Sys_Src) AS LastOfSys_Src, 
Last(a.Comm_Margin) AS LastOfComm_Margin, 
Last(a.Jrnl_Line_Descrip) AS LastOfJrnl_Line_Descrip, 
Last(a.Svc_Line) AS LastOfSvc_Line, 
Last(a.Source) AS LastOfSource, 
Last(a.Trans_Pd) AS LastOfTrans_Pd, 
Sum(a.CM_REV) AS SumOfCM_REV, 
a.ProjType, 
a.FiscYr, 
a.Acct_Pd, 
a.BU, 
Sum(IIf(a.[Res_Type]="REV",a.Amount,Null)) AS REV, 
Sum(IIf(a.[Res_Type]="LAB",a.Amount,Null)) AS Labor, 
 
Sum(IIf(a.[Res_Type]="REV",a.Bill_Rt*a.Quantity,null))/Sum(IIf([Res_Type]="REV",Quantity,null)), Sum(IIf(a.[Res_Type]="LAB",a.Pay_Rt*a.Quantity,null))/Sum(IIf([Res_Type]="LAB",Quantity,null)),
 
 
Sum(IIf(a.[Res_Type]="EXP",a.Amount,Null)) AS Expense, 
Sum(IIf(a.[Res_Type]="BCH",a.Amount,Null)) AS Bench, 
Sum(IIf(a.[Res_Type]="PDO",a.Amount,Null)) AS PDO, 
Sum(IIf(a.[Res_Type]="HOL",a.Amount,Null)) AS Holiday, 
Sum(IIf(a.[Res_Type]="NBS",a.Amount,Null)) AS NBS, 
Sum(IIf(a.[Res_Type]="FRG",a.Amount,Null)) AS Fringe, 
Sum(IIf(a.[Res_Type]="TAX",a.Amount,Null)) AS Tax, 
Sum(IIf(a.[Res_Type]="RCT",a.Amount,Null)) AS Recruiter, 
Sum(IIf(a.[Res_Type]="SUP",a.Amount,Null)) AS Support
 
FROM [Master ABC Transactional] a
 
GROUP BY a.Sell_Dist, a.Mnmt_Dist, a.Home_Dist, a.Cust_ID, a.Cust_Name, 
a.Project, a.Empl_ID, a.Empl_Name, a.ProjType, a.FiscYr, a.Acct_Pd, a.BU;
 
Simplified SQL:
 
SELECT 
a.Sell_Dist, 
a.Mnmt_Dist, 
a.Home_Dist, 
a.Cust_ID, 
a.Cust_Name, 
a.Project, 
a.Empl_ID, 
a.Empl_Name, 
Sum(a.Quantity) AS SumOfQuantity, 
Last(a.Sys_Src) AS LastOfSys_Src, 
Last(a.Comm_Margin) AS LastOfComm_Margin, 
Last(a.Jrnl_Line_Descrip) AS LastOfJrnl_Line_Descrip, 
Last(a.Svc_Line) AS LastOfSvc_Line, 
Last(a.Source) AS LastOfSource, 
Last(a.Trans_Pd) AS LastOfTrans_Pd, 
Sum(a.CM_REV) AS SumOfCM_REV, 
a.ProjType, 
a.FiscYr, 
a.Acct_Pd, 
a.BU,
a.[Res_Type] 
Sum(a.Amount), 
 
Sum(IIf(a.[Res_Type]="REV",a.Bill_Rt*a.Quantity,null))/Sum(IIf([Res_Type]="REV",Quantity,null)), Sum(IIf(a.[Res_Type]="LAB",a.Pay_Rt*a.Quantity,null))/Sum(IIf([Res_Type]="LAB",Quantity,null)),
 
FROM [Master ABC Transactional] a
 
GROUP BY a.Sell_Dist, a.Mnmt_Dist, a.Home_Dist, a.Cust_ID, a.Cust_Name, 
a.Project, a.Empl_ID, a.Empl_Name, a.ProjType, a.FiscYr, a.Acct_Pd, a.BU, a.[Res_Type];

Open in new window

0
 
GRayLCommented:
If any of the sums are null, then wrap them in the Nz() function if you want to 'see' a zero:

Nz(Sum(a.AnyValue),0)
0
 
Vadim RappCommented:
Emil_Gray, a little warning: you can improve code provided by someone else only when that someone else has obviously stopped participation.
0
 
GRayLCommented:
Do not convert nulls to zeroes before you apply any aggregate function.  

Null/Null = Null  ie.  a null in the denominator will not throw an error.  After the aggregate, wrap it in the Nz() function as I showed you above to 'see' the zero.
0
 
hnasrConnect With a Mentor Commented:
This is a Model:
Table iifBill
period      type      qty      Bill-rt      Pay-rt
June      A      100      10      
June      A      200      12      
July      A      200      13      
June      B      100            8
June      B      200            11
July      B      200            12

Query:

Select     period,BillSum,PaySum,ASum,BSum,ARatio,BRatio
FROM
(SELECT iifBill.period, Sum(IIf([type]="A",[qty]*[bill-rt],0)) AS BillSum, Sum(IIf([type]="B",[qty]*[Pay-rt],0)) AS PaySum, Sum(IIf([type]="A",[qty],0)) AS ASum, Sum(IIf([type]="B",[qty],0)) AS BSum, IIf([ASUm]=0,0,[BillSum]/[ASum]) AS ARatio, IIf([BSum]=0,0,[PaySum]/[ASum]) AS BRatio
FROM iifBill
GROUP BY iifBill.period) AS tbl;

Result:
period      BillSum      PaySum      ASum      BSum      ARatio      BRatio
July      2600      2400      200      200      13      12
June      3400      3000      300      300      11.3333333333333      10
0
 
jimbofish8Author Commented:
GrayL, i like your suggestion about using aliases' however, I need to transpose the resource types into columns... So, your solution doesn't really work for me. will keep trying down this list..
0
 
jimbofish8Author Commented:
hrmm these solutions still don't work. maybe i wasn't explicit in the case that i'm trying to eliminate

Sometimes there is:
Transaction Period   |   Qty  |  Bill_Rt   | Pay_Rt  |  Type
Aug                               0                          10         LAB
Aug                               0            0                          REV

In this case the Augus value would have #Error in both Bill_rt and Pay_rt because there is a 0 value as a divisor.. How can I avoid this?
0
 
hnasrCommented:
jimbofish8,
Can you tell me where is the problem in my comment?
0
 
jimbofish8Author Commented:
hnsar.. I can't get it to work. can you use the table names that i have in the code snippet?
0
 
hnasrCommented:
Try this model!
table:iifBill
query: iifBill_q

Good Luck!
iif.mdb
0
 
Vadim RappCommented:
jimbofish8, did you try mine?
0
 
jimbofish8Author Commented:
vadimrapp1, i don't know why your code keeps giving me a syntax error in the FROM clause... I don't know how to fix it.
0
 
jimbofish8Author Commented:
hnasr:your solution works, but I can't figure out how to add the additional fields I had in my first query? It seems that you're creating a table alias? Where do I put in the additional fields from [Master ABC Transactional]?
0
 
GRayLConnect With a Mentor Commented:
Create a small zero-to-null function in a standard module:

Public Function Zn(myVal) as Double) as Double

Zn = iif(myVal = 0, Null, myVal) ' <--This changes the zero value to a null

End Function

Now just wrap the fields in your Aggregate with the Zn() function to get rid of the divide-by-zero problem.  
0
 
hnasrCommented:
I used notepad,
1 Pasted my sql
2 Replace relevant field names as you suppliedin question.
3 Alias can be removed, but access puts a unique name as alias if ommited.
4 Alias is usefull if joining with other tables

SELECT [Transaction Period], BillSum, PaySum, ASum, BSum, ARatio, BRatio
FROM (SELECT [Master ABC Transactional].[Transaction Period], Sum(IIf([type]="A",[qty]*[Bill_rt],0)) AS BillSum, Sum(IIf([type]="B",[qty]*[pay_rt],0)) AS PaySum, Sum(IIf([type]="A",[qty],0)) AS ASum, Sum(IIf([type]="B",[qty],0)) AS BSum, IIf([ASUm]=0,0,[BillSum]/[ASum]) AS ARatio, IIf([BSum]=0,0,[PaySum]/[ASum]) AS BRatio FROM [Master ABC Transactional] GROUP BY [Master ABC Transactional].[Transaction Period])  AS tbl;

5  Modify if not exact, and insert it as an sql to a qwery in your database then try.
0
 
hnasrCommented:
<Where do I put in the additional fields from [Master ABC Transactional]?>
As you see from my comment, there is a nested sql.

Select nqField1, nqField2, nqField3, nqField4
FROM
(Select yourTable.Field1 AS nqField1, yourTable.Field2 AS nqField2, yourTable.Field3 AS nqField3, yourTable.Field4 AS nqField4 From yourTable);
0
 
jimbofish8Author Commented:
OK -- still not working. I was forced to upsize the database to a SQL server because it took 10 mins just to run a query on my machine and i couldn't force it to limit the number of records. each time it'd query the whole thing.

The code below doesn't work. I get the following error:
Server: Msg 207, Level 16, State 3, Line 1
Invalid column name 'BILL_RT_DIV'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'BILL_RT_NUM'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'BILL_RT_DIV'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PAY_RT_DIV'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PAY_RT_NUM'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PAY_RT_DIV'.

select Empl_id,empl_name,Cust_Id,Cust_name,ACCT_PD,BU,ProjType,FiscYr,
SUM(CASE WHEN Res_Type = 'REV' THEN Amount ELSE NULL END) AS REV_AMT,
SUM(CASE WHEN Res_Type = 'LAB' THEN Amount ELSE NULL END) AS LAB_AMT,
SUM(CASE WHEN Res_Type = 'EXP' THEN Amount ELSE NULL END) AS EXP_AMT,
SUM(CASE WHEN Res_Type = 'PDO' THEN Amount ELSE NULL END) AS PDO_AMT,
SUM(CASE WHEN Res_Type = 'HOL' THEN Amount ELSE NULL END) AS HOL_AMT,
SUM(CASE WHEN Res_Type = 'NBS' THEN Amount ELSE NULL END) AS NBS_AMT,
SUM(CASE WHEN Res_Type = 'FRG' THEN Amount ELSE NULL END) AS FRG_AMT,
SUM(CASE WHEN Res_Type = 'TAX' THEN Amount ELSE NULL END) AS TAX_AMT,
SUM(CASE WHEN Res_Type = 'RCT' THEN Amount ELSE NULL END) AS RCT_AMT,
SUM(CASE WHEN Res_Type = 'SUP' THEN Amount ELSE NULL END) AS SUP_AMT,
 
SUM(CASE WHEN Res_Type = 'LAB' AND QUANTITY<>0 AND PAY_RT<>0 THEN (PAY_RT * QUANTITY) ELSE 0 END) AS PAY_RT_NUM,
SUM(CASE WHEN Res_Type = 'LAB' AND QUANTITY<>0 AND PAY_RT<>0 THEN (QUANTITY) ELSE 0 END) AS PAY_RT_DIV,
SUM(CASE WHEN Res_Type = 'REV' AND QUANTITY<>0 AND BILL_RT<>0 THEN (BILL_RT*QUANTITY) ELSE 0 END) AS BILL_RT_NUM,
SUM(CASE WHEN Res_Type = 'REV' AND QUANTITY<>0 AND BILL_RT<>0 THEN (QUANTITY) ELSE 0 END) AS BILL_RT_DIV,
 
CASE WHEN BILL_RT_DIV = 0 THEN 0 ELSE (BILL_RT_NUM / BILL_RT_DIV) END AS AVG_BILL_RT,
CASE WHEN PAY_RT_DIV = 0 THEN 0 ELSE (PAY_RT_NUM / PAY_RT_DIV) END AS AVG_BILL_RT
 
from dbo.[Master CC Transactional] 
GROUP BY Cust_Id,ACCT_PD,cust_name,Empl_id,empl_name,BU, ProjType,FiscYr order by empl_id desc

Open in new window

0
 
jimbofish8Author Commented:
I also tried using hsnar's code directly, modifying it as needed for SQL server, but it doens't work either... Has the following error.


Server: Msg 207, Level 16, State 3, Line 1
Invalid column name 'REV'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'EXP'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'REV'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'EXP'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'BSum'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'BillSum'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'BSum'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PSum'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PaySum'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name 'PSum'.
SELECT Acct_Pd, BillSum, PaySum, BSum, BSum, PRatio, BRatio
FROM (SELECT [Master CC Transactional].Acct_Pd, 
Sum(CASE WHEN res_type = "REV" THEN quantity * bill_rt ELSE 0 END) AS BillSum,
Sum(CASE WHEN res_type = "EXP" THEN quantity * pay_rt ELSE 0 END) AS PaySum,
Sum(CASE WHEN res_type = "REV" THEN quantity ELSE 0 END) AS BSum,
Sum(CASE WHEN res_type = "EXP" THEN quantity ELSE 0 END) AS PSum,
CASE WHEN BSum = 0 THEN 0 ELSE BillSum / BSum END AS BRatio,
CASE WHEN PSum = 0 THEN 0 ELSE PaySum / PSum END AS PRatio
 
FROM [Master CC Transactional] 
GROUP BY [Master CC Transactional].[Acct_Pd])  AS tbl;

Open in new window

0
 
GRayLCommented:
I think you would be better off running the query I showed you, and then cross tab that result.  If you want to go there,  acknowledge.
0
 
jimbofish8Author Commented:
I can't run it on Access anymore... it takes 10 minutes to query.

anybody with T-SQL experience?
0
 
hnasrCommented:
jimbofish8,

<OK -- still not working. I was forced to upsize the database to a SQL server because it took 10 mins just ....>
Troubleshooting a problem, you need few records at first, then optimize and run on full.
<I also tried using hsnar's code directly, modifying it as needed for SQL server, but it doens't work either... Has the following error.


Server: Msg 207, Level 16, State 3, Line 1
Invalid column name 'REV'.>
If the code given works in access Then
-----This problem is resolved
----- Start a new question to use SQL
Else
-----If you still want to continue using access
---------Attach a small database with test data that recreates the problem
-----End if
End if
0
 
jimbofish8Author Commented:
OK -- I got it worked

Thx for the tips on troubleshooting.
ALTER   VIEW dbo.[CC Summarized]
AS
select top 50 sell_dist, Empl_id,empl_name,Cust_Id,Cust_name,ACCT_PD,BU, ProjType,FiscYr,
COALESCE(SUM(CASE WHEN Res_Type = 'REV' THEN Amount ELSE NULL END),0) AS REV_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'LAB' THEN Amount ELSE NULL END),0) AS LAB_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'EXP' THEN Amount ELSE NULL END),0) AS EXP_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'PDO' THEN Amount ELSE NULL END),0) AS PDO_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'HOL' THEN Amount ELSE NULL END),0) AS HOL_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'NBS' THEN Amount ELSE NULL END),0) AS NBS_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'FRG' THEN Amount ELSE NULL END),0) AS FRG_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'TAX' THEN Amount ELSE NULL END),0) AS TAX_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'RCT' THEN Amount ELSE NULL END),0) AS RCT_AMT,
COALESCE(SUM(CASE WHEN Res_Type = 'SUP' THEN Amount ELSE NULL END),0) AS SUP_AMT,
ISNULL(SUM(CASE WHEN Res_Type = 'LAB' AND QUANTITY<>0 AND PAY_RT<>0 THEN (PAY_RT*QUANTITY) ELSE 0 END)/NULLIF(SUM(CASE WHEN (Res_type = 'LAB' AND QUANTITY<>0 AND PAY_RT<>0) THEN Quantity  
      ELSE null END),0),0) AS PAY_RT,
ISNULL(SUM(CASE WHEN Res_Type = 'REV' AND QUANTITY<>0 AND BILL_RT<>0 THEN (BILL_RT*QUANTITY) ELSE 0 END)/NULLIF(SUM(CASE WHEN (Res_type = 'REV' AND QUANTITY<>0 AND BILL_RT<>0) THEN Quantity  
      ELSE null END),0),0) AS BILL_RT
from dbo.[Master CC Transactional] 
GROUP BY Cust_Id,ACCT_PD,cust_name,Empl_id,empl_name,BU, ProjType,FiscYr,BU,Sell_Dist order by empl_id desc

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.