Contents 

Allgemeine Hinweise
Einleitung
Befehlsübersicht nach Aufgabe und Zweck
Der Windows-Roboter und seine Steuerung
Der Remote-Editor
Der Windows-Analyzer
Der WinRobots-Script Compiler
Die Option "Protokollieren" zur Support-Unterstützung
Spezialordner
Spezialordner und Systemvariablen
Ablaufsteuerung allgemein
BRK Break
DBC DialogButtonClick
EFE ExitForEach
EID EndIfDestroyed
EIE EndIfError
END EndRemote
FCH FileChange
GSB GoSuB
JIE JumpIfError
JIF JumpIfFilled
JIN JumpIfNonzero
JIS JumpIfSystemvariable
JIT JumpIfTimeout
JIV JumpIfValue
JIZ JumpIfZero
JNF JumptoNewFile
JWM JumpifWrongMode
MAC MissingAnyChild
MCW MissingChildWindow
MSC MissingSpecialChild
MTW MissingTopWindow
PBC PluginButtonCaption
PBD PluginButtonDisable
PBE PluginButtonEnable
PBN PluginButtonNumber
PBR PluginButtonRemfile
PBT PluginButtonTooltip
PCC PluginColorChange
PCI PluginCheckInstruction
PCR PluginColorRestore
PDP PluginDockingParameter
PIC PlugInClose
PID PlugInDock
PIH PlugInHide
PIL PlugInLaunch
PIM PlugInMinimize
PIS PlugInShow
PIT PlugInTopmost
PWC PluginWindowCaption
RET RETurn
RPT RePeaT
SAB ShowActionButton
SBF StandByFlag
SCW SetCurrentWindow
SEB ShowExitButton
SEC ShowExitCommandbutton
SID ShutdownIfDestroyed
SUS SuspendPC
WBC WindowButtonClick
WCT WaitforClipboardText
WDC WinDowsClose
WDL WatchDogLaunch
WDM WatchDogMessage
WFC WaitForChange
WFD WindowsForceDown
WFF WaitForFile
WFI WaitForInstruction
WFM WaitForMedia
WFS WaitForShutdown
WFT WaitForTopwindow
WFW WaitForWindow
WII WaitforInputIdle
WLO WindowsLogOff
WMA WaitMapAltered
WPR WaitProcessRunning
WPT WaitProcessTermination
WRS WindowsReStart
WSD WindowsShutDown
WSP WaitforSusPend
WWA WaitforWindowActivation
WWC WaitforWindowsCursor
WWF WaitforWindowFocus
WWP WaitforWindowPoint
WWU WaitforWakeUp
Ablaufsteuerung mit Abfragen
IAC IfActiveChild
IAI IfAppInstalled
IAR IfAppRegistered
IAW IfActiveWindow
IBC IfButtonChecked
IBI IfButtonIndex
IBS IfBackSignalled
ICD IfCD-ROM
ICE IfChildEnabled
ICI IfCheckedIs
ICM IfCollectionMember
ICN IfComputerName
ICS IfCheckboxSelected
ICT IfCurrentText
ICV IfChildVisible
ICW IfChildWindow
IDB IfDefaultButton
IDT IfDriveType
IEA IfExistsAnychild
IEB IfExitButton
IEC IfExistsChildwindow
IED IfExistsDrive
IEE IfExistsEnvironmentvariable
IEF IfExistsFile
IEI IfExistsItem
IEK IfExistsKey
IEM IfExistsMenu
IEP IfExistsProcess
IER IfExistsRemote
IES IfEndSignalled
IET IfExistsToolbar
IEV IfExistsVariable
IEW IfExistsWindow
IEX IfEXemode
IFA IfFontAvailable
IFF IfFileFound
IFL IfFileLanguage
IFM IfFEXMode
IFO IfFileOlder
IFU IfFileUsed
IFV IfFileVersion
IHD IfHardDrive
IIC IfItemChecked
Hinweise zu Abfragen
IIF IfInstructionFailed
IIH IfInputHas
IIP IfInput
IIW IfIsWindow
IJM IfJumpMode
IKA IfKeyAscii
IKC IfKeyChar
ILC IfLineColor
ILI IfLanguageID
IMA IfMapAltered
IMB IfMessageBox
IMC IfMenuChecked
IOF IfOperateFailed
IOL IfOnLine
IOP IfOSProperty
IOS IfOperatingSystem
IPA IfPortAvailable
IPC IfPixelColor
IPF IfPatternFound
IPR IfPPointinRect
IRC IfRectColor
IRD IfRemovableDrive
IRE IfRegistryEntry
IRF IfRunFailed
IRL IfRemeditLaunched
ISA IfServerAvailable
ISB IfStandBy
ISC IfScreenColordepth
ISD IfShutDown
ISF IfScreenFont
ISI IfSystemItem
ISM IfSubMenuentry
ISP IfServiceProperty
ISR IfScreenResolution
ISV IfSystemVariable
ITC IfTextContains
ITM IfTopMenuentry
ITO IfTimeOut
ITS IfTabSelected
ITV IfTempVar
IUA IfUserIsAdmin
IUN IfUserName
IVB IfVariableBetween
IVC IfVariableContains
IVL IfVariableLike
IVM IfVMWare
IVN IfVariableNumeric
IVO IfVersionOlder
IVV IfVariableValue
IWC IfWindowClass
IWE IfWindowEnabled
IWF IfWindowFound
IWI IfWindowIconic
IWM IfWindowMissing
IWN IfWindowsNumber
IWT IfWindowTitle
IWV IfWindowVisible
IWZ IfWindowZoomed
IXP IfXPstyle
Ablaufsteuerung zeitlich
CAR ContinueAtRelativeTime
CAS ContinueAfterSeconds
CAT ContinueAtTime
CSP CursorSPeed
DAS DoAfterSeconds
DIP DelayInstructionProcessing
GST GetStartTime
GTD GetTimeDifference
PAR PlayAtRelativeTime
PAT PlayAtTime
STF STepFactor
TDL TimeDeLay
TIO TImeOut
Allgemeine Such- und Bedienfunktionen
CFH ClassFromHandle
ECH ExCludeHandle
FTW FindTopWindow
GAC GetAnyChild
GCT GetChildsTopwindow
GCW GetChildWindow
GFC GetFocusChild
GFW GetForegroundWindow
GPW GetProcessWindow
GTW GetTopWindow
GWI GetWindowInfo
GWN GetWindowNumber
LTW LocalizeThisWindow
SAC SearchAnyChild
SMC SubMenuClick
SMH SetMenuHook
SMP SubMenuPosition
SMS SubMenuSelect
SNP SetNewParent
SPC SearchParentsChild
SST SearchSpecialTopwindow
STC SearchTopwindowsChild
STW SearchTopWindow
SWC SearchWindowsChild
SWN SetWindowsNumber
TMC TopMenuClick
TMP TopMenuPosition
TMS TopMenuSelect
WMS WindowMemberShip
WPC WaitforParentsChild
Anzeigefunktionen
CDM ConfirmDecisionMessage
CFM ConFirmMessage
CHK Check
DCG DesktopColorGet
DCL DrawColorLine
DCS DesktopColorSet
DDC DisplayDialogColor
DFR DrawFrameRect
DIR DrawInvertedRect
DIV DisplayInputValue
DNE DisplayNetworkError
DPC DisplayPropertiesChange
DPF DisplayFile
DPI DisplayInfo
DPM DisPlayMessage
DPP DisplayProperties
DPT DisplayText
DST DisplayScrollingText
DTW DeskTopWallpaper
EMT ErrorMessageText
GMT GetMessageText
GOM GoOnMessage
GPS GetPictureSize
GUI GetUserInput
GUS GetUserSelection
HDB HiDeBoth
HPM HideProgMan Desktop
HRE HideRemoteEditor
HTB HideTaskBar
KDW KeepDisplayWindow
MBX MessageBoX
MRE MinimizeRemoteEditor
MTC MousepointerToClosebutton
MTE MousepointerToExitbutton
MWT MakeWindowTransparent
PST PrepareScrollingText
SBG ShowBackGround
SBT ShowBubbleText
SCC ShowColorCover
SDM ShowDecisionMessage
SFT ShowFormattedText
SHC SHowCover
SHF SHowFrame
SHG SHowGraphics
SHI SHowInformation
SHM SHowMessage
SHP SHowPicture
SHT SHowText
SHW ShowHiddenWindows
SIT ShowInfoText
SNT ShowNewText
SPM ShowProgman Desktop
SPT ShowPureText
SRC SetReference to Cursor
SRE ShowRemoteEditor
SRO SetReference to Origin
SRP SetReferencePoint
SSM StopShowMessage
SSP StopShowPicture
SSS SimulateScreenSize
STB ShowTaskBar
TFH TitleFromHandle
Datei- und Verzeichnisoperationen
CEO CopyifExistsandOlder
CHD CHangeDirectory
CIO CopyIfOlder
CIP CopyIfPossible
CNS CreateNewShortcut
CSF CollectSomeFiles
DAF DeleteAllFiles
DCP DirCoPy
DCR DeleteCurrentRemfile
DDD DisplayDialogDirectories
DDF DisplayDialogFiles
DEF DeleteExeFolder
DEL DELete
DLF DownLoadFile
DME DriveMediaEject
DMI DriveMediaInsert
DRD DuplicateRemoteDirectory
EFP ExecuteFromPrograms
EXE EXEcute
EXO EXecuteOpen
EXR EXecutefromRegistry
EXS EXecuteShell
EXU EXecuteUninstall
EXW EXecuteWait
EXX EXecute eXtended
FCE FileCopyifExists
FCP FileCoPy
FCT FileCount
FDT FileDateTime
FED ForEachDrive
FEF ForEachFile
FEI ForEachInientry
FEL ForEachLine
GCR GetCurrentRemfile
GDI GetDirInfo
GEP GetExePath
GFA GetFileAttributes
GFI GetFileInfo
GFL GetFileLanguage
GFN GetFileNumber
GFT GetFileToken
GFV GetFileVersion
GLN GetLineNumber
GLP GetLongPath
GLT GetLanguageText
GPP GetPathfromPrograms
GSI GetShortcutInfo
GSP GetShortPath
LFF LineFromFile
MKD MaKeDirectory
OUF OverwriteUsedFiles
REN REName
RFA RemoveFileAttributes
RIF ReplaceInFile
RIN Run .INf-File
RIO ReplaceIfOlder
RLF RemoveLinesFromFile
RMD ReMoveDirectory
RPL RePlaceLine
SAS SynchronizeAllSubdirectories
SCF SetCurrentFolder
SES SynchronizeExistingSubdirectories
SFA SetFileAttribute
SFP SpecialFolderPath
SYN SYNchronizeDirectory
UEF UpdateExistingFiles
UNZ UnZip
VGI VolumeGetInfo
VGL VolumeGetLetter
VGS VolumeGetSpace
VSL VolumeSetLabel
ZIP Zip
Datenübermittlung
ATF AppendToFile
CBH CallBackHandle
CBM CallBackMessage
CFC CopyFromClipboard
CFF CopyFromFile
CFI CopyFromInifile
CFW CopyFromWindow
CLR CLoseRemote
CTC CopyToClipboard
CTF CopyToFile
CTI CopyToIniFile
CTW CopyToWindow
GIS GetIniSections
KYD KeyDown
KYU KeyUp
PFC PasteFromClipboard
PWM PostWindowMessage
RFG ReadFontGet
RFS ReadFontSet
RST ReplaceSelectedText
SCH SendCHaracterset
SDF SenDFiletext
SDK SenDKeys
SDT SenDText
SKA SendKeyAscii
SKD SendKeyDOS
SKP SendKeyPress
SKS SendKeysStepwise
SMK SendMenuKey
SWM SendWindowMessage
TTC TextToClipboard
TWM TextWindowMessage
WRT WindowReadText
Debugfunktionen
CDF CD-Flag
DBM DeBugMode
DBP DebugPrint
DED DisableEditorDisplay
DWP DisplayWorkingProgress
SDW ShowDebugWindow
SRT ShowRemTarget
USM UseSilentMode
XRE ShowRegEntry
XSC ShowClassName
XSH ShowHandle
XSR ShowRect
XST ShowText
XSV ShowVariable
XTT ShowTempText
Ereignisse
ELE EventLogEmpty
ELR EventLogRead
ELW EventLogWrite
IEL IfExistsLogentry
Funktionen für Variable
CAL Calculate
DVV DisplayVariableValue
VAR Variable
VAV VariableAssignValue
VBT VariableBothTrim
VCL VariableClear
VDC VariableDeCrement
VIC VariableInCrement
VLT VariableLeftTrim
VRM VariableReMove
VRT VariableRightTrim
VSV VariableSwapValues
VTD VariableToDecimal
VTH VariableToHexadecimal
VTL VariableToLowercase
VTN VariableToNumbers
VTU VariableToUppercase
VVK VariableValueKeep
VVR VariableValuesRestore
VVS VariableValuesSave
Funktionen für Zeichenfolgen
ASC ASCII
CHR Character
ENC ENCrypt
FMT Format
GCC GetCharCount
GFS GetFromString
GIP GetInput
GMD GetMessageDigest
GSS GetSplitString
JOC JumpOnCancel
LFT LineFromText
RIT ReplaceInText
SBD StringBetweenDelimiter
SLT SeLectText
STR String
STT SetTempText
TTL TempTextLowercase
TTP TempTextPrefix
TTR TempTextReplace
TTS TempTextSuffix
TTU TempTextUppercase
Mausoperationen
MDC MouseDoubleClick
MDE MouseDownEvent
MDI MouseDoubleclickInvisible
MED MouseEventDoubleclick
MEL MouseEventLeftclick
MER MouseEventRightclick
MLC MouseLeftClick
MLD MouseLeftDown
MLI MouseLeftclickInvisible
MLU MouseLeftUp
MMV MouseMoVe
MPO MousePOsition
MRC MouseRightClick
MRD MouseRightDown
MRI MouseRightclickInvisible
MRU MouseRightUp
MUE MouseUpEvent
Netzwerk, DFÜ, Services
CDC CloseDialupConnection
CND CreateNewDialup
DDP DisplayDialupconnectionProperties
GCN GetComputerName
GMA GetMACAddress
GUN GetUserName
MND MapNetworkDrive
OAU OperateAsUser
PWD Password
RAU RunAsUser
RDM RemoveDriveMapping
SCN SetComputerName
SNF ShareNetworkFolder
SVC SerViceCommand
Registrierung
FEK ForEachKey
FER ForEachRegentry
RBR RegistryBinaryRead
RBW RegistryBinaryWrite
RCA RegistryChangesApply
RCO RegisterCOMObject
RDR RegistryDWordRead
RDW RegistryDWordWrite
RED RegistryEntryDelete
REG Register *.REG-File
REK RegistryEnumKeys
RER RegistryEntryRead
REV RegistryEnumValues
REW RegistryEntryWrite
RKC RegistryKeyCreate
RKD RegistryKeyDelete
RSR RegistryStandardRead
RSW RegistryStandardWrite
UCO UnregisterCOMObject
Sonstige Funktionen
ALB AfterLastBackslash
ANF AddNewFont
BLB BeforeLastBackslash
CAI CollectionAddItem
CDL CollectionDeLete
CFD CheckForDisk
CGC CollectionGetCount
CGI CollectionGetItem
CKS CheckKeyStroke
CLC CLipCursor
CPL ControlPanel
CRE CloseRemoteEditor
CRI CollectionRemoveItem
CSN CollectionSetNumber
DFP DoForPixel
DTC DateTimeCalculation
DTF DateTimeFormat
DTR DeskTopRestore
DTS DeskTopSave
DUI DisableUserInput
ENW EnableWindow
ESE EnvironmentStringExpand
ESG EnvironmentStringGet
ESS EnvironmentStringSet
EVG EnvironmentVariableGet
EVS EnvironmentVariableSet
FEC ForEachCollectionitem
FEM ForEachMember
FEP ForEachProcess
FEW ForEachWindow
GCL GetCommandLine
GCP GetCursorPos
GDD GetDateDay
GDM GetDateMonth
GDW GetDateWeek
GLI GetLanguageID
GOS GetOperatingSystem
GPC GetPixelColor
GPI GetProcessID
GRD GetRealDate
GSC GetScreenColordepth
GSF GetScreenFrequency
GSL GetStringLenght
GSR GetScreenResolution
GTP GetTimeParams
GWC GetWindowsCursor
GWF GetWindowsFile
GWL GetWindowsLanguage
GWR GetWindowRectangle
HTV HandleToVariable
KBN KeyBoardNormal
KBS KeepButtonState
KCP KeepCurrentPoint
KPH KeepParentHandle
KRM KillReMote
KRS KeyboardRepeatSpeed
KTH KeepTopHandle
KWH KeepWindowHandle
LID LanguageID
LNR LaunchNewRemfile
MID MIDi-File play
MIW MouseInWindow
MPS MonitorPowerState
MSB MessageBeep
MWR MapWindowRect
OPT Optional Settings
PRM ProtectReMote
PTR PreventTaskRunning
RBS RestoreButtonState
RCP RestoreCurrentPoint
REB REBoot
RND Randomize
RPH RestoreParentHandle
RSM RemoveSystemMenu
RTH RestoreTopHandle
RTP RemoteThreadPriority
RWH RestoreWindowHandle
SCD SetComputerDate
SCP SetCursorPos
SCS SCreenShot
SCT SetComputerTime
SKL SetKeyboardLayout
SND Sound
SPP SetProcessPriority
SRV SetReturnValue
SSC SetScreenColordepth
SSF SetScreenFrequency
SSR SetScreenResolution
STP SetThreadPriority
STV SetTemp_Var
SWO SetWindowsOwner
SWP SetWindowPosition
SWS SetWindowSize
SWT SetWindowText
TSR ThreadSuspendResume
WCC WaitColorChange
WFE WaitForEvent
WFP WaitForPattern
WKS WatchKeyStroke
WLC WaitLineColor
WPA Wave Play Asynchron
WPS Wave Play Sychron
WRC WaitRectColor
Steuerelementabhängige Positionierungen und Funktionen
BCS ButtonClickSpecial
BTC ButtonCheck
CCC CommonControlCommand
CDD ComboDropDown
FEB ForEachButton
FEE ForEachEntry
FES ForEachSyslistviewItem
FET ForEachTreeviewItem
GDB GetDefaultButton
LBC ListBoxCheck
LBE ListBoxEntry
LBI ListBoxItem
LES ListEntrySelect
LIN ListItemNumber
LIS ListItemSelect
LIT ListItemText
LSI ListviewSelectedItems
LVE ListViewEditlabel
LVI ListViewItem
LVL ListViewLine
LVS ListViewStyle
LVV ListViewView
SCI SelectComboItem
SLE SearchListEntry
SLI SelectListItem
SPH ScrollPositionHorizontal
SPV ScrollPositionVertical
TBB ToolBarButton
TBC TaBControl
TBD ToolbarButtonDisable
TBE ToolbarButtonEnable
TBP ToolbarButtonPress
TBT ToolbarButtonText
TCP TabControlPage
TCS TabControlpageSelect
TGN TabcontrolGetNumber
TGS TabcontrolGetSelection
TGT TabcontrolGetText
TIC TreeviewItemCollapse
TIN TreeviewItemNumber
TIT TreeviewItemText
TPG TrackbarPositionGet
TPS TrackbarPositionSet
TV1 TreeViewSymbol1
TV2 TreeViewSymbol2
TV3 TreeViewSymbol3
TVE TreeViewEditlabel
TVI TreeViewItem
TVN TreeViewNode
TVS TreeViewitemSelect
Steuerelementunabhängige Funktionen
CAF CloseAllFolders
CAW CloseAllWindows
CLA CLoseApplication
CLW CLoseWindow
HAA HideAllApplications
MAA MinimizeAllApplications
MAF MinimizeAllFolder
MAX Maximize Window
MIN Minimize Window
MRS Restore Window
MWI MakeWindowInvisible
MWV MakeWindowVisible
RAA RestoreAllApplications
RAF RestoreAllFolder
SAA ShowAllApplications
SAW SetActiveWindow
SFW SetForegroundWindow
SHL ScrollHorizontalLeft
SHR ScrollHorizontalRight
SVB ScrollVerticalBottom
SVD ScrollVerticalDown
SVT ScrollVerticalTop
SVU ScrollVerticalUp
TPC TerminateProcess
WBO WindowBOttom
WDH WinDowHide
WDS WinDowShow
WNO WindowNOrmal
WTM WindowTopMost
Steuerelementunabhängige Positionierungen
CHB ContextHelpButton
FRB FRameBottom
FRL FRameLeft
FRR FRameRight
FRT FRameTop
GOP GetOriginPoint
LCP Localize CurrentPoint
MAB MAxButton
MCP MoveCurrentPoint
MIB MInButton
OPR OriginPointRelative
PTP PointToPoint
SAP SetActuPoint
SIP SetItemPoint
SYB SYstemButton
TIB TItleBar
Anhang, technische Informationen
"ShowText.exe" zur rationellen Bearbeitung von Anzeigedateien
VB-Demo-Modul "WinRobots-Interface"
Hinweise zur Kommunikation mit dem Remote-Programm

WinRobots Windows-Script Online Hilfe

Vorherige Seite Nächste Seite
CAL  Calculate
Previous Top Next


"CAL\[Daten]" für "Calculate";
"VIC\[Name]" für "VariableInCrement", "VDC\[Name]" für "VariableDeCrement";
"IVV\[Daten]" für "IfVariableValue", "EVV\" für "EndVariableValue";
"IVB\[Daten]" für "IfVariableBetween", "EVB\" für "EndVariableBetween";
"ISV\[Daten]" für "IfSystemVariable", "ESV\" für "EndSystemVariable";
"IVN\[Daten]" für "IfVariableNumeric", "EVN\" für "EndVariableNumeric";
"JIZ\[Daten]" für "JumpIfZero", "JIN\[Daten]" für "JumpIfNonzero",
"JIF\[Daten]" für "JumpIfFilled", "JIV\[Daten]" für "JumpIfValue",
"JIS\[Daten]" für "JumpIfSystemvariable".
Siehe auch: "VAR\", "IEV\", "TTR\", "TTL\", TTU\".
Siehe auch: "Abfragen".

Mit dem Befehl "VAR\..." haben Sie die Möglichkeit, eine begrenzte Anzahl von Variablen zu definieren und ihnen Werte zuzuweisen. Wenn diese Werte rein numerisch sind (Ziffernfolgen, ggf. mit Dezimaltrennzeichen), können Sie mit diesen Variablen über den Befehl "CAL\..." auch einfache Rechenoperationen durchführen, und zwar
- (+) Addition,
- (-) Subtraktion,
- (*) Multiplikation,
- (/) Division,
- (\) Ganzzahldivision,
- (%) Modulo-Operator,
- (^) Potenzieren,
- (a) Absolutwert,
- (r) Quadratwurzel,
- (s) Sinus,
- (c) Cosinus und
- (t) Tangens.
Dabei ist immer eine Ergebnisvariable anzugeben, und anschließend werden die einzelnen Terms aneinandergereiht nach folgendem Schema (ausgenommen Quadratwurzel, Absolutwert und Winkelfunktionen):
CAL\$$var=[Wert1][Operator1][Wert2][Operator2][Wert3][Operator3][Wert4]...
Für die Werte können Variable, Zahlenwerte oder Hex-Werte (&H...) angeben werden, z.B.:
CAL\$$11a=$$12a+100*223/$$abc
CAL\$$11a=$$12a+100*223/&HFA
Die Ergebnisvariable muß vorher nicht definiert und auch nicht belegt werden; sie wird intern vom Programm deklariert.
!WICHTIG!
* Die Berechnung des Ausdrucks erfolgt von links nach rechts, d.h. das Ergebnis aus [Wert1][Operator1][Wert2] bildet den linken Operanden für den Operator2. Die Regel "Punktrechnung vor Strichrechnung" gilt nicht, und Klammern sind nicht gestattet.
* Wenn Sie das Endergebnis als Integer-Wert in der Ergebnisvariablen haben möchten, tragen Sie in der Befehlszeile als letzte Zeichen "|i" ein.
* Quadratwurzel, Absolutwert und Winkelfunktionen lassen sich nicht zusammen mit anderen Operatoren verwenden. Diese Operationen müssen immer in einer getrennten Zeile ausgeführt werden. Bei Winkelfunktionen wird das Argument standardmäßig als Bogenmaß interpretiert; soll der Winkel in Grad angegeben werden, ist die Zeichenfolge ("grd") anzuhängen:
CAL\$$abs=a$$abs
CAL\$$sqr=r25
CAL\$$sin=s72grd
CAL\$$cos=c1,334

Ausführbares Beispiel:
HAA\
MAF\
HDB\
VAR\$$col=blue
VAR\$$dck=35
CAL\$$2dk=$$dck*2
CAL\$$xxx=$sw$\2
CAL\$$yyy=$sh$\2
SAP\$$xxx,$$yyy
SRP\1
CAL\$$aaa=$sh$-$$2dk
:neu
SHF\a25\$$aaa,$$aaa|$$dck|$$col@
VDC\$$aaa|10
JIN\$$aaa:neu
@

Die Befehle "VIC\" und "VDC\" erhöhen bzw. erniedrigen die im Datenteil anzugebende (numerische) Variable jeweils um einen bestimmten Wert. Wenn im Datenteil nur der Variablenname angegeben ist, beträgt der Wert = 1. Wenn Sie einen anderen Wert einsetzen wollen, geben Sie diesen anschließend und abgetrennt durch einen Senkrechtstrich an : 
VIC\$$13b    'erhöhen um 1
VDC\$$1Z7|2    'erniedrigen um 2

Mit dem Befehl "IVV\..." können Sie die weitere Abarbeitung der Remote-Datei davon abhängig machen, ob die im Datenteil angegebene Variable der ebenfalls im Datenteil anzugebenden Bedingung genügt oder nicht. Sie können die Vergleichsoperatoren <=, >=, <, >, =, !, <> (! und <> = ungleich) sowohl für numerische Werte als auch für einen Stringvergleich einsetzen. Dabei ist folgende Schreibweise einzuhalten:
IVV\$$16a=20
'...
EVV

IVV\$$16a<20
'...
EVV

IVV\$$16a>=20
'...
EVV

IVV\$$16a<>abc 'oder IVV\$$16a!abc
'...
EVV

Wenn die Variable $$16a den Wert 20 hat (erstes Beispiel) bzw. kleiner als 20 ist (zweites Beispiel), werden die Befehle zwischen "IVV\..." und "EVV\" ausgeführt. Sie können nach dem Vergleichsoperator auch eine andere Variable einsetzen, z.B.
IVV\$$16a<=$$11a
'...
EVV

!WICHTIG!
Bei Prüfung auf Gleichheit werden immer die Zeichenfolgen verglichen; Sie können diese Abfrage also auch für nichtnumerische Variablen verwenden, z.B.:
IVV\$$16f=blabla
'...
EVV

VAR\$$132=blabla
IVV\$$16t=$$132
'...
EVV
Bei allen anderen Prüfungen bestimmt der Term nach dem Befehl, welche Art von Vergleich durchgeführt wird. Wenn das ein numerischer Wert ist, wird vom Vergleichswert ebenfalls ein numerischer Wert gebildet (bei allen Zeichen außer den Ziffern 1 - 9 immer Null) und mit diesem verglichen. Wenn Sie also einen reinen Textvergleich zwischen Zeichenfolgen  und numerischen Werten durchführen wollen, muß der Term nach dem Befehl die Zeichenfolge enthalten!
Außerdem können Sie im Datenteil mehrere durch "|" getrennte Vergleichswerte angeben. Die Bedingung ist dann erfüllt, wenn einer der Vergleichswerte mit der Vorgabe übereinstimmt. Gleichzeitig wird dieser Wert in eine programminterne Variable geschrieben, auf die Sie mit der Zeichenfolge "$v1$" zugreifen und bei Bedarf an eine benutzerdefinierte Variable übergeben können (siehe "VAR\"). 
IVV\$$16a=$$11a|wert|$$var|dsef
'...
EVV

Die Befehle zwischen "IVV\..." und "EVV\" werden auch dann nicht ausgeführt, wenn die als erstes Argument angegebene Variable gar nicht existiert. Sie können also mit "IVV\..." implizit die Existenz einer Variablen überprüfen; allerdings ist auch dann immer ein (beliebiger) Vergleichswert mit anzugeben:
IVV\$$16f=0  '# Wenn $$16f nicht existiert, werden die Befehle bis "EVV\" nicht ausgeführt.
'...
EVV

Wenn Sie auf Gleichheit mit Leerzeichen prüfen wollen, müssen Sie diese durch die Zeichenfolge "$sp$" ersetzen:
IVV\$$xyz=$sp$$sp$'Vergleich mit zwei Leerzeichen
'...
EVV\
 
Mit dem Befehl "IVB\..." können Sie feststellen, ob der Wert einer Variablen in einem bestimmten Bereich liegt. Dazu ist im Datenteil zunächst der Name der Variablen anzugeben und danach - jeweils durch Senkrechtstrich ("|") getrennt - die Untergrenze und die Obergrenze (für beide Angaben gilt "einschließlich"). Bei numerischen Angaben erfolgt die Prüfung des Zahlenwertes, bei Zeichenfolgen anhand der Sortierreihenfolge der jeweiligen Codepage. Die zwischen "IVB\" und "EVB\" liegenden Befehle werden nur ausgeführt, wenn die Bedingung erfüllt ist.
VAR\$$123=5
IVB\$$123|2|7  '# Bedingung ist erfüllt.
'...
EVB
VAR\$$abc=n
IVB\$$abc|b|p  '# Bedingung ist erfüllt.
'...
EVB

Mit dem Befehl "ISV\..." können Sie die Werte der Systemvariablen "$v1$" ... "$v6$" direkt mit Vorgaben vergleichen. Es gelten die gleichen Vorschriften wie bei "IVV\..." mit dem einzigen Unterschied, daß im Datenteil an erster Stelle statt des Variablennamen die Ziffer aus der Systemvariablen (1 ... 6) anzugeben ist. Die zwischen "ISV\..." und "ESV\" stehenden Befehle werden nur dann ausgeführt, wenn die Vergleichsbedingung erfüllt ist.

Bei Schleifen ist es bequemer, statt der Abfrage einen der "JI?\"-Befehle zu verwenden, der dann bei erfüllter Abfragebedingung direkt zu einer Sprungmarke führt. Die Syntax lautet:
JI?\Variable[|]Sprungmarke bei "JIF\", "JIN\" und "JIZ\"bzw.
JIV\Variable[|]VergleichsoperatorVergleichswert|Sprungmarke oder
JIV\Variable[|]VergleichsoperatorVergleichswert:Sprungmarke ([|] = optional).
Bei "JIZ\" wird der Sprung ausgeführt, wenn die Variable leer ist oder einen Wert <= 0 (Null) hat, bei "JIN\" dann, wenn der numerische Wert der Variable größer als 0 ist, und bei "JIF\" dann, wenn die Variable nicht leer ist (wenn sie Zeichen enthält).
"JIN\" und "JIZ\" werden häufig in Schleifen benötigt, wobei vor der Auswertung der Sprungbedingung ein Dekrementieren oder Inkrementieren des Variablenwertes erfolgt. Die dazu erforderliche Befehlszeile können Sie einsparen, indem Sie in der "JI?\..."-Befehlszeile zwischen dem Variablennamen und der Sprungmarke den entsprechenden Operator angeben:
JIN\$$abc<neu  'Variable $$abc wird vor der Auswertung um 1 dekrementiert
JIZ\$$abc>neu  'Variable $$abc wird vor der Auswertung um 1 inkrementiert

Mit Hilfe von "JIV\" können Sie die Sprungbedingung genauer spezifizieren; Sie können die Vergleichsoperatoren <=, >=, <, >, =, !, <> (! und <> = ungleich) sowohl für numerische Werte als auch für einen Stringvergleich einsetzen.
Beispiele:
VAR\$$aaa=10
VAR\$$bbb=b
JIV\$$aaa|<12|ende
JIV\$$bbb<c:start

Mit dem Befehl "IVN\..." können Sie prüfen, ob die Zeichenfolge einer im Datenteil anzugebenden Variablen ausschließlich numerische Zeichen (Ziffern) enthält. Die zwischen "IVN\..." und "EVN\" stehenden Befehle werden nur dann ausgeführt, wenn das der Fall ist.
IVN\$$xyz
'...
EVN\

Mit "JIS\" können Sie durch Auswertung des Inhalts einer Systemvariablen ("$v1$" ... "$v6$") einen Sprung veranlassen. Die Befehlssyntax lautet wie folgt:
JIS\SysVarNummer[|]VergleichsoperatorVergleichswert|Sprungmarke oder
JIS\SysVarNummer[|]VergleichsoperatorVergleichswert:Sprungmarke ([|] = optional).
SysVarNummer:     1 ... 6 für "$v1$" ... "$v6$"
Vergleichsoperator:möglich sind <=, >=, <, >, =, !, <> (! und <> = ungleich);
             einsetzbar für numerische Werte und auch für Stringvergleich.
Vergleichswert:  String oder numerischer Wert (Ziffer(nfolge))
Beispiel siehe "RND\"-Beispiel.







© 2006 by Delphin Software
   
The CHM file was converted to HTML by chm2web software.