How to update ShotGrid TrackingInfo from Python?

This used to work to update shotgun tracking info on a RV source node:

And this would convert a path to a version name

but now they both return
Exception: Exception thrown while calling runtime.eval

How can I call this now please?

shotgun_mode.mu still exists but replacing shotgun with shotgrid does the trick

import rv
rv.runtime.eval("""

shotgrid_mode.theMode().versionNameFromSource("%s");

""" % rv.commands.sourcesAtFrame(rv.commands.frame())[0], ["shotgrid_mode"])
rv.runtime.eval(
  """shotgrid_mode.theMode().updateTrackingInfo("one", nil);""", 
  ["shotgrid_mode"]
)
1 Like

Did the module name change?

I’'m not understanding your question @Michael.Kessler.

If you try out the code shotgun_mode.theMode() causes an error and shotgrid_mode.theMode() doesn’t.

What confused me is that shotgun_mode still exists so I kept trying.

This listing shows both files:

I would expect rv.runtime.eval and MuSymbol to check the command passed in in case of an exception and include a note in the exception “Shotgun was renamed to Shotgrid. Please check your command” or something even more detailed.

From my perspective this response just isn’t enough when users try to use code snippets from the official documentation
Exception: Exception thrown while calling runtime.eval
as it creates confusion and wastes time that can be spend making RV tools better

Thanks, I’m not employed at Autodesk anymore, it would be great if Autodesk could provide an updated sample for the newer RV versions.

I don’t use Screening Room anymore so I’m not particularly familiar with the changes.

I had actually created a ticket to autodesk and linked this ticket in it so my message was partly for you and partly for them :slight_smile:

Hope you are doing well wherever you are. You made great posts!

1 Like