USP_DATAFORMTEMPLATE_EDIT_SALESORDERITEMDONATION_2
The save procedure used by the edit dataform template "Order Donation Edit Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@AMOUNT | money | IN | Amount |
@DESIGNATIONID | uniqueidentifier | IN | Designation |
@DESCRIPTION | nvarchar(255) | IN | Description |
@DATA | xml | IN | Data |
@ECARDSDATA | xml | IN | ECards Data |
@OPTIONS | xml | IN | Options |
@CALLBACKURL | nvarchar(255) | IN | Callback URL |
@SYSTEMTYPENAME | nvarchar(255) | IN | System Type Name |
@ASSEMBLYNAME | nvarchar(255) | IN | Assembly Name |
@ATTRIBUTES | xml | IN | Attributes |
@CATEGORYNAME | nvarchar(255) | IN | Category Name |
@ACKNOWLEDGEMENT | nvarchar(max) | IN | Acknowledgement |
@GROUPID | uniqueidentifier | IN | Group Id |
@ISZEROAMOUNTTRANSACTION | bit | IN | Is Zero Amount Transaction |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SALESORDERITEMDONATION_2
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@AMOUNT money,
@DESIGNATIONID uniqueidentifier,
@DESCRIPTION nvarchar(255),
@DATA xml,
@ECARDSDATA xml,
@OPTIONS xml,
@CALLBACKURL nvarchar(255),
@SYSTEMTYPENAME nvarchar(255),
@ASSEMBLYNAME nvarchar(255),
@ATTRIBUTES xml,
@CATEGORYNAME nvarchar(255),
@ACKNOWLEDGEMENT nvarchar(max),
@GROUPID uniqueidentifier,
@ISZEROAMOUNTTRANSACTION bit
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
declare @SALESORDERID uniqueidentifier
select @SALESORDERID = [SALESORDERID]
from dbo.[SALESORDERITEM]
where [ID] = @ID
exec dbo.USP_SALESORDER_ISCOMPLETE_RAISERROR @SALESORDERID, @EXCLUDEGROUPSALES = 1;
-- handle updating the data
declare @DESIGNATIONNAME nvarchar(512) = dbo.UFN_DESIGNATION_GETNAME(@DESIGNATIONID)
if len(@DESCRIPTION) > 0
set @DESIGNATIONNAME = @DESCRIPTION
if @DESIGNATIONNAME is not null
update dbo.SALESORDERITEM set
DESCRIPTION = left(@DESIGNATIONNAME, 255),
PRICE = @AMOUNT,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
DATA = @DATA,
OPTIONS = @OPTIONS,
CALLBACKURL = @CALLBACKURL,
SYSTEMTYPENAME = @SYSTEMTYPENAME,
ASSEMBLYNAME = @ASSEMBLYNAME,
ATTRIBUTES = @ATTRIBUTES,
CATEGORYNAME = @CATEGORYNAME,
ACKNOWLEDGEMENT = @ACKNOWLEDGEMENT
where ID = @ID
update dbo.SALESORDERITEMDONATION set
DESIGNATIONID = @DESIGNATIONID,
DESIGNATIONNAME = coalesce(@DESIGNATIONNAME,''),
AMOUNT = @AMOUNT,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
ECARDSDATA = @ECARDSDATA,
ISZEROAMOUNTTRANSACTION = @ISZEROAMOUNTTRANSACTION
where ID = @ID
if @GROUPID is not null
update dbo.SALESORDERITEMGROUP set
GROUPID = @GROUPID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;