[]
Forguncy.Forguncy
在Forguncy命名空间下,有一些Api是只给插件使用的
• Const
CommandHelper: ForguncyCommandHelper
• Const
Helper: ForguncyHelper
• Const
Page: ForguncyPage
ForguncyPage 的实例。
▸ ConvertDateToOADate(date
): number
使用此方法将DateTime转换成OADate。
Example
// 获取中国标准时间
var date = new Date();
// 将DateTime转换成OADate
var oaDate = Forguncy.ConvertDateToOADate(date);
// 弹出警告框,显示OADate
alert(oaDate);
属性名 | 类型 | 说明 |
---|---|---|
date |
Date |
日期值。 |
number
▸ ConvertOADateToDate(oadate
): Date
使用此方法从OADATE转换成DateTime。
Example
// 下面的示例代码中,通过ConvertOADateToDate方法,将OADate转换成DateTime。
// 获取OADate
var oaDate = 40000;
// 将OADate转换成DateTime
var date = Forguncy.ConvertOADateToDate(oaDate);
// 弹出警告框,显示转换后的日期
alert(date);
属性名 | 类型 | 说明 |
---|---|---|
oadate |
number |
OADate 数值。 |
Date
▸ ConvertToCssColor(color
): string
转换指定的颜色文本为 CSS 颜色文本,也就是颜色的十六进制值。
Example
// 下面的示例代码中,通过ConvertToCssColor方法,转换指定的颜色文本为 CSS 颜色文本。
// 转换指定的颜色
var color = Forguncy.ConvertToCssColor("Accent 2 60 255");
// 弹出警告框,显示转换后的CSS颜色
alert(color);
属性名 | 类型 | 说明 |
---|---|---|
color |
string |
颜色文本。 |
string
▸ SendMail(from
, to
, title
, content
, successCallBack
, failCallBack
): any
发送邮件。
Example
// 发送纯文本格式邮件。
Forguncy.SendMail("example3@example.com", "example1@example.com", "订货警告邮件", "最近订单数量明显增加,库存量即将不足请及时处理。");
// 将邮件发送给多名收件人。
Forguncy.SendMail("example3@example.com", "example1@example.com,example2@example.com", "订货警告邮件", "最近订单数量明显增加,库存量即将不足请及时处理。");
// 发送`HTML`格式的电子邮件。
Forguncy.SendMail("example3@example.com", "example1@example.com", "订货警告邮件", "<h1>库存不足预警</h1><p>最近订单数量明显增加,库存量即将不足请及时处理。</p>");
// 通过回调函数提示邮件是否发送成功。
Forguncy.SendMail("example3@example.com", "example1@example.com", "title", "message",
// 发送成功时弹出警告框,显示邮件发送成功
function(){
alert("邮件发送成功。");
},
// 发送失败时弹出警告框,显示错误信息
function(errorMessage){
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
from |
string |
发件人邮箱。 |
to |
string |
指定收件人电子邮箱地址。如果是多名收件人,请使用逗号分隔。 |
title |
string |
电子邮件标题。 |
content |
string |
指定电子邮件的正文内容。除了使用纯文本的电子邮件正文,还可以使用HTML标记的字符串。 |
successCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件成功发送后被调用。该参数为可选参数。 |
failCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件发送失败后被调用,并且通过errorMessage参数通知错误信息。该参数为可选参数。 |
any
▸ SendMail(to
, title
, content
, successCallBack
, failCallBack
): any
给指定电子邮箱发送指定标题和内容的电子邮件,发件人是当前登录网站的用户。使用该API发送电子邮件需要正确配置SMTP服务。
Example
// 发送纯文本格式邮件。
Forguncy.SendMail("example1@example.com", "订货警告邮件", "最近订单数量明显增加,库存量即将不足请及时处理。");
// 将邮件发送给多名收件人。
Forguncy.SendMail("example1@example.com,example2@example.com", "订货警告邮件", "最近订单数量明显增加,库存量即将不足请及时处理。");
// 发送`HTML`格式的电子邮件。
Forguncy.SendMail("example1@example.com", "订货警告邮件", "<h1>库存不足预警</h1><p>最近订单数量明显增加,库存量即将不足请及时处理。</p>");
// 通过回调函数提示邮件是否发送成功。
Forguncy.SendMail("example1@example.com", "title", "message",
// 发送成功时弹出警告框,显示邮件发送成功
function(){
alert("邮件发送成功。");
},
// 发送失败时弹出警告框,显示错误信息
function(errorMessage){
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
to |
string |
指定收件人电子邮箱地址。如果是多名收件人,请使用逗号分隔。 |
title |
string |
电子邮件标题。 |
content |
string |
指定电子邮件的正文内容。除了使用纯文本的电子邮件正文,还可以使用HTML标记的字符串。 |
successCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件成功发送后被调用。该参数为可选参数。 |
failCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件发送失败后被调用,并且通过errorMessage参数通知错误信息。该参数为可选参数。 |
any
▸ SendMail(message
, successCallBack
, failCallBack
): any
发送电子邮件。使用该API发送电子邮件需要正确配置SMTP服务。
Example
// 发送纯文本格式邮件。
var message = {
From: "example3@example.com",
To:"example1@example.com",
CC: "cc1@example.com, cc2@example.com",
BCC: "bcc1@example.com, bcc2@example.com",
Attachments: Forguncy.Page.getCell("attachment").getValue(),
Title:"订货警告邮件",
Content:"最近订单数量明显增加,库存量即将不足请及时处理。",
Priority: "High",
SendAsPlainText: true
}
Forguncy.SendMail(message);
// 将邮件发送给多名收件人。
var message = {
To:"example1@example.com,example2@example.com",
Title:"订货警告邮件",
Content:"最近订单数量明显增加,库存量即将不足请及时处理。"
}
Forguncy.SendMail(message);
// 发送`HTML`格式的电子邮件。
var message = {
To:"example1@example.com",
Title:"订货警告邮件",
Content:"<h1>库存不足预警</h1><p>最近订单数量明显增加,库存量即将不足请及时处理。</p>"
}
Forguncy.SendMail(message);
// 通过回调函数提示邮件是否发送成功。
var message = {
To:"example1@example.com",
Title:"title",
Content:"message"
}
Forguncy.SendMail(message,
// 发送成功时弹出警告框,显示邮件发送成功
function(){
alert("邮件发送成功。");
},
// 发送失败时弹出警告框,显示错误信息
function(errorMessage){
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
message |
FgcMailMessage |
电子邮件内容。 |
successCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件成功发送后被调用。该参数为可选参数。 |
failCallBack |
Function |
指定一个回调函数,此回调函数会在电子邮件发送失败后被调用,并且通过errorMessage参数通知错误信息。该参数为可选参数。 |
any
▸ addTableData(tableName
, newValue
, callback
, errorCallback
): void
指定要添加记录表的表名,以及要添加的数据。
Example
// 下面的示例代码中,通过addTableData方法,为指定的数据表添加数据。
Forguncy.addTableData("员工表",
{
// 指定列名与数据
姓名: "李四",
出生日期:"1993/3/1",
部门: "开发部"
},
function (data) {
// 添加成功时弹出警告框,显示添加成功
alert("添加成功。");
},
function (errorMessage) {
// 添加失败时弹出警告框,显示失败信息
}
);
属性名 | 类型 | 说明 |
---|---|---|
tableName |
string |
要添加记录的表的表名。 |
newValue |
Object |
添加行的列名和值,不必包含表的所有列。 |
callback |
Function |
成功回调函数,参数中包含已插入行的值。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ addUser(userName
, password
, displayName
, email
, successCallback
, errorCallback
): void
使用此方法添加用户,包括普通认证模式下添加用户和域认证模式下添加用户。
Example
// 下面的示例代码中,通过addUser方法添加用户。
// 普通认证模式下添加用户:
Forguncy.addUser("小李", "123456", "李四", "lisi@grapecity.com",
function () {
alert("添加成功")
},
function (error) {
alert(error)
});
// 域认证模式下添加用户:
Forguncy.addUser("小李",
function () {
alert("添加成功")
},
function (error) {
alert(error)
});
属性名 | 类型 | 说明 |
---|---|---|
userName |
string |
用户名。 |
password |
string | Function |
密码。 |
displayName |
string | Function |
全名。 |
email |
string | Function |
邮箱。 |
successCallback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ addUserToRole(userName
, roleName
, successCallback
, errorCallback
): void
使用此方法将指定的用户添加到指定的组,即给用户指定角色。
Example
// 使用此方法将指定的用户添加到指定的组,即给用户指定角色。
Forguncy.addUserToRole("张三", "经理",
function () {
alert("添加成功。");
},
function (errorMessage) {
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
userName |
string |
用户名。 |
roleName |
string |
角色名。 |
successCallback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ deleteTableData(tableName
, primaryKey
, callback
, errorCallback
): void
通过primaryKey
参数指定唯一一行记录进行删除。
Example
// 下面的示例代码中,通过deleteTableData方法,删除指定的唯一的记录。
Forguncy.deleteTableData("员工表", { "ID": 2 },
function () {
// 删除成功时弹出警告框,显示添加成功
alert("删除成功。");
},
function (errorMessage) {
// 删除失败时弹出警告框,显示失败信息
alert(errorMessage);
}
);
// 如果数据表主键是多列,示例代码如下:
Forguncy.deleteTableData("员工表", { "ID": 2, "姓名" : "韩梅梅" },
function () {
// 删除成功时弹出警告框,显示添加成功
alert("删除成功。");
},
function (errorMessage) {
// 删除失败时弹出警告框,显示失败信息
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
tableName |
string |
要删除记录的表的表名。 |
primaryKey |
Object |
指定字段名称和值,指定的值必须只能找到一行。 |
callback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ deleteUser(userName
, successCallback
, errorCallback
): void
使用此方法将指定的用户删除。
Example
// 下面的示例代码中,通过deleteUser方法,将指定的用户删除。
Forguncy.deleteUser("张三",
function () {
alert("删除成功。");
},
function (errorMessage) {
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
userName |
string |
用户名。 |
successCallback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ deleteUserFromRole(userName
, roleName
, successCallback
, errorCallback
): void
使用此方法将指定的用户从指定的组中删除。
Example
// 下面的示例代码中,通过deleteUserFromRole方法,将指定的用户从指定的组中删除。
Forguncy.deleteUserFromRole("张三", "经理",
function () {
alert("删除成功。");
},
function (errorMessage) {
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
userName |
string |
用户名。 |
roleName |
string |
角色名。 |
successCallback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void
▸ forceSyncTableData(tableName
, callback
): void
强制同步外连表的数据到副本表中。
Example
Forguncy.forceSyncTableData("table1", function(data){
if(data){
if(data.Success){
alert("Success");
} else{
alert("Failed. ErrorMessage:" + data.ErrorMessage);
}
}
});
属性名 | 类型 | 说明 |
---|---|---|
tableName |
string |
副本表。 |
callback |
Function |
同步数据后的回调函数。 |
void
▸ getTableData(tableName
, primaryKey
, callback
, errorCallback
): void
通过数据库的主键获取一条记录。
Example
// 下面的示例代码中,通过getTableData方法,获取数据表中的数据。
Forguncy.getTableData("员工表", {"ID":2},
function(data){
Forguncy.Page.getCell("textBoxCell1").setValue(data.字段1);
},
function(errorMessage){
alert(errorMessage);
}
);
// 如果数据表需要用多列来标识一唯一行,示例代码如下:
Forguncy.getTableData("员工表", { "ID1": 2, "姓名" : "韩梅梅" },
function(data){
Forguncy.Page.getCell("textBoxCell1").setValue(data.字段1);
},
function(errorMessage){
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
tableName |
string |
数据表的名字。 |
primaryKey |
Object |
指定字段名称和值,指定的值必须只能找到一行。 |
callback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,回调函数中包含了错误信息。 |
void
▸ getTableDataByCondition(condition
, formulaCalcContext
, callBack
, async?
): void
通过条件获取数据表或视图的数据。
Example
// 下面的示例代码中,通过getTableDataByCondition方法,获取数据表中的数据。
// 获取数据的参数
var param = {
TableName: "员工表", // 数据表名
Columns: ["ID", "姓名"], // 要获取的字段名称
QueryCondition: ISqlCondition, // 用户在设计器中设置的查询条件
QueryPolicy: {
Distinct: true,
QueryNullPolicy: Forguncy.QueryNullPolicy.QueryAllItemsWhenValueIsNull,
IgnoreCache: false
},
SortCondition: ISqlCondition // 用户在设计器中设置的排序条件
};
var formulaCalcContext = {
IsInMasterPage: false // 公式中引用的单元格或单元格范围是否在母版页中
};
// 获取数据表中的数据
Forguncy.getTableDataByCondition(param, formulaCalcContext, function(dataStr){
var tableData = JSON.parse(dataStr);
}, true);
属性名 | 类型 | 说明 |
---|---|---|
condition |
GetTableDataByConditionParams |
关于如何获取数据的参数。 |
formulaCalcContext |
FormulaCalcContext |
公式计算的上下文信息,当获取参数的查询条件包含公式时,使用公式计算的结果。 |
callBack |
Function |
成功回调函数。 |
async? |
boolean |
请求是否异步。默认值为 true。 |
void
▸ getTableDataByOData(odataParam
, callback
, errorCallback
, async?
): void
通过OData
查询字符串获取数据。
Example
// 使用getTableDataByOData方法获取“Categories”表中的记录数,并将其设置到名为“countLabel”的单元格中。
Forguncy.getTableDataByOData("Categories/$count",
// 成功回调处理
function (data) {//数据类型 Type:object
Forguncy.Page.getCell("countLabel").setValue(data);
},
// 出错时的回调处理
function (e) {
alert(e);
});
// 使用getTableDataByOData方法用于获取“Categories”表中的所有记录,将它们格式化并设置到名为“resultLabel”的单元格中。
Forguncy.getTableDataByOData("Categories",
// 成功回调处理
function (data) {//数据类型 Type:List<Dictionary<string, object>>
var str = "";
for (var index = 0; index < data.length; index++) {
var rowData = data[index];
str += "ID:" + rowData["Category ID"] + "\r\n" +
"分类名称:" + rowData["Category Name"] + "\r\n" +
"说明:" + rowData["Description"] + "\r\n\r\n"
}
Forguncy.Page.getCell("resultLabel").setValue(str);
},
// 出错时的回调处理
function (e) {
alert(e);
});
// 下面的示例代码中,通过getTableDataByOData方法,获取数据表中的数据。
Forguncy.getTableDataByOData("员工表?$select=*&$filter=ID gt 5",
// 获取成功的情况
function(data){
for(var i = 0; i < data.length; i++)
{
var id = data[i]["ID"];
var name = data[i]["姓名"];
console.log("ID=" + id + "; Name=" + name);
}
},
// 获取失败的情况
function(errorMessage){
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
odataParam |
string |
OData 查询字符串。 |
callback |
Function |
成功回调函数。 |
errorCallback |
Function |
失败回调函数,回调函数中包含了错误信息。 |
async? |
boolean |
指定请求是否异步。默认值为 true。 |
void
▸ logIn(username
, password
, rememberMe?
, successCallback?
, errorCallback?
): any
登录到指定用户名和密码关联的账户。
属性名 | 类型 | 说明 |
---|---|---|
username |
string |
用户名 |
password |
string |
密码 |
rememberMe? |
boolean |
是否让浏览器记住当前用户。默认值为 false。 |
successCallback? |
Function |
成功回调函数。如果值为空,默认会立即刷新浏览器。 |
errorCallback? |
Function |
失败回调函数。 |
any
▸ logOut(navigateToHomePage?
): any
登出当前用户。
属性名 | 类型 | 说明 |
---|---|---|
navigateToHomePage? |
boolean |
登出后,是否回到首页。值为空或 false 时,会立即刷新浏览器。 |
any
▸ modifyTablesData(modifyData
, callback
, errorCallback
): void
批量添加、修改、删除数据表的数据。
Example
// 插入数据到表`table1`和表`table2`
Forguncy.modifyTablesData({
表1: {
addRows: [
{
姓名: "李雷",
部门: "开发部"
},
{
姓名: "韩梅梅",
部门: "管理部"
},
]
},
表2: {
addRows: [
{
姓名: "张三",
部门: "市场部"
},
{
姓名: "李四",
部门: "市场部"
},
]
}
});
// 删除多行数据
Forguncy.modifyTablesData({
表1: {
deleteRows: [
{
ID: 2
},
{
ID: 3
},
]
},
表2: {
deleteRows: [
{
ID: 3
},
{
ID: 4
},
]
}
});
// 更新多行数据
Forguncy.modifyTablesData({
表1: {
editRows: [
{
primaryKey:
{
ID: 2
},
values: {
姓名: "李雷",
部门: "开发部"
}
},
{
primaryKey:
{
ID: 3
},
values: {
姓名: "韩梅梅",
部门: "管理部"
}
},
]
},
表2: {
editRows: [
{
primaryKey:
{
ID: 3
},
values: {
姓名: "小李",
部门: "开发部"
}
},
{
primaryKey:
{
ID: 4
},
values: {
姓名: "小王",
部门: "管理部"
}
},
]
}
});
// 同时添加、删除、修改多行数据
Forguncy.modifyTablesData({
表1: {
addRows: [
{
姓名: "王明",
部门: "开发部"
},
{
姓名: "赵蕾",
部门: "管理部"
},
],
deleteRows: [
{
ID: 2
},
{
ID: 3
},
],
editRows: [
{
primaryKey:
{
ID: 2
},
values: {
姓名: "小李",
部门: "开发部"
}
},
{
primaryKey:
{
ID: 3
},
values: {
姓名: "小王",
部门: "管理部"
}
},
]
}
});
属性名 | 类型 | 说明 |
---|---|---|
modifyData |
Object |
指定一个对象,其中包含对哪些表,添加/修改/删除哪些行的哪些列的数据。 |
callback |
Function |
成功回调函数,此回调函数会在电子邮件成功发送后被调用。该参数为可选参数。 |
errorCallback |
Function |
失败回调函数,此回调函数会在电子邮件发送失败后被调用,并且通过参数通知错误信息。该参数为可选参数。 |
void
▸ updateTableData(tableName
, primaryKey
, updateValue
, callback
, errorCallback
): void
通过primaryKey
参数指定唯一一行记录进行更新。
Example
// 下面的示例代码中,通过updateTableData方法,更新数据表中的数据。
Forguncy.updateTableData("员工表", { "ID": 2 }, { 姓名: "小李", 部门: "开发部" },
function (data) {
// 更新数据成功时弹出警告框,显示更新成功
alert("更新成功!");
},
function (errorMessage) {
// 更新数据失败时弹出警告框,显示失败信息
alert(errorMessage);
}
);
// 如果数据表主键是多列,示例代码如下:
Forguncy.updateTableData("ListView1", { "ID": 2, 姓名: "小李" }, { 部门: "开发部" },
function (data) {
// 更新数据成功时弹出警告框,显示更新成功
alert("更新成功!");
},
function (errorMessage) {
// 更新数据失败时弹出警告框,显示失败信息
alert(errorMessage);
}
);
属性名 | 类型 | 说明 |
---|---|---|
tableName |
string |
要修改记录的表的表名。 |
primaryKey |
Object |
指定要修改记录的字段名称和值,指定的值必须只能找到一行。 |
updateValue |
Object |
表示更新值的对象,对象的属性表示列名,属性值表示要更新的值。并不需要包含数据表中的所有列。 |
callback |
Function |
成功回调函数,参数中包含已修改行的值。 |
errorCallback |
Function |
失败回调函数,参数中包含错误信息。 |
void