©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 81 
Database Choice Functionality (Command Line / GUI) 
In some cases, you may want to use the same report to connect to different data sources, such as 
testing or production server.  While each report stores connection properties for only one 
default data source, Visual CUT allows you to use Command Line arguments to specify a 
different data source.     
The command line argument structure is as follows: 
Selecting an Alternative ODBC Data Source  
… 
"ODBC_DSN:Data Source Name"  
or 
… 
"ODBC_DSN_From_To:Old_DSN1>>New_DSN1||Old_DSN2>>New_DSN2"  
The ODBC_DSN argument overrides all ODBC DSNs used in the report by the new DSN 
The ODBC_DSN_From_To argument overrides only tables that use the old DSN. 
Notes:  
1.  You can combine this functionality with the user_id & password command line 
arguments described in a previous section. 
2.  The target Data Source Name must exist on the PC running Visual CUT.  If it doesn't, 
Visual CUT reverts back to running the report against the ODBC DSN the report was 
designed for (a warning message is added to the failure.log file). 
3. ODBC_DSN_From_To support multiple pairs separated by "||" as shown in the 
example above.  This addresses scenarios where a report uses multiple ODBC DSNs (e.g. 
when subreports use different DSNs). 
4.  The ODBC_DSN_From_To is not available in the Crystal 8.5 version of Visual CUT. 
Pdf metadata editor online - add, remove, update PDF metadata in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata
delete metadata from pdf; edit multiple pdf metadata
Pdf metadata editor online - VB.NET PDF metadata library: add, remove, update PDF metadata in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
remove metadata from pdf; bulk edit pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 82 
5.  If you don't specify User_ID & Password command line arguments, and the data source 
requires a user id & password, you should let Visual CUT "load" the authentication 
information by running the report against the alternative ODBC data source.  You can do 
that by clicking the button to the right of the Server name in the login dialog.  This 
expands the display to include a listing of all available ODBC data sources (grouped by 
ODBC driver type). The original ODBC data source is initially selected and the driver 
group it belongs to is expanded (and prefixed with a "!").   
6.  If you select another ODBC data source, Visual CUT explains the functionality: 
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
RasterEdge C#.NET HTML5 PDF Viewer and HTML5 PDF Editor are professional online PDF manipulation tools, which are compatible with both 32-bit and 64-bit
read pdf metadata online; change pdf metadata
VB.NET PDF- HTML5 PDF Viewer for VB.NET Project
ASP.NET PDF Viewer; VB.NET: ASP.NET PDF Editor; VB.NET to PDF. Image: Remove Image from PDF Page. Image Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete
pdf metadata; acrobat pdf additional metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 83 
Overriding the Database Specified in the Report or ODBC DSN 
For ODBC data sources, you can enter a database name into the login dialog if you wish to 
override the database specified in the ODBC data source or in the report itself.  This is useful for 
situations where the same database (e.g., MS SQL Server) contains multiple databases each with 
the same table structure.  If the number of such databases is large, creating a dedicated ODBC 
DSN for each and using the select ODBC DSN functionality may be too tedious.  Instead, you 
can directly type in the database name in the login dialog. 
To enable database name input into the database field in the login dialog, you need to set the 
Override_ODBC_DSN_Database entry under the [Options] section in the DataLink_Viewer.ini 
file to TRUE, like this:   
[Options] 
Override_ODBC_DSN_Database=TRUE 
Note that if that option is set to TRUE, the database specified in the ODBC DSN can no longer 
override the database specified in the report (if the user doesn't type in a Database, the specified 
Database remains the one used in the report.   
Note: This functionality is not available in the Crystal 8.5 version of Visual CUT. 
Overriding ODBC Table Location (.CSV Files as Data Source) 
This functionality was added for a user who needed to call DataLink Viewer from his application 
via a command line.  The data source was .csv  files via ODBC and a command line argument 
was needed to control what .csv  file should be used (.csv files gets generated and named 
uniquely by another application).  
For example, a report designed to use Risk.csv, the following command line argument: 
…  "Table_From_To:Risk.csv>>Risk2.csv||old.csv>>new.csv"
would cause Visual CUT to retrieve the data from 
Risk2.csv
instead. 
Within each pair of From/To directives, the ‘From’ location is separated by a ‘>>’ from the ‘To’ 
location. The pairs are separated by a "||" from each other. 
Notes:  
1.  If any of the From table name is not found in the report, the process generates a failure 
message indicating what From table name were unmatched with report tables.  
2.  New Table Name should not contain dots (before the .csv). Underscores are fine. 
3.  This functionality is not available in Visual CUT 8.5 
C# TIFF: TIFF Metadata Editor, How to Write & Read TIFF Metadata
C# TIFF - Edit TIFF Metadata in C#.NET. Allow Users to Read and Edit Metadata Stored in Tiff Image in C#.NET Application. How to Get TIFF XMP Metadata in C#.NET.
edit multiple pdf metadata; pdf metadata viewer
C# HTML5 PDF Viewer SDK to create PDF document from other file
WPF Viewer & Editor. WPF: View PDF. WPF: Annotate PDF. WPF NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET NET read barcodes from PDF, C#.NET OCR scan PDF
edit pdf metadata online; change pdf metadata creation date
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 84 
Overriding the Server in Native Oracle Connection 
When a report uses a native connection to Oracle, you can edit the Server name in the login 
dialog and run the report against a different server (rather than the one the report was designed 
against). 
Alternatively, if you are launching a report from a command line, you can override the Oracle 
server name by using the "Oracle_Server:" command line argument.  For example: 
__________________________________________________________________ 
-v
"C:\temp\test.rpt" "
user_id:
dba" "
password:
sql" "
Oracle_Server:
Server2"  
__________________________________________________________________ 
Note: This functionality is not available in the Crystal 8.5 version of Visual CUT. 
Selecting an Alternative SQL Server 
OLE DB Data Source 
… 
"Connect_To_SQLOLEDB:DataSource>>InitialCatalog>>Integrated_Auth" 
The parameters (after the ":") are separated by a ">>" and are as follows: 
1. DataSource is the Server Name the report should connect to. 
2. InitialCatalog is the Database Name within the given server. 
3. Integrated_Auth is a True or False argument indicating if Integrated Authentication should 
be used (if TRUE, user_id & password are ignored).  
Note: This functionality is not available in the Crystal 8.5 version of Visual CUT. 
C# PDF Library SDK to view, edit, convert, process PDF file for C#
HTML5 PDF Editor enable users to edit PDF text, image, page, password and so on. C#.NET: WPF PDF Viewer & Editor. C#.NET: Edit PDF Metadata.
adding metadata to pdf files; view pdf metadata in explorer
C# TIFF: TIFF Editor SDK to Read & Manipulate TIFF File Using C#.
Tiff File Processing in C#. Refer to this online tutorial page, you will see: 2. Render text to text, PDF, or Word file. Tiff Metadata Editing in C#.
add metadata to pdf file; analyze pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 85 
Changing Folder Location for Access/Excel/Pervasive/ACT! Files 
If your report uses the native connection to MS Access, Excel, or Pervasive (ddf), you can 
control the location of the database files using the following section in DataLink_Viewer.ini 
---------------------------------------------------------------------- 
[Database_Path_Selection] 
Paths = C:\Old\xtreme.mdb>>C:\New\xtreme.mdb||C:\a\test.mdb>>? 
// Or, in the case of Pervasive ddf files: 
// for ACT! .pad files: Paths = E:\DB1\DB1.pad>>E:\DB2\DB2.pad 
// Paths = E:\Jobtrack\FILE.DDF>>? 
---------------------------------------------------------------------- 
Alternatively, you can specify the desired change using a command line argument such as 
…"Database_Path:
C:\Prop1\FILE.DDF>>c:\Prop2\File.DDF"
As demonstrated above, the Paths entry may contain multiple pairs of old>>new paths. 
Each pair specifies the old path followed by a "
>>
" separator, followed by the new path. 
The pairs are separated by "
||
If the new path is blank, or if it contains just a question mark, Visual CUT will prompt the user 
to select a new path.  If the directive is from the ini file (rather than from a command line 
argument), the user choice will be recorded in the ini file and the new path will be used without 
prompting the user in future runs of reports that use the source path.  If the new path has one 
question mark (?) followed by a valid path, that path will be the default location in the dialog 
asking the user to select a path. If instead of a single question mark, the new path starts with a 
double question mark (??), DataLink Viewer will always prompt the user to select a path each 
time a report using the old path runs.  The user choice will be added after the ?? and will become 
the new default value in the path selection dialog.   
If the report uses a database file that can’t be found on the machine, 
and no command line 
argument or ini entry was provided, Visual CUT prompts the user to select a valid location, 
creates the [Database_Path_Selection] 
section (if it doesn’t already exist) and creates/adds the 
pair information to the Paths entry.  
Note: this functionality is not available in the Crystal 8.5 version of Visual CUT. 
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
NET PDF Viewer; VB.NET: ASP.NET PDF Editor; VB.NET Online. |. Home ›› XDoc.PDF ›› VB.NET PDF: View PDF Online. PDF bookmark, C#.NET edit PDF metadata, C#.NET
edit pdf metadata acrobat; pdf xmp metadata viewer
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
C#.NET PDF SDK - Convert PDF to TIFF in C#.NET. Online C# Tutorial for How to Convert PDF File to Tiff Image File with .NET XDoc.PDF Control in C#.NET Class.
pdf remove metadata; read pdf metadata java
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 86 
Arguments to Specify Export Format 
If you need to export a report to format and file name that are different from those saved for the 
report within Visual CUT, you can use the Export_Format in combination with the 
Export_File command line argument. For example: 
"C:\Program Files\Visual CUT\Visual CUT.exe" 
-e
"C:\Program Files\Visual 
CUT\Visual_CUT.rpt" "
Export_Format
:Excel 97" "
Export_File
:c:\temp\test.xls"   
The syntax is constructed as the word "Export_Format:" followed by the export format name 
(see valid export format options in the Visual CUT drop-down list for export formats).   
Dynamic Export Format: you can use field/formula names within the Export_Format 
command line argument (just like you drag & drop fields & formulas into the various options in 
the 3
rd
tab within Visual CUT).  The dynamic content of these fields/formulas would be 
substituted into the command line argument. For example, you could use the following command 
line: 
"C:\Program Files\Visual CUT\Visual CUT.exe" 
-e
"C:\Program Files\Visual 
CUT\Visual_CUT.rpt" "
Export_Format
:{@Format}"  
The {@Format} formula may return different export formats for different groups, so using a 
parameter (that influences the {@Format} formula) or during bursting, you can dynamically 
control what export format is used.  For example, you may burst invoices to some customers as 
PDF and to other customers as Excel files.  
In such situations, you will need to construct the export file name to include a formula for 
controlling the file extension to match the export format.  For example: 
"C:\Program Files\Visual CUT\Visual CUT.exe" 
-e
"C:\Program Files\Visual 
CUT\Visual_CUT.rpt" "
Export_Format
:{@Format}" 
"
Export_File
:c:\temp\Invoice_for_{CustName}.{@ext}"   
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 87 
Argument to Specify Email Priority 
Email priority can be specified via a command line argument using the following syntax: 
… 
"
Email_Priority
:Priority_Constant"  
The syntax is constructed as the word "Email_Priority:" followed by one of the following 
priority constantsHighestHighNormalLow, or Lowest 
As usual, you can dynamically control the email priority by creating a formula within the report 
that would determine the email priority (for example, if the information shows an extreme 
exception, increase the email priority to 'Highest').  Then, refer to the formula in the command 
line argument and Visual CUT would substitute the value of that formula.  For example: 
… 
"
Email_Priority
:{@Message_Priority}"  
Argument to Specify Email Headers 
Custom Email headers can be specified via a command line argument using the following 
syntax: 
… 
"
Email_Header
:header1:::header2:::header3"  
The syntax is constructed as the word "Email_Header:" followed by one or more custom email 
headers.  If you are specifying more than one header, they must be separated by ":::". 
For example: 
… 
"
Email_Header
:Sensitivity: Private" 
… 
"
Email_Header
:Sensitivity: Private:::X-Sensitivity: 3" 
As usual, you can dynamically control the content of the custom email headers by referencing 
field or formula names from the Crystal report.  For example: 
… 
"
Email_Header
:Sensitivity: {@email_Sensitivity}"  
or, for return-receipt request, which asks the receiving email server to confirm receipt: 
"
Email_Header
:Return-Receipt-To:{@CRM_Email}" 
or, to ask for confirmation the email has been opened by the recipient: 
"
Email_Header
:Disposition-Notification-To:{@CRM_Email}" 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 88 
Arguments to Specify Email Options 
If you need to override the values specified in the emailing options in the 3
rd
tab of Visual CUT 
you can use the following command line arguments: 
1. 
Export_File   
2. 
Export_Mode  ("Burst" or "Whole" or blank)   
3. 
Email_To    
4. 
Email_From 
5. 
Email_Reply_To  
6. 
Email_CC  
7. 
Email_BCC  
8. 
Email_Attach  
9. 
Email_Subject  
10.  Email_Message  
11.  Email_Mode  ("Burst" or "Whole" or blank) 
12.  Email_SMTP_Server   
For example, to override the export file and email_to option, use a command line such as: 
"C:\Program Files\Visual CUT\Visual CUT.exe" 
-e
"C:\Program Files\Visual 
CUT\Visual_CUT.rpt" "Parm1:1998" "
Export_File
:c:\temp\test.pdf" 
"
Email_To
:ixm7@psu.edu"   
To override a saved value with a blank, use [VC_Blank] 
as in:  …  "Email_CC:
[VC_Blank]
Arguments to Process Reports with No Settings 
Imagine you have an application that needs to trigger Visual CUT processing for reports that 
have no saved settings within Visual CUT.  Visual CUT can handle such cases provided all the 
necessary options are specified via command line arguments. 
For example, the following command line (all in one line) would trigger exporting and emailing 
of Sample.rpt.  The highlighted arguments (Export_Mode and Email_Mode) control what 
exporting and/or emailing process is required.  They accept values of "Burst" or "Whole" and if 
one of them is omitted, then that aspect of processing will simply not take place.   
"C:\Program Files\Visual CUT\Visual CUT.exe" -e "C:\Test\Sample.rpt" "Parm1:1997" 
"Export_Format:Adobe Acrobat (pdf)" "Export_File:c:\temp\{Product_Type.Product Type 
Name}.pdf" "Export_Mode:Burst" "Email_Mode:Burst" "Email_From:ixm7@psu.edu" 
"Email_To:ixm7@psu.edu" "Email_Subject:Sales Information for {Product_Type.Product 
Type Name}" "Email_Attach:c:\temp\{Product_Type.Product Type Name}.pdf" 
"Email_SMTP_Server:127.0.0.1" 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 89 
Calling Visual CUT From Another Application 
Using command lines allows other applications to trigger Visual CUT processing.   
Here's a code example of calling Visual CUT from a Visual Basic application and specifying a 
parameter value.  Note that double quotes are "escaped" by using  
"" 
instead of  
".
__________________________________________________________________ 
Dim ls_temp As String 
ls_temp = "c:\Program Files\Visual CUT 9\Visual CUT.exe " & _ 
"-e ""c:\temp\Sales.rpt"" ""Parm1:2005""" 
RetVal = Shell(ls_temp) 
__________________________________________________________________ 
Here's another code example for calling Visual CUT from a vba event and dynamically setting 
the report path, name, and parameter value: 
__________________________________________________________________ 
Private Sub Combo0_AfterUpdate() 
Dim rs As Object 
Set rs = Me.Recordset.Clone 
rs.FindFirst "[txtReportName] = '" & Me![Combo0] & "'" 
If Not rs.EOF Then Me.Bookmark = rs.Bookmark 
Dim myreport As String 
Dim stAppName As String 
Dim myvalret As String 
' me.fullrep is a field that concatenates the report path & name 
myreport = Me.fullrep 
myvalret = Str(MyCaseno)  
stAppName = "C:\Program Files\Visual CUT 9\Visual CUT.exe" & _ 
" -e """ & myreport & """ ""Parm1:" & myvalret & """" 
DoCmd.Close 
Call Shell(stAppName, 1) 
End Sub 
__________________________________________________________________ 
Note: your application can monitor success/failure of the command line call using the 
functionality described in the "Job Status Functionality" section of this user manual. 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 90 
Specifying Arguments from the GUI 
Starting with version 6.3002 you can save and apply command line arguments through the GUI.  
The Arguments field shown below gets saved into the "Arguments" (memo) column in the 
Report_Opt table in Visual CUT.mdb. 
A minor benefit is that you can simplify command lines in batch files by using the minimal 
command line and storing all the arguments in the database. 
A major benefit is that you can take advantage of these arguments even during interactive 
use. For example: 
Use Skip_Recent to avoid duplicate emails during interactive processing 
Use any of the PDF, XLS, Word, … options such as password
-protecting files during 
interactive processing 
Request printing (e.g., 
"Printer_Burst:Default"
) while also Exporting and Emailing 
Etc. 
Notes:  
1.  A double-click on the Arguments field opens the text in a multi-line editing mode. This 
makes it easier to view and change the arguments.  When clicking OK, the content gets 
saved to the field as a single line. 
2.  Command line processing honors these saved arguments but can override them.  
3.  Users of prior versions who wish to take advantage of this new feature should add an 
Arguments column (Memo data type) to the Report_Opt table in Visual CUT.mdb  
Documents you may be interested
Documents you may be interested