【脚本】总部填充无序号卡片的序号并同步至门店
2018-08-27    易林江
1065 0
对于管理软件与云端平台对接前,需要确保所有会员卡的卡片序号不为空,而由于二代产品是可以为空,所以需要执行此脚本确保所有卡片序号不为空,再做云端对接
  • 执行脚本

    Use EMSXDB
    Go
    begin tran
    --自定义编号
    declare @MyCode int 
    set @MyCode  = 11
    declare CardCursor Cursor for select Code,ShopCode From CRM_Card where Sn = ''
    Open CardCursor --开启游标
    declare @Code nvarchar(100),@ShopCode bigint
    set @ShopCode =0
    Fetch NEXT from CardCursor into @Code,@ShopCode
    while @@FETCH_Status = 0
    begin
        --临时编号
        declare @TempCode nvarchar(100)
        --生成临时编号,规则门店编号加三个0
        set @TempCode = @TempCode +convert(nvarchar(100),@ShopCode) +'000'
        --生产编号,临时编号转int加自定义编号
        set @TempCode = convert(nvarchar(100),convert(int,@TempCode)+@MyCode)
        
        --检查是否已经存在此SN
        declare @Flag bit
        
        if (select count(1) From CRM_Card where SN = @TempCode) > 0
            set @Flag = 1 
        else
            set @Flag = 0
        --循环检查
        While @flag = 1
        begin
            --生产新编号
            Set @TempCode = Convert(nvarchar(100),Convert(int,@TempCode)+1)
            --自定义编号+1
            set @MyCode = @MyCode+1
            
            if (select Count(1) From CRM_Card Where SN = @TempCode) >0
                Set @Flag = 1
            else
                Set @Flag = 0
        end
        
        --变更编号
        Update CRM_Card set SN = @TempCode where Code = @Code and ShopCode = @ShopCode
        --产生同步指令
        declare @sql nvarchar(max)
        set @sql = 'Update CRM_Card set SN = '''+@TempCode+''' where Code = '''+@Code + ''' And ShopCode = '''+@ShopCode+''''
        EXECUTE [EMSXDB].[dbo].[SYS_SyncPushToShop_InsertAsSQL] 0,@sql,0,30
        
        --打印数据
        print 'Code:'+@Code + ',新SN:'+@TempCode
        Fetch NEXT From CardCursor Into @Code,@ShopCode
    End

    Close CardCursor
    Deallocate CardCursor
    if @@error = 0
        commit tran
    else
        rollback tran

章节

该文章对您有用吗?

非常感谢,您的反馈对我们很有价值!

客服电话

4006757966

微信公众号

联系我们

印特3系演示版

申请

印特5系演示版

申请

免费试用

印特软件标准演示版下载申请

请您填写您的一些信息,提交您的申请后,我们会在两个工作日内进行处理,并回复您一封邮件,内附下载链接,请您注意查收。
*
请输入正确的公司名称
*
请输入正确的联络人员
*
请输入正确的联络电话
提交申请
关闭