Try OpenEdge Now
skip to main content
ABL Reference
ABL Syntax Reference : DOS statement
 

DOS statement

(Windows only)
Runs a program, DOS command, or DOS batch file, or starts the DOS command processor, which allows interactive processing of DOS commands.

Syntax

DOS [ SILENT ][command-token| VALUE ( expression ) ]...
SILENT
After processing a DOS statement, the AVM shell pauses, and prompts you to press SPACEBAR to continue. When you press SPACEBAR, the AVM clears the window and continues processing. You can use the SILENT option to eliminate this pause. Use this option only if you are sure that the DOS program, command, or batch file will not generate output to the window.
command-token | VALUE ( expression )
One or more command (command-token) words and symbols that you want to pass to a DOS command processor. The VALUE option generates the command tokens included in expression, a character string expression. The specified combination of command-token and VALUE ( expression ) options can form any legal combination of commands and command options permitted by the DOS command processor, including programs, DOS commands, and batch files. If you do not use any of these options, the DOS statement invokes the DOS command processor, which remains until you exit it.
The commands can contain Unicode characters. See OpenEdge Development: Internationalizing Applications for more information about Unicode.

Example

On UNIX, this procedure runs the UNIX ls command. In Windows, this procedure runs the DOS dir command. On other platforms, the AVM displays a message stating that the operating system is unsupported.
r-dos.p
IF OPSYS = "UNIX" THEN UNIX ls.
ELSE IF OPSYS = "WIN32" THEN DOS dir.
ELSE DISPLAY OPSYS "is an unsupported operating system".

Note

If you use the DOS statement in a procedure and the procedure compiles on a UNIX system, the procedure runs, as long as flow of control does not pass through the DOS statement while running on UNIX. Use the OPSYS function to return the name of the operating system where a procedure is being run. This function lets you write applications that are portable among OpenEdge-supported operating systems even if they use the DOS, UNIX, etc. statements.

See also

{ } Preprocessor name reference, OPSYS function, UNIX statement