复制带有附件的Smartsheet行

时间:2019-04-16 00:10:45

标签: python smartsheet-api

我一直在尝试将带有行附件的一行从一张纸复制到另一张纸。当行在图纸之间移动时,附件会自动复制,但复制时不会。 API文档指出,存在一个“ include”参数,可以将其设置为“ all”,并且这也会导致附件被复制。有人愿意提供此参数的示例以及如何将其写入如下所示的内容吗?

很抱歉,如果这是基本的python。我是该语言的新手,也是api的新手。

response = smart.Sheets.copy_rows( 
    18382041966468,
    smart.models.CopyOrMoveRowDirective({
        'row_ids': [7372751113086852],
        'to': smart.models.CopyOrMoveRowDestination({
            'sheet_id': 4433677678602116
        })
    })
)

1 个答案:

答案 0 :(得分:0)

include属性是您在设置copy_rows和目标表的CopyOrMoveRowDirective之后向row_ids方法提供的第三个参数。除单元格数据外,还需要用逗号分隔的行元素列表进行复制。我发现这是在SDK here中的copy_rows方法中看到的。
您也可以只设置一个字符串。您带有include='all'的代码如下所示:

response = smart.Sheets.copy_rows( 
    18382041966468,
    smart.models.CopyOrMoveRowDirective({
        'row_ids': [7372751113086852],
        'to': smart.models.CopyOrMoveRowDestination({
            'sheet_id': 4433677678602116
        })
    }),
    include='all'
)

要使用包含列表来执行此操作,可以这样设置:

response = smar_client.Sheets.copy_rows(
  4453526869960580,               # sheet_id of rows to be copied
  smar_client.models.CopyOrMoveRowDirective({
    'row_ids': [1874694623782788],
    'to': smar_client.models.CopyOrMoveRowDestination({
      'sheet_id': 1955951847729028
    })
  }),
  include=['attachments','discussions']
)