利用SQL新增推式生单配置的目的单据的实体记录
U9C没有内置的话,Base_PushToDocTypeConfig表没有TargetEntity时,目的单据无法选择相对应的单据进行配置
比如想配置一个收货单转资产卡片的单据类型映射配置,但是无法选择资产卡片
在后台新增一条记录到Base_PushToDocTypeConfig的方式经测试有效,特此记录
declare @Application bigint -- 目的单据的所在应用ID
declare @ID bigint=3009001001 -- 生单规则配置的ID
declare @TargetEntity bigint -- 来源单据实体ID
declare @SourceEntity bigint -- 目的单据实体ID
declare @AttrExpression1 nvarchar(50) -- 属性表达式1
declare @AttrType1 nvarchar(50) -- 属性类型1
declare @UIParam1 nvarchar(50) -- UI参数1
declare @ParamName1 nvarchar(50) -- 参数名称1
declare @UserAttr1 nvarchar(50) -- 使用条件1
select @Application=ID from [Base_Application_Trl] where Name=N'固定资产'
select @SourceEntity=A.[Local_ID] FROM UBF_MD_Class as A
inner join [UBF_MD_Class_Trl] as A1 on (A1.SysMlFlag = 'zh-CN') and (A.[Local_ID] = A1.[Local_ID])
where A1.[DisplayName] = N'库存杂发单'
select @TargetEntity=A.[Local_ID] FROM UBF_MD_Class as A
inner join [UBF_MD_Class_Trl] as A1 on (A1.SysMlFlag = 'zh-CN') and (A.[Local_ID] = A1.[Local_ID])
where A1.[DisplayName] = N'资产卡片'
-- 来源单据类型的一些绑定属性
select top 1 @AttrExpression1=AttrExpression1,@AttrType1=AttrType1,@UIParam1=UIParam1,@ParamName1=ParamName1,@UserAttr1=UserAttr1
from Base_PushToDocTypeConfig where SourceEntity=@SourceEntity and AttrExpression1='SrcDocType' and ParamName1='SrcDocType'
delete Base_PushToDocTypeConfig where ID=@ID
delete Base_PushToDocTypeConfig_Trl where ID=@ID
-- UIParam1 来源单据类型的FormID
-- TargetDocTypeReference 目的单据类型的FormID
insert into Base_PushToDocTypeConfig(ID,CreatedOn,CreatedBy,SysVersion,Application,SourceEntity,TargetEntity,AttrExpression1,AttrType1,UIParam1,TargetDocTypeReference,ParamName1,UserAttr1)
values(@ID,GETDATE(),'admin',0,@Application,@SourceEntity,@TargetEntity,@AttrExpression1,@AttrType1,@UIParam1,'354d46a6-cdcf-4624-864c-d5ff9a6a6830',@ParamName1,@UserAttr1)
insert into Base_PushToDocTypeConfig_Trl(id,SysMLFlag,AttrName1) values(@ID,'zh-CN',N'来源单据类型')
哥哥666