rcmFilm Posted July 19, 2021 Report Share Posted July 19, 2021 Hi there, i updated Ftrack local install to the current relaese (4.7.2)and Deadline also to 10.1.17.4. When i want to submit for instance an nuke job that publishes a new version to ftrack, i get internal IDs as selection list and not the task names, please have a look at the Screenshot. I guess Thinkbox did something wrong with the API but i hope someone could help me on this. Thanks, Andy Link to comment Share on other sites More sharing options...
rcmFilm Posted July 19, 2021 Author Report Share Posted July 19, 2021 I found out the following, Deadline gathers the list of tasks assigned to current user and if they have the same name like "Animation" it adds the taskkey/ID to stay unique. As we never used Deadline to Ftrack i am not sure how this should look like normally. If i remember an older version right, there was the hierarchy present int the task selection list like: "Shot_1/Animation" "Shot_2/Lighting" and so on ? Link to comment Share on other sites More sharing options...
rcmFilm Posted July 19, 2021 Author Report Share Posted July 19, 2021 I altered the deadline scripts and now get the tasklist how i would it expect to work: Link to comment Share on other sites More sharing options...
Daniel Fleming Posted July 19, 2021 Report Share Posted July 19, 2021 Oh great. glad you were able to solve it. Out of curiosity how did the script end up looking? which part did you change? Thanks again for posting your solution you found! Link to comment Share on other sites More sharing options...
rcmFilm Posted July 19, 2021 Author Report Share Posted July 19, 2021 This post was recognized by Daniel Fleming! "Thanks for posting this back to the community!" rcmFilm was awarded the badge 'Helpful' and 5 points. The code i changed: deadline repo: \submission\FTrack\Main FTrackAPI.py Only my addition: class FTrackTask( FTrack ): def __init__( self, task ): super( FTrackTask, self ).__init__( rawObject=task ) self._id = None self._name = None self._description = None self._status = None self._project = None self._parent = None self._assets = None ###Added by me self._parentName = None @property def parentName( self ): if self._parentName == None: self._parentName = self.raw['parent']['name'] return self._parentName ### END of EDIT, leave the rest as it is FTrackUI.py def updateTasks( self, taskList ): #ignore None value if taskList != None: #update cache selectedProjKey = self.GetValue( "ProjectBox" ) self.cachedTasks[ selectedProjKey ] = taskList newTaskDict = {} foundDefault = False for task in taskList: pathNames = [task.name] taskKey = " / ".join( pathNames ) ### MY EDIT taskKey += " [shot: %s]" % task.parentName if taskKey in newTaskDict: #already a task with this name, append the key to stay unique taskKey += " [shot: %s]" % task.parentName ###EDIT END Link to comment Share on other sites More sharing options...
Lorenzo Angeli Posted July 20, 2021 Report Share Posted July 20, 2021 Hi @AndyMaurer thanks for sharing back the fixes. Surely will come at hand to many others to have it ! Cheers. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now