Smartsheet Java API Получение обсуждений - PullRequest
0 голосов
/ 28 февраля 2020

Попытка программно получить комментарии к строкам в smartsheet с помощью Java API. Когда я использую row.getDiscussions (), он всегда возвращает ноль, даже если в этой строке присутствуют комментарии.

try 
{
    Smartsheet CommericalSmartsheet = new SmartsheetBuilder().setAccessToken("*****************").build();
    Sheet sheet = CommericalSmartsheet.sheetResources().getSheet(*************,null,null,null,null,null,null,null);
    List<Row> rows = sheet.getRows();
    System.out.println("Number of Rows:  " + rows.size());
    for(int x = 0;  x<rows.size();x++)
    {
        System.out.println("Row #:  " + x);
        List<Discussion> discussions = rows.get(x).getDiscussions();
        if (discussions != null)
        {
            System.out.println("Number of Discussions:  " + rows.get(x).getDiscussions().size());
            for(int y=0;y<discussions.size();y++)
            {
                List<Comment> comments = discussions.get(y).getComments();
                for (int i=0;i<comments.size();i++)
                {
                    String CommentText = comments.get(i).getText();
                    User createdBy = comments.get(i).getCreatedBy();
                    Date createdAt = comments.get(i).getCreatedAt();
                    System.out.println(createdBy.toString() + " " + createdAt.toString() + ":  " + CommentText);
                 }
            }
        }
    }
} catch (SmartsheetException ex) {
            Logger.getLogger(TFSpush.class.getName()).log(Level.SEVERE, null, ex);
        }

Мой вывод

Number of Rows:  1026
Row #:  0
Row #:  1
Row #:  2
Row #:  3
Row #:  4
Row #:  5
Row #:  6
Row #:  7
Row #:  8
Row #:  9
Row #:  10
Row #:  11
Row #:  12
Row #:  13
Row #:  14

Я не буду утомлять вас отдых просто считается до 1026

1 Ответ

1 голос
/ 28 февраля 2020

Пожалуйста, попробуйте использовать SheetInclusion.DISCUSSIONS при получении листа:

Set<SheetInclusion> inclusionSet = Collections.singleton(SheetInclusion.DISCUSSIONS);
Sheet sheet = CommericalSmartsheet.sheetResources().getSheet(*************,inclusionSet,null,null,null,null,null,null);

Для получения дополнительной информации см. Метод SheetResources.getSheet () и SheetInclusion Перечисление в SDK do c.

...