Actualizar la configuración de Graph

Actualiza la configuración de Graph de la aplicación. Para obtener más información, consulte el siguiente artículo:
Configuración/eliminación de gráficos (External link)

Esta API actualiza la configuración previa a la puesta en marcha.
Después de usar esta API, use la siguiente API para implementar la configuración en la aplicación activa:
Implementar la configuración de la aplicación

MétodoPUT
URLhttps://{subdomain}.kintone.com/k/v1/preview/app/reports.json
URL (espacio de invitado)https://{subdomain}.kintone.com/k/guest/{SpaceID}/v1/app/reports.json
Autenticación Autenticación de contraseña, Autenticación de token de API, Autenticación de sesión
Content-Typeapplication/json

Contenido

Permisos

  • Se necesitan permisos de administración de aplicaciones.

Parámetros de solicitud

Parámetro Tipo Obligatorio Descripción
app Entero o cadena El identificador de la aplicación.
reports Objeto Un objeto que enumera la información del gráfico.

La clave del objeto es el identificador único del gráfico, que es igual al nombre del gráfico en su configuración de idioma predeterminada. Los valores de la clave son las distintas configuraciones de gráfico asociadas a ese gráfico.
reports.{graphname} Objeto Un objeto que enumera la información del gráfico de 1 gráfico.

Si Nombre del gráfico es igual al nombre de un gráfico existente, el gráfico se actualizará con los valores del objeto.
Si Nombre del gráfico no es igual a un nombre de un gráfico existente, se creará un nuevo gráfico con los valores del objeto.
Se eliminarán todos los gráficos existentes que no estén configurados para este parámetro.
reports.{graphname}.chartType Cuerda Condicional El tipo de gráfico del gráfico. Para obtener más información, consulte el siguiente artículo:
Tipos de gráficos y su uso (External link)
  • BAR: Gráfico de barras
  • COLUMN: Gráfico de columnas
  • PIE: Gráfico circular
  • LINE: Gráfico de líneas
  • PIVOT_TABLE: Tabla dinámica
  • TABLE: Mesa
  • AREA: Gráfico de áreas
  • SPLINE: Gráfico de splines
  • SPLINE_AREA: Gráfico de área spline
Obligatorio al actualizar un gráfico existente o al crear uno nuevo.
reports.{graphname}.chartMode Cuerda Condicional El modo de visualización del gráfico. Para obtener más información, consulte el siguiente artículo:
Tipos de gráficos y su uso (External link)
  • NORMAL: Gráfico agrupado o gráfico no apilado
  • STACKED: Gráfico apilado
  • PERCENTAGE: Gráfico 100% apilado
Si el reports.{graphname}.chartType se establece en BAR o COLUMN, NORMAL se refiere al modo de visualización "Gráfico agrupado".
Si el reports.{graphname}.chartType se establece en AREA o SPLINE_AREA, NORMAL se refiere al modo de visualización "Gráfico no apilado".

Requerido cuando el reports. {nombregráfico}.chartType se establece en BAR, COLUMN, AREAo SPLINE_AREA.
reports.{graphname}.name Cuerda Condicional El nombre del gráfico.
Se pueden especificar de 1 a 64 caracteres.

Al agregar un nuevo gráfico, se producirá un error en la solicitud si el valor de este parámetro no es el mismo que reports.{graphname}.

Obligatorio al agregar un nuevo gráfico.
reports.{graphname}.index Entero o cadena Condicional El orden de los gráficos.
El gráfico se ordena en orden ascendente, empezando por 0.
Se producirá un error en la solicitud si hay valores duplicados.

Obligatorio al actualizar un gráfico existente o al crear uno nuevo.
reports.{graphname}.groups Arreglo Condicional Matriz de objetos que contiene las opciones "Agrupar por".
El orden de los objetos está en el orden de "Nivel 1", "Nivel 2" y "Nivel 3".

Se producirá un error en la solicitud si el reports.{graphname}.chartType se establece en PIVOT_TABLE y reports. {graphname}.groups tiene menos de un objeto.

Obligatorio al agregar un nuevo gráfico.
reports.{graphname}.groups[].code Cuerda Condicional El código de campo del campo utilizado para determinar la opción "Agrupar por".

Obligatorio al especificar el parámetro reports. {graphname}.groups parámetro.
reports.{graphname}.groups[].per Cuerda Condicional La unidad de tiempo utilizada para la opción "Agrupar por".
  • YEAR: by the year
  • QUARTER: by the quarter
  • MONTH: by the month
  • WEEK: by the week
  • DAY: by the day
  • HOUR: by the hour
  • MINUTE: by the minute
Las siguientes unidades de tiempo ​se puede especificar para cada tipo de campo establecido en report. {graphname}.groups[].code:
  • Fecha y hora de creación: Todos los valores
  • Fecha y hora actualizada: Todos los valores
  • Fecha y hora: Todos los valores
  • Fecha: YEAR, QUARTER, MONTH, WEEK, or DAY
  • Hora: HOUR o MINUTE
Obligatorio si uno de los campos anteriores se especifica en reports. {graphname}.groups[].code.
reports.{graphname}.aggregations Arreglo Condicional Una matriz de objetos que contiene las opciones de "Función".
El límite máximo es de 10 elementos en la matriz.

Si el reports.{graphname}.chartType se establece en PIVOT_TABLE, solo se puede establecer 1 elemento en la matriz.

Obligatorio al agregar un nuevo gráfico.
reports.{graphname}.aggregations[].type Cuerda Condicional El tipo de la opción "Función".
  • COUNT: número de registros
  • SUM: Total
  • AVERAGE: Promedio
  • MAX: Máximo
  • MIN: Mínimo
Obligatorio al especificar el parámetro reports. {graphname}.agregaciones parámetro.
reports.{graphname}.aggregations[].code Cuerda Condicional El código de campo del campo que se utilizará en la opción "Función".

Elementos con tipo Establézcalo en SUM o AVERAGE puede especificar los siguientes campos:
  • Número Campos
  • Calculado campos (Número)
  • Calculado campos (Número con separador de miles)
  • Calculado campos (horas y minutos) dentro de las tablas
  • Calculado campos (días, horas y minutos) dentro de las tablas
  • Búsqueda campos con el campo clave establecido como Número campo
Elementos con tipo Establézcalo en MAX o MIN puede especificar los siguientes campos:
  • Número campo
  • Calculado campos (Número)
  • Calculado campos (Número con separador de miles)
  • Calculado campos (fecha y hora) dentro de las tablas
  • Calculado campos (Fecha) dentro de las tablas
  • Calculado campos (Tiempo) dentro de las tablas
  • Calculado campos (horas y minutos) dentro de las tablas
  • Calculado campos (días, horas y minutos) dentro de las tablas
  • Fecha Campos dentro de las tablas
  • Fecha y hora Campos dentro de las tablas
  • Hora Campos dentro de las tablas
  • Fecha y hora creada Campos dentro de las tablas
  • Fecha y hora actualizada Campos dentro de las tablas
  • Búsqueda campos con el campo clave establecido como Número campo
Requerido para cada elemento de la clase reports. {graphname}.agregaciones parámetro, excepto para los elementos con type Establézcalo en COUNT.
reports.{graphname}.filterCond Cuerda La condición de filtro del registro en formato de cadena de consulta que refleja la opción "Filtro".
Para obtener más información sobre los formatos de consulta, consulte el siguiente documento:
Cadena de consulta

Si se omite este parámetro para un nuevo gráfico, es el mismo que cuando se especifica "Todos los registros".

Si se ignora este parámetro para un gráfico existente, la configuración del filtro no se cambiará.

Se producirá un error en la solicitud si se especifica un usuario, grupo u organización eliminados en la condición de filtro.
reports.{graphname}.sorts Arreglo Condicional Matriz de objetos que contiene las opciones "Ordenar por".
El límite máximo es de 3 elementos en la matriz.

Obligatorio al agregar un nuevo gráfico.
reports.{graphname}.sorts[].by Cuerda Condicional Cómo se ordena el gráfico.
  • TOTAL: Total
  • GROUP1: Nivel 1
  • GROUP2: Nivel 2
  • GROUP3: Nivel 3
Obligatorio al especificar el parámetro reports. {graphname}.sorts parámetro.
reports.{graphname}.sorts[].order Cuerda Condicional El orden de clasificación.
  • ASC: Orden ascendente
  • DESC: Orden descendente
Obligatorio al especificar el parámetro reports. {graphname}.sorts parámetro.
reports.{graphname}.periodicReport Objeto Un objeto que contiene las opciones de "Informes periódicos".

Si la opción "Informes periódicos" está activa, no se puede actualizar la configuración del gráfico, excepto lo siguiente:
  • reports.{graphname}.name
  • reports.{graphname}.index
  • reports.{graphname}.periodicReport.active
Si se ignora este parámetro, no se realizarán cambios en las opciones de "Informes periódicos".
reports.{graphname}.periodicReport.active Booleano o cadena El estado de activación de la opción "Informes periódicos".
  • true: Activo
  • false: Inactivo
Si este parámetro se ignora al crear un nuevo informe periódico, este valor se establece en true.

Si este parámetro se ignora al actualizar un informe periódico existente, este valor no se actualiza.
reports.{graphname}.periodicReport.period Objeto Condicional Un objeto que contiene las opciones "Período".

Al actualizar el informe periódico, ignore este parámetro o manténgalo igual. De lo contrario, se devolverá un error.

Obligatorio al agregar un nuevo gráfico.
reports.{graphname}.periodicReport.period.every Cuerda Condicional El tipo de intervalo de tiempo utilizado para determinar cuándo generar los informes periódicos.
  • YEAR: by the year
  • QUARTER: by the quarter
  • MONTH: by the month
  • WEEK: by the week
  • DAY: by the day
  • HOUR: by the hour
Obligatorio al especificar el parámetro reports. {graphname}.periodicReport.period parámetro.
reports.{graphname}.periodicReport.period.month Entero o cadena Condicional El mes en el que se generará el Informe Periódico.
Especifique el mes como un número entero, comprendido entre 1 (enero) y 12 (diciembre).

Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en YEAR.
reports.{graphname}.periodicReport.period.time Cuerda Condicional La hora en la que se generará el Informe Periódico.
Introduzca la hora en HH:MM formato.

Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en YEAR, QUARTER, MONTH, WEEKo DAY.
reports.{graphname}.periodicReport.period.pattern Cuerda Condicional Los meses en los que se generará el Informe Periódico trimestral.
  • JAN_APR_JUL_OCT: Enero, Abril, Julio, Octubre
  • FEB_MAY_AUG_NOV: Febrero, Mayo, Agosto, Noviembre
  • MAR_JUN_SEP_DEC: Marzo, Junio, Septiembre, Diciembre
Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en QUARTER.
reports.{graphname}.periodicReport.period.dayOfMonth Cuerda Condicional El día en que se generará el Informe Periódico.
  • Enteros del 1 al 31: El día específico del mes
  • END_OF_MONTH: El último día del mes*
*Solo si reports. {graphname}.periodicReport.period.every se establece en QUARTER o MONTH.

Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en YEAR, QUARTERo MONTH.
reports.{graphname}.periodicReport.period.dayOfWeek Cuerda Condicional El día de la semana en que se generará el Informe Periódico.
  • SUNDAY
  • MONDAY
  • TUESDAY
  • WEDNESDAY
  • THURSDAY
  • FRIDAY
  • SATURDAY
Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en WEEK.
reports.{graphname}.periodicReport.period.minute Entero o cadena Condicional El minuto en el que se generará el Informe Periódico por hora.
Establézcalo como "0", "10", "20", "30", "40" o "50".

Requerido cuando el reports. {graphname}.periodicReport.period.every se establece en HOUR.
revision Entero o cadena Especifique el número de revisión de la configuración que se implementará.
Se producirá un error en la solicitud si el número de revisión no es la última revisión.
La revisión no se comprobará si se ignora este parámetro o se especifica -1.

Solicitud de muestra

  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
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
var body = {
  'app': kintone.app.getId(),
  'reports': {
    'Graph1 (Default Settings)': {
      'chartType': 'BAR',
      'chartMode': 'NORMAL',
      'name': 'Graph1 (Default Settings)',
      'index': '0',
      'groups': [{
        'code': 'Created_by'
      }],
      'aggregations': [{
        'type': 'COUNT'
      }],
      'filterCond': '',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      }],
      'periodicReport': null
    },
    'Graph2 (Table)': {
      'chartType': 'TABLE',
      'name': 'Graph2 (Table)',
      'index': '1',
      'groups': [{
        'code': 'Radio_button'
      },
      {
        'code': 'Created_datetime',
        'per': 'YEAR'
      },
      {
        'code': 'Time',
        'per': 'MINUTE'
      }
      ],
      'aggregations': [{
        'type': 'COUNT'
      },
      {
        'type': 'SUM',
        'code': 'Number'
      },
      {
        'type': 'AVERAGE',
        'code': 'Calculated'
      },
      {
        'type': 'MAX',
        'code': 'Created_datetime'
      },
      {
        'type': 'MIN',
        'code': 'Time'
      }
      ],
      'filterCond': 'Record_number = \'1\' and Rich_text like \'aaa\'',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      },
      {
        'by': 'GROUP1',
        'order': 'ASC'
      },
      {
        'by': 'GROUP2',
        'order': 'DESC'
      }
      ],
      'periodicReport': null
    },
    'Graph3 (Periodic report ON)': {
      'chartType': 'BAR',
      'chartMode': 'NORMAL',
      'name': 'Graph3 (Periodic report ON)',
      'index': '2',
      'groups': [{
        'code': 'Radio_button'
      }],
      'aggregations': [{
        'type': 'COUNT'
      }],
      'filterCond': '',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      }],
      'periodicReport': {
        'active': true,
        'period': {
          'every': 'QUARTER',
          'pattern': 'JAN_APR_JUL_OCT',
          'dayOfMonth': 'END_OF_MONTH',
          'time': '23:30'
        }
      }
    }
  },
  'revision': '2'
};

kintone.api(kintone.api.url('/k/v1/preview/app/reports.json', true), 'PUT', body, function(resp) {
  // success
  console.log(resp);
}, function(error) {
  // error
  console.log(error);
});

XMLHttpRequest

  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
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
var body = {
  'app': kintone.app.getId(),
  'reports': {
    'Graph1 (Default Settings)': {
      'chartType': 'BAR',
      'chartMode': 'NORMAL',
      'name': 'Graph1 (Default Settings)',
      'index': '0',
      'groups': [{
        'code': 'Created_by'
      }],
      'aggregations': [{
        'type': 'COUNT'
      }],
      'filterCond': '',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      }],
      'periodicReport': null
    },
    'Graph2 (Table)': {
      'chartType': 'TABLE',
      'name': 'Graph2 (Table)',
      'index': '1',
      'groups': [{
        'code': 'Radio_button'
      },
      {
        'code': 'Created_datetime',
        'per': 'YEAR'
      },
      {
        'code': 'Time',
        'per': 'MINUTE'
      }
      ],
      'aggregations': [{
        'type': 'COUNT'
      },
      {
        'type': 'SUM',
        'code': 'Number'
      },
      {
        'type': 'AVERAGE',
        'code': 'Calculated'
      },
      {
        'type': 'MAX',
        'code': 'Created_datetime'
      },
      {
        'type': 'MIN',
        'code': 'Time'
      }
      ],
      'filterCond': 'Record_number = \'1\' and Rich_text like \'aaa\'',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      },
      {
        'by': 'GROUP1',
        'order': 'ASC'
      },
      {
        'by': 'GROUP2',
        'order': 'DESC'
      }
      ],
      'periodicReport': null
    },
    'Graph3 (Periodic report ON)': {
      'chartType': 'BAR',
      'chartMode': 'NORMAL',
      'name': 'Graph3 (Periodic report ON)',
      'index': '2',
      'groups': [{
        'code': 'Radio_button'
      }],
      'aggregations': [{
        'type': 'COUNT'
      }],
      'filterCond': '',
      'sorts': [{
        'by': 'TOTAL',
        'order': 'DESC'
      }],
      'periodicReport': {
        'active': true,
        'period': {
          'every': 'QUARTER',
          'pattern': 'JAN_APR_JUL_OCT',
          'dayOfMonth': 'END_OF_MONTH',
          'time': '23:30'
        }
      }
    }
  },
  'revision': '2',
  // CSRF TOKEN: used for all APIs that have an HTTP method of POST, PUT, and DELETE on Kintone.
  '__REQUEST_TOKEN__': kintone.getRequestToken()
};

var url = 'https://{subdomain}.kintone.com/k/v1/preview/app/reports.json';
var xhr = new XMLHttpRequest();
xhr.open('PUT', url);
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onload = function() {
  if (xhr.status === 200) {
    // success
    console.log(JSON.parse(xhr.responseText));
  } else {
    // error
    console.log(JSON.parse(xhr.responseText));
  }
};
xhr.send(JSON.stringify(body));

Parámetros de respuesta

Parámetro Tipo Descripción
revision Cuerda El número de revisión de la configuración de la aplicación.
reports Objeto Un objeto que enumera la información del gráfico.
reports.{graphname}.id Cuerda El identificador del gráfico.

Ejemplo de respuesta

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
{
  "revision": "2",
  "reports": {
    "Graph1 (Default Settings)": {
      "id": "7319"
    },
    "Graph2 (Table)": {
      "id": "7321"
    },
    "Graph3 (Periodic report ON)": {
      "id": "7323"
    }
  }
}

Limitaciones

Si varios gráficos tienen (o darán como resultado tener) el mismo nombre dentro de la misma aplicación, esta API devolverá un error.