You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
709 B

1 year ago
  1. alter proc Proc_SaveLuckyDraw (
  2. @flag varchar(2)
  3. ,@user varchar(50)
  4. ,@xml NVARCHAR(MAX) = NULL
  5. ) as
  6. SET NOCOUNT ON
  7. IF @flag='i'
  8. BEGIN
  9. BEGIN TRY
  10. BEGIN TRAN
  11. DECLARE @xmlData XML
  12. SET @xmlData = CAST(@xml AS XML)
  13. INSERT INTO dbo.LuckyDrawConfig(LuckyDrawFor,Gift,IsProcessed)
  14. SELECT
  15. LuckyDrawFor = XCol.value('(LuckyDrawFor)[1]','varchar(100)'),
  16. Gift = XCol.value('(Gift)[1]','varchar(100)'),
  17. IsProcessed = 0
  18. FROM @xmlData.nodes('/ArrayOfLuckydraw/Luckydraw') AS XTbl(XCol)
  19. COMMIT
  20. EXEC proc_errorHandler 0, 'Record save Successfully ', ''
  21. END TRY
  22. BEGIN CATCH
  23. IF @@TRANCOUNT > 0
  24. ROLLBACK
  25. EXEC proc_errorHandler 1, 'Failed to save record.', ''
  26. END CATCH
  27. RETURN
  28. END