USP_DATAFORMTEMPLATE_EDIT_SALESORDERITEMGENERIC
The save procedure used by the edit dataform template "Sales Order Item Generic Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@SALESORDERID | uniqueidentifier | IN | |
@TYPECODE | tinyint | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@QUANTITY | decimal(18, 0) | IN | |
@AMOUNT | money | IN | |
@DATA | xml | IN | |
@OPTIONS | xml | IN | |
@CALLBACKURL | nvarchar(255) | IN | |
@SYSTEMTYPENAME | nvarchar(255) | IN | |
@ASSEMBLYNAME | nvarchar(255) | IN | |
@ATTRIBUTES | xml | IN | |
@CATEGORYNAME | nvarchar(255) | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@ACKNOWLEDGEMENT | nvarchar(max) | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SALESORDERITEMGENERIC
(
@ID uniqueidentifier,
@SALESORDERID uniqueidentifier,
@TYPECODE tinyint,
@DESCRIPTION nvarchar(255),
@QUANTITY decimal,
@AMOUNT money,
@DATA xml,
@OPTIONS xml,
@CALLBACKURL nvarchar(255),
@SYSTEMTYPENAME nvarchar(255),
@ASSEMBLYNAME nvarchar(255),
@ATTRIBUTES xml,
@CATEGORYNAME nvarchar(255),
@CHANGEAGENTID uniqueidentifier = null,
@ACKNOWLEDGEMENT nvarchar(max)
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
-- handle updating the data
merge dbo.[SALESORDERITEM] as [TARGET]
using (select @ID as ID) as [SOURCE]
on (TARGET.ID = SOURCE.ID)
when matched then
update
set
DESCRIPTION = @DESCRIPTION,
PRICE = @AMOUNT,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
DATA = @DATA,
OPTIONS = @OPTIONS,
CALLBACKURL = @CALLBACKURL,
SYSTEMTYPENAME = @SYSTEMTYPENAME,
ASSEMBLYNAME = @ASSEMBLYNAME,
ATTRIBUTES = @ATTRIBUTES,
CATEGORYNAME = @CATEGORYNAME,
ACKNOWLEDGEMENT = @ACKNOWLEDGEMENT,
SALESORDERID = @SALESORDERID,
TYPECODE = @TYPECODE
when not matched then
insert (
ID,
SALESORDERID,
TYPECODE,
DESCRIPTION,
QUANTITY,
PRICE,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED,
DATA,
OPTIONS,
CALLBACKURL,
SYSTEMTYPENAME,
ASSEMBLYNAME,
ATTRIBUTES,
CATEGORYNAME,
ACKNOWLEDGEMENT
)
values (
@ID,
@SALESORDERID,
@TYPECODE,
@DESCRIPTION,
@QUANTITY,
@AMOUNT,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE,
@DATA,
@OPTIONS,
@CALLBACKURL,
@SYSTEMTYPENAME,
@ASSEMBLYNAME,
@ATTRIBUTES,
@CATEGORYNAME,
@ACKNOWLEDGEMENT
);
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0