OVERVIEW
JEDI Surveyor is a toolkit for creating, submitting and evaluating surveys. The toolkit contains three applications that together forms a complete solution to handling of surveys.
PROGRAMS
JEDI Survey Builder (jsb.exe):
A tool to create surveys. A survey is submitted to clients as a single XML file.
JEDI Surveyor (js.exe):
Tool to reply to survey questions. The survey is submitted via e-mail to a configurable recipient when finished.
JEDI Survey Reporter (jsr.exe):
Used to collect responses from clients. Displays statistics and results from the surveys. Can also export reports to other formats (XML, HTML etc)
DESIGN NOTES
A survey is viewed as a collection of survey questions. Each question have a Title, a Description, a Type, a Required flag and one or several Choices, Type can be any of "Exclusive", "Multiple Choice" or "Free-Form". The Survey as such also have global settings for Title, Description, Release and Expiry Date, a HREF and a Recipient (the e-amil address where the response should be sent).
The basis of the entire survey complex is a collection of interfaces declared in JvSurveyIntf.pas and an implementation of these interfaces is provided in JvSurveyImpl.pas (and JvSurveyUtils.pas). Each program *uses* JvSurveyIntf and *includes* JvSurveyImpl. This means that within the application, no references are ever made to the actual implementation: all access to the survey is controlled through interface instances. The creation of an instance of the base interface, IJvSurvey, is controlled by a function pointer in JvSurveyIntf - "CreateSurvey": implementors must assign their own "factory function" to this pointer before the application tries to create an IJvSurvey instance and JvSurveyImpl assigns it's own function in its initialization section. This is why the JvSurveyImpl unit must be included in the project: without it, the CreateSurvey function pointer would be nil at run-time.
The implementation in JvSurveyImpl uses an XML file to store the surveys. Other implementations could use other means. As a matter of fact, the interfaces in JvSourceIntf only uses COM/OLE/Automation comaptible data types which means that an implementation would be possible using COM or even SOAP, greatly expanding the usability of these programs.
Since this is partly a JVCL showcase, the programs make heavy use of JVCL components and JCL utilities and you need to have JVCL and JCL installed and working to be able to compile them. The programs should be compatible with D5-D7 with the exception of the UTF8Encode/UTF8Decode functions: these are not available in D5 and are replaced with stubs when compiled with D5. You are welcome to implement the stubs, but as long as the survey file uses standard ASCII characters only, there should not be any problems.
THE XML FILE FORMAT
The format used in the XML file contains few surprises: the only thing special about is in the Description properties and in the CHOICES and RESPONSES values. Since the programs uses TJvLinkLabel to display the descriptions (for both SURVEY and ITEM), this means you can embed some simple HTML codes to format the text. Specifically, you can use <b></b> for bold, <i></i> for italic, <br> for line-breaks and <link>HREF</link> to display links. Note that links must point to a complete, valid URL of some type. This means you must include the protocol in the link (i.e "http://", "mailto:", "news:" etc). When the user clicks such a link, the ShellExecute API function is called to perform the action and any errors are ignored.
The CHOICES and RESPONSES values are encoded as a delimited list of values. Currently, the delimiter is defined as semi-colon (";") but this can be changed by editing the cRecordSeparator constant in JvSurveyUtils.pas. NB! that if you change this value after sending surveys (or the programs) to users, the programs will not work with newer versions of survey files. The use of the delimiter also means that you cannot use the delimiter within an item. Additionally, if you would like to use line-breaks in CHOICES, use a \n instead (this differs from the Description, where you should use <br> for explicit line-breaks).
Each RESPONSE value is filled with a delimited list of responses (if Type is either Exclusive or Multiple). Each delimited value is either a "0" (item is unchecked) or a "1" (item is checked). If the type is Free-Form, RESPONSES is instead filled with the text typed by the user. CRLF's are converted to \n in this case.
Example of CHOICES entry in XML file:
<CHOICES>Yes;No</CHOICES>
Example of RESPONSES in XML file (after user has saved/submitted the survey):
<RESPONSES>0;1</RESPONSES>
In this example, the user checked the "No" item.
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
由于上传限制,分开两个包上传 JVCL 组件包比较全,而且是社区中人开发的最好的极品开源的组件包,不像RXLIB,R eport Part等太专业而不全,可能有冲突,所以向大家推荐内部一致的又能满足大家要求的 JVCL, http://jvcl.sourceforge.net JVCL是由超过500个可视及不可视组件组成的库,可应用到你的Delphi/C++Builder/Kylix工程中。来自JEDI社区大牛们的奉献。 安装方法 1.先从jcl文件夹中双击 install.bat,一路NEXT下去 2.先从jvcl文件夹中双击 install.bat,一路NEXT下去 一切OK!^v^
资源推荐
资源详情
资源评论
收起资源包目录
最新 JVCL 组件包2 (7372个子文件)
EDISDKDB.add 20KB
ProfileEle.adi 6KB
ProfileSeg.adi 6KB
ProfileLoop.adi 5KB
ProfileEle.adt 1KB
ProfileSeg.adt 1000B
ProfileLoop.adt 800B
EDISDKDB.ai 13KB
topics.als 104B
EDISDKDB.am 1KB
bchball.ani 4KB
bchball.ani 4KB
bchball.ani 4KB
MakeJCLDcp4BCB.bat 4KB
MakeBCB.bat 3KB
MakeDelphi.bat 3KB
UpdatePOs.bat 2KB
clean.bat 2KB
UpdateInstallerPOs.bat 2KB
install.bat 2KB
UpdateLanguage.bat 1KB
UpdateLanguageInstaller.bat 1KB
MakeC6Per.bat 1KB
CleanJVCL.bat 1KB
MakeC6.bat 1KB
MakeC5.bat 1KB
MakePackages.bat 1017B
preprocess.bat 873B
MakeD6Per.bat 778B
MakeD7Per.bat 778B
MakeD5Std.bat 776B
MakeD5.bat 757B
MakeD6.bat 757B
MakeD7.bat 748B
CompileExamples.bat 488B
CompileDevTools.bat 488B
MakePackages.bat 410B
UsedJVCL.bat 400B
RecreateJvclInc.bat 379B
MakeDofs.bat 369B
MakeCfgs.bat 368B
SetLanguages.bat 237B
makemodified.bat 207B
MakeImages.bat 206B
pg2want.bat 193B
dccleanD5.bat 122B
TakeSurvey.bat 118B
pg.bat 93B
MakeDCR.bat 90B
MakeJVCLRC.bat 75B
clean.bat 72B
MakeTextDFM.bat 69B
JvclVclClx.bat 67B
pgEdit.bat 59B
compileLinkmapfile.bat 55B
MakeRES.bat 29B
MakeDCR.bat 27B
MakePNG.bat 18B
MakeOneDCR.BAT 13B
D9 Packages.bdsgroup 7KB
D10Per Packages.bdsgroup 6KB
D9Per Packages.bdsgroup 6KB
D10 Packages.bdsgroup 6KB
pg.bdsgroup 663B
JvValidatorsD9R.bdsproj 9KB
JvRuntimeDesignD9R.bdsproj 9KB
JvRuntimeDesignD9R.bdsproj 9KB
JvAppFrmD9R.bdsproj 9KB
JvPrintPreviewD9R.bdsproj 9KB
JvValidatorsD9D.bdsproj 9KB
JvMMD9R.bdsproj 9KB
JvInterpreterD9R.bdsproj 9KB
JvInterpreterD9R.bdsproj 9KB
JvCryptD9R.bdsproj 9KB
JvPageCompsD9R.bdsproj 9KB
template.bdsproj 9KB
template.bdsproj 9KB
JvManagedThreadsD9R.bdsproj 9KB
JvTimeFrameworkD9R.bdsproj 9KB
JvDotNetCtrlsD9R.bdsproj 9KB
JvDotNetCtrlsD9R.bdsproj 9KB
JvDockingD9R.bdsproj 9KB
JvStdCtrlsD9R.bdsproj 9KB
JvCmpD9R.bdsproj 9KB
JvSystemD9R.bdsproj 9KB
JvPluginD9R.bdsproj 9KB
JvGlobusD9R.bdsproj 9KB
JvGlobusD9R.bdsproj 9KB
JvRuntimeDesignD9D.bdsproj 9KB
JvCustomD9R.bdsproj 9KB
JvDBD9R.bdsproj 9KB
JvNetD9R.bdsproj 9KB
JvAppFrmD9D.bdsproj 9KB
JvDlgsD9R.bdsproj 9KB
JvCtrlsD9R.bdsproj 9KB
JvPrintPreviewD9D.bdsproj 9KB
JvCoreD9R.bdsproj 9KB
JvJansD9R.bdsproj 9KB
JvCoreD9R.bdsproj 9KB
JvXPCtrlsD9R.bdsproj 9KB
共 7372 条
- 1
- 2
- 3
- 4
- 5
- 6
- 74
资源评论
- MeRa2013-01-15可以用,谢谢!
- HeeLoo12014-03-20可以用+1,
SOTRUST
- 粉丝: 3
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功