open pdf in webbrowser control c# : Delete text from pdf file software application cloud windows azure web page class hostwin29-part230

Using DDE to Write Data to Microsoft Excel
The first example sends data from a SAS session to an Excel spreadsheet. The target 
cells are rows 1 through 100 and columns 1 through 3. To send the data, submit the 
following program:
/* The DDE link is established using   */
/* Microsoft Excel SHEET1, rows 1      */
/* through 100 and columns 1 through 3 */
filename random dde
'excel|sheet1!r1c1:r100c3';
data random;
file random;
do i=1 to 100;
x=ranuni(i);
y=10+x;
z=x-10;
put x y z;
end;
run;
Using DDE to Write Data to Microsoft Word
This example sends a text string to a Microsoft Word document at a given bookmark. 
Note the difference between using DDE with Microsoft Word and Microsoft Excel.
filename testit dde 'winword|"c:\temp\testing.doc"
!MARK' notab;
data _null_;
file testit;
put 'This is a test.';
run;
Note: If you are writing to Microsoft Word, you would generally use Visual Basic 
commands such as FileOpen.Name, FileSave, FileClose, and Insert. If the PUT 
statement contains a macro that Word does not understand, you see this message: 
Ambiguous name detected: TmpDDE
Using DDE to Read Data from Microsoft Excel
You can also use DDE to read data from an Excel application into SAS, as in the 
following example:
/* The DDE link is established using   */
/* Microsoft Excel SHEET1, rows 1      */
/* through 10 and columns 1 through 3  */
filename monthly
dde 'excel|sheet1!r1c1:r10c3';
data monthly;
infile monthly;
input var1 var2 var3;
run;
proc print;
DDE Examples
271
Delete text from pdf file - delete, remove text from PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# developers to use mature APIs to delete and remove text content from PDF document
how to delete text from pdf reader; how to delete text in a pdf acrobat
Delete text from pdf file - VB.NET PDF delete text library: delete, remove text from PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Programming Guide to Delete Text from PDF File
how to delete text from a pdf document; how to erase in pdf text
run;
Using DDE to Read Data from Microsoft Word
This example reads data from a Microsoft Word document at a given bookmark.
filename testit dde 'winword|"c:\temp\testing.doc"
!MARK' notab;
libname workdir 'c:\temp';
/* Get ready to read the first bookmark.  */
data workdir.worddata;
length wordnum $5;
infile testit;
input wordnum $;
run;
proc print;
run;
Using DDE and the SYSTEM Topic to Invoke Commands in an 
Application Using Excel
You can issue commands to Excel or other DDE-compatible programs directly from 
SAS using DDE. In the following example, the Excel application is invoked using the X 
command; a spreadsheet called SHEET1 is loaded; data are sent from SAS to Excel for 
row 1, column 1 to row 20, column 3; and the commands required to select a data range 
and sort the data are issued. The spreadsheet is then saved and the Excel application is 
terminated.
/* This code assumes that Excel       */
/* is installed on the current        */
/* drive in a directory called EXCEL. */
options noxwait noxsync;
x '”c:\program files\microsoft office\office14\excel.exe”';
/* Sleep for 60 seconds to give */
/* Excel time to start up.       */
data _null_;
x=sleep(60);
run;
/* The DDE link is established using   */
/* Microsoft Excel SHEET1, rows 1      */
/* through 20 and columns 1 through 3  */
filename data
dde 'excel|sheet1!r1c1:r20c3';
data one;
file data;
do i=1 to 20;
272
Chapter 11 • Using Dynamic Data Exchange under Windows
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
C# File: Merge PDF; C# File: Split PDF; C# Page: Insert PDF pages; C# Page: Delete PDF pages; C# Read: PDF Text Extract; C# Read: PDF
delete text in pdf file online; delete text pdf document
VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
using RasterEdge.XDoc.PDF; How to VB.NET: Delete a Single PDF Page from PDF File. This is a VB .NET example for how to delete a single page from a PDF document.
erase text from pdf; how to delete text from pdf
x=ranuni(i);
y=x+10;
z=x/2;
put x y z;
end;
run;
/* Microsoft defines the DDE topic */
/* SYSTEM to enable commands to be */
/* invoked within Excel.           */
filename cmds dde 'excel|system';
/* These PUT statements are       */
/* executing Excel macro commands */
data _null_;
file cmds;
put '[SELECT("R1C1:R20C3")]';
put '[SORT(1,"R1C1",1)]';
put '[SAVE()]';
put '[QUIT()]';
run;
Using the NOTAB Option with DDE
SAS expects to see a Tab character placed between each variable that is communicated 
across the DDE link. Similarly, SAS places a Tab character between variables when data 
are transmitted across the link. When the NOTAB option is placed in a FILENAME 
statement that uses the DDE device-type keyword, SAS accepts character delimiters 
other than tabs between variables.
The NOTAB option can also be used to store full character strings, including embedded 
blanks, in a single spreadsheet cell. For example, if a link is established between SAS 
and the Excel application, and a SAS variable contains a character string with embedded 
blanks, each word of the character string is normally stored in a single cell. To store the 
entire string, including embedded blanks in a single cell, use the NOTAB option as in the 
following example:
/* Without the NOTAB option, column1  */
/* contains 'test' and column2        */
/* contains 'one'.                    */
filename test
dde 'excel|sheet1!r1c1:r1c2';
data string;
file test;
a='test one';
b='test two';
put a $15. b $15.;
run;
/* You can use the NOTAB option to store   */
/* each variable in a separate cell. To    */
/* do this, you must force a tab           */
/* ('09'x) between each variable, as in    */
DDE Examples
273
C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
Demo Code: How to Delete a Single PDF Page from PDF File in C#.NET. Description: Delete specified page from the input PDF file. Parameters:
delete text from pdf preview; online pdf editor to delete text
C# PDF Text Extract Library: extract text content from PDF file in
Able to extract and get all and partial text content from PDF file. How to C#: Extract Text Content from PDF File. Add necessary references:
how to delete text from a pdf in acrobat; delete text from pdf online
/* the PUT statement.                      */
/* After performing this DATA step, column1*/
/* contains 'test one' and column2         */
/* contains 'test two'.                    */
filename test
dde 'excel|sheet1!r2c1:r2c2' notab;
data string;
file test;
a='test one';
b='test two';
put a $15. '09'x b $15.;
run;
Using the DDE HOTLINK
If the HOTLINK option is specified, the DDE link is activated every time the data in the 
specified spreadsheet range are updated. In addition, DDE enables you to poll the data 
when the HOTLINK option is specified to determine whether data within the range 
specified have been changed. If no data have changed, the HOTLINK option returns a 
record of 0 bytes. In the following example, row 1, column 1 of the spreadsheet 
SHEET1 contains the daily production total. Every time the value in this cell changes, 
SAS reads in the new value and outputs the observation to a data set. In this example, a 
second cell in row 5, column 1 is defined as a status field. Once the user completes data 
entry, entering any character in this field terminates the DDE link:
/* Enter data into Excel SHEET1 in   */
/* row 1 column 1. When you          */
/* are through entering data, place  */
/* any character in row 5            */
/* column 1, and the DDE link is     */
/* terminated.                       */
filename daily
dde 'excel|sheet1!r1c1' hotlink;
filename status
dde 'excel|sheet1!r5c1' hotlink;
data daily;
infile status length=flag;
input @;
if flag ne 0 then stop;
infile daily length=b;
input @;
/* If data have changed, then the */
/* incoming record length         */
/* is not equal to 0.             */
if b ne 0 then
do;
input total $;
put total=;
output;
end;
run;
274
Chapter 11 • Using Dynamic Data Exchange under Windows
VB.NET PDF Text Extract Library: extract text content from PDF
Extract and get partial and all text content from PDF file. Extract highlighted text out of PDF document. Extract Text Content from PDF File in VB.NET.
how to delete text in pdf acrobat; delete text pdf
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
size, images size reducing can help to reduce PDF file size effectively will also take up too much space, glyph file unreferenced can Delete unimportant contents
delete text from pdf acrobat; pdf text watermark remover
It is possible to establish multiple DDE sessions. The previous example uses two 
separate DDE links. When the HOTLINK option is used and there are multiple cells 
referenced in the item specification, if any one of the cells changes, then all cells are 
transmitted.
Unless the HOTLINK option is specified, DDE is performed as a single one–time data 
transfer. The values currently stored in the spreadsheet cells when the DDE is processed 
are values that are transferred.
Using the !DDE_FLUSH String to Transfer Data Dynamically
DDE also enables you to program when the DDE buffer is dumped during a DDE link. 
Normally, the data in the DDE buffer are transmitted when the DDE link is closed at the 
end of the DATA step. However, the special string '!DDE_FLUSH' issued in a PUT 
statement instructs SAS to dump the contents of the DDE buffer. This function allows 
you considerable flexibility in how DDE is used, including the capacity to transfer data 
dynamically through the DATA step. The following example creates a Macro Sheet in 
Microsoft Excel. Commands are then written to the Macro Sheet, which is renamed 
Sheet1 to NewSheet. After writing these commands, through the use of !DDE_FLUSH , 
the Excel Macro can be executed in the same DATA Step as it is written.
filename cmds dde 'excel|system';
data _null_;
file cmds;
/* Insert an Excel Macro Sheet */
put '[workbook.insert(3)]';
run;
/* Direct the Output to the Newly created Macro Sheet */
filename xlmacro dde 'excel|macro1!r1c1:r5c1' notab;
data _null_;
file xlmacro;
put '=workbook.name("sheet1","NewSheet")';
put '=halt(true)';
/* Dump the contents of the buffer, allowing us to both write and */
/* execute the macro in the same DATA Step                        */
put '!dde_flush';
file cmds;
/* Run Macro1 */
put '[run("macro1!r1c1")]';
put '[error(false)]';
/* delete the Macro Sheet */
put '[workbook.delete("macro1")]';
run;
Using Macro Variables to Issue DDE Commands
This example illustrates the use of a Macro Variable to issue a command to Microsoft 
Excel. In the example, the Macro Variable, excelOne, is being used in place of the Excel 
Workbook location C:\test.xls. Since macro triggers such as ampersands and 
percents are treated as text within single quotation marks, a Macro quoting function must 
be used. %STR is used to mask each individual apostrophe separately. Anytime you 
have an unmatched apostrophe or parenthesis then it must be preceded by a percent sign 
and since each apostrophe needs to be treated independently of each other the percents 
DDE Examples
275
C# PDF File Split Library: Split, seperate PDF into multiple files
Application. Best and professional adobe PDF file splitting SDK for Visual Studio .NET. outputOps); Divide PDF File into Two Using C#.
erase text in pdf document; pull text out of pdf
C# PDF File Compress Library: Compress reduce PDF size in C#.net
size, images size reducing can help to reduce PDF file size effectively will also take up too much space, glyph file unreferenced can Delete unimportant contents
how to remove highlighted text in pdf; remove text from pdf
are needed. Once %STR has hidden the apostrophe, the macro variable &excelOne 
resolves. %UNQUOTE is then used to remove what %STR has done and restores each 
apostrophe around the resolved value leaving the result as:
'[open("C:\test.xls")]'
options mprint symbolgen;
filename cmds dde 'excel|system';
%let excelOne=C:\test.xls;
data _null_;
file cmds;
put %unquote(%str(%'[open("&excelOne")]%'));
run;
Reading Missing Data
This example illustrates reading missing data from an Excel spreadsheet called SHEET1. 
This example reads the data in columns 1 through 3 and rows 10 through 20. Some of 
the data cells can be blank. Here is an example of what some of the data look like:
...
10   John    Raleigh      Cardinals
11   Jose    North Bend   Orioles
12   Kurt    Yelm         Red Sox
13   Brent                Dodgers
...
Here is the code that can read these data correctly into a SAS data set:
filename mydata
dde 'excel|sheet1!r10c1:r20c3';
data in;
infile mydata dlm='09'x notab
dsd missover;
informat name $10. town $char20.
team $char20.;
input name town team;
run;
proc print data=in;
run;
In this example, the NOTAB option tells SAS not to convert tabs that are sent from the 
Excel application into blanks. Therefore, the tab character can be used as the delimiter 
between data values. The DLM= option specifies the delimiter character, and '09'x is 
the hexadecimal representation of the tab character. The DSD option specifies that two 
consecutive delimiters represent a missing value. The default delimiter is a comma. For 
more information about the DSD option, see SAS System Options: Reference. The 
MISSOVER option prevents a SAS program from going to a new input line if it does not 
find values in the current line for all the INPUT statement variables. With the 
MISSOVER option, when an INPUT statement reaches the end of the current record, 
values that are expected but not found are set to missing.
The INFORMAT statement forces the DATA step to use modified list input, which is 
crucial to this example. If you do not use modified list input, you receive incorrect 
results. The necessity of using modified list input is not DDE specific. You would need it 
276
Chapter 11 • Using Dynamic Data Exchange under Windows
even if you were using data in a CARDS statement, whether your data were blank- or 
comma-delimited.
DDE Examples
277
278
Chapter 11 • Using Dynamic Data Exchange under Windows
Chapter 12
Using Unnamed and Named 
Pipes under Windows
Overview of Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Using Unnamed Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Introduction to Unnamed Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Unnamed Pipe Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Using Redirection Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Unnamed Pipe Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Using Named Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Introduction to Named Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Named Pipe Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Using the CALL RECONNECT Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Using Named Pipes in SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Named Pipe Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Overview of Pipes
A pipe is a channel of communication between two processes. A process with a handle 
to one end can communicate with another process that has a handle to the other end. This 
means that you can use a specialized Windows application to provide information to 
your SAS session or vice versa.
Pipes can be one-way or two-way tests. With a one-way pipe, one application can write 
data only to the pipe while the other application reads from it. With a two-way pipe, both 
applications can read and write data. There are two types of pipes:
unnamed pipe
handles one way communication. Also called an anonymous pipe (or simply pipe), it 
is typically used to communicate between a parent process and a child process. 
Within SAS, SAS is the parent process that invokes (and reads data from) a child 
process.
named pipe
handles one-way or two-way communication between two unrelated processes. That 
is, one process is not started by the other. In fact, it is possible to have two 
applications communicating over a pipe on a network. You can use named pipes 
within SAS to communicate with other applications or even with another SAS 
session.
279
Using Unnamed Pipes
Introduction to Unnamed Pipes
Unnamed pipes enable you to invoke a program outside of SAS and redirect the 
program's input, output, and error messages to SAS. This capability enables you to 
capture data from a program external to SAS without creating an intermediate data file.
For unnamed pipes to work with Windows applications external to SAS, the application 
program must read data from standard input (STDIN), write output to standard output 
(STDOUT), and write errors to standard error (STDERR). These files have the following 
numeric file handles:
Table 12.1 File Handles
File
File Handle
STDIN
0
STDOUT
1
STDERR
2
When SAS captures STDERR from another application, the error messages are routed 
by default to the SAS log. If you want to write to STDIN in another application, you can 
use a PUT statement in a SAS DATA step. Because SAS can write to STDIN and 
capture from STDOUT in the same application, unnamed pipes can be used to send data 
to an external program, as well as to capture the output and error messages of the same 
program. You can use redirection sequences to redirect STDIN, STDOUT, and 
STDERR.
When you start SAS from the Windows desktop, STDIN and STDOUT are not available 
to your programs.
For more information, see “Using Redirection Sequences” on page 281 or your 
Windows documentation.
Unnamed Pipe Syntax
To use an unnamed pipe, issue a FILENAME statement with the following syntax:
FILENAME fileref PIPE 'program-name' option-list;
You can use the following arguments with this syntax of the FILENAME statement:
fileref
is any valid fileref, as described in “Referencing External Files” on page 154 .
PIPE
is the device-type keyword that tells SAS that you want to use an unnamed pipe.
program-name
specifies the external Windows application program. This argument must fully 
specify the pathname to the program, or the path to the directory containing the 
280
Chapter 12 • Using Unnamed and Named Pipes under Windows
Documents you may be interested
Documents you may be interested