Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft...

32
Wizards & Wizards & Builders Builders GmbH GmbH Grundbefehle von FoxPro Grundbefehle von FoxPro Grundlagen der Programmierung mit Grundlagen der Programmierung mit Microsoft FoxPro/Windows Microsoft FoxPro/Windows und Microsoft Visual FoxPro und Microsoft Visual FoxPro

Transcript of Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft...

Page 1: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Grundbefehle von FoxProGrundbefehle von FoxPro

Grundlagen der Programmierung Grundlagen der Programmierung mit Microsoft FoxPro/Windowsmit Microsoft FoxPro/Windowsund Microsoft Visual FoxPround Microsoft Visual FoxPro

Page 2: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Diese Schulung dient zur Angleichung des Basiswissens der

Schulungsteilnehmer über die Grundlagen der Programmiersprache

Xbase und der DBF-basierenden Datenbanksysteme.

Page 3: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

ThemenübersichtThemenübersicht

Schreibweisen und OperatorenSchreibweisen und Operatoren Variablen und NamenskonventionenVariablen und Namenskonventionen Datenumwandlung, Stringmanipulation, Datenumwandlung, Stringmanipulation,

ArraysArrays Gültigkeitsbereiche und ProgrammaufrufeGültigkeitsbereiche und Programmaufrufe Verzweigungen und SchleifenVerzweigungen und Schleifen

Page 4: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

VergleichsVergleichs--OperatorenOperatoren

<< Kleiner alsKleiner als >> Größer alsGrößer als == Gleich (SET EXACT, SET COLLATE)Gleich (SET EXACT, SET COLLATE)

„„Schm“ = „Schmidt“ => .T.Schm“ = „Schmidt“ => .T. „„Schmidt“ = „Schm“ => .F.Schmidt“ = „Schm“ => .F.

<>, #, !=<>, #, != UngleichUngleich <=<= Kleiner als oder gleichKleiner als oder gleich >=>= Größer als oder gleichGrößer als oder gleich ==== Zeichenfolgenvergleich (Exakt!)Zeichenfolgenvergleich (Exakt!)

Page 5: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

SchreibweisenSchreibweisen

Kommentarzeile: Kommentarzeile: * bzw. *--* bzw. *-- „„NOTE“NOTE“

Zeilenkommentar:Zeilenkommentar: &&&& Zeilenfortsetzung:Zeilenfortsetzung: ;; Zuweisungen:Zuweisungen: Var = WertVar = Wert

„„STORE“STORE“

Ausgabe/Anzeige:Ausgabe/Anzeige: ? Var? Var Schreibweise irrelevant, BEFEHLESchreibweise irrelevant, BEFEHLE

Page 6: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

NumerischeNumerische OperatorenOperatoren

( )( ) Teilausdrücke gruppierenTeilausdrücke gruppieren

**, ^**, ^ PotenzierungPotenzierung ** MultiplikationMultiplikation // DivisionDivision %% Modulo (Rest) Modulo (Rest) ++ AdditionAddition -- SubtraktionSubtraktion

Page 7: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Variablen/Namenskonventionen Variablen/Namenskonventionen (1)(1)

Character / ZeichenCharacter / Zeichen Prefix: cPrefix: c ©© Character BinaryCharacter Binary

Numeric / ZahlNumeric / Zahl Prefix: nPrefix: n (n)(n) Date / DatumDate / Datum Prefix: dPrefix: d (d)(d) Logical / LogischLogical / Logisch Prefix: lPrefix: l (l)(l) Array / MatrixArray / Matrix Prefix: aPrefix: a (a)(a) Memofelder (Char)Memofelder (Char) Prefix: mPrefix: m©©

Memo BinaryMemo Binary

Page 8: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

StringString--VergleicheVergleiche

LEN( )LEN( ) $, AT( )$, AT( ) ATC( )ATC( ) RAT( )RAT( ) INLIST( )INLIST( ) BETWEEN( )BETWEEN( ) OCCURS( )OCCURS( ) LIKE( ) LIKE( )

ISUPPER( )ISUPPER( ) ISLOWER( )ISLOWER( ) ISALPHA( )ISALPHA( ) ISDIGIT( )ISDIGIT( ) LEFT( )LEFT( ) RIGHT( )RIGHT( ) SUBSTR( )SUBSTR( )

SOUNDEX()SOUNDEX() DIFFERENCE( )DIFFERENCE( )

Page 9: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

StringString--FormatierungFormatierung

RTRIM( ), TRIM( )RTRIM( ), TRIM( ) LTRIM( )LTRIM( ) ALLTRIM( )ALLTRIM( ) PADL( )PADL( ) PADR( )PADR( ) PADC( )PADC( ) SPACE()SPACE() REPLICATE( )REPLICATE( )

UPPER( )UPPER( ) LOWER( )LOWER( ) PROPER( )PROPER( )

STRTRAN( )STRTRAN( ) CHRTRAN()CHRTRAN() TRANSFORM( )TRANSFORM( )

Page 10: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

MemofeldMemofeld--FunktionenFunktionen

MEMLINES( )MEMLINES( ) MLINE( )MLINE( ) ATLINE( )ATLINE( ) ATCLINE( )ATCLINE( ) RATLINE( )RATLINE( )

+ CHR(13)+ CHR(13)

Umwandlungen:Umwandlungen: STR( )STR( ) VAL( )VAL( )

CHR( )CHR( ) ASC( )ASC( )

Page 11: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

NumerischeNumerische FunktionenFunktionen

INT( )INT( ) ABS( )ABS( ) ROUND( )ROUND( ) MOD( )MOD( ) FLOOR( )FLOOR( ) CEILING( )CEILING( ) EXP( ), SQRT( )EXP( ), SQRT( ) RAND( )RAND( )

COS(), ACOS( ), COS(), ACOS( ), SIN( ), ASIN( ), SIN( ), ASIN( ), TAN( ), ATAN(), TAN( ), ATAN(), ATN2()ATN2()

RTOD( ), DTOR()RTOD( ), DTOR() FV( ), PV( ), FV( ), PV( ),

PAYMENT( )PAYMENT( ) LOG( ), LOG10( )LOG( ), LOG10( ) PI( )PI( )

Page 12: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

DatumsDatums--UmwandlungUmwandlung

DATE( )DATE( ) {01.01.98}{01.01.98}

CTOD()CTOD() DTOC()DTOC() DTOS()DTOS() DMY( )DMY( ) MDY( )MDY( )

DAY( )DAY( ) DOW( )DOW( ) CDOW()CDOW() WEEK()WEEK() MONTH( )MONTH( ) CMONTH()CMONTH() YEAR()YEAR() GOMONTH( )GOMONTH( )

Page 13: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

DatumsDatums--EinstellungenEinstellungen

SET CENTURYSET CENTURY ROLLOVERROLLOVER

SET DATESET DATE SET MARK TOSET MARK TO

SET FWEEKSET FWEEK SET FDOWSET FDOW

Systemfunktionen:Systemfunktionen: SYS(1) (Tageszahl)SYS(1) (Tageszahl) SYS(2) (Sekunden)SYS(2) (Sekunden) SYS(10) (Jul.Dat.)SYS(10) (Jul.Dat.) SYS(11) (Jul.Dat.)SYS(11) (Jul.Dat.)

Page 14: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

LogischeLogische FunktionenFunktionen

Logische Logische Operatoren:Operatoren:

.T. oder .F..T. oder .F. .AND..AND. .OR..OR. .NOT..NOT. ( )( )

Bit-Funktionen:Bit-Funktionen: BITAND( )BITAND( ) BITCLEAR( )BITCLEAR( ) BITNOT()BITNOT() BITOR( )BITOR( ) BITXOR()BITXOR() BITRSHIFT( )BITRSHIFT( ) BITLSHIFT( )BITLSHIFT( ) BITSET( )BITSET( ) BITTEST( )BITTEST( )

Page 15: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Array-FunktionenArray-Funktionen

DIMENSIONDIMENSION

( DECLARE )( DECLARE ) ALEN( )ALEN( )

AINS( )AINS( ) ADEL( )ADEL( ) ACOPY( )ACOPY( )

ASORT( )ASORT( ) ASCAN( )ASCAN( )

(( AFILL-Ersatz ) AFILL-Ersatz )

ASUBSCRIPT( )ASUBSCRIPT( ) AELEMENT( )AELEMENT( )

EXTERNALEXTERNAL

Page 16: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

SpezielleSpezielle ArrayArray--FunktionenFunktionen

ADIR( ) ADIR( ) AFIELDS( )AFIELDS( )

ADATABASES( )ADATABASES( ) ADBOBJECTS( )ADBOBJECTS( ) AUSED( )AUSED( ) AERROR( )AERROR( )

APRINTER( )APRINTER( ) AFONT( )AFONT( )

ACLASS( )ACLASS( ) AINSTANCE( )AINSTANCE( ) AMEMBERS( )AMEMBERS( ) ASELOBJ( )ASELOBJ( )

Page 17: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Variablen/Namenskonventionen Variablen/Namenskonventionen (2)(2)

Double / Doppelte G.Double / Doppelte G. Prefix: bPrefix: b(n)(n) Float / FließkommaFloat / Fließkomma Prefix: fPrefix: f (n)(n)

Currency / WährungCurrency / Währung Prefix: yPrefix: y (y)(y) DateTime / DatumZeitPrefix: tDateTime / DatumZeitPrefix: t (t)(t)

Page 18: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Currency-FunktionenCurrency-Funktionen

8 Byte mit fest 8 Byte mit fest 4 Nachkomma-4 Nachkomma-stellenstellen

praktisch für Euro-praktisch für Euro-Umrechnung Umrechnung

MTON( )MTON( ) NTOM( )NTOM( )

Page 19: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

DateTime-FunktionenDateTime-Funktionen

DATETIME( )DATETIME( ) TIME() (String!)TIME() (String!)

SECONDS( )SECONDS( ) SET SECONDSSET SECONDS

DTOT( )DTOT( ) TTOD( )TTOD( ) CTOT( )CTOT( ) TTOC( )TTOC( )

SEC( ) (Kurzform!)SEC( ) (Kurzform!) MINUTE( )MINUTE( ) HOUR( )HOUR( )

DAY/DOW/CDOW( )DAY/DOW/CDOW( ) WEEK( )WEEK( ) MONTH/CMONTH( )MONTH/CMONTH( ) YEAR( )YEAR( )

Page 20: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Variablen/Namenskonventionen Variablen/Namenskonventionen (3)(3)

IntegerInteger Prefix: iPrefix: i (n)(n)

Object / ObjektObject / Objekt Prefix: oPrefix: o (o)(o)

Unknown / UnbekanntUnknown / Unbekannt Prefix: uPrefix: u(u)(u)

Prefix: xPrefix: x (u)(u)

FensternamenFensternamen Prefix: wPrefix: w

Page 21: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Integer-FunktionenInteger-Funktionen

CTOBIN( )CTOBIN( ) BINTOC( )BINTOC( )

CREATEBINARY( ) (ActiveX)CREATEBINARY( ) (ActiveX)

kein echter Integerkein echter Integer(1.Bit = Sortierbit)(1.Bit = Sortierbit) (Motorola-Format, 2.Bit = Vorzeichen)(Motorola-Format, 2.Bit = Vorzeichen)

Page 22: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Leere Felder / NullwerteLeere Felder / Nullwerte

EMPTY( )EMPTY( ) ISBLANK( )ISBLANK( )

ISNULL( )ISNULL( ) SET NULLSET NULL NVL( )NVL( )

Page 23: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Variablen und ScopingVariablen und Scoping

PrivatePrivate Prefix: pPrefix: p Public / GlobalPublic / Global Prefix: gPrefix: g Local (Array)Local (Array) Prefix: lPrefix: l (L)Parameter(L)Parameter Prefix: tPrefix: t Referenzen (?)Referenzen (?) (Prefix: o)(Prefix: o) Properties (?)Properties (?) (Prefix s.o.)(Prefix s.o.)

Page 24: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Prozeduren und FunktionenProzeduren und Funktionen

DO <Prozedur> WITH <Parameter>DO <Prozedur> WITH <Parameter> PROCEDURE ... ENDPROC / RETURNPROCEDURE ... ENDPROC / RETURN

=Funktion( <Parameter> )=Funktion( <Parameter> ) FUNCTION ... ENDFUNC / RETURNFUNCTION ... ENDFUNC / RETURN

DECLARE DLL / Funktion( )DECLARE DLL / Funktion( ) RUN <Programm>RUN <Programm>

Page 25: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

ParameterübergabeParameterübergabe

PARAMETERS / LPARAMETERSPARAMETERS / LPARAMETERS bis zu 27 Parameter (ggf. Arrays)bis zu 27 Parameter (ggf. Arrays)

PCOUNT() statt PARAMETERS()PCOUNT() statt PARAMETERS() ASSERT <Bedingung> MESSAGE <>ASSERT <Bedingung> MESSAGE <>

Parameterübergabe Parameterübergabe Referenz/Wert/@Referenz/Wert/@

SET UDFPARMS TO REF/VALUESET UDFPARMS TO REF/VALUE

Page 26: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

SuchreihenfolgeSuchreihenfolge

Aktuelle ProgrammdateiAktuelle Programmdatei Aktuelle DatenbankprozedurdateiAktuelle Datenbankprozedurdatei Prozedurdateien (ggf. mehrere)Prozedurdateien (ggf. mehrere) Aufrufende ProgrammeAufrufende Programme Externe Programme (.APP, .FXP)Externe Programme (.APP, .FXP) Externer Quellcode (Externer Quellcode (SET DEVELOPMENTSET DEVELOPMENT))

Page 27: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Verzweigungen und Verzweigungen und SchleifenSchleifen

IF ... ELSE ... ENDIFIF ... ELSE ... ENDIF Kurzform: IIF() (Immediate IF)Kurzform: IIF() (Immediate IF) DO CASE ... ENDCASEDO CASE ... ENDCASE

DO WHILE ... ENDDODO WHILE ... ENDDO FOR ... NEXT / ENDFORFOR ... NEXT / ENDFOR

Page 28: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Verzweigungen und Verzweigungen und SchleifenSchleifen

SCAN ... ENDSCANSCAN ... ENDSCAN FOR EACH IN FOR EACH IN

<group><group> WITH ... ENDWITHWITH ... ENDWITH

Verlassen mit:Verlassen mit: EXITEXIT LOOPLOOP

Page 29: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

KonstantenKonstanten

#DEFINE ... #UNDEFINE#DEFINE ... #UNDEFINE #INCLUDE (siehe FoxPro.h)#INCLUDE (siehe FoxPro.h) #IF ... #ELIF ... #ELSE ... #ENDIF#IF ... #ELIF ... #ELSE ... #ENDIF #IFDEF ... #ELSE ... #ENDIF#IFDEF ... #ELSE ... #ENDIF #IFNDEF ... #ELSE ... #ENDIF#IFNDEF ... #ELSE ... #ENDIF *# document UPPER (Doku-*# document UPPER (Doku-

Wizard!)Wizard!)

Page 30: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

MessageBox()MessageBox()

LPARAMETERS tcText, tcTitleLPARAMETERS tcText, tcTitle

#INCLUDE FoxPro.h#INCLUDE FoxPro.h

LOCAL lnSelected, lnDialogTypeLOCAL lnSelected, lnDialogType

lnSelected = 0lnSelected = 0 && nicht notwendig&& nicht notwendig

lnDialogType = ;lnDialogType = ;

MB_YESNO+MB_ICONQUESTION+MB_DEFBUTTON2MB_YESNO+MB_ICONQUESTION+MB_DEFBUTTON2

lnSelected = MESSAGEBOX( tcText, lnDialogType, tcTitle )lnSelected = MESSAGEBOX( tcText, lnDialogType, tcTitle )

DO CASEDO CASE

CASE lnSelected = IDYESCASE lnSelected = IDYES

CASE lnSelected = IDNOCASE lnSelected = IDNO

ENDCASEENDCASE

Page 31: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Vielen Dank!Vielen Dank!

Das waren die Themen:Das waren die Themen: Schreibweisen und Schreibweisen und

OperatorenOperatoren Variablen und Variablen und

NamenskonventionenNamenskonventionen Datenumwandlung, Datenumwandlung,

Stringmanipulation, ArraysStringmanipulation, Arrays Gültigkeitsbereiche und Gültigkeitsbereiche und

ProgrammaufrufeProgrammaufrufe Verzweigungen und Verzweigungen und

SchleifenSchleifen

Page 32: Wizards & Builders GmbH Grundbefehle von FoxPro Grundlagen der Programmierung mit Microsoft FoxPro/Windows und Microsoft Visual FoxPro.

Wizards & Wizards & Builders GmbH Builders GmbH

Wenn Fragen bestehen:Wenn Fragen bestehen:

Wizards & BuildersWizards & BuildersMethodische Software-Methodische Software-

Entwicklung GmbHEntwicklung GmbH

Frankfurter Str. 21bFrankfurter Str. 21b

61476 Kronberg61476 Kronberg

Tel.: 06173-950906Tel.: 06173-950906

Fax: 06173-950907Fax: 06173-950907

CIS: 101605,175CIS: 101605,175