c# pdf library itextsharp : Endnote pdf metadata Library SDK class asp.net wpf azure ajax Visual_CUT_User_Manual17-part521

©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 171 
Excel Functionality 
Note: PC must have MS Excel installed. 
Exporting to Excel 2007 (.xlsx) Files 
If you specify an export file name with a .xlsx file extension, even though the specified export 
format is Excel 97, Visual CUT takes care of producing an Excel 2007 .xlsx file. 
The process actually starts by exporting to a temporary .xls file. If there are more than 65,536  
rows in the export, the content will be split across multiple tabs inside the temporary .xls file. 
Visual CUT then converts the temporary .xls file to an Excel 2007 .xlsx file and merges all tabs 
into the first tab. The extra tabs are removed, and the temporary .xls file is deleted. 
The overall effect is that when you specify a .xlsx file extension, you get an export to Excel 
2007 format, supporting more than a million rows in a single tab and consuming much less 
disk space.  
Endnote pdf metadata - 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
remove metadata from pdf acrobat; change pdf metadata
Endnote pdf metadata - 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
read pdf metadata java; analyze pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 172 
Combining Excel Bursting Exports into a Single Multi-Tab Spreadsheet 
Visual CUT can create an Excel workbook with a separate tab (sheet) for each group: 
Tip: right-clicking the VCR buttons to the left of the tab names launches a tab navigation list
This helps when the number or size of tab labels forces a scroll in order to see all of them. 
The key to using this optional functionality is the naming of the export files: 
The name of the tab used for the individual sheets exported from each group is specified after 
the keyword ‘Tab!’ 
(within the export file name and before the ".xls" file extension).   
Note: Visual CUT ensures tab names are acceptable to Excel by truncating long (>31) names 
and converting 
:\/?*[]
characters to "legal" alternatives.  
The name of the spreadsheet file holding these individual sheets is determined by what’s left 
when removing the ‘Tab!sheet name’ from the export file name.
For example, here is the export file name option used to generate the Excel file above: 
c:\temp\Sales in {@Year} Tab!{Product_Type.Product Type Name}.xls 
In this case, the highlighted area determines the sheet name inside the "master" spreadsheet and 
the rest of the text determines the "master" spreadsheet file name. 
As usual, Visual CUT allows you to drag and drop any available fields or formulas to act as 
dynamic components in creating the file and sheet names.  
If you want Visual CUT to e-mail the resulting file, then select the "Single Email" rather than the 
"Email for Each Group Level 1" option and specify the resulting file name in the Attach option. 
For the case above, the resulting file name is:  
c:\temp\Sales in 1997.xls
C# Word - Footnote & Endnote Processing in C#.NET
C# Word - Footnote & Endnote Processing in C#.NET. Provide Variety of C# Methods to Process Footnote & Endnote in Word Document. Create Footnote & Endnote.
extract pdf metadata; remove metadata from pdf online
C# Word - Word Create or Build in C#.NET
Create Word Document from Existing Files Using C#. Create Word From PDF. Create Word From PowerPoint. Footnote & Endnote Processing.
acrobat pdf additional metadata; batch update pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 173 
Adding Excel Exports as Tabs in Existing/New Spreadsheets (Briefing Books) 
Besides bursting a single report into multiple tabs in a single excel file, Visual CUT can also 
export a whole report or burst a report and add the resulting excel sheet(s) to existing excel files. 
This allows you to schedule several reports (typically using a batch file) and generate "briefing 
books" of several reports in multiple tabs within a single excel file.  You would typically email 
the resulting excel file (at the end of the last scheduled step) to the recipients. 
Note: you can use a Macro Enabled workbook (.xlsm ) to host the tab, for further automation. 
Let’s
assume you need to burst 10 reports to 100 agents. You would start the first report (about 
Commissions) with a burst into an export file name option such as: 
c:\temp\Monthly Reports for {Agent_Name} in {@Month_Year} TabInNewFile!Commission.xlsx 
This would result in 100 excel files named like: 
Monthly Reports for Richard Roper in April 2004.xlsx 
Monthly Reports for Ido Millet in April 2004.xlsx 
etc. 
Each of these workbooks will have a single tab (Commission) showing the Commission 
information for that agent. Note: as always, the tab name can also be dynamic by dragging & 
dropping fields/formulas to the area directly after TabInNewFile! key word (case sensitive). 
You would then schedule the next report (about Policy Cancellations) to burst using an export 
file name option such as: 
c:\temp\Monthly Reports for {Agent_Name} in {@Month_Year} TabInOldFile!Cancellations.xlsx 
The TabInOldFile! ensures the Cancellations tab with the report information would be added to 
the excel workbook created in the previous step. 
Note: When using TabInOldFile!, if the workbook file doesn't exist, it would be created. 
You would continue in the same way with the other 8 reports (scheduled in that order in a single 
batch file.  In the first 9 reports you will have no emailing but in the last one you will enable 
burst emailing so each agent gets their own "briefing book" as a multi-tab excel workbook 
instead of 10 separate excel files. 
The scenario above assumes a bursting operation, but you can use the same exact approach in 
exporting whole reports to generate "briefing books". 
Appending or Replacing Data for Existing Tabs 
If TabInOldFile! encounters an existing tab, the export gets appended to the end of content in 
that tab.  If you use TabInOldFile_Replace! Visual CUT inserts the tab if it doesn't already 
exist, but replaces the content of the tab if it already exists. This allows other sheets to refer to 
the content (periodically refreshed by Visual CUT) of that tab.  
Note: the file & tab naming conventions that apply to this functionality are the same as 
described in the previous section. 
C# Word - Convert Word to PDF in C#.NET
Word: Convert Word to PDF. C# Word - Convert Word to PDF in C#.NET. Online C# Tutorial for Converting Word to PDF (.pdf) Document. Word to PDF Conversion Overview
adding metadata to pdf; pdf remove metadata
C# Word - Insert Image to Word Page in C#.NET
Footnote & Endnote Processing. Table Row Processing. Table Cell Processing. Annotate Word. text in PDF, C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET
add metadata to pdf file; add metadata to pdf
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 174 
Controlling Excel Tab Colors 
When you specify tab names in excel exports via any of the methods described above, you can 
control the color of the excel tab by preceding the tab name with an RGB directive like this: 
RGB225000000 
The 3 sets of 3 digits following the RGB text specify the Red, Green, and Blue values (ranging 
from 0 to 255).  See RGB color values at sites such as: http://web.njit.edu/~kevin/rgb.txt.html 
Visual CUT then takes care of coloring the excel tab according to the directive (and removing 
the directive from the tab name). 
Here is an example of an export file name: 
c:\temp\Sales Tab!
RGB225000000
{Product_Type.Product Type Name}.xls 
The real power behind this feature is that the color directive can be a formula that dynamically 
sets the tab color based on performance as reflected in the report data.  For example: 
c:\temp\Sales Tab!{@RGB_Tab_Color}{Product_Type.Product Type Name}.xls 
For example: 
Select Sum ({@value}, {Product_Type.Product Type Name}) 
Case is > 1000000: "RGB000255000" 
Case is > 300000:  "RGB000150000" 
Case is > 11000:   "" 
Case is <= 11000:  "RGB225000000" 
default:        "" 
How to C#: Generate Thumbnail for Word
Footnote & Endnote Processing. Table Row Processing. Table Cell Processing. Annotate Word. text in PDF, C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET
google search pdf metadata; pdf xmp metadata editor
C# Word - Document Processing in C#.NET
Provide a Series of Methods to Setup Document Properties and Modify Document Content for Users.
preview edit pdf metadata; pdf xmp metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 175 
Setting Up Print Properties for Excel Workbooks 
You can instruct Visual CUT to change the print setup properties of an Excel workbook or a 
specified tab (sheet) inside that workbook.  The command line argument structure is as follows: 
… 
"XLS_Print_Setup:Excel_File>Tab>
" 
The parameters (after the ":") are separated by a ">" and are as follows: 
1. Excel_File: the full path and name of the excel file.  
2. Tab: the tab (sheet) name.  Use 1 to target the first tab. Leave blank to target all tabs.  
3. Orientation:  PortraitLandscape, or leave blank for no change
4. N Pages Wide: for example, use 1 to fit into 1 page wide.  Leave blank for no effect. 
5. N Pages Tall: for example, use 1 to fit into 1 page tall.  Leave blank for no effect. 
6. Left Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
7. Right Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
8. Top Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
9. Bottom Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
10. Header Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
11. Footer Margin: in inches.  For example, 0.25.  Leave blank for no effect. 
12. Center HorizontallyY for Yes.  Any other value, including blank, for no effect.   
13. Center VerticallyY for Yes.  Any other value, including blank, for no effect.   
14. Print Grid LinesY for Yes.  Any other value, including blank, for no effect.  
Note: you can use field or formula names within the command line arguments.   
The dynamic content of these fields/formulas would be substituted into the command line.  
For example (all in one line): 
"XLS_Print_Setup:c:\temp\{Customer.Country}.xls>>>1>1>>>>>>>>>"
The command line above would be typical of cases where you burst a report to multiple excel 
files, and you wish to fit the printout (when a user opens the file in Excel) into a single page. 
Note: since there are 14 elements, there should always be 13 instances of '>' separators.    
C# Word - Delete Word Document Page in C#.NET
Provides Users with Mature Document Manipulating Function for Deleting Word Pages.
embed metadata in pdf; remove metadata from pdf file
C# Word - Extract or Copy Pages from Word File in C#.NET
Footnote & Endnote Processing. Table Row Processing. Table Cell Processing. Annotate Word. text in PDF, C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET
remove metadata from pdf; pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 176 
Auto Filter & Freeze Panes in Excel Exports 
You can instruct Visual CUT to turn on the Auto Filter behavior within exported excel files.  
The command line argument structure is as follows: 
… 
"XLS_AutoFilter:True" 
For more advanced options, use the following command line argument structure: 
… 
"XLS_AutoFilter:A1>>A2" 
The arguments are separated by >> and are as follows: 
Spreadsheet Cell for Applying Auto Filter (any cell within a tabular range is a good target)  
Spreadsheet Cell for Applying Freeze Panes -- Rows above and Columns to the left get frozen. 
A2 freezes just the 1
st
row)  
Note: leaving one of the two elements blank would result in processing only the non-blank 
argument 
To process a file that is not the one being exported, specify the target file as the first argument: 
… 
"XLS_AutoFilter:c:\temp\test.xls>>True" 
or 
… 
"XLS_AutoFilter:c:\temp\test.xls>> A1>>A2" 
To target a workbook tab, change the first argument to target file||target tab  like this:  
… 
"XLS_AutoFilter:c:\temp\test.xls||target tab>>True" 
or 
… 
"XLS_AutoFilter:c:\temp\test.xls||target tab>> A1>>A2" 
Column Auto Fit in Excel Exports 
You can instruct Visual CUT to automatically fit the column widths in exported excel files.  This 
is useful in "Data Only" exports.  The command line argument structure is as follows: 
… 
"XLS_AutoFit:True" 
For more advanced options, use the following command line argument structure:  
… 
"XLS_AutoFit:MaxColumnWidth>>31>>False" 
The 3 elements after the ":" are separated by >> and are as follows: 
MaxColumnWidth 
fixed text 
Maximum column width 
a number between 1 and 255 
Wrap Text 
True or False.  Control whether columns adjusted down to the specified maximum 
width should wrap their text. 
C# Word - Insert Blank Word Page in C#.NET
Guide C# Users to Insert (Empty) Word Page or Pages from a Supported File Format.
remove pdf metadata; read pdf metadata online
C# Word - Word Creating in C#.NET
Tell Users How to Create New Word File and Load Word from Other Files.
view pdf metadata; search pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 177 
Password Protecting Excel Workbooks 
You can instruct Visual CUT to protect any number of Excel files.  The command line argument 
structure is as follows: 
… 
"XLS_PROTECT:Excel_File_List>Password" 
The parameters (after the ":") are separated by a ">" and are as follows: 
1. Excel_File_List: comma separated list of the Excel files you wish to protect.  
If all files share the same folder, you can specify the full path just for the first file 
If a file is not found, a warning is written to Failure.log and that file is skipped. 
Note: you can specify file names using wild cards.  
2. Password: up to 15 characters in length.  
Important Note: you can use field or formula names within the command line arguments.   
The dynamic content of these fields/formulas would be substituted into the command line. 
Among other things, this allows you to easily protect individual Excel exports with different 
passwords for each group you are bursting.  For example (all in one line): 
"XLS_PROTECT:c:\temp\{@Product}.xls>{@Product_Password}" 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 178 
Protecting Excel Worksheets against User Viewing/Editing 
As described at: http://spreadsheets.about.com/od/excel2007tips/qt/080428_lockcell.htm  
Protecting data from change in Excel is a two step process.  
1.  locking/unlocking specific cells in your spreadsheet.  
2.  applying the Protect Sheet option. Until step 2 is completed, all data is vulnerable to 
change. 
Visual CUT allows you to automate step 2 using the XLS_Protect_Worksheets command line 
argument.  
Note: while XLS_Protect provides workbook access protection, XLS_Protect_Worksheets 
hides and protects cells from user editing.   
You will typically use XLS_Protect_Worksheets after Visual CUT has populated an excel 
template worksheet with Crystal formula data (using XLS_Range_Insert). 
The command line argument structure for XLS_Protect_Worksheets is as follows: 
… 
"XLS_Protect_Worksheets:Source_File>>Target_File>>Password" 
The parameters (after the ":") are separated by a ">>" and are as follows: 
1. Excel Source File (path & name).  
2. [Optional] Excel Target File (path & name).  If none specified, source file is updated.  
3. Password: up to 15 characters in length. If left blank, the user 
doesn’t need a password to 
unprotect the worksheets. 
You can use dynamic references to field or formula names within the command line argument. 
For example (all in one line): 
… "XLS_Protect_Worksheets:c:\temp\{@Branch}.xls>>{@Password}" 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 179 
Inserting File Exports into Excel Templates  
Using XLS_Range_Insert_File command line argument, you can instruct Visual CUT to insert 
Excel (Data Only) exports into pre-formatted excel templates. 
See 
sample image1  & image2 .
This approach has several advantages compared to XLS_Range_Insert (see next section): 
1. XLS_Range_Insert inserts data from formula values (limited to 65,534 characters). 
XLS_Range_Insert_File inserts data from files that can contain much more data 
2.  If the target cell is not empty, the content is appended to the first empty area below. 
3.  The method automatically detects the template row  based on the target cell and the 
number of columns in the exported data. The format of all columns in the template row  
as well as the row height are applied to all inserted data. 
4.  You can elect to also clone content from all other columns in the template row. This 
allows you to clone formulas that can refer to content in the inserted rows! 
Here is an example of how the command line argument is structured: 
"XLS_Range_Insert_File:C:\TEMP\Template.xlsx>>C:\TEMP\Template_Filled.xlsx>> 
c:\temp\export1.xlsx||Sheet1||B5||[Clone_Template_Row][Remove_Content_Top_Row]" 
The elements (after the "XLS_Range_Insert_File:") are separated by a ">>" and are as follows: 
1. Template excel file.  
2. Resulting excel file.  In append scenarios, can be same as template file 
3. Data source & insert instructions consisting of 4 "||" delimited elements: 
a) Excel (data Only) export file to be inserted 
b)  Target sheet in template 
c)  Target cell in template 
d)  Options (may leave blank): 
[Clone_Template_Row] is useful for cloning formulas outside template columns. 
[Remove_Content_Top_Row] skips the top row of the inserted data. 
Notes:  
a)  If the template range is a Table with sort and filter conditions, these choices are reapplied 
after the insert, so the populated table is sorted and filtered just as in the template. 
See 
sample image1  & image2 .
b)  If your template Table contains formula columns, sparklines, or any other content you 
wish to clone rather than overwrite, include a corresponding blank column in the excel 
export. You can use a formula that returns "" in Crystal to create such a blank column.  
c)  You can specify multiple data source & insert instructions separated by a "^^" delimiter.  
d)  Content below target cell gets pushed down as data is inserted. 
e)  Row height of target cell is cloned to all inserted rows 
f)  As always, the files path & name can contain dynamic references. For example: 
"XLS_Range_Insert_File:c:\myTemplate.xlsx>>{@Result}>>{@DataFile}||Sales||E8||"  
g)  You can fill templates in hidden sheets 
h)  At the end of the process, Visual CUT restores the focus in the workbook to the original 
sheet and original selections in all sheets.  
i)  The process can automatically handle cases where a Table contains a Summary Row.  
The following page shows images demonstrating this functionality. 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 180 
Sample Input & Output 
The template workbook above contains conditional formatting for Revenue (Color Bars) and 
Lead Time (color scale from red to green) and is filled with data from an Excel (Data Only) 
export (with 7 columns) that looks like this: 
While the Excel export contains 7 columns, the template workbook has an 8
th
column (column I) 
with a formula flagging late cases (Shipped date >= Required date).  
Using the command line argument of: 
"XLS_Range_Insert_File:C:\temp\Template.xlsx>>C:\Temp\Filled.xlsx>> 
c:\temp\Data.xlsx||Sheet1||B5||[Remove_Content_Top_Row][Clone_Template_Row]"  
the resulting workbook looks like this: 
Documents you may be interested
Documents you may be interested