Не удается получить текстовый элемент переменной

#applescript

#applescript

Вопрос:

Я хочу получить идентификатор задачи из переменной в Apple Script.

У Tyme2 ошибка: не удается получить текстовый элемент 2 с идентификатором задачи «AF7AA1C5-F10B-4CFD-97E5-9428CADC96491285-000007F1BAB4FE40» и идентификатором проекта «2E97F048-CB5E-4F8B-8DFB-139D39BFD4C7-1285-000003A297D9D970».

Пробный код:

  1. set taskId to the first item of taskProject

    • Результат для журнала (taskid идентификатора задачи AF7AA1C5-F10B-4CFD-97E5-9428CADC96491285-000007F1BAB4FE40 идентификатора проекта 2E97F048 CB5E-4F8B-8DFB-139D39BFD4C7-1285-000003A297D9D970)
  2. set taskId to text item 2 of taskProject

    • Результат: приведенное выше сообщение об ошибке
  3. Уточните тип с помощью: return properties of taskProject

    • Результат: {timedPlannedDuration: 0.0, relatedCategoryID:»», DueDate: отсутствующее значение, класс: задача, mileageKilometerRate: 0.0, timedRoundingMinutes: 1, timedRoundingMethod: 1, fixedRate: 0.0, TaskType: «timed», completedDate: отсутствующее значение, timedHourlyRate: 0.0, завершено: false, Фиксированное количество: 0, relatedProjectID: «2E97F048-CB5E-4F8B-8DFB-139D39BFD4C7-1285-000003A297D9D970», идентификатор: «2887FB44-D3D6-45BF-9137-00A311E47424-1210-000000DBBD0298A9″, имя: » (идентификатор taskProject) «, relatedTaskID:»»}

Комментарии:

1. item и text item — это две совершенно разные вещи. Пожалуйста, уточните, что это за тип task id и каков ожидаемый результат.

2. в перечисленных свойствах — видите ли вы информацию, которую вам нужно получить?

3. информация, которая мне понадобится, это id

Ответ №1:

В зависимости от типа идентификатора задачи, это должно сработать, если идентификатор задачи имеет тип text (но это может привести к сбою, трудно прочитать структуру taskProject из того, что вы написали)

 set taskID to ((task id of taskProject) as text)
  

Если это не сработает, пожалуйста, добавьте результат этой строки к вопросу:

 return properties of taskProject
  

Редактировать:

Если вы перечисляете свойства, вы всегда можете получить к ним доступ по их ключу. Ключом в вашем случае является «id». получите к нему доступ следующим образом:

 set taskID to ((id of taskProject) as text)
  

или

 set taskID to ((taskProject's id) as text)
  

Иногда ключи / имена переменных зарезервированы системой. Если вышеуказанное не удается, попробуйте сделать это следующим образом

 set taskID to ((|id| of taskProject) as text)