Как переместить лист с API Smartsheet
Когда я создаю новый лист, используя java api smartsheet, он всегда создается в папке "sheet" под home. Можно ли переместить этот лист или создать его в другой рабочей области / папке?
1 ответ
Решение
Ниже я привел пример того, как создать лист в новой папке, а также как скопировать существующий лист в новую папку. Если вы хотите переместить лист в новую папку, вы можете сначала скопировать лист в новую папку, а затем удалить исходный лист.
Обратите внимание, что и идентификатор листа, и идентификатор папки можно получить, щелкнув правой кнопкой мыши лист или папку внутри Smartsheet и выбрав "Свойства".
Создать лист в папке
String token = "YOUR_TOKEN";
Smartsheet smartsheet = new SmartsheetBuilder().setAccessToken(token).build();
// Define sheet to copy
Sheet sheet = new Sheet();
sheet.setName("New Sheet");
// Create columns for the new sheet
List<Column> columns = new ArrayList<Column>();
Column column = new Column();
column.setTitle("Column #1");
column.setPrimary(true);
column.setType(ColumnType.TEXT_NUMBER);
columns.add(column);
Column column2 = new Column();
column2.setTitle("Column #2");
column2.setType(ColumnType.TEXT_NUMBER);
columns.add(column2);
sheet.setColumns(columns);
// Define folder to put sheet in
long folderId = 907281073235844L;
// Create the new sheet and put it in the specified folder
Sheet newSheet = smartsheet.sheets().createSheetInFolder(folderId, sheet);
System.out.println(newSheet.getId());
Скопируйте лист в новую папку
String token = "YOUR_TOKEN";
Smartsheet smartsheet = new SmartsheetBuilder().setAccessToken(token).build();
// Define sheet to copy
Sheet sheet = new Sheet();
sheet.setFromId(7298027523204996L);
// Define folder to put sheet in
long folderId = 907281173235844L;
// copy the sheet to the specified folder
Sheet newSheet = smartsheet.sheets().createSheetInFolder(folderId, sheet);
System.out.println(newSheet.getId());
Удалить существующий лист
String token = "YOUR_TOKEN";
Smartsheet smartsheet = new SmartsheetBuilder().setAccessToken(token).build();
smartsheet.sheets().deleteSheet(1758379303587716L);