通过关键字打开相应的文档的问题,请大家帮忙

stupidfrog 2003-10-09 04:41:00
一个域meetnum,当我在阅读的时候根据这个域的内容从视图里得到相应文档的id,然后根据id打开文档,可是只有在编辑状态时才可用,下面是我的代码。

aa:=meetnum;
unid:=@DbLookup("";"";"Meetsummary";aa;3);
url:="/Resource.nsf/Meetsummary/"+unid+"?opendocument";
@URLOpen(url)
我试着在前面加@commond([editdocument];1)把文档转变成编辑状态或许会成功,可结果还是不行。请大家帮帮忙,我在线等。谢谢!
...全文
56 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
stupidfrog 2003-10-10
  • 打赏
  • 举报
回复
up
stupidfrog 2003-10-10
  • 打赏
  • 举报
回复
up
stupidfrog 2003-10-09
  • 打赏
  • 举报
回复
tozhanyunpeng:
如果是在一个编辑状态的表单中在meetnum中输入文本,就可根据文本得到预想的结果。我不知道问题出在什么地方。错误是出在点击之后,因为我是在帧结构中打开,所以没有显示的最终地址,上面的地址仍然是帧结构的地址?OpenFrameset
zhanyunpeng 2003-10-09
  • 打赏
  • 举报
回复
如果是点击之后出现的错误,你可以查看一下错误页面最终的地址是什么,因为我觉得你的@dblookup应该能计算出来UNID的,我想是不是相对链接错误
stupidfrog 2003-10-09
  • 打赏
  • 举报
回复
我在线等
谢谢各位
stupidfrog 2003-10-09
  • 打赏
  • 举报
回复
是404错误,说未找到文件
zhanyunpeng 2003-10-09
  • 打赏
  • 举报
回复

读状态时出现什么错误了呢?是整个页面根本就打不开(500错误),还是链接错误(404错误)
yw5525 2003-10-09
  • 打赏
  • 举报
回复
代码:这只是个例子,你回去在改改
'按关键字搜索
Dim s As New NotesSession
Dim context As NotesDocument
Dim db As NotesDatabase

Dim searchString As String

Dim comString As String

Dim boardView As NotesView
Dim boardDoc As NotesDocument

Dim specialView As NotesView
Dim specialDoc As NotesDocument

Dim totalDocs As Integer
Dim totalResp As Integer

Dim forumView As NotesView
Dim forumDoc As NotesDocument

Dim loopk As Integer

Dim totalMatchDoc As Integer

Dim forumID As String

Dim respView As NotesView
Dim respDoc As NotesDocument

Set context = s.DocumentContext
Set db = s.CurrentDatabase

Set boardView = db.GetView("NotesBoardManage")

Set respView = db.GetView("WebRePost")
Set respDoc = respView.GetFirstDocument()

totalDocs = 0
totalResp = 0
totalMatchDoc = 0

'先找到视图
comString = context.BoardKey(0)

Set boardDoc = boardView.GetFirstDocument()

While Not(boardDoc Is Nothing)
If (boardDoc.BoardName(0) = comString) Then
Set specialView = db.GetView(boardDoc.BoardViewAlias(0))
forumID = boardDoc.BoardNo(0)
End If
Set boardDoc = boardView.GetNextDocument(boardDoc)
Wend


'得到视图中文档数目
Set specialDoc = specialView.GetFirstDocument()

While Not(specialDoc Is Nothing)
totalDocs = totalDocs + 1

While Not(respDoc Is Nothing)
If (specialDoc.UniversalID = respDoc.NUID(0)) Then
totalResp = totalResp + 1
End If
Set respDoc = respView.GetNextDocument(respDoc)
Wend

Set specialDoc = specialView.GetNextDocument(specialDoc)
Wend



'传递搜索的关键字
searchString = context.QueryKey(0)

Set specialDoc = specialView.GetFirstDocument()

'==================================================================
'打印表头
Print "<TABLE cellSpacing='1' cellPadding='4' width='80%' align='center' bgColor='#666666' border='0'>"

Print "<tr>"
Print "<td bgcolor='#FF9930' colspan='3'><font color='#FFFFFF' size='3'>  <b>搜索板块" & "<font color='#000000'>" & comString & "</font>" & "结果如下:</font></b></td></tr>"

Print "</tr>"
Print "<td bgcolor='#E1E1E1' width='60%'>标题</td>"
Print "<td bgcolor='#E1E1E1' width='20%'>发表时间</td>"
Print "<td bgcolor='#E1E1E1' width='20%'>作者</td></tr>"


'===================================================
'保存搜索到的文档数目
totalMatchDoc = 0


'在视图中比较输入的字符串和标题,如果标题中“包含”输入的字符串,则是搜索结果之一
For loopk = 1 To totalDocs

Set tmpDoc = specialView.GetNthDocument(loopk)

'比较是否包含
If Instr(1,tmpDoc.Title(0),searchString,5) > 0 Then
totalMatchDoc = totalMatchDoc + 1
Print "<tr>"
Print "<td width='60%' bgcolor='#F7F7F7'>"

Print "<a href='TopicDetail?OpenForm&UID=" & tmpDoc.UniversalID & "&ForumID=" & forumID & "&MainDoc=" & Cstr(totalDocs) & "&RespDoc=" & Cstr(totalResp) & "'>"
Print tmpDoc.Title(0)
Print "</a>"
Print "</td>"
Print "<td width='20%' bgcolor='#F7F7F7'>" & Cstr(tmpDoc.LastModified) & "</td>"
Print "<td width='20%' bgcolor='#F7F7F7'>" & tmpDoc.PostUserName(0) & "</td>"
Print "</tr>"
End If

Next


If (totalMatchDoc = 0) Then
Print "<tr><td bgcolor='#FF9930' align='center' colspan='3'><font color='#FFFFFF'>^_^ 没找到匹配的帖子。</font></td></tr>"
Print "<tr><td bgcolor='#FF9930' align='center' colspan='3'>【<font color='#FFFFFF'><a href='javascript:history.back()'>返回</a></font>】</td></tr>"
Else
Print "<tr><td bgcolor='#FF9930' align='center' colspan='3'><font color='#FFFFFF'>^_^ 找到匹配的帖子共 " & totalMatchDoc & " 个。</font></td></tr>"
Print "<tr><td bgcolor='#FF9930' align='center' colspan='3'>【<font color='#FFFFFF'><a href='javascript:history.back()'>返回</a></font>】</td></tr>"
End If


Print "</table>"
yw5525 2003-10-09
  • 打赏
  • 举报
回复
你这个,要用LOTUScript 来做,写个 代理
yw5525 2003-10-09
  • 打赏
  • 举报
回复
好象,@dblookup,不能这么用呀
APK软件汉化教程 (转载注明来自藕粉网www.Allphone.com.cn的Smwenzi,谢谢) 随着Android手机种类的不断丰富,各种应用软件也开始遍地开花,Android用起来也越来越爽了……不过有很多软件都是老外编的,虽然英文界面也能用,但是毕竟不如咱们中文看着舒服,特别是一些功能相对比较复杂的软件,中文界面还是很有必要的。因此,本人综合网上多位前辈大侠的教程,加上自己的一点心得,对如何汉化APK软件,进行简要说明。由于我也是个新手,很多地方也许会不完善甚至存在错误,各位兄弟不吝赐教。 一、概述 目前,网上常用的APK汉化方法有三种: 一是使用Hex Worksho,这种方法操作繁琐、费时费力,而且经常出现搜不到想要修改的字符的情况; 二是使用汉化浪子大侠的Android ResEdit(目前最新版本AndroidResEdit v1.5),这个软件使用简单直观,但是对不在资源文件中的词条无能为力,只能用于简单的汉化; 第三种就是我在这里要向大家推荐的APKTOOL,他的原理是把APK进行反编译,生成程序的源代码和图片、XML配置、语言资源等文件。我们秩序对有关图片和语言资源等文件进行修改,再编译打包成APK并签名,就可以得到汉化版的APK软件了。 二、搭建汉化环境 由于APKTOOL工具是用Java编制的,因此需要电脑中安装了JRE或者JDK(JAVA工具,用JRE即可)。 下载地址:………… 接下来就是我们要用到的关键工具——APKTOOL。这个是我在其他论坛找到的leasea大侠集成的一个批处理,可以省去自己输入指令的麻烦,实现解包、打包、签名自动处理,我自己也作了一点小小的修改,在此谢谢leasea大侠。 下载地址:………… 还有一个辅助工具Notepad++,这是一个功能强大的文本编辑软件,可以在指定文件夹中搜索字符串,对于在不在资源文件中的词条汉化,用这个可以极大减少工作量。 下载地址:………… 安装的步骤很简单了,下载上面三个文件,安装JRE和Notepad++,将APKTool压缩包解压到任意位置,就OK了。 另外,为了调试方便,推荐安装Android相应版本的SDK(或OMS),并建立虚拟机运行环境。当然用手机调试也可以,但是没那么方便而且容易发生不可预料的问题。关于虚拟机环境搭建参考其他资料。 三、解包软件 将你需要汉化的APK文件,放到APKTOOL文件夹下面,双击运行“解包软件.BAT”,批处理会自动识别APK文件并开始解包,在这里我用FlipSilent(一个翻转静音工具)作为示例。 解包出来的资源存储在“汉化中的资源”文件夹中,原始的APK文件则被备份到“原始软件备份”文件夹中。 打开解包的资源文件,里面有两个文件夹:Res存储的各种资源文件;Smail:存储的是反编译的程序代码。至此解包操作完成。 四、初步汉化 汉化的第一步,是汉化res文件夹里面的程序界面资源。一般来说,这个文件夹里面会包含以下文件夹: Drawable:程序调用的图标以及各种图片; layout-land:竖版界面xml描述文件; layout-port:横版界面xml描述文件; menu:菜单布局xml描述文件; values:字符串资源定义,我们要汉化的绝大部分工作就在这里面; xml:其他不再详细分类的布局xml描述文件。 根据软件的不同,文件夹可能会多些也可能会少些,具体内容大家打开一看就大概能知道是什么了。这里FlipSilent软件相对比较简单,所以只有三个文件夹,如下图: 在values文件夹下的文件: 一般来说,汉化需要处理是arrays.xml和strings.xml这两个文件。如何判断哪些是需要我们翻译的词条呢?有三种方法,综合起来一般就差不离了: 第一个当然是在使用软件中界面出现的词条,这个可以用手机仔细查看,当然有一部分可能很少出现的提示会有遗漏; 第二个凡是一对tag里面的,一般情况下就是需要翻译的英文字符串。格式一般为:******* ,或**** 第三个是以大写字母开头的词条,一般都是需要汉化的。 注意:这三条要综合起来运用,特别是在比较大型的软件中,情况会比较复杂,需要自己不断摸索。 在解包FlipSilent软件中,没有arrays.xml文件,因此我们的对象就是strings.xml了。用记事本打开strings.xml文件,内容如下: 对比一下FlipSilent软件运行界面,一切都就都明白了…… 接下来的工作,就是考验各位的英语水准了…… 上面就是我翻译的结果了,水平不行,大家见笑…… 修改完毕了,保存退出。 五、打包签名 改完了strings.xml,下面就是打包看看效果了……有了leasea大侠的批处理,就很简单了,什么都不用管,双击运行“打包签名.BAT”就可以了。 如果出现的是上面的信息,那么恭喜你,过关了…… 如果有多余的信息,并提示你找不到“已汉化签名的软件”文件夹,那么说明你修改不该修改的词条,好好找找吧,这个就没办法一概而论了。 在弹出的资源管理器窗口里面,你就可以看到汉化后的软件了。现在试验一下吧。 注意:试验之前,要删除安装的原版软件,否则会安装失败的。 基本就搞定了……等等,怎么那个About按钮还是英文啊,对于追求完美的人,这是绝对不用需的。 可是在语言资源文件里面,就是找不到这个词啊。接着就是下一节了…… 六、深度汉化 先解释一下为什么还有一些词条没有汉化的原因。 一般而言,一个编写规范的Android程序,会把所有字符串资源都分离出来,放在values的strings.xml文件中,values目录中存放的是默认语言字符串资源(一般为英文)。APK程序在处理字符串资源时会先判断语言环境,然后自己调用对应语言的。可是,有的程序员会自觉不自觉地,将部分文字内容写到程序代码里面,因此就出现了在资源文件中找不到的词条了。 对这部分词条的修改,相对就比较复杂一些了,幸好我们有神兵利器:Notepad++。 打开Notepad++软件,选择菜单中的“搜索”—“在文件中查找”,查找目标中输入要查找的字符串,这里为“About”,在目录中,选择解包后的“汉化中的资源”文件夹中的“smali”文件夹,一定要勾选“包含子目录”选项。 选定后,点击“全部查找”按钮,NotePad++会将这个文件夹中所有包含“About”字符的地方给你列出来。 这里一共找到了6个,很明显前面的几个开头字符都是小写,不符合我们的要求,那么必然就是最后一个了,双击最后一行直接定位,修改为“关于软件”,然后保存…… 注意: 1.进行这部分修改的时候,不要在修改内容里面包含空格,否则极有可能在重新编译打包的时候出错; 2.在示例中需要修改的词条很简单,也很好找,但是实际操作中,可能会比这个复杂很多,尤其是可能搜索出很多一样的结果,究竟哪些能改,在这里的只有一个大致的判断方法,那就是只能修改const-string v* “***”  引号中的字符。 3.在同时出现多个重复的关键字时,谨慎修改,有些可能是定义函数的, 具体参考http://code.google.com/p/smali/source/browse/#svn/dalvik-docs/opcodes 4.保存时的文本编码要设置为ANSI格式,具体操作在菜单栏的“格式”中。打包前确定classes 文件夹下没有其他无用文件,如notepad++的备份文件(为避免这种情况,确认在菜单栏“设置”—“首选项”—“备份与自动完成”中,禁用自动备份功能)。 现在再打包签名,安装试验看看效果。 已经改过了吧,现在就可以收工了…… 七、修改图标 软件的内容汉化完成了,应该说就搞定了,不过,软件的图标往往会与手机的主题风格不一致,不够美观,甚至有的软件作者主要精力都在编程序上面,用的就是标准的小绿人,看不出来软件的功能。因此,对图标的美化也是有必要的。接下来我们对图标开刀。 还是在解包后的汉化资源中,这次我们的目标是res\Drawable下面的图片。原始图片是这样的: 我们要修改的是icon.png,注意左边“详细信息”里面的内容,显示该图像尺寸是48 x 48像素。剩下的就是用自己喜欢的图像替换它就可以了。我这里用的图像是藕粉网风格的,顺手把那个通知图标也换了,这个是24 x 24像素的,呵呵: 换完的效果就不单独上图了。 注意:编辑png图像,推荐使用Photoshop软件,兼容性好。这里我给大家附上一个藕粉风格图标的模板,希望大家能帮忙推广藕粉网。 图标模板下载地址:………… 八、其他 (一)一些软件中界面没有使用文字,而是调用的图片(这在游戏软件中更多见),对于此类界面的汉化,参考替换图标,直接用同尺寸的图片替换就可以了。 (二)有的软件本身支持多语种,这样可能会在res文件夹下会出现多个以values开头的文件夹,对于这类软件,汉化也有两种做法: 一种是按照上面的方法,直接把默认语言文件夹values里面的资源都汉化掉,干脆利落,不过这样到了英文系统里面也显示汉字。 第二种方法,就在res目录里面建立对应的语言资源文件夹(简体中文资源的目录名是values-zh-rCN,繁体中文是values-zh-rTW),将英文资源values里面的arrays.xml和strings.xml复制到新目录里面进行汉化,让Android系统自己识别语种调用,从而达到在对应的语言环境中显示对应的界面。不过,如果软件的作者将一些词条放到了代码里面的话,这样汉化也就没什么必要了,因为代码中的词条是不会自己更换的,呵呵。 能把加密的XML文档转化为可见可编辑的形式。 打开google code发现Apktool更新了,居然支持win了。。。。 那本文就是一篇介绍在windows环境下使用Apktool的笔记。 安装 1.先装JAVA环境,JDK/JRE都行,官网下载 装过的就跳过吧 2.下载apktool.jar及相关文件,这里下apktool-1.0.0.tar.bz2 和apktool-install-windows-2.1_r01-1.zip 3.解压apktool.jar到 C:\Windows 解压apktool-install-windows.zip到任意文件夹(例如E盘根目录) 4.Win+R 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入apktool看看。会列出一些帮助的话就成功了。Apktool 命令 apktool d XXX.apk ABC 反编译XXX.apk到文件夹ABC apktool b ABC 从文件夹ABC重建APK,输出到ABC\dist\out.apk 然后我们反编译一枚软件玩玩… AutoMemoryManager的免费版底部有一条广告,去掉它吧。 把com.lim.android.automemman.apk放到同文件夹(我的就是E盘根目录) Win+R 运行CMD E:<回车> E:\>apktool d com.lim.android.automemman.apk AMM <回车> I: Baksmaling… I: Decoding resource table… I: Decoding resources… I: Copying assets and libs… 现在文件被decode到E:\AMM了,打开E:\AMM\res\layout\main.xml看,所有都可见了吧~ 编辑第59行 改为 然后CMD输入 E:\>apktool b AMM I: Checking whether sources has changed… I: Smaling… I: Checking whether resources has changed… I: Building resources… I: Building apk file… 用Auto-sign签名E:\AMM\dist\out.apk 安装 这样广告就不见了 再看,嘿嘿~很帅吧… 这其实就是改了AndroidManifest.xml里的ADmob广告ID罢了 Settings.Secure.setLocationProviderEnabled(getContentResolver(),LocationManager.NETWORK_PROVIDER, mNetwork.isChecked()); 根据mNetwork这个控件是否选中决定是否打开基站定位,mNetwork就是界面那个选择框

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧