主题
视图(View)
View 对象,表示视图相关
方法列表
方法 | 说明 |
---|---|
清空视图指定区域单元格内容 | |
清空当前单元格内容 | |
创建视图 | |
根据 RecordId 删除对应记录 | |
根据视图 ID 删除视图 | |
删除行的数据 | |
返回当前激活单元格信息 | |
获取当前视图 ID | |
获取 AtID 对应的位置 | |
读取网格行高 | |
获取分组依据 | |
返回看板视图的最大滚动高度 | |
从 RecordID 获取数据 | |
获取当前视图的记录数 | |
从当前视图的可视行号获取 RecordID | |
获取滚动条的位置 | |
获取横向滚动条最大值 | |
获取纵向滚动条最大值 | |
返回当前选区信息 | |
获取文档绘制区域的尺寸 | |
插入 RecordCount 条空白记录都表中 | |
跳转至指定@位置 | |
将视图中的指定行移动到新的位置 | |
修改视图名称 | |
修改数据 | |
设置分组依据 | |
设置网格行高 | |
设置看板视图的滚动滑块位置 | |
设置绘制时某些元素不显示 | |
设置横向滚动条是否可见 | |
设置滚动条横向滑块位置 | |
设置滚动条纵向滑块位置 | |
跳转到指定表的指定行位置 |
ClearRangeValues()
清空视图指定区域单元格内容
语法
表达式.ActiveDBSheet.View.ClearRangeValues({ RowFrom, RowTo, ColFrom, ColTo })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RowFrom | Number | 是 | 【行】开始位置 | |
RowTo | Number | 是 | 【行】结束位置 | |
ColFrom | Number | 是 | 【列】开始位置-在卡片视图就是第 N 行的第 M 个字段 | |
ColTo | Number | 是 | 【列】结束位置-在卡片视图就是第 N 行的第 M 个字段 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 清空视图指定区域单元格内容
const result = await app.ActiveDBSheet.View.ClearRangeValues({
RowFrom: 1, // 【行】开始位置
RowTo: 1, // 【行】结束位置
ColFrom: 1, // 【列】开始位置-在卡片视图就是第 N 行的第 M 个字段
ColTo: 1 // 【列】结束位置-在卡片视图就是第 N 行的第 M 个字段
})
}
ClearValues()
清空当前单元格内容
语法
表达式.ActiveDBSheet.View.ClearValues()
表达式:文档类型应用对象
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 清空当前单元格内容
await app.ActiveDBSheet.View.ClearValues()
}
CreateView()
创建视图
语法
表达式.ActiveDBSheet.View.CreateView({ Type, Name })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Type | Enum/String | 是 | ||
Name | String | 是 | 视图名称 |
示例:创建网格视图
js
async function example() {
await instance.ready()
const app = instance.Application
// 创建网格视图
await app.ActiveDBSheet.View.CreateView({
Type: 'Grid', // 视图类型-网格视图
Name: 'WebOffice' // 视图名称
})
}
示例:创建看板视图
js
async function example() {
await instance.ready()
const app = instance.Application
// 创建网格视图
await app.ActiveDBSheet.View.CreateView({
Type: 'Kanban', // 视图类型-网格视图
Name: 'WebOffice' // 视图名称
})
}
DeleteRecord()
根据 RecordId 删除对应记录
语法
表达式.ActiveDBSheet.View.DeleteRecord({ RecordId })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RecordId | String | 是 | RecordId,从 ActiveDBSheet.View.GetRecordId() 获取 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取 recordID
const recordID = await app.ActiveDBSheet.View.GetRecordId({
ViewRow: 1 // 行号
})
// 根据 RecordId 删除对应记录
const result = await app.ActiveDBSheet.View.DeleteRecord({
RecordId: recordID
})
}
DeleteView()
根据视图 ID 删除视图
语法
表达式.ActiveDBSheet.View.DeleteView({ ID })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ID | String | 是 | 视图 id,可通过 ActiveDBSheet.View.GetActiveViewId() 获取 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前视图 ID
const id = await app.ActiveDBSheet.View.GetActiveViewId()
// 根据视图 ID 删除视图
await app.ActiveDBSheet.View.DeleteView({
ID: id // 视图 id
})
}
DeleteViewRow()
删除行的数据
语法
表达式.ActiveDBSheet.View.DeleteViewRow({ ViewRow })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ViewRow | Number | 是 | 行号 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 删除行的数据
const id = await app.ActiveDBSheet.View.DeleteViewRow({
ViewRow: 1 // 行号
})
}
GetActiveCell()
返回当前激活单元格信息
语法
表达式.ActiveDBSheet.View.GetActiveCell()
表达式:文档类型应用对象
返回值
属性 | 数据类型 | 说明 |
---|---|---|
row | Number | 单元格所在的行 |
col | Number | 单元格所在的列 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 返回当前激活单元格信息
const info = await app.ActiveDBSheet.View.GetActiveCell()
console.log(info)
}
GetActiveViewId()
获取当前视图 ID
语法
表达式.ActiveDBSheet.View.GetActiveViewId()
表达式:文档类型应用对象
返回值
返回 String 类型表明当前视图 ID
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前视图 ID
const info = await app.ActiveDBSheet.View.GetActiveViewId()
console.log(info)
}
GetAtGridPos()
获取 AtID 对应的位置
语法
表达式.ActiveDBSheet.View.GetAtGridPos({ AtID })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
AtID | String | 是 | @ ID |
返回值
调用成功返回 {X, Y}
, 没找到的话返回 {X: -1, Y: -1}
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取 AtID 对应的位置
const pos = await app.ActiveDBSheet.View.GetAtGridPos({
AtID: 'xxx' // @ID
})
console.log(pos)
}
GetGridRowHeight()
读取网格行高
语法
表达式.ActiveDBSheet.View.GetGridRowHeight()
表达式:文档类型应用对象
返回值
返回 String 类型表明当前网格行高,正常情况下有 Short、Medium、Tall、ExtraTall 四个值
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 读取网格行高
const info = await app.ActiveDBSheet.View.GetGridRowHeight()
console.log(info)
}
GetGroupByList()
获取分组依据
语法
表达式.ActiveDBSheet.View.GetGroupByList()
表达式:文档类型应用对象
返回值
返回 Array.Object
表示对应的分组依据列表,每一项的数据如下:
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Name | String | 是 | 分组依据项的文本标题 | |
FieldId | String | 是 | 分组依据项的 fieldId |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取分组依据,分组依据不对应分组条件项,不是按照分组条件返回的
const data = await app.ActiveDBSheet.View.GetGroupByList()
console.log(data)
}
GetKanbanScrollHeight()
返回看板视图的最大滚动高度
语法
表达式.ActiveDBSheet.View.GetKanbanScrollHeight()
表达式:文档类型应用对象
返回值
返回 Number 表示最大滚动高度
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 返回看板视图的最大滚动高度
const Height = await app.ActiveDBSheet.View.GetKanbanScrollHeight()
console.log('高度:', Height)
}
GetRecord()
从 RecordID 获取数据
语法
表达式.ActiveDBSheet.View.GetRecord({ RecordId })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RecordId | Number | 是 | RecordId,可通过 ActiveDBSheet.View.GetRecordId 获取 |
返回值
返回 Array<String>
表示对应的数据
举例:["WebOffice 1", "1.00 "]
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 从当前视图的可视行号获取 RecordID
const id = await app.ActiveDBSheet.View.GetRecordId({
ViewRow: 1 // 行号
})
// 从 RecordID 获取数据
const info = await app.ActiveDBSheet.View.GetRecord({
RecordId: id // 行号
})
console.log(info)
}
GetRecordCount()
获取当前视图的记录数
语法
表达式.ActiveDBSheet.View.GetRecordCount()
表达式:文档类型应用对象
返回值
返回 Number 类型表明当前视图的记录数
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前视图的记录数
const info = await app.ActiveDBSheet.View.GetRecordCount()
console.log(info)
}
GetRecordId()
从当前视图的可视行号获取 RecordID
语法
表达式.ActiveDBSheet.View.GetRecordId({ ViewRow })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ViewRow | Number | 是 | 行号 |
返回值
返回 String 表示对应的 RecordID
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 从当前视图的可视行号获取 RecordID
const id = await app.ActiveDBSheet.View.GetRecordId({
ViewRow: 1 // 行号
})
console.log(id)
}
GetScrollBar()
获取滚动条的位置
语法
表达式.ActiveDBSheet.View.GetScrollBar()
表达式:文档类型应用对象
返回值
调用成功返回 {X, Y}
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取滚动条的位置
const pos = await app.ActiveDBSheet.View.GetScrollBar()
console.log(pos)
}
GetScrollXMax()
获取横向滚动条最大值
语法
表达式.ActiveDBSheet.View.GetScrollXMax()
表达式:文档类型应用对象
返回值
返回 Number 表示横向滚动条最大值
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取横向滚动条最大值
const Value = await app.ActiveDBSheet.View.GetScrollXMax()
console.log(Value)
}
GetScrollXMax()
获取纵向滚动条最大值
语法
表达式.ActiveDBSheet.View.GetScrollXMax()
表达式:文档类型应用对象
返回值
返回 Number 表示纵向滚动条最大值
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取纵向滚动条最大值
const Value = await app.ActiveDBSheet.View.GetScrollXMax()
console.log(Value)
}
GetSelection()
返回当前选区信息
语法
表达式.ActiveDBSheet.View.GetSelection()
表达式:文档类型应用对象
返回值
返回 Array.Object
表示对应的分组依据列表,每一项的数据如下:
属性 | 数据类型 | 说明 |
---|---|---|
ColFrom | Number | 【列】选区开始位置 |
ColTo | Number | 【列】选区结束位置 |
RowFrom | Number | 【行】选区开始位置 |
RowTo | Number | 【行】选区结束位置 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 返回当前选区信息
const info = await app.ActiveDBSheet.View.GetSelection()
console.log(info)
}
GetViewRect()
获取文档绘制区域的尺寸
语法
表达式.ActiveDBSheet.View.GetViewRect()
表达式:文档类型应用对象
返回值
属性 | 数据类型 | 说明 |
---|---|---|
Height | Number | 宽度 |
Width | Number | 高度 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取文档绘制区域的尺寸
const ViewSize = await app.ActiveDBSheet.View.GetViewRect()
console.log('宽度:', ViewSize.Width)
console.log('高度:', ViewSize.Height)
}
InsertRecord()
插入 RecordCount 条空白记录到表中
语法
表达式.ActiveDBSheet.View.InsertRecord({ RecordCount })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RecordCount | Number | 是 | 空白记录条数 |
返回值
返回 Array<>
表示新增的记录
举例:["Bu", "Bv", parent: {…}]
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 先查询之前记录条数
const oldCount = await app.ActiveDBSheet.View.GetRecordCount()
// 往未指定分组添加记录数
const id = await app.ActiveDBSheet.View.InsertRecord({
RecordCount: 2 // 空白记录条数
})
// 插入 RecordCount 条空白记录到表中
const count = await app.ActiveDBSheet.View.GetRecordCount() // 这里看出是新增了 2 条记录的(相比之前)
console.log(count)
console.log(oldCount - count === 2)
}
JumpAtLocation()
跳转至指定@位置
语法
表达式.ActiveDBSheet.View.JumpAtLocation({ AtID })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
AtID | String | 是 | @ID |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 跳转至指定@位置
await app.ActiveDBSheet.View.JumpAtLocation({
AtID: 'xxx' // @ID
})
}
MoveRow()
将视图中的指定行移动到新的位置
语法
表达式.ActiveDBSheet.View.MoveRow({ ViewRow, ToRow })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ViewRow | Array<Number> | 是 | 行号数组 | |
ToRow | Number | 是 | 移动后的行号 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 将视图中的指定行移动到新的位置
const id = await app.ActiveDBSheet.View.MoveRow({
ViewRow: [1, 2], // 行号数组
ToRow: 4 // 移动后的行号,注:实际移动至行号3的位置
})
}
RenameView()
修改视图名称
语法
表达式.ActiveDBSheet.View.RenameView({ ID, Name })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ID | String | 是 | 视图 id,可通过 ActiveDBSheet.View.GetActiveViewId() 获取 | |
Name | String | 是 | 视图名称 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 获取当前视图 ID
const id = await app.ActiveDBSheet.View.GetActiveViewId()
// 修改视图名称
await app.ActiveDBSheet.View.RenameView({
ID: id, // 视图 id
Name: 'WebOffice' // 视图名称
})
}
SetCellValue()
修改数据
语法
表达式.ActiveDBSheet.View.SetCellValue({ ViewRow, ViewCol, Value })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ViewRow | Number | 是 | 行号 | |
ViewCol | Number | 是 | 列号-在卡片视图就是第 N 行的第 M 个字段 | |
Value | String | 是 | 值 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 修改数据
const id = await app.ActiveDBSheet.View.SetCellValue({
ViewRow: 1, // 行号
ViewCol: 1, // 列号-在卡片视图就是第 N 行的第 M 个字段
Value: 'JSSDK' // 值
})
}
SetConditionField()
设置分组依据
语法
表达式.ActiveDBSheet.View.SetConditionField({ Index })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | Number | 是 | 索引 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置分组依据,建议结合View.GetGroupByList()使用
await app.ActiveDBSheet.View.SetConditionField({
Index: 1 // 索引
})
}
SetGridRowHeight()
设置网格行高
语法
表达式.ActiveDBSheet.View.SetGridRowHeight({ RowHeightType })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
RowHeightType | Enum/String | 是 | 行高,可选 Short、Medium、Tall、ExtraTall,详细可见 Enum.RowHeightType |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置网格行高
await app.ActiveDBSheet.View.SetGridRowHeight({
RowHeightType: 'ExtraTall' // 2 倍行高
})
}
SetKanbanScrollPos()
设置看板视图的滚动滑块位置
语法
表达式.ActiveDBSheet.View.SetKanbanScrollPos({ Value })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Value | Number | 是 | 设置滚动位置的值 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置看板视图的滚动滑块位置
await app.ActiveDBSheet.View.SetKanbanScrollPos({
Value: 1080
})
}
SetRenderItemVisible()
设置绘制时某些元素不显示
语法
表达式.ActiveDBSheet.View.SetRenderItemVisible({ ItemName, Visible })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ItemName | Enum | 是 | 元素名称。取值为 Enum.RenderItem | |
Visible | Boolean | 是 | 是否隐藏 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置绘制时某些元素不显示
await app.ActiveDBSheet.View.SetRenderItemVisible({
ItemName: 'colHeaderAddBtn', // 设置【增加新列】
Visible: false // 不可见
})
}
SetScrollVisible()
设置横向滚动条是否可见
说明
仅当前视图有效,切换视图后设置失效
- 表格视图:不受影响
- 看板视图:横向滚动条消失,但是各分组的纵向滚动条还存在
- 画册视图:纵向滚动条消失,并且不可以用滚轮滚动
语法
表达式.ActiveDBSheet.View.SetScrollVisible({ Visible })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Visible | Boolean | 是 | 是否可见 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置横向滚动条是否可见
await app.ActiveDBSheet.View.SetScrollVisible({
Visible: false
})
}
SetScrollXPos()
设置滚动条横向滑块位置
语法
表达式.ActiveDBSheet.View.SetScrollXPos({ X })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
X | Number | 是 | 设置滚动位置的值 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置滚动条横向滑块位置
await app.ActiveDBSheet.View.SetScrollXPos({
X: 100
})
}
SetScrollYPos()
设置滚动条纵向滑块位置
语法
表达式.ActiveDBSheet.View.SetScrollYPos({ Y })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Y | Number | 是 | 设置滚动位置的值 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 设置滚动条纵向滑块位置
await app.ActiveDBSheet.View.SetScrollYPos({
Y: 100
})
}
TriggerLocation()
跳转到指定表的指定行位置
语法
表达式.ActiveDBSheet.View.TriggerLocation({ SheetId, RecordId })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
SheetId | Number | 是 | 当前 DBSheet 表的 id,可通过 ActiveDBSheet.Sheet.GetActiveSheetIndex 获取 SheetId | |
RecordId | String | 是 | 可通过 ActiveDBSheet.View.GetRecordId 获取 RecordId | |
FieldId | String | 否 | 可通过 ActiveDBSheet.Field.GetFieldId 获取 FieldId,指定时可定位到字段,不指定时定位到记录 |
示例
js
async function example() {
await instance.ready()
const app = instance.Application
// 跳转到指定表的指定行位置
await app.ActiveDBSheet.View.TriggerLocation({
SheetId: 1, // 当前 Sheet 的索引
RecordId: 'E', // 行号
FieldId: 'E' // 列号
})
}