From dmEvent to dmEventListing

Hello,

I have just copied a bunch of dmEvent objects from an old farcry 5 project to a new farcry 7.1 install. After the migration I looked to the content section of the webtop and found all the migrated events. I looked at the dump of the first event (status = approved, typename = dmEvent) and copied the objectid. After that I tried to view the event via the browser using the copied objectid (index.cfm?objectid=XXX). Still logged in I did not see the dmEvent object. Instead I got a new dmEventListing object with status draft. The other dmEvent objects worked as expected. Any ideas why I got a new dmEventListing object instead of a dmEvent object?

Martin

Just so I understand correctly, you had an old FarCry 5 app and you’ve installed a new FarCry Core 7.1 app and you’ve just copied the dmEvent records from the old database into the new database?

Is it just 1 dmEvent record that isn’t displaying correctly, whereas all other dmEvent records are fine? If that’s the case, perhaps there is an issue with the data in that row for some reason… The dmEvent object extends farcry.core.packages.types.versions which means there can be both a Draft object and an Approved object that are related to each other, so is it possible that you have inserted a row for a Draft object which has a versionID that refers to an objectid of the Approved version of the event but the dmEvent record with the matching objectid is missing?

As far as the dmEventListing is concerned, it’s a new content type that is designed to be attached to the tree, so when this page is rendered it would generally list the dmEvent records based on the settings that have been entered (e.g. number of events to show, category filter, etc). I can’t think of a reason why this would be showing unless the objectid you put in the URL belongs to a dmEventListing object. Try adding the dmEventListing to your site tree to see it in action.

If you could share some screenshots that might help a lot. Also remember that after you have logged in to the webtop, when you browse on the front-end the FarCry tray should be loaded. In the options menu on the right, you can turn on “Webskin Tracer” and this will give you info about the objects and webskins that are being used to render the page – super useful for debugging :smile:

Hope that helps.

cheers,
Justin

When migrating data into a FarCry database, you need to make sure that
there are corresponding records in the refObjects table. You can run the
utility in the Webtop -> Webtop -> Developer Utilities -> Rebuild
refObjects. If you want it to be part of the migration process you should
be able to do something like:
insert into refObjects
select objectid, ‘dmEvent’ as typename
from dmEvent

Blair

Hi Blair,

I also migrated the refObjects table and rebuild the refObjects with the admin tool. I looked into the refObjects table and found a row with typename dmEventListing and objectid from my dmEvent object. After deleting this row and rebuilding the refObjects again everything went fine.

Thanks

1 Like

Super useful indeed! Put together a quick post with highlights :slight_smile:

1 Like