文章列表
SPListItem的Url属性返回的不是绝对路径,形式如下面:http://cary/Lists/Discussion/itemtitle这种形式是不能作为链接打开的,很多时候我们在取到这个item的同时还要得到这个item的url,比如你筛选出列表中指定的数据并发邮件给相关人员的时候,在邮件的内容中就需要有个这个item的链接。
Moss中提供了一个PAGETYPE枚举,具体如下表:
名称
描述
PAGE_DEFAULTVIEW
Default view. Value=0.
PAGE_DIALOGVIEW
File dialog box view. Value=2. ...
- 2008-12-04 18:07
- 浏览 824
- 评论(0)
相关文章:WF中的跟踪服务(1):Sql跟踪数据库表,视图,存储过程等相关说明WF中的跟踪服务(2):使用SqlTrackingServiceWF中的跟踪服务(3):使用SqlTrackingService跟踪规则WF中的跟踪服务(4):使用跟踪配置文件WF中的跟踪服务(5):SqlTrackingService 的数据维护 在前几篇文章中我们都是围绕这SqlTrackingService这一WF内置的跟踪服务来讲述的。有的时候我们有自己特殊的需求,比如我不想把这个跟踪数据存到Sql数据库中,比如我想把跟踪信息发送到制定的邮件中等。我们这个时候就可以实现自己的跟踪服务。本文我将用最少的代码来实现 ...
- 2008-12-03 21:45
- 浏览 681
- 评论(0)
相关文章:WF中的跟踪服务(4):使用跟踪配置文件WF中的跟踪服务(3):使用SqlTrackingService跟踪规则WF中的跟踪服务(2):使用SqlTrackingServiceWF中的跟踪服务(1):Sql跟踪数据库表,视图,存储过程等相关说明
WF框架中内置的SqlTrackingService服务 ...
- 2008-11-30 18:58
- 浏览 652
- 评论(0)
在domino中写webservice可以使用LotusScript,也可以使用java,由于LotusScript API提供的功能多数都是操作domino数据库中文档的,在web service中也有一些限制,具体如下:
1. 不要使用原生 LotusScript 类(如 NotesDatabase、NotesDocument 等)作为参 ...
- 2008-11-26 21:45
- 浏览 1277
- 评论(0)
概述 默认的Tracking Profile会提取工作流中所有的跟踪信息,我们可以创建自己的跟踪配置文件来筛选跟踪信息。我们接着使用WF中的跟踪服务(3):使用SqlTrackingService跟踪规则中的例子,我们通过自定义tracking profile文件来跟踪RuleSet中变量A B C D的值的变化情况。 每一个TrackingProfile对象包含三个属性(WorkflowTrackPoints,ActivityTrackPoints,UserTrackPoints)表示三种跟踪数据,每一个属性都是相关的(WorkflowTrackPoint,ActivityTrackPoi ...
- 2008-11-23 17:48
- 浏览 635
- 评论(0)
在坚持学习WF(22):跟踪规则这篇文章我们讲述了如何使用Trace来对规则进行跟踪,我们也可以使用SqlTrackingService跟踪规则,我们先来建立一个顺序型工作流程序,工作流设计器中我们只添加一个PolicyActivity活动,并设计他的RuleSet,我们还是使用坚持学习WF(22):跟踪规则这篇文章中的RuleSet,具体请看下表:
Rule
Conditon
ThenAction
ElseAction
RuleC
this.D < 100
this.B = this.B - 12 System.Console.WriteLine("RuleC: ...
- 2008-11-22 15:18
- 浏览 683
- 评论(0)
WF提供了可插拔的跟踪服务,运行时引擎可以在其生存期过程中添加多个运行时服务,因此可以同时启用多个不同类型的跟踪服务。WF框架提供了一个现成的SqlTrackingService跟踪服务,该服务将可配置的跟踪信息写到Sql Server数据库 ...
- 2008-11-21 22:21
- 浏览 755
- 评论(0)
使用WF 中的SqlTrackingService 跟踪服务,我们可以记录有关工作流及其关联活动的跟踪信息到Sql Server数据库库中。SqlTrackingQuery 类提供对包含在跟踪数据库中的数据的高级别访问。但是,我们也可以直接查询 SQL 跟踪服务数据库视图。我们使用WF提供的脚本建立好的Sql数据库主要有21张表,20个视图和59个存储过程,下面就说一些比较重要的。
1.跟踪数据库的表
1.1.Workflow :Workflow 表存储了所有工作流类型的工作流定义,该表已由 SqlTrackingService 进行跟踪。它在第一次将工作流实例化并为该工作流类型启用 SqlTr ...
- 2008-11-21 21:06
- 浏览 943
- 评论(0)
活动的条件有两种:代码条件和声明性规则条件。如果我们改变了代码条件我们需要重新编译我们的工作流程序才可以。由于声明行规则条件是序列化到.rules文件中的,所以我们可以动态的更新,下面举例说明:
我们建立一个顺序型工作流控制台程序,工作流设计如下图:
然后分别设置分支条件(均为声明性规则条件)如下: ifElseBranchActivity1:条件名--ifBranch1,表达式--this.conditonNum == 1。 ifElseBranchActivity2:条件名--ifBranch2,表达式--this.conditonNum == 2。
工作流代码如下:
using Sys ...
- 2008-11-07 06:51
- 浏览 550
- 评论(0)
这方面的文章园子里有几篇了,不过大家基本上都是参考了http://www.andrewconnell.com/blog/articles/CreatingCustomSharePointTimerJobs.aspx这篇文章,在此我也推荐大家仔细看下本文及文中涉及到的相关文章。工作中也遇到了类似的需求,在此也做个总结。 1.MOSS中已经提供了定时器的功能,我们要开发自己的定时器需要继承自SPJobDefinition类,在重写的Execute方法写自己的业务逻辑。我的需求是找出列表中符合条件的item,并做mail通知,代码如下: using System;
using System.Col ...
- 2008-11-05 20:23
- 浏览 889
- 评论(0)
今天去上海国际贵都大酒店参加了Tech.ed 2008上海站,本次主题主要有以下几个概念:动态IT,虚拟化,云计算。
下午13:00开始是主题演讲和产品发布,开始演讲人用了很大的篇幅来讲虚拟化这个主题。在这部分微软首先给大家放了一段视频,视频中描述的是一个IT经理有规律,枯燥的一天,每天都在做同样的工作软件的安装,备份,定期的机房检查,无数的客户电话。伴随着阵阵笑声视频结束了。结束后演讲人把视频中的主人公请上了演讲台,由微软的几位专家使用虚拟化技术给他解决他工作中的烦恼,这里微软主要在向大家介绍他的Hyper-V Server和VMM产品。之后就发布了这几款产品,具体如下: Hyper-V ...
- 2008-11-04 20:43
- 浏览 616
- 评论(0)
关于动态更新
在开发工作流时,我们会在工作流设计器中通过拖拽活动,设置属性等等来设计我们的工作流,我们希望我们在设计时定义好的工作流在运行时是不变的。但在实际中我们往往需要在运行时来改变工作流的架构,例 ...
- 2008-11-03 06:52
- 浏览 821
- 评论(0)
通常情况下我们开发的自定义活动的业务逻辑都是写在Execte方法中的,由于一个工作流实例在单一的线程上执行,这样当工作流在执行到这个活动的时候,该活动就独占了整个工作流的线程,如果该自定义活动需要做很长时间的任务,那么此时就不能处理工作流中的其他请求。所以我们不建议把所有的业务逻辑都放到Execute方法中去执行。
1.我们可以将活动的业务逻辑放到本地服务中去异步执行,下面我们用一个例子来说明,建立一个顺序型工作流控制台项目,首先我们先写两个类CaryWork和CaryWorkResult,分别代表我们要执行的工作项和返回的结果,代码如下:
[Serializable]
public clas ...
- 2008-11-01 14:25
- 浏览 715
- 评论(0)
WF提供的标准活动中有很多复合活动,这些复合活动可以添加子活动比如:SequenceActivity,ParallelActivity,ReplicatorActivity等。这些活动都有特定的用途,如果WF提供的标准活动都不满足我们的需要的时候,我们就要自己开发一个复合活动。
活动的状态模型 活动在他的生命周期中有六种状态。 这些状态分别为 Initialized、Executing、Canceling、Closed、Compensating 和 Faulting。下图摘自MSDN中说明活动之间状态的转换关系:
1.红色实线表示工作流运行时引擎负责将活动从 Initialized 状态 ...
- 2008-10-26 15:37
- 浏览 645
- 评论(0)
有的时候我们为了解决特定的问题,来自己实现一个自定义活动,该活动包含一组子活动。我们举个简单的例子,我们开发一个自定义活动CaryEncapsulationActivity。我们选择活动的基类为SequenceActivity,在该活动我们只提供一个TestValue的属性给外部,代码如下:
public static DependencyProperty TestValueProperty = DependencyProperty.Register("TestValue",
typeof( ...
- 2008-10-24 07:32
- 浏览 640
- 评论(0)