Lotus Notes视图中

时间:2016-09-07 02:50:45

标签: lotus-notes lotus-domino

在Lotus Notes中,我有一个列有PolicyNum的视图。要求是双击要打开的文档,这将打开视图中表单中的附件,必须根据计算字段验证,说明包含是或否的SecureDoc。 对于客户端版本,这很简单,就像在queryopen中一样,如果条件不符合正确的消息框,则验证并退出。

但是对于网络版本,该列显示为链接,并且消息框必须在JS中显示为alertbox。在PolicyNum列中,我尝试使用@GetField(“SecureDoc”),它将获取该特定文档的字段值。

列公式:

furl:=“javascript:alert('文档不可用');返回false”; OpenDisp:=“[”+ PolicyNumber +“]”; secDoc:= @ getfield命令( “SecureDoc”);

@If(att =“”; OpenDoc; secDoc =“是”; OpenDisp; OpenAttach)

这里的OpenDoc和OpenAttach是不同的字符串,它们将分别根据att来打开文档和附件,它会检查附件。@ GetField(“SecureDoc”)返回“”。因此,如果我写@If(att =“”; OpenDoc; secDoc =“”; OpenDisp; OpenAttach),它会显示警告框并且工作正常。 因此,要求是获取要在Web上单击的特定文档的字段值的句柄并检查条件。 webqueryopen也无法正常工作.. 注意:打开文档时,它会打开表单中的附件而不是表单本身。 列值:

view := "0";
att := @AttachmentNames;
WebName := @WebDbName ;
url := "'/" + WebName + "/" + view + "/" + @Text(@DocumentUniqueID) + "/$File/" + att + "?OpenElement'";
url := "window.open(" + url + ");" ;
url := @Implode(url; ";");
url := "javascript:" + url + " return false;\" href=\"javascript:void(0);";
furl:="javascript:alert('Document not available');return false";
OpenAttach := "[<TABLE><TR><TD NOWRAP><a  target=_blank onClick=\"" + url + "\">" + PolicyNumber + "</a></TD></TR></TABLE>]";
OpenDoc := "[<TABLE><TR><TD NOWRAP><a href=\"/" + WebName + "/" + @Subset(@ViewTitle; -1) + "/" + @Text(@DocumentUniqueID)  + "?OpenDocument\">" + PolicyNumber + "</a></TD></TR></TABLE>]";
OpenDisp:="[<TABLE><TR><TD NOWRAP><a  target=_blank onClick=\"" + furl + "\">" + PolicyNumber + "</a></TD></TR></TABLE>]";
secDoc:=@GetField("prevSecDoc");
@If(att = "" ; OpenDoc ;secDoc="Yes";OpenDisp;OpenAttach)

我尝试过@If(att =“”; OpenDoc; secDoc =“是”; OpenDisp; OpenAttach)和@If(att =“”; OpenDoc; prevSecDoc =“是”; OpenDisp; OpenAttach)但是它没有得到“是”的价值。虽然当我通过提供docid的URL打开文档时,它的值为“是”

1 个答案:

答案 0 :(得分:1)

快速回归基础知识:文档是数据库中的记录,表单是表单,它确定用户输入数据的方式和控制显示。

请允许我重新提一下你的问题。如果文档包含名为“SecureDoc”的字段,并且所述字段包含值“NO”,则单击该链接不得打开该文档并向用户显示JavaScript警报。

有人可能会质疑为什么首先在视图中显示文档,然后为什么链接没有其他效果而不是告诉它没有效果。 好的,不是我质疑要求的地方。

我的建议是,为Web访问显示的列的内容是计算的超链接:

href := @If( SecureDoc = "NO";
            "javascript:alert('nope')";
            "normal url for opening the doc"
           );
"<a href=" + href +">" + "the title of the doc or whatever" + "</a>"