I know you can compare several revisions of the same file against each other in recent documents but you can't compare different versions of the code if the saved name is different. Is there a way I can multiselect say: Doc 1 - Revision 2 and Doc 3 - Revision 1 and compare those with Beyond Compare (or even the S.A Compare tool)?

Doc 1 might be my stored procedure by name, but Doc 3 might be a revision I made in a new tab that happened to take on the name SQLQuery3.sql or something like that. I can't directly compare them without copy/paste.

Thu Nov 17, 2016 1:59 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

You can open them and then use the Code Compare feature to compare contents of two tabs. Hope this helps.

Thu Nov 17, 2016 3:08 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

SysOp wrote:

You can open them and then use the Code Compare feature to compare contents of two tabs. Hope this helps.

Can you explain? I opened both into new SQL Editor tabs, when I hit Ctrl-Shift-C, only one comes into the left pane of BC, If I go do the same on the other tab it ends up in it's own left pane in BC.

Thu Nov 17, 2016 3:11 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

It looks like maybe compare script revisions? That works if the script revisions are under the same filename. But if I have SQLQuery1.sql and SQLQuery3.sql that are slightly different revisions, I can't compare them without manually pasting them into BC unless there's something I am missing.

If so that sort of worked, though it only invoked the internal compare tool and not BC (which is my set preference).

If I use Compare code and have my compare tool set to SQL Assistant I can use the "bullseye" on the right pane to pick up the tab to compare against. It would be nice if somehow that all still worked with BC since that setting appears global.

Thu Nov 17, 2016 3:12 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

Any more thought on this?

The primary problem right now is if I have my SCS External Compare tool set to BC there is no way to compare two windows easily (without copy pasta). If I switch back to the SQL Assistant compare tool I can use the bullseye to focus the right side of the compare window at another tab.

But.. as I said above since that external compare tool setting appears to be global B.C doesn't work here real well. Perhaps when using an external compare tool the options should change:

"Load to BC left pane"

then if a left pane is loaded, the next time "Compare to BC Left Pane".

I know BC's right click context does something like that "select left file to compare" then the next right click it's "compare to (filename_selected_for_left_pane)".

So I'm sure there's a way to do that programmatically that with Beyond Compare.

Fri Nov 18, 2016 3:52 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

Mindflux wrote:

SysOp wrote:

You can open them and then use the Code Compare feature to compare contents of two tabs. Hope this helps.

Can you explain? I opened both into new SQL Editor tabs, when I hit Ctrl-Shift-C, only one comes into the left pane of BC, If I go do the same on the other tab it ends up in it's own left pane in BC.

To open a specific revision, simply double click it. If you want to open another revision or document, double-click it too. They will open in new editor tabs.

Open two files or enter new scripts in two tabs
Click SQL Assistant -> Compare code and Data -> Compare Script Revisions
In the Compare dialog drag the target icon for the left part ((+)) to the first tab
Activate second tab and then drag the target icon for the right part ((+)) to the second tab.

Last edited by SysOp on Fri Nov 18, 2016 4:09 pm; edited 2 times in total

Fri Nov 18, 2016 4:00 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

SysOp wrote:

Mindflux wrote:

SysOp wrote:

You can open them and then use the Code Compare feature to compare contents of two tabs. Hope this helps.

Can you explain? I opened both into new SQL Editor tabs, when I hit Ctrl-Shift-C, only one comes into the left pane of BC, If I go do the same on the other tab it ends up in it's own left pane in BC.

To open a specific revision, simply double click it. If you want to open another revision or document, double-click it too. They will open in new editor tabs.

Open two files or enter new scripts in two tabs
Click SQL Assistant -> Compare code and Data -> Compare code Revisions
In the Compare dialog drag the target icon for the left part ((+)) to the first tab
Activate second tab and then drag the target icon for the right part ((+)) top the second tab.

Right, I get that. BUT my compare tool isn't set to "SQL Assistant" it's set to BC, so that's what "Compare Code (ctrl+shift+c)" invokes. So then I get my left side with my code tab, but nothing in my right side, because SQL Assistant doesn't let me tell it what to load in the right side so I'm left doing it myself.

Fri Nov 18, 2016 4:02 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

Quote:

Right, I get that. BUT my compare tool isn't set to "SQL Assistant" it's set to BC, so that's what "Compare Code (ctrl+shift+c)" invokes. So then I get my left side with my code tab, but nothing in my right side, because SQL Assistant doesn't let me tell it what to load in the right side so I'm left doing it myself.

I get that too. I'm talking about a different tool "Compare Script Revisions..." My apologies, I made several typos and called it "Compare code Revisions" that's not the same as "Compare Code... Ctrl-Shift-C" After you open two revisions from the Recent document dialog, you can use that tool to compare contents of two tabs. No need to browse or look for files. It's quick, but it doesn't use BC.

You can also compare in place in the Recent Documents dialog

Fri Nov 18, 2016 4:29 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

SysOp wrote:

Quote:

Right, I get that. BUT my compare tool isn't set to "SQL Assistant" it's set to BC, so that's what "Compare Code (ctrl+shift+c)" invokes. So then I get my left side with my code tab, but nothing in my right side, because SQL Assistant doesn't let me tell it what to load in the right side so I'm left doing it myself.

I get that too. I'm talking about a different tool "Compare Script Revisions..." My apologies, I made several typos and called it "Compare code Revisions" that's not the same as "Compare Code... Ctrl-Shift-C" After you open two revisions from the Recent document dialog, you can use that tool to compare contents of two tabs. No need to browse or look for files. It's quick, but it doesn't use BC.

You can also compare in place in the Recent Documents dialog

That image above is precisely why I asked for "Compare externally"

Lets pretend SQLQuery2.sql and proc_text_test_20 were nearly identical because I copied the proc out of one tab and into another. I can't compare them with that compare tool inside the document manager with that prior/head setting.

Last edited by Mindflux on Fri Nov 18, 2016 4:36 pm; edited 1 time in total

Fri Nov 18, 2016 4:33 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

Actually, even faster method is to right-click a document name in the Recent Documents dialog and then Compare -> Custom... This will open the Compare Script Revisions dialog with its drop-down lists for file names populated with revisions numbers so that you can select any two revisions to compare without bothering to locate them on disk or open in the editor.

Last edited by SysOp on Fri Nov 18, 2016 4:36 pm; edited 1 time in total

Fri Nov 18, 2016 4:33 pm

Mindflux

Joined: 25 May 2013Posts: 626Country: United States

SysOp wrote:

Actually, even faster method is to right-click a document name in the Recent Documents dialog and then Compare -> Custom... This will open the compare Script Revisions dialog with its drop-down lists for file names populated with revisions numbers so that you can select any two revisions to compare without b1othering to locate them on disk.

That's a good trick there, that does alleviate my issue I brought forth in the original post. However I'm still stuck with the SCS Compare tool doesn't always find all differences (which is a known and active bug, perhaps the fix is coming soon).

Fri Nov 18, 2016 4:35 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

Code:

However I'm still stuck with the SCS Compare

Please try 32-bit version of SA SQL Editor, or doing the same from within SSMS.. You will see some magic. Seriously, as we've found out already, there is an issue in 64-bit version of the SA code resulting in incorrect code comparison results. That 64-bit ported code requires additional changes. I hope that the build we are planning for release later this week, will have that issue fixed.

Fri Nov 18, 2016 4:44 pm

SysOpSite Admin

Joined: 26 Nov 2006Posts: 6573

The code compare bug in 64-bit version should be fixed in the latest 9.0.185 build. Please give it a try.