變更表單的佈局

information

本頁面使用機器翻譯而成。
機器翻譯免責聲明 (External link)

目錄

變更表單的佈局

變更應用表單的佈局。
此 API 允許您變更以下設定:

  • 欄位的高度和寬度
  • 表格中的欄位及其順序
  • 群組欄位中的欄位及其佈局
  • 設置標籤、空白欄和分割線

此 API 可變更測試環境中的應用。
如果要將變更套用到正式環境,請在執行該API之後,執行將應用設置反映到正式環境的API。
將應用設置傳播到正式環境API

URL

常規應用程式
https://sample.cybozu.com/k/v1/preview/app/form/layout.json
訪客空間的應用程式
https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/preview/app/form/layout.json

HTTP 方法

PUT

所需存取權限

  • 應用程式管理權限

請求

參數

為表單上的所有欄位指定佈局。參數省略時,其設置不會變更。

參數名稱 類型 必須 說明
app 數值或字串 必須 應用ID
layout 陣列 必須 表單的逐行佈局清單
layout[].type 字串 必須 行類型
  • ROW:標準
  • SUBTABLE:表格內
  • GROUP:群組欄位內
layout[].code 字串 部分條件下必須 表格或群組的域代碼
layout[].type 為 「SUBTABLE」或「GROUP」時,則為必須項。
layout[].fields 陣列 必須 行中的欄位清單
layout[].fields[].type 字串 必須 欄位類型
  • GROUP_SELECT:選擇群組
  • SPACER:空白欄
  • CHECK_BOX:核取方塊
  • DROP_DOWN:下拉式選單
  • USER_SELECT:選擇使用者
  • RADIO_BUTTON:選項按鈕
  • LABEL:標籤
  • RICH_TEXT:文字編輯方塊
  • LINK:連結
  • RECORD_NUMBER:記錄號碼
  • REFERENCE_TABLE:相關記錄清單
  • CALC:計算
  • HR:分隔線
  • MODIFIER:更新人
  • UPDATED_TIME:更新時間
  • CREATOR:建立人
  • CREATED_TIME:建立時間
  • TIME:時間
  • NUMBER:數值
  • ORGANIZATION_SELECT:選擇組織
  • FILE:附件
  • DATETIME:日期與時間
  • DATE:日期
  • MULTI_SELECT:複選
  • SINGLE_LINE_TEXT:單行文字方塊
  • MULTI_LINE_TEXT:多行文字方塊
Lookup欄位的類型根據源欄位的欄位類型來指定。
layout[].fields[].code 字串 部分條件下必須 欄位代碼
layout[].fields[].type 如果不是「LABEL」、「SPACER」或「HR」,則為必須項。
layout[].fields[].label 字串 可省略 標籤欄位的標籤名稱
layout[].fields[].type 為「LABEL」時要指定。
如果省略,則設置空字元。
layout[].fields[].elementId 字串 可省略 空白欄欄位的元素 ID
layout[].fields[].type 為「SPACER」時要指定。
如果省略,則設置空字元。
layout[].fields[].size 物件 可省略 欄位的大小
根據欄位的位置,可能與指定的大小不同。
layout[].fields[].size.width 數值或字串 可省略 欄位的寬度(以像素為單位)
您可以在以下欄位中指定它:
  • 單行文字方塊
  • 多行文字方塊
  • 文字編輯方塊
  • 數值
  • 計算
  • 時間
  • 日期
  • 日期與時間
  • 複選
  • 下拉式選單
  • 選項按鈕
  • 核取方塊
  • 附件
  • 選擇使用者
  • 連結
  • Lookup
  • 標籤
  • 空白欄
  • 分隔線
  • 記錄號碼
  • 建立人
  • 建立時間
  • 更新人
  • 更新時間
layout[].fields[].size.height 數值或字串 可省略 欄位的高度(以像素為單位),包括欄位名稱
layout[].fields[].type 為「SPACER」時要指定。
layout[].fields[].size.innerHeight 數值或字串 可省略 欄位的高度(以像素為單位),不包括欄位名稱
以下欄位可指定:
  • 多行文字方塊
  • 文字編輯方塊
layout[].layout 陣列 可省略 群組中欄位的佈局清單
結構與layout 相同。
revision 數值或字串 可省略 預期修訂號
如果它與實際修訂號不匹配,則會發生錯誤,並且不會添加該欄位。
如果指定值「-1」或未指定值,則不會驗證修訂號。
示例請求
URL

https://sample.cybozu.com/k/v1/preview/app/form/layout.json

標頭
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "application/json"
}

有關請求頭的詳細資訊,請參閱通用規格。
kintone REST API通用規範

內文
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
{
  "app": 1,
  "revision": 2,
  "layout": [
    {
      "type": "ROW",
      "fields": [
        {
          "type": "SINGLE_LINE_TEXT",
          "code": "單行文字方塊_0",
          "size": {
            "width": 200
          }
        },
        {
          "type": "MULTI_LINE_TEXT",
          "code": "多行文字方塊_0",
          "size": {
            "width": 200,
            "innerHeight": 100
          }
        },
        {
          "type": "LABEL",
          "label": "label",
          "size": {
            "width": 200
          }
        },
        {
          "type": "SPACER",
          "elementId": "spacer",
          "size": {
            "width": 200,
            "height": 100
          }
        },
        {
          "type": "HR",
          "size": {
            "width": 200
          }
        }
      ]
    },
    {
      "type": "SUBTABLE",
      "code": "表格_0",
      "fields": [
        {
          "type": "NUMBER",
          "code": "數值_0",
          "size": {
            "width": 200
          }
        }
      ]
    },
    {
      "type": "GROUP",
      "code": "群組",
      "layout": [
        {
          "type": "ROW",
          "fields": [
            {
              "type": "NUMBER",
              "code": "數值_1",
              "size": {
                "width": 200
              }
            }
          ]
        }
      ]
    }
  ]
}

回應

屬性
屬性名稱 類型 說明
revision 字串 變更應用設置后的修訂號
應答範例
1
2
3
{
  "revision": "4"
}

示例代碼

使用 curl 的請求
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
curl -X PUT 'https://sample.cybozu.com/k/v1/preview/app/form/layout.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "app": 1,
    "revision": 2,
    "layout": [
      {
        "type": "ROW",
        "fields": [
          {
            "type": "SINGLE_LINE_TEXT",
            "code": "單行文字方塊_0",
            "size": {
              "width": 200
            }
          },
          {
            "type": "MULTI_LINE_TEXT",
            "code": "多行文字方塊_0",
            "size": {
              "width": 200,
              "innerHeight": 100
            }
          },
          {
            "type": "LABEL",
            "label": "label",
            "size": {
              "width": 200
            }
          },
          {
            "type": "SPACER",
            "elementId": "spacer",
            "size": {
              "width": 200,
              "height": 100
            }
          },
          {
            "type": "HR",
            "size": {
              "width": 200
            }
          }
        ]
      }
    ]
  }'
kintone.api()請求使用

有關詳細的kintone.api(),請參閱以下頁面。
發送kintone REST API請求

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
const body = {
  app: 1,
  revision: 2,
  layout: [
    {
      type: 'ROW',
      fields: [
        {
          type: 'SINGLE_LINE_TEXT',
          code: '單行文字方塊_0',
          size: {
            width: 200,
          }
        },
        {
          type: 'MULTI_LINE_TEXT',
          code: '多行文字方塊_0',
          size: {
            width: 200,
            innerHeight: 100,
          }
        },
        {
          type: 'LABEL',
          label: 'label',
          size: {
            width: 200,
          }
        },
        {
          type: 'SPACER',
          elementId: 'spacer',
          size: {
            width: 200,
            height: 100,
          }
        },
        {
          type: 'HR',
          size: {
            width: 200,
          }
        }
      ]
    }
  ]
};

await kintone.api(kintone.api.url('/k/v1/preview/app/form/layout.json'), 'PUT', body);