# How to update ShotGrid TrackingInfo from Python?

**URL:** <https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831>\
**Category:** RV\
**Created:** [May 24, 2024, 9:59pm UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831 "2024-05-24T21:59:01Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![patrickwolf](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/patrickwolf/32/3931_2.png) [@patrickwolf](https://community.shotgridsoftware.com/u/patrickwolf)\
**Post date:** [May 24, 2024, 9:59pm UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/1 "2024-05-24T21:59:01Z")

</div>

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

> [@Link a media in rv to its shotgun version](https://community.shotgridsoftware.com/t/link-a-media-in-rv-to-its-shotgun-version/9881/10):
>
> ```auto
> rv.runtime.eval(
> """shotgun_mode.theMode().updateTrackingInfo("one", nil);""", 
> ["shotgun_mode"]
> )
> 
> ```

And this would convert a path to a version name

> [@RV Screening Room read version data](https://community.shotgridsoftware.com/t/rv-screening-room-read-version-data/3276/7):
>
> ```auto
> import rv
> rv.runtime.eval("""
> 
> shotgun_mode.theMode().versionNameFromSource("%s");
> 
> """ % rv.commands.sourcesAtFrame(rv.commands.frame())[0], ["shotgun_mode"])
> 
> ```

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

How can I call this now please?

---

<div class="post-metadata">

**Author:** ![patrickwolf](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/patrickwolf/32/3931_2.png) [@patrickwolf](https://community.shotgridsoftware.com/u/patrickwolf)\
**Post date:** [May 27, 2024, 10:03pm UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/2 "2024-05-27T22:03:37Z")

</div>

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

```auto
import rv
rv.runtime.eval("""

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

""" % rv.commands.sourcesAtFrame(rv.commands.frame())[0], ["shotgrid_mode"])

```

```auto
rv.runtime.eval(
  """shotgrid_mode.theMode().updateTrackingInfo("one", nil);""", 
  ["shotgrid_mode"]
)

```

---

<div class="post-metadata">

**Author:** ![Michael.Kessler](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/michael.kessler/32/183_2.png) [@Michael.Kessler](https://community.shotgridsoftware.com/u/Michael.Kessler)\
**Post date:** [May 28, 2024, 1:25am UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/3 "2024-05-28T01:25:19Z")

</div>

Did the module name change?

---

<div class="post-metadata">

**Author:** ![patrickwolf](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/patrickwolf/32/3931_2.png) [@patrickwolf](https://community.shotgridsoftware.com/u/patrickwolf)\
**Post date:** [May 28, 2024, 5:07am UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/4 "2024-05-28T05:07:20Z")

</div>

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:

> [@Renaming mu modules to shotgrid\_\*, why?](https://community.shotgridsoftware.com/t/renaming-mu-modules-to-shotgrid-why/14825/1):
>
> shotgrid\_mode.mu  
> shotgrid\_review\_app.mu  
> shotgrid\_state.mu  
> shotgrid\_stringMap.mu  
> shotgrid\_upload.mu  
> shotgrid\_xmlrpc.mu
> 
> shotgun\_mode.mu  
> shotgun\_review\_app.mu  
> shotgun\_upload.mu

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

---

<div class="post-metadata">

**Author:** ![Michael.Kessler](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/michael.kessler/32/183_2.png) [@Michael.Kessler](https://community.shotgridsoftware.com/u/Michael.Kessler)\
**Post date:** [May 29, 2024, 10:46pm UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/5 "2024-05-29T22:46:46Z")

</div>

> [@patrickwolf](#):
>
> From my perspective this response just isn’t enough when users try to use code snippets from the official documentation

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.

---

<div class="post-metadata">

**Author:** ![patrickwolf](https://sea1.discourse-cdn.com/shotgunsoftware/user_avatar/community.shotgridsoftware.com/patrickwolf/32/3931_2.png) [@patrickwolf](https://community.shotgridsoftware.com/u/patrickwolf)\
**Post date:** [May 29, 2024, 11:29pm UTC](https://community.shotgridsoftware.com/t/how-to-update-shotgrid-trackinginfo-from-python/18831/6 "2024-05-29T23:29:05Z")

</div>

> [@Michael.Kessler](#):
>
> 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 had actually created a ticket to autodesk and linked this ticket in it so my message was partly for you and partly for them 🙂

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