|

楼主 |
发表于 2008-2-21 08:31:21
|
显示全部楼层
在关联文档表单,我上传了相同的文件,就会提示,大体意思是“不能上传同名文件”,根据错误提示, TDOCSYSTEM表的TDOCSYSTEM_UDN 约束违反了。所以我就把这个约束在sqlserver中去掉了。然后2楼的后台提示显示了,不过business使用正常。我觉得这样做不好。所以自己写了块代码:static function TzwjUtils.RelevencyDocFileExists(fileDisplayName:string):Boolean;
const
sStr='select FDISPLAYNAME from TDOCSYSTEM where FDISPLAYNAME=';
var
query1: TQuery;
begin
query1:=TQuery.Create(nil);
query1.ConnectionString:='DATABASEURL=Biz:\COLLABORATION\COLLABORATION.DATABASE';
query1.CommandText:=sStr+''''+fileDisplayName+'''';
query1.Open;
if query1.RecordCount>0 then
result:=true
else result:=false;
end; //来判断是否有相同显示名称的文件存在
----------------然后在文档关联表单中
procedure TRELEVANCYDOC.NewFileFromLocal(const AOSFileName: string); 过程中
。。。。。。。。。。。。
if not zwjUtils.TzwjUtils.RelevencyDocFileExists(lFileAttribute.DisplayName) then // 添加的
begin
TUnStructureDocUtils.NewFile(FDocOperationProvider.Resolver.DocContext,
lFileName, lFileAttribute);
AddListItem(lFileName, '', '', 0);
end
else begin
Dialogs.ShowMessage('文件 '''+lFileAttribute.DisplayName+''' 已经上传过了,要上传请改名');//防止上传同名文件,否则的话,即使上传的附件与其它时候上传附件显示名称相同的时候,也提示错误。
end; |
|