2017-06-21 164 views
1

我想編寫自定義代碼以支持以下行爲: 父A具有一個名爲「ABC」的字段父A的每個子任務都將此字段「ABC」作爲只讀「ABC」編輯在家長應該過濾每個孩子每次更新。顯然,這不會是真正的實時同步,但應該在最終用戶刷新頁面以查看更新後的值時立即調用相同的值。父和子字段同步

我真的想要一個腳本函數來讀取父任務上的自定義字段以進行更改,並且如果更改將該值傳遞給子任務。我正在使用「腳本亞軍」,但我無法弄清楚如何做到這一點。您能否提供可在腳本運行器中使用的腳本,並且我想在我們的實例中爲所有問題的&子任務自動執行作業。

我知道這可以通過自定義腳本監聽器來完成,但我需要一個腳本,可以完成這個任務。

回答

0

您可以使用腳本字段輕鬆做到這一點。 documentation是相當不錯的。

基本上,你首先必須讓你的父母的問題。發行對象有一個方法getParentObject(),這是否:

問題getParentObject()

如果這個問題是一個子任務,返回其父。

返回:

父問題,或NULL,如果問題不是一個子任務。

然後你可以得到你父母問題的自定義字段的值。假設這是一個簡單的文本字段,它看起來像這樣:

String customFieldName = "My fancy custom field" 

CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager() 
Collection<CustomField> customFields = customFieldManager.getCustomFieldObjectsByName(customFieldName) 

parentIssue.getCustomFieldValue(customFields.first()) as String 
+0

嗨格倫,我很新,這讓我有點混淆,應該怎麼做。我用腳本字段類型創建了一個自定義字段,並進入了腳本字段,但無法找到下一個動作。你能找到我應該運行的腳本嗎? –

+0

你的意思是「找不到下一個動作?」。轉到「管理加載項」 - >「腳本字段」。您的自定義字段將在此處列出。只需單擊編輯,然後將路徑添加到腳本中,或者在行內輸入腳本。腳本運行者文檔也非常清楚地解釋了這一點,包括。截圖。 – GlennV