Bug 3053

PB 2019 OrcaScript cannot handle long provider names 14 September, 2021

Luke Degner
18 July, 2019
Product: PowerBuilder Category: Other
Version: 2019 Build:
Classification: Publishing: Public
Priority: P3
Status: Closed Reason: FIXED
Ken Guo @Appeon 26 July, 2019
Hi Luke,

OK. We will close this ticket! 
If you have any further question, please open a new ticket.

Luke Degner 23 July, 2019
Thanks, Ken. That should be good enough to close the ticket. Thanks for the help!
Ken Guo @Appeon 23 July, 2019
Hi Luke,

I’ve submitted this issue to our development team, but it won’t be fixed soon. Once it is fixed, I will let you know.  
At this moment, I suggest that you use this workaround for all your machines for now. 

Luke Degner 22 July, 2019
Hi Ken,

Will there be a fix for this included in the next version of PowerBuilder? Or will there be a patch released sometime sooner than that? I'd like to know if we will need to keep using the workaround going forward on all our build machines.

Ken Guo @Appeon 22 July, 2019
Hi Luke,

Glad to hear that. Can we close this ticket?

Luke Degner 19 July, 2019
Hi Ken,

That works to get around this issue.

Ken Guo @Appeon 18 July, 2019
Hi Luke,

Please try the following method:
Step 1: Run regedit.exe, and find HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\SourceCodeControlProvider\InstalledSCCProviders\.
Step 2: Add a new String Value with Value Name ‘tfs’ and the Value Data should be the same as that of ‘Microsoft Team Foundation Server MSSCCI Provider’. 
Step 3: Open PB 2019, and change the Workspace’s Source Control System to ’tfs’, and make sure the connection is successful. 
Step 4: Try the ORCA function again and see if it resolves the issue. 

Based on my experience, the issue happens when the SCC Provider Name exceeds 32 characters. The original name was ‘Microsoft Team Foundation Server MSSCCI Provider’, which obviously longer than 32 characters. So I created the name ‘tfs’ for PB 2019.

For the same reason:
'Scc set connect property provider "Microsoft Team Foundation Server MSSCCI Provider"' will raise the same error.
'Scc set connect property provider "tfs"' will work fine. 

Chris Pollach @Appeon 18 July, 2019
Hi Luke;

  Thanks for that extra screen capture and TFS version information!

  I wonder if this is some type of regression bug. I will now transfer this ticket  over to the main Support/Engineering team for their review & comments.

  I did check through all the tickets in our ticket system and cannot find a related one to either TFS or MSSCCI in my search about long name issues. 

Regards ... Chris
Luke Degner 18 July, 2019
Image 974.png (20KB)

Hi Chris,

We have been using that provider for years with PB 12.1. The TFS version is 2017 (15.117.27414.0).
I have attached a screenshot showing the differences between the old OrcaScript and the new one running against the same file.
Chris Pollach @Appeon 18 July, 2019
Hi Luke;

  I see that you are trying to use the "MSCCI" provider and yes, that name seems to be being cut-of at execution time.

  Is this the first time that you have tried to use the "MSSCCI" provider with ORCAScript? Also, what version of TFS are you using?

Regards .. Chris
Luke Degner 18 July, 2019
ErrorAndSupportingData.png (188KB)

I am moving from PB 12.1 to PB 2019 and am trying to get the existing OrcaScript to work.
I am receiving the error:
Orca error in 'scc connect '. Result Code -23.
Unable to read SCC connect properties for Microsoft Team Foundation Serve
An error occurred reading the Windows registry entry.

OrcaScript appears to cut off the provider property, as Process Monitor shows that it searches the registry for a cut-off value. Please see the attachment for the screenshots.

*Reproduce Steps:
1. Have a working environment with Windows 10, SQL Server 2014, PB 2019, TFS MSSCCI, and a checked-in PB application.
2. Create an OrcaScript similar to the following:
start session
create library "..\..\Dev2k19\example\example.pbl"
scc get connect properties "..\..\Dev2k19\example.pbw"
scc set connect property logfile ".\PBBuild.log"
scc set connect property logappend FALSE
scc set connect property deletetempfiles FALSE
scc set connect property provider "Microsoft Team Foundation Server MSSCCI Provider"
scc connect
scc set target "..\..\Dev2k19\example\example.pbt" REFRESH_ALL EXCLUDE_CHECKOUT
scc get latest version "..\..\Dev2k19\example\example.pbt"
scc refresh target FULL
set exeinfo property companyname "EXAMPLE" 
set exeinfo property productname "EXAMPLE" 
set exeinfo property copyright "2019" 
set exeinfo property description "EXAMPLE" 
set exeinfo property productversion pvers 
set exeinfo property productversionnum pversnum 
set exeinfo property fileversion pvers 
set exeinfo property fileversionnum pversnum
build library "..\..\Dev2k19\example\example.pbl" "" pbd
build executable "..\..\Dev2k19\example\example.exe" "..\..\Dev2k19\_Bitmaps\EXAMPLE.ICO" "..\..\Dev2k19\_Bitmaps\MASTERLIST.PBR" "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
scc close
end session

3. Run the OrcaScript via a command window in Administrator mode, like:
C:\Program Files (x86)\Appeon\Shared\PowerBuilder\orcascr190.exe OrcaScriptExample.orc

a. The failure also happens when the provider is pulled in from the "scc get connect properties" without defining it in the file.
b. Checking in and checking out files works as expected, so it is only an issue with OrcaScript.
c. Please note that the screenshot was taken with the actual data, so project names were redacted.
Windows 10
Database Type:
Microsoft SQL Server
Database Version:
2014 (SP2) 12.0.5000.0 (X64)