通常保存下载报表有两种方式:一种是在本地驱动器上下载并保存报表;另一种方法是客户端服务器应用程序,报表将存储在远程服务器上。但是,如果无法部署远程服务器,却希望在共享资源上存储报表,该怎么办?用户可以手动将报表转移到Web存储库。FastReport VCL 6为用户提供了一种更方便的方式 - 在云服务中存储报表。云服务因其可靠性和数据安全性较高而得以广泛运用。几乎每个现代云存储都提供OAuth2身份验证,这极大地简化了客户端应用程序的数据访问,用户可以方便,快捷,安全的存储数据。
FastReport VCL 6提供DropBox,GoogleDrive,OneDrive,Box.com这四种云服务保存报表的功能,另外报表模板本身为.fr3格式,用户可以以.fp3的格式保存或导出。应用程序执行对数据的访问。下面创建此类应用程序的两个示例:
Google云端硬盘
(1)需要事先创建一个项目。在Developers Console中执行此操作:https://console.developers.google.com/。单击标题“创建应用程序(Create application)”。然后输入应用程序的名称并勾选“接受Google为用户提供的使用条款”。
(2)在项目中,需要添加Google Drive API库。在“Library”选项卡上完成,选择库并单击“Enable”按钮。
(3)要使用连接的库,会提示用户Create credentials,单击“Create credentials”按钮。调用API。选择“Other, with user interface”。选择访问数据的方式 - user data。设置OAuth 2.0客户端ID。输入任意名称(例如,TestUser),然后单击“Create Customer ID”按钮。
(4)下载带有凭证的json文件,单击“Not now”。接下来用户会被邀请下载带有凭证的json文件,点击“Not now”,在“Credentials”选项卡中选择TestUser,单击此名称并转到客户端的凭证。客户端ID和客户端密钥,将在保存或加载报表时在FastReport中使用。
DropBox
要使用其API,需要在此服务的平台上创建应用程序。
(1)登录网页https://www.dropbox.com
(2)在这里创建一个新的应用程序:https://www.dropbox.com/developers/apps/create,选择应用程序类型 - Dropbox API。
(3)选择访问类型 - 仅访问应用程序文件夹或整个存储库,选择第一个选项。
(4)指定应用程序的名称。
(5)在应用程序设置页面上,可以看到App Key,在此页面上,添加重定向URI。在DropBox中授权后,必须返回到Web应用程序。现在用户可以从FastReport访问DropBox。以上查看了使用云存储API创建应用程序的两个示例。对于OneDrive和BOX.com服务,需要通过应用程序使用API。下面介绍如何从云存储中保存和加载报表。
有两种保存格式 - fr3和fp3。第一种是存储报表模板的格式,第二种是存储准备好的报表的格式,即填充数据的模板。要将报表模板(fr3)保存到云服务,请使用“File” - >“Save As”。接下来,选择一个可用的云服务:
(1)如果选择Dropbox,将显示以下窗口:
输入应用程序密钥,如有必要,在Dropbox中选择保存目录。从Dropbox帐户输入登录名和密码,单击“Ok”。
“Proxy”选项卡会相应地包含代理设置:
提供DropBox服务授权并允许应用程序访问数据。
在DropBox中收到一个窗口,其中包含应用程序的文件夹内容。保存报表:
(2)如果选择GoogleDrive:
输入GoogleDrive上的项目中创建帐户时收到的客户ID和密码,单击“Ok”。
应用程序将请求访问数据的权限,点击“Allow”按钮并获取存储库的内容:
该文件夹已有一个已保存的报表。
(3)选择OneDrive,保存时:
提醒用户DropBox的连接窗口还需要应用程序标识符,验证后,用户将获得一个文件保存窗口:
(4)BOX.com,类似于GoogleDrive的连接窗口:
输入客户端ID和密钥。验证后,保存文件:
要打开保存在云服务中的报表,“File” - >“Open”:
服务的连接形式与保存时完全相同,只有最后一个窗口不同,现在这是select file窗口:
保存准备好的报表的文件,以预览模式运行报表。
要将导出保存到云服务,选择所需的导出格式。在export settings forms上,选择保存位置: