Difference between revisions of "Dbo.uspLogError (procedure)"
Line 2: | Line 2: | ||
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | {| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | ||
− | |- | + | |- valign="top" |
| '''Procedure | | '''Procedure | ||
| dbo.uspLogError | | dbo.uspLogError | ||
Line 8: | Line 8: | ||
| '''Description | | '''Description | ||
| Logs error information in the ErrorLog table about the error that caused execution to jump to the CATCH block of a TRY...CATCH construct. Should be executed from within the scope of a CATCH block otherwise it will return without inserting error information. | | Logs error information in the ErrorLog table about the error that caused execution to jump to the CATCH block of a TRY...CATCH construct. Should be executed from within the scope of a CATCH block otherwise it will return without inserting error information. | ||
− | |||
|} | |} | ||
− | |||
=== Source === | === Source === | ||
Line 83: | Line 81: | ||
| '''Referenced Object | | '''Referenced Object | ||
− | |- | + | |- valign="top" |
| Insert | | Insert | ||
| Table | | Table | ||
− | | [[dbo.ErrorLog_(table)|dbo.ErrorLog]] | + | | [[dbo.ErrorLog_(_(table))|dbo.ErrorLog]] |
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Procedure | | Procedure | ||
− | | [[dbo.uspPrintError_(procedure)|dbo.uspPrintError]] | + | | [[dbo.uspPrintError_(_(procedure))|dbo.uspPrintError]] |
|} | |} | ||
Line 105: | Line 103: | ||
| '''Child Object | | '''Child Object | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Procedure | | Procedure | ||
− | | [[HumanResources.uspUpdateEmployeeHireInfo_(procedure)|HumanResources.uspUpdateEmployeeHireInfo]] | + | | [[HumanResources.uspUpdateEmployeeHireInfo_(_(procedure))|HumanResources.uspUpdateEmployeeHireInfo]] |
| | | | ||
| | | | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Procedure | | Procedure | ||
− | | [[HumanResources.uspUpdateEmployeeLogin_(procedure)|HumanResources.uspUpdateEmployeeLogin]] | + | | [[HumanResources.uspUpdateEmployeeLogin_(_(procedure))|HumanResources.uspUpdateEmployeeLogin]] |
| | | | ||
| | | | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Procedure | | Procedure | ||
− | | [[HumanResources.uspUpdateEmployeePersonalInfo_(procedure)|HumanResources.uspUpdateEmployeePersonalInfo]] | + | | [[HumanResources.uspUpdateEmployeePersonalInfo_(_(procedure))|HumanResources.uspUpdateEmployeePersonalInfo]] |
| | | | ||
| | | | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Production.WorkOrder_(table)|Production.WorkOrder]] | + | | [[Production.WorkOrder_(_(table))|Production.WorkOrder]] |
| Trigger | | Trigger | ||
| iWorkOrder | | iWorkOrder | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Production.WorkOrder_(table)|Production.WorkOrder]] | + | | [[Production.WorkOrder_(_(table))|Production.WorkOrder]] |
| Trigger | | Trigger | ||
| uWorkOrder | | uWorkOrder | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Purchasing.PurchaseOrderDetail_(table)|Purchasing.PurchaseOrderDetail]] | + | | [[Purchasing.PurchaseOrderDetail_(_(table))|Purchasing.PurchaseOrderDetail]] |
| Trigger | | Trigger | ||
| iPurchaseOrderDetail | | iPurchaseOrderDetail | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Purchasing.PurchaseOrderDetail_(table)|Purchasing.PurchaseOrderDetail]] | + | | [[Purchasing.PurchaseOrderDetail_(_(table))|Purchasing.PurchaseOrderDetail]] |
| Trigger | | Trigger | ||
| uPurchaseOrderDetail | | uPurchaseOrderDetail | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Purchasing.PurchaseOrderHeader_(table)|Purchasing.PurchaseOrderHeader]] | + | | [[Purchasing.PurchaseOrderHeader_(_(table))|Purchasing.PurchaseOrderHeader]] |
| Trigger | | Trigger | ||
| uPurchaseOrderHeader | | uPurchaseOrderHeader | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Purchasing.Vendor_(table)|Purchasing.Vendor]] | + | | [[Purchasing.Vendor_(_(table))|Purchasing.Vendor]] |
| Trigger | | Trigger | ||
| dVendor | | dVendor | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Sales.SalesOrderDetail_(table)|Sales.SalesOrderDetail]] | + | | [[Sales.SalesOrderDetail_(_(table))|Sales.SalesOrderDetail]] |
| Trigger | | Trigger | ||
| iduSalesOrderDetail | | iduSalesOrderDetail | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Sales.SalesOrderHeader_(table)|Sales.SalesOrderHeader]] | + | | [[Sales.SalesOrderHeader_(_(table))|Sales.SalesOrderHeader]] |
| Trigger | | Trigger | ||
| uSalesOrderHeader | | uSalesOrderHeader | ||
− | |- | + | |- valign="top" |
| Execute | | Execute | ||
| Table | | Table | ||
− | | [[Sales.Store_(table)|Sales.Store]] | + | | [[Sales.Store_(_(table))|Sales.Store]] |
| Trigger | | Trigger |
Revision as of 22:59, 23 June 2010
wikibot
Procedure | dbo.uspLogError |
Description | Logs error information in the ErrorLog table about the error that caused execution to jump to the CATCH block of a TRY...CATCH construct. Should be executed from within the scope of a CATCH block otherwise it will return without inserting error information. |
Source
-- uspLogError logs error information in the ErrorLog table about the -- error that caused execution to jump to the CATCH block of a -- TRY...CATCH construct. This should be executed from within the scope -- of a CATCH block otherwise it will return without inserting error -- information. CREATE PROCEDURE [dbo].[uspLogError] @ErrorLogID [int] = 0 OUTPUT -- contains the ErrorLogID of the row inserted AS -- by uspLogError in the ErrorLog table BEGIN SET NOCOUNT ON; -- Output parameter value of 0 indicates that error -- information was not logged SET @ErrorLogID = 0; BEGIN TRY -- Return if there is no error information to log IF ERROR_NUMBER() IS NULL RETURN; -- Return if inside an uncommittable transaction. -- Data insertion/modification is not allowed when -- a transaction is in an uncommittable state. IF XACT_STATE() = -1 BEGIN PRINT 'Cannot log error since the current transaction is in an uncommittable state. ' + 'Rollback the transaction before executing uspLogError in order to successfully log error information.'; RETURN; END INSERT [dbo].[ErrorLog] ( [UserName], [ErrorNumber], [ErrorSeverity], [ErrorState], [ErrorProcedure], [ErrorLine], [ErrorMessage] ) VALUES ( CONVERT(sysname, CURRENT_USER), ERROR_NUMBER(), ERROR_SEVERITY(), ERROR_STATE(), ERROR_PROCEDURE(), ERROR_LINE(), ERROR_MESSAGE() ); -- Pass back the ErrorLogID of the row inserted SET @ErrorLogID = @@IDENTITY; END TRY BEGIN CATCH PRINT 'An error occurred in stored procedure uspLogError: '; EXECUTE [dbo].[uspPrintError]; RETURN -1; END CATCH END;
References
Dependency Type | Object Type | Referenced Object |
Insert | Table | dbo.ErrorLog |
Execute | Procedure | dbo.uspPrintError |
Dependencies
Reference Type | Object Type | Referencing Object | Child Type | Child Object |
Execute | Procedure | HumanResources.uspUpdateEmployeeHireInfo | ||
Execute | Procedure | HumanResources.uspUpdateEmployeeLogin | ||
Execute | Procedure | HumanResources.uspUpdateEmployeePersonalInfo | ||
Execute | Table | Production.WorkOrder | Trigger | iWorkOrder |
Execute | Table | Production.WorkOrder | Trigger | uWorkOrder |
Execute | Table | Purchasing.PurchaseOrderDetail | Trigger | iPurchaseOrderDetail |
Execute | Table | Purchasing.PurchaseOrderDetail | Trigger | uPurchaseOrderDetail |
Execute | Table | Purchasing.PurchaseOrderHeader | Trigger | uPurchaseOrderHeader |
Execute | Table | Purchasing.Vendor | Trigger | dVendor |
Execute | Table | Sales.SalesOrderDetail | Trigger | iduSalesOrderDetail |
Execute | Table | Sales.SalesOrderHeader | Trigger | uSalesOrderHeader |
Execute | Table | Sales.Store | Trigger | iStore |
automatically generated
procedure | dbo.uspLogError |
Description | Logs error information in the ErrorLog table about the error that caused execution to jump to the CATCH block of a TRY...CATCH construct. Should be executed from within the scope of a CATCH block otherwise it will return without inserting error information. |
-- uspLogError logs error information in the ErrorLog table about the -- error that caused execution to jump to the CATCH block of a -- TRY...CATCH construct. This should be executed from within the scope -- of a CATCH block otherwise it will return without inserting error -- information. CREATE PROCEDURE [dbo].[uspLogError] @ErrorLogID [int] = 0 OUTPUT -- contains the ErrorLogID of the row inserted AS -- by uspLogError in the ErrorLog table BEGIN SET NOCOUNT ON; -- Output parameter value of 0 indicates that error -- information was not logged SET @ErrorLogID = 0; BEGIN TRY -- Return if there is no error information to log IF ERROR_NUMBER() IS NULL RETURN; -- Return if inside an uncommittable transaction. -- Data insertion/modification is not allowed when -- a transaction is in an uncommittable state. IF XACT_STATE() = -1 BEGIN PRINT 'Cannot log error since the current transaction is in an uncommittable state. ' + 'Rollback the transaction before executing uspLogError in order to successfully log error information.'; RETURN; END INSERT [dbo].[ErrorLog] ( [UserName], [ErrorNumber], [ErrorSeverity], [ErrorState], [ErrorProcedure], [ErrorLine], [ErrorMessage] ) VALUES ( CONVERT(sysname, CURRENT_USER), ERROR_NUMBER(), ERROR_SEVERITY(), ERROR_STATE(), ERROR_PROCEDURE(), ERROR_LINE(), ERROR_MESSAGE() ); -- Pass back the ErrorLogID of the row inserted SET @ErrorLogID = @@IDENTITY; END TRY BEGIN CATCH PRINT 'An error occurred in stored procedure uspLogError: '; EXECUTE [dbo].[uspPrintError]; RETURN -1; END CATCH END;
Dependency Type | Object Type | Referenced Object |
Insert | Table | dbo.ErrorLog |
Execute | Procedure | dbo.uspPrintError |
Reference Type | Object Type | Referencing Object | Child Type | Child Object |
Execute | Procedure | HumanResources.uspUpdateEmployeeHireInfo | ||
Execute | Procedure | HumanResources.uspUpdateEmployeeLogin | ||
Execute | Procedure | HumanResources.uspUpdateEmployeePersonalInfo | ||
Execute | Table | Production.WorkOrder | Trigger | iWorkOrder |
Execute | Table | Production.WorkOrder | Trigger | uWorkOrder |
Execute | Table | Purchasing.PurchaseOrderDetail | Trigger | iPurchaseOrderDetail |
Execute | Table | Purchasing.PurchaseOrderDetail | Trigger | uPurchaseOrderDetail |
Execute | Table | Purchasing.PurchaseOrderHeader | Trigger | uPurchaseOrderHeader |
Execute | Table | Purchasing.Vendor | Trigger | dVendor |
Execute | Table | Sales.SalesOrderDetail | Trigger | iduSalesOrderDetail |
Execute | Table | Sales.SalesOrderHeader | Trigger | uSalesOrderHeader |
Execute | Table | Sales.Store | Trigger | iStore |