【问题标题】:creating all day events in google scripts在谷歌脚本中创建全天事件
【发布时间】:2013-11-16 21:59:01
【问题描述】:

我在一个组织工作,该组织拥有办公室中的每个人都需要访问的 Outlook 日历。我们开始切换到 iPhone,并且能够让我们的用户访问该日历,我正在与使用 iPhone 的用户可以查看的谷歌日历共享事件。但是,当使用 Outlook 中的谷歌日历共享事件时,它会使事件从上午 12 点持续到上午 12 点,并且该事件会占用一整天,并且很难看到当天发生的其他事件。

我尝试编写一些谷歌脚本,将任何超过 12 小时的谷歌日历事件转换为“全天事件”,使该事件仅显示在顶部。

我可以写一个谷歌脚本,说明以下内容:

如果超过 12 小时 SETasALLdayEvent() ???

您能否就如何改进以下 google 脚本提出建议?非常感谢,谢谢!

function processInvites2() {
  var calendarId =  'examplecalendar@gmail.com'; // this needs to be the email address of the calendar you're monitoring
  var invited = "INVITED";
  var accepted = "YES";
  var accept = CalendarApp.GuestStatus.YES;
  var reject = CalendarApp.GuestStatus.NO;
  var rejection = "Eep - someone else has a booking then..."; //subject line for our email to reject a booking

  var calendar = CalendarApp.getCalendarById(calendarId);

  var start = new Date();
  var end = new Date("January 1, 2015 00:00:00 UTC");
  var invites = calendar.getEvents(start, end, invited); //find all future invites (up to 2099)

  for(var i = 0; i < invites.length; i++){



      invites[i].setMyStatus(accept);


  }
};

非常感谢您的帮助!!

【问题讨论】:

    标签: events google-apps-script outlook google-calendar-api


    【解决方案1】:

    是的,您可以编写这样的脚本。看看calendarApp。

    【讨论】:

    • 谷歌脚本是否有在以小时为单位识别时间时必须使用的格式? 'IF (e.hour > 12);'?另外,在使用 SETasALLdayEvent() 时,您是否知道使其仅转到第一天的快捷方式?当前它显示为上午 12 点到 12 点,因此即使它更改为全天事件,它也会显示两天。我很惊讶没有更多的人遇到这个问题。
    • gas 是 javascript,它使用标准的 javascript Date(),以及 Utilities 中的一些日期格式。
    • 您介意就如何在谷歌脚本中编辑时间范围提出建议吗?我已经发布了我一直在努力的工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多