USP_DATAFORMTEMPLATE_EDIT_SALESDEPOSITPROCESSPREPROCESS
The save procedure used by the edit dataform template "Sales Deposit Preprocess Edit 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. |
@UNDEFINEDPAYMENTTYPE | xml | IN | You must add the following payment methods to an existing or new deposit template before you can run the process. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SALESDEPOSITPROCESSPREPROCESS
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@UNDEFINEDPAYMENTTYPE xml
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
if @UNDEFINEDPAYMENTTYPE is not null
begin
insert into dbo.[SALESDEPOSITTEMPLATEPAYMENTMETHOD]
(
[ID],
[SALESDEPOSITTEMPLATEID],
[PAYMENTMETHODCODE],
[CREDITTYPECODEID],
[OTHERPAYMENTMETHODCODEID],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED]
)
select
newid(),
T.paymenttype.value('(SALESDEPOSITTEMPLATEID)[1]', 'uniqueidentifier'),
T.paymenttype.value('(PAYMENTMETHODCODE)[1]', 'tinyint'),
case when (T.paymenttype.value('(PAYMENTMETHODCODE)[1]', 'tinyint') = 2) then
T.paymenttype.value('(CREDITTYPECODEID)[1]', 'uniqueidentifier')
else null end,
case when (T.paymenttype.value('(PAYMENTMETHODCODE)[1]', 'tinyint') = 10) then
T.paymenttype.value('(OTHERPAYMENTMETHODCODEID)[1]', 'uniqueidentifier')
else null end,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
from @UNDEFINEDPAYMENTTYPE.nodes('/UNDEFINEDPAYMENTTYPE/ITEM') T(paymenttype)
end
return 0;