RE: How to find Open Opportunities that don't have a future activity set up
You will have to use a outer join between opportunity and activities to achieve this. However, the view designer does not allow you to specify an outer join so you will need to create a system view, export the view and directly edit the fetchxml for the view. See the following document that describes how one can query for records that don't have a related record that matches a criteria.
docs.microsoft.com/.../use-fetchxml-left-outer-join-query-records-not-in
A fetchxml of the following form should probably work but you will need to test it.
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
<entity name="opportunity">
<attribute name="name" />
<attribute name="customerid" />
<attribute name="estimatedvalue" />
<attribute name="statuscode" />
<attribute name="opportunityid" />
<order attribute="name" descending="false" />
<link-entity name="activitypointer" from="regardingobjectid" to="opportunityid" link-type="outer" alias="ae">
<filter type="and">
<condition attribute="scheduledend" operator="next-x-days" value="500" />
</filter>
</link-entity>
</entity>
</fetch>