Linked Folder Pairings

A nice feature add for me would be the ability to relate folders to each other in pairs and have the source and destination folders auto navigate together.

For example, in a "review and filing workflow", you may have a structure like this:

SOURCE:
C:\AUTOS TO REVIEW
\Trucks
\Sedans
\Race Cars

DESTINATION
F:\TRUCKS
F:\SEDANS
R:\Race Cars

It would be neat if you selected folder C:\AUTOS TO REVIEW\Trucks that F:\Trucks automatically became the destination folder.

Hope you'll consider it. It would save me a lot of time constantly navigating and would prevent filing mistakes.

You can do that already:

https://www.gpsoft.com.au/help/opus12/index.html#!Documents/Navigation_Lock.htm

The problem I have is that the folder structure is not identical and drives can be separate. Even sub-folders can have different names.

It would be helpful if you could have an area in preferences (like there is for folder aliases) where you could configure a navigation for a particular named workflow and make simple pairings:

example of a named navigation lock:

NAVIGATION NAME: Automobile Review And File
Source: C:\Autos\Trucks Dest: F:\Trucks
Source: C:\Autos\Race Cars Dest: F:\RaceCarsZoomZoom

Then turn on that named navigation lock when your working on that workflow.

Benefits:

  • Highly scalable
  • Would make workflows faster
  • Would reduce errors with things being misfiled
  • Would make dupe checks easier because there is typically two pairings you're checking

You could do this with a button which loads preset folders into the source and destination Listers and turns on Nav lock.

Go "C:\Autos\Trucks" OPENINLEFT 
GO "F:\Trucks" OPENINRIGHT
Set NAVLOCK=On 

With scripting you could detect when a particular folder is in the source and automatically open it's pair in the destination but that would take a little more time. :slight_smile:

Here is a little script add-in that changes the destination if the source gets set to a folder from a specified list.

var destFolders = DOpus.Create.Map();

destFolders('D:\\test') = 'D:\\findtest';
destFolders('F:\\Video2') = 'F:\\Music';

function OnInit(initData) {
    initData.name = 'AutoDest';
    initData.desc = 'Opens a new destination based on source';
    initData.default_enable = true;
    initData.min_version = '12.0';
}

function OnAfterFolderChange(afterFolderChangeData) {
    if (!afterFolderChangeData.result) return;

    var srcPath = afterFolderChangeData.tab.path;
    if (!destFolders.exists(srcPath)) return;

    var cmd = DOpus.Create.Command();
    cmd.RunCommand('GO PATH="' + destFolders(srcPath) + '" OPENINDEST');
    cmd.RunCommand('Set NAVLOCK=On');
}

EventAutoDest.js.txt (695 Bytes)

This is a little helper button that lets you quickly generate the folder pair entries. Just navigate to the desired combination, hit the button and paste the clipboard into the add-in from above.

function OnClick(clickData) {
    var cmd = clickData.func.command;
    var fsu = DOpus.FSUtil();
    var wld = fsu.NewWild();

    cmd.deselect = false;

    var srcPath = wld.EscapeString(clickData.func.sourcetab.path, 'b');
    var dstPath = wld.EscapeString(clickData.func.desttab.path, 'b');

    var line = 'destFolders(\'' + srcPath + '\') = \'' + dstPath + '\';\n';
    DOpus.SetClip(line);
}

GenerateFolderPairs.dcf (1.1 KB)


1 Like

By the way, i had requested something similar quite a time ago. Steje was so kind to make a script for linking tabs. Just as an additional idea.

I'm trying to work with this but running into some problems and upon further reflection the complexity of the workflow probably needs some additional consideration on my part.

  • First is I don't see a way to switch this on/off. When files are being reviewed this directory binding would be on during the organization and filing but then turned off for other activities. I would want to be able to turn on another named paring workflow depending on what stage I am in.
  • Sometimes the destination directory doesn't exist because the workflow has a clear step. So it would be cool to be able to create the directory (as per the pair definition) if it doesn't exist. Would this script do that?

I've added a diagram of the workflow with "Source" and "Dest" stamps of what I'm referring to. This "Named Pairing" strategy would be great not only for the source and dest i specified but also any workflow step that has consistency. I can really see this being a Major feature of a new version if you ask me. I'm sure many Opus users have complex workflows.

Hope you will consider.

You can do everything you want with a script, including creating folders, and turning it on and off.

But it sounds like your requirements are quite esoteric, so you may be the only person that could write the script to completely fit your requirements, if the existing scripts and functionality aren't enough already.