USP_DATAFORMTEMPLATE_EDITSAVE_COUNTRY_2

The save procedure used by the edit dataform template "Country Edit Form 2".

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.
@DESCRIPTION nvarchar(100) IN Description
@ABBREVIATION nvarchar(5) IN Abbreviation
@COUNTRYADDRESSFORMATID uniqueidentifier IN Address format
@INACTIVE bit IN Inactive
@ALLOWVALIDATION bit IN Allow address validation
@VALIDATIONCOUNTRYCODE tinyint IN Validate as

Definition

Copy


create procedure dbo.USP_DATAFORMTEMPLATE_EDITSAVE_COUNTRY_2
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@DESCRIPTION nvarchar(100),
@ABBREVIATION nvarchar(5),
@COUNTRYADDRESSFORMATID uniqueidentifier,
@INACTIVE bit,
@ALLOWVALIDATION bit,
@VALIDATIONCOUNTRYCODE tinyint
)
AS

set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();

if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

begin try
    update dbo.Country set
        DESCRIPTION = @DESCRIPTION,
        ABBREVIATION = @ABBREVIATION,
        COUNTRYADDRESSFORMATID = @COUNTRYADDRESSFORMATID,
        ACTIVE = ~ @INACTIVE,
        CHANGEDBYID = @CHANGEAGENTID,
        DATECHANGED = @CURRENTDATE
    where ID = @ID;

    if @VALIDATIONCOUNTRYCODE is null or @ALLOWVALIDATION = 0
        set @VALIDATIONCOUNTRYCODE = 0;

    if exists(select ID from dbo.COUNTRYVALIDATIONINFO where ID = @ID)
        update dbo.COUNTRYVALIDATIONINFO set
            ALLOWVALIDATION = @ALLOWVALIDATION,
            VALIDATIONCOUNTRYCODE = @VALIDATIONCOUNTRYCODE,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
        where ID = @ID;
    else
        insert into dbo.COUNTRYVALIDATIONINFO
            (ID, ALLOWVALIDATION, VALIDATIONCOUNTRYCODE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
        values
            (@ID, @ALLOWVALIDATION, @VALIDATIONCOUNTRYCODE, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);

end try
begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0;