Released on November 26, 2021
The qdv7:// protocol has been extended to feed global variables.
Below is the code of an HTML page with what was previously supported (which is still supported of course):
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Sample links"</title>
</head>
<body>
<p>
<a href="qdv7://">Starts QDV</a><br />
<a href="qdv7://?open=C:\temp\Sample_Estimate.">Open C:\temp\Sample_Estimate.qdv (from UNC)</a><br />
<a href="qdv7://?create=C:\temp\Estimate_Created_2.qdv">Creates C:\temp\Estimate_Created_2.qdv from scratch</a><br />
<a href="qdv7://?createfromtemplate=C:\temp\Estimate_Created_3.qdv|C:\temp\Sample_Estimate.qdv|ABCD1234">Creates C:\temp\Estimate_Created_3.qdv from template C:\temp\Sample_Estimate.qdv with ID=ABCD1234</a><br />
<a href="qdv7://?open=[SHAREPOINT]http://iaes-software.com/temp/Sample_Estimate.qdv">Open directly http://iaes-software.com/temp/Sample_Estimate.qdv (requires SharePoint)</a><br />
<a href="qdv7://?opentotemp=C:\temp\Sample_Estimate.qdv">Open C:\temp\Sample_Estimate.qdv to temporary folder</a><br />
<a href="qdv7://?createtotemp=Estimate_Created_4.qdv">Creates Estimate_Created_4.qdv from scratch into temporary folder</a><br />
<a href="qdv7://?createfromtemplatetotemp=Estimate_Created_5.qdv|C:\temp\Sample_Estimate.qdv|ABCD1234">Creates Estimate_Created_5.qdv to temporary folder from template C:\temp\Sample_Estimate.qdv with ID=ABCD1234</a><br />
</p>
</body>
</html>
Now, you can pass variables to all calls. We replaced the ID by the new syntax and added support for call with no IDs. Changes appear in red below:
In this example, we pass variables GLV_VAR1 = "abc", GLV_VAR2 = "def" and GLV_VAR3 = "ghi".
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Sample links"</title>
</head>
<body>
<p>
<a href="qdv7://">Starts QDV</a><br />
<a href="qdv7://?open=C:\temp\Sample_Estimate.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Open C:\temp\Sample_Estimate.qdv (from UNC) with some variables passed</a><br />
<a href="qdv7://?create=C:\temp\Estimate_Created_2.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Creates C:\temp\Estimate_Created_2.qdv from scratch with some variables passed</a><br />
<a href="qdv7://?createfromtemplate=C:\temp\Estimate_Created_3.qdv|C:\temp\Sample_Estimate.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Creates C:\temp\Estimate_Created_3.qdv from template C:\temp\Sample_Estimate.qdv with some variables passed</a><br />
<a href="qdv7://?open=[SHAREPOINT]http://iaes-software.com/temp/Sample_Estimate.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Open directly http://iaes-software.com/temp/Sample_Estimate.qdv (requires SharePoint) with some variables passed</a><br />
<a href="qdv7://?opentotemp=C:\temp\Sample_Estimate.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Open C:\temp\Sample_Estimate.qdv to temporary folder with some variables passed</a><br />
<a href="qdv7://?createtotemp=Estimate_Created_4.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Creates Estimate_Created_4.qdv from scratch into temporary folder with some variables passed</a><br />
<a href="qdv7://?createfromtemplatetotemp=Estimate_Created_5.qdv|C:\temp\Sample_Estimate.qdv|VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}">Creates Estimate_Created_5.qdv to temporary folder from template C:\temp\Sample_Estimate.qdv with some variables passed</a><br />
</p>
</body>
</html>
So, the correct syntax to pass variables is: VARIABLES{GLV_VAR1;abc}{GLV_VAR2;def}{GLV_VAR3;ghi}
Notice that you can only pass strings to such variables. If a variable addressed already exists in the estimate with a different type, you get an error message.
If the variables doesn't exist in the estimate, the operation creates it automatically.
Your variable names must start with GLV_ .They are regular QDV variables (R/W allowed).