Differences

This shows you the differences between two versions of the page.

Link to this comparison view

control_sql_-_order_deposit_integrity_check [2019/01/27 11:29]
127.0.0.1 external edit
control_sql_-_order_deposit_integrity_check [2019/02/05 11:29] (current)
admin
Line 22: Line 22:
  
 <code sql> <code sql>
-select ​ +SELECT ​ 
- (select ​DivisionName  +    (SELECT ​DivisionName  
- from Division  +        ​FROM ​Division  
- where ​A.DivisionID = Division.ID) ​as Division, +        ​WHERE ​A.DivisionID = Division.ID) ​AS Division, 
- (Select ​OrderNumber  +    (SELECT ​OrderNumber  
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as OrderNumber,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS OrderNumber,​ 
- GLCredit,  +    GLCredit,  
- (Select ​PaymentTotal +    (SELECT ​PaymentTotal 
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as PaymentTotal,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS PaymentTotal,​ 
- coalesce(GLCredit, 0) - coalesce(B.PaymentTotal,​ 0) Difference,  +    ​COALESCE(GLCredit, 0) - COALESCE(B.PaymentTotal,​ 0) Difference,  
- (Select ​StatusText +    (SELECT ​StatusText 
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as StatusText,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS StatusText,​ 
- coalesce(THTransHeaderID,​ GLTransHeaderID) ​as TransHeaderID,​ +    ​COALESCE(THTransHeaderID,​ GLTransHeaderID) ​AS TransHeaderID,​ 
- (select max(EntryDateTime)  +    (SELECT MAX(EntryDateTime)  
- from GL GL2  +        ​FROM ​GL GL2  
- where ​GL2.TransactionID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as LastGLEntryDate +        ​WHERE ​GL2.TransactionID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS LastGLEntryDate 
-from+FROM
 ( (
- select coalesce(DivisionID,​ 10) as DivisionID,​ +    SELECT COALESCE(DivisionID,​ 10) AS DivisionID,​ 
- TransactionID ​as GLTransHeaderID,​  +        TransactionID ​AS GLTransHeaderID,​  
- -sum(Amount) GLCredit +        -SUM(Amount) GLCredit 
- from GL +    ​FROM ​GL 
- where GLAccountID = 24  +    ​WHERE ​GLAccountID = 24  
- group by Coalesce(DivisionID,​ 10), TransactionID +    GROUP BY COALESCE(DivisionID,​ 10), TransactionID 
- having sum(Amount) ​ +    ​HAVING SUM(Amount) ​<> ​
-as +AS 
-full join+  
 +FULL JOIN
 ( (
- select ID as THTransHeaderID,​  +    SELECT ​    ID AS THTransHeaderID,​  
- OrderNumber,​  +        OrderNumber,​  
- PaymentTotal,​  +        PaymentTotal,​  
- StatusText +        StatusText 
- from TransHeader +    ​FROM ​TransHeader 
- where StatusID ​in (1,2) and (PaymentTotal ​ 0) +    ​WHERE ​StatusID ​IN (1,2) AND (PaymentTotal ​<> ​0) 
-as on A.GLTransHeaderID = B.THTransHeaderID +AS ON A.GLTransHeaderID = B.THTransHeaderID 
-where coalesce(A.GLCredit,​ 0)  ​coalesce(B.PaymentTotal,​ 0) +  
-order by Division, OrderNumber+WHERE COALESCE(A.GLCredit,​ 0) <> COALESCE(B.PaymentTotal,​ 0) 
 +  
 +ORDER BY Division, OrderNumber
 </​code>​ </​code>​
  
Line 71: Line 74:
  
 <code sql> <code sql>
-select ​ +SELECT ​ 
- (select ​DivisionName ​as Division  +    (SELECT ​DivisionName ​AS Division  
- from EmployeeGroup  +        ​FROM ​EmployeeGroup  
- where ​A.DivisionID = EmployeeGroup.ID) ​as Division, +        ​WHERE ​A.DivisionID = EmployeeGroup.ID) ​AS Division, 
- (Select ​OrderNumber  +    (SELECT ​OrderNumber  
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as OrderNumber,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS OrderNumber,​ 
- GLCredit,  +    GLCredit,  
- (Select ​(PaymentTotal - (TotalPrice * PercentComplete/​100))  +    (SELECT ​(PaymentTotal - (TotalPrice * PercentComplete/​100))  
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as DepositAmount,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS DepositAmount,​ 
- coalesce(GLCredit, 0) - coalesce(B.DepositAmount,​ 0) Difference,  +    ​COALESCE(GLCredit, 0) - COALESCE(B.DepositAmount,​ 0) Difference,  
- (Select ​StatusText +    (SELECT ​StatusText 
- from TransHeader  +        ​FROM ​TransHeader  
- where ​ID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as StatusText,​ +        ​WHERE ​ID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS StatusText,​ 
- coalesce(THTransHeaderID,​ GLTransHeaderID) ​as TransHeaderID,​ +    ​COALESCE(THTransHeaderID,​ GLTransHeaderID) ​AS TransHeaderID,​ 
- PercentComplete,​ +    PercentComplete,​ 
- (select max(EntryDateTime)  +    (SELECT MAX(EntryDateTime)  
- from GL GL2  +        ​FROM ​GL GL2  
- where ​GL2.TransactionID = coalesce(THTransHeaderID,​ GLTransHeaderID)) ​as LastGLEntryDate +        ​WHERE ​GL2.TransactionID = COALESCE(THTransHeaderID,​ GLTransHeaderID)) ​AS LastGLEntryDate 
-from+FROM
 ( (
- select coalesce(DivisionID,​ 10) as DivisionID,​ +    SELECT COALESCE(DivisionID,​ 10) AS DivisionID,​ 
- TransactionID ​as GLTransHeaderID,​  +        TransactionID ​AS GLTransHeaderID,​  
- -sum(Amount) GLCredit +        -SUM(Amount) GLCredit 
- from GL +    ​FROM ​GL 
- where GLAccountID = 24  +    ​WHERE ​GLAccountID = 24  
- group by Coalesce(DivisionID,​ 10), TransactionID +    GROUP BY COALESCE(DivisionID,​ 10), TransactionID 
- having sum(Amount) ​ +    ​HAVING SUM(Amount) ​<> ​
-as +AS 
-full join+  
 +FULL JOIN
 ( (
- select ID as THTransHeaderID,​  +    SELECT ​    ID AS THTransHeaderID,​  
- OrderNumber,​  +        OrderNumber,​  
- (PaymentTotal- (TotalPrice * PercentComplete/​100)) ​as DepositAmount,​  +        (PaymentTotal- (TotalPrice * PercentComplete/​100)) ​AS DepositAmount,​  
- StatusText,​ +        StatusText,​ 
- PercentComplete +        PercentComplete 
- from TransHeader +    ​FROM ​TransHeader 
- where StatusID ​in (1,2) and ((PaymentTotal- (TotalPrice * PercentComplete/​100)) > 0) +    ​WHERE ​StatusID ​IN (1,2) AND ((PaymentTotal- (TotalPrice * PercentComplete/​100)) > 0) 
-as on A.GLTransHeaderID = B.THTransHeaderID +AS ON A.GLTransHeaderID = B.THTransHeaderID 
-where coalesce(A.GLCredit,​ 0)  ​coalesce(B.DepositAmount,​ 0) +  
-order by Division, OrderNumber+WHERE COALESCE(A.GLCredit,​ 0) <> COALESCE(B.DepositAmount,​ 0) 
 +  
 +ORDER BY Division, OrderNumber
 </​code>​ </​code>​