SlideShare a Scribd company logo
1 of 26
Introduction to AFP
Power for your Internet Server
Who Am I
 Mike Feltman
 President F1 Technologies since
  1990
 Co-designer & author of Visual
  FoxExpress framework
 North American AFP Distributor
 “.NET Project Rescue Specialist”
Agenda
   What is AFP?
   Why AFP?
   Creating an AFP Site
   Getting Started with Simple Pages
   Separating code from layout
   AFP Application Architecture
   The AFP ControlCenter
   Debugging
   AFP Versions
   Where and how to get AFP
What is AFP?
 Active FoxPro Pages
 ISAPI Extension
 ASP work alike using VFP code
  instead of VB Script or Java Script
 Optional ASP.NET like separation of
  code from layout
 Complete OOP support
Why AFP?
   VFP Language      Leverage VFP
   Stable             skills on the
                       Internet
   Fast
   Secure
                      Use your existing
                       classes
   Easy
                      Take advantage of
   Extensible         VFP performance
   Hassle-Free       Integrate with
                       desktop apps
Why AFP?
   VFP Language      High performance
   Stable             and stability for
                       mission critical
   Fast
                       environments
   Secure
                      Support for
   Easy               clustering and
   Extensible         high-availability
   Hassle-Free        web sites.
Why AFP?
   VFP Language      Based on VFP
   Stable            Multi-threaded
   Fast               without requiring
   Secure             MTDLLs
   Easy
                      Automatically
                       compiles pages
   Extensible
                      Handles millions of
   Hassle-Free        hits per day
                      No Slow COM calls
                      No need for ODBC,
                       ADO or OLEDB
Why AFP?
   VFP Language      No files stored in
   Stable             wwwRoot
   Fast              Code is not visible
   Secure             to the client
   Easy
                      Automatic session
                       management
   Extensible
                      Support for HTTPS
   Hassle-Free
                      Integrates with
                       Windows security
Why AFP?
   VFP Language      VFP Syntax
   Stable            ASP like Object
   Fast               Model
   Secure            Use any web
   Easy               development tool,
                       VFP or Notepad
   Extensible
                      Use VFP’s
   Hassle-Free        debugging
                       capabilities
                      No need to start
                       and stop IIS
Why AFP?
   VFP Language      Use your own or 3rd
   Stable             party VFP classes
   Fast              Use VFP’s COM
   Secure             support
   Easy
                      Anything goes with
                       plug-ins
   Extensible
   Hassle-Free
Why AFP?
   VFP Language      Easy installation
   Stable             and configuration
   Fast              Works with any
   Secure             ISAPI compatible
                       web server (IIS,
   Easy               Apache, etc.)
   Extensible
   Hassle-Free
Creating an AFP Site
   Option 1
       Create a folder in InetpubwwwRoot
   Option 2
       Create a folder anywhere
       Enable web sharing

   That’s It!
Creating Simple Pages
helloworld.afp
 Create a new file in notepad with the
  following text
    <html>
    <body>
    <% ? "Hello World" %>
    </body>
    </html>
 Save it as helloworld.afp
 Navigate to it in your browser at
  http://localhost/afpdemo/helloworld.af
  p
Creating Simple Pages
listcustomers.afp
 Create a new file in notepad with the following text
     <html>
     <title>AFP Customer List</title>
     <body>
     <%
     USE (_SAMPLES + [DATACUSTOMER])
     SCAN
     ? Company
     ? [<br>]
     ENDSCAN
     %>
     </body>
     </html>
   Save it as listcustomers.afp
   Navigate to it in your browser at
    http://localhost/afpdemo/listcustomers.afp
Creating Simple Pages
   Additional Pages
     ListCustomersXML.AFP
     Menu.AFP
     ViewSource.AFP

   ProLib Samples
       Sprechen Sie Deutsch?
Code Separation
 Programming 101 – Separate Form
  from Functionality
 Not well supported in classic .ASP
 Supported in ASP.NET
 .Code file with the same name as
  the .AFP file can contain VFP code
  for the page. (test.afp code file =
  test.afp.code)
Separating Code From Layout
 Samples
  CustomerList2.afp and
   CustomerList2.afp.code
  Customer.afp and
   Customer.afp.code
AFP Application Architecture
   All of the .AFP files in a directory
   Requires an Application Id in .AFPA file
    <application ID=“???"/>
   Files in directories other than the
    application root can be made part of an
    application
   Common Code can be stored in
    .AFPA.Code File
       Functions
       Class Definitions
       Events
AFP Demo Application Files
 AFPDemo.afpa
 AFPDemo.afpa.code
 CustomerTable.afp
The AFP ControlCenter
 Displays Status for each Instance
 Allows Configuration Modification
 Send Requests to AFP without going
  through Web Server
Debugging
 DEBUG, SUSPEND, SET STEP ON
  & ASSERT are supported
 DO AFP3Debug.prg
 Use regular VFP debugger
 Can also use ALF+F5 to open the
  debugger
 Remember to exit “debug mode” with
  SHIFT+F5
AFP Versions
   AFP Professional         AFP Express
   $499 US                  $99 US
   Supports up to 3         Supports only a
    host names                single host name
   Cluster support          No cluster support
   Multiple server and      No plug-ins
    unlimited server         Limited debugging
    licenses available        support
Review
   Key Features:
       VFP Language
       Stable
       Fast
       Secure
       Easy
       Extensible
       Scalable
       Complete debug support
   Programming models:
       Script within HTML pages
       .Code files associated with pages
       VCX, PRG classes
       Application level code in .AFPA.Code Files
AFP Sites of Interest
   AFPFAQ.DE
    Active FoxPro Pages FAQ – multi-lingual
   VFUG.ORG
    Large, popular all AFP site
   Afpwiki.de
    Open Source AFP based WIKI
   AFPHOSTING.COM
    (German) site dedicated to AFP Hosting
   Prolib.de
    Manufacturers of Active FoxPro Pages
Where to Get AFP
   Download Demos and Documentation
       www.f1tech.com
       www.afpages.com
   Purchase at www.f1tech.com
Thank You
 For more info
 www.f1tech.com

   www.afpages.com
   Email MikeFeltman@f1tech.com

More Related Content

What's hot

PHP
PHPPHP

What's hot (20)

Error handling in visual fox pro 9
Error handling in visual fox pro 9Error handling in visual fox pro 9
Error handling in visual fox pro 9
 
CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011CakePHP 2.0 - PHP Matsuri 2011
CakePHP 2.0 - PHP Matsuri 2011
 
PHP Interview Questions
PHP Interview QuestionsPHP Interview Questions
PHP Interview Questions
 
PHP LICTURES ..........
PHP LICTURES ..........PHP LICTURES ..........
PHP LICTURES ..........
 
A Brief Intro to Adobe Flex
A Brief Intro to Adobe FlexA Brief Intro to Adobe Flex
A Brief Intro to Adobe Flex
 
Better Drupal Interaction Design with Flex
Better Drupal Interaction Design with FlexBetter Drupal Interaction Design with Flex
Better Drupal Interaction Design with Flex
 
Language Barriers
Language BarriersLanguage Barriers
Language Barriers
 
Adobe flex an overview
Adobe flex  an overviewAdobe flex  an overview
Adobe flex an overview
 
REST Servers in Delphi XE Using DataSnap
REST Servers in Delphi XE Using DataSnapREST Servers in Delphi XE Using DataSnap
REST Servers in Delphi XE Using DataSnap
 
State of play for Joomla - Nov 2014
State of play for Joomla - Nov 2014State of play for Joomla - Nov 2014
State of play for Joomla - Nov 2014
 
Top 10 php frameworks in 2021
Top 10 php frameworks in 2021Top 10 php frameworks in 2021
Top 10 php frameworks in 2021
 
PHP
PHPPHP
PHP
 
Simplify your professional web development with symfony
Simplify your professional web development with symfonySimplify your professional web development with symfony
Simplify your professional web development with symfony
 
Advantages of Choosing PHP Web Development
Advantages of Choosing PHP Web DevelopmentAdvantages of Choosing PHP Web Development
Advantages of Choosing PHP Web Development
 
Current state of Adobe PhoneGap & Cordova (yes, iOS 8 too)
Current state of Adobe PhoneGap & Cordova (yes, iOS 8 too)Current state of Adobe PhoneGap & Cordova (yes, iOS 8 too)
Current state of Adobe PhoneGap & Cordova (yes, iOS 8 too)
 
PHP .ppt
PHP .pptPHP .ppt
PHP .ppt
 
Advanced PHP Web Development Tools in 2015
Advanced PHP Web Development Tools in 2015Advanced PHP Web Development Tools in 2015
Advanced PHP Web Development Tools in 2015
 
Web performance optimization
Web performance optimizationWeb performance optimization
Web performance optimization
 
ILUG 2007 - Notes and Office Integration
ILUG 2007 - Notes and Office IntegrationILUG 2007 - Notes and Office Integration
ILUG 2007 - Notes and Office Integration
 
Unit 1-introduction to scripts
Unit 1-introduction to scriptsUnit 1-introduction to scripts
Unit 1-introduction to scripts
 

Similar to Introduction to afp

Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!
Francesco Fullone
 
XAML: One Language to Rule Them All
XAML: One Language to Rule Them AllXAML: One Language to Rule Them All
XAML: One Language to Rule Them All
Frank La Vigne
 
Phpbasics And Php Framework
Phpbasics And Php FrameworkPhpbasics And Php Framework
Phpbasics And Php Framework
shivas
 
I didnt know Flex could do this
I didnt know Flex could do thisI didnt know Flex could do this
I didnt know Flex could do this
e27
 

Similar to Introduction to afp (20)

Learning Your Way Around Alfresco [A Developer's Intro, Part 1. by Jeff Potts]
Learning Your Way Around Alfresco [A Developer's Intro, Part 1. by Jeff Potts]Learning Your Way Around Alfresco [A Developer's Intro, Part 1. by Jeff Potts]
Learning Your Way Around Alfresco [A Developer's Intro, Part 1. by Jeff Potts]
 
Working with WebServices.ppt
Working with WebServices.pptWorking with WebServices.ppt
Working with WebServices.ppt
 
Lamp Zend Security
Lamp Zend SecurityLamp Zend Security
Lamp Zend Security
 
Adobe AIR. NativeProcess. FFMPEG. Awesome.
Adobe AIR. NativeProcess. FFMPEG. Awesome.Adobe AIR. NativeProcess. FFMPEG. Awesome.
Adobe AIR. NativeProcess. FFMPEG. Awesome.
 
Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!Federico Feroldi: PHP in Yahoo!
Federico Feroldi: PHP in Yahoo!
 
Federico Feroldi Php In Yahoo
Federico Feroldi Php In YahooFederico Feroldi Php In Yahoo
Federico Feroldi Php In Yahoo
 
Benefit of using php in web development
Benefit of using php in web developmentBenefit of using php in web development
Benefit of using php in web development
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
XAML: One Language to Rule Them All
XAML: One Language to Rule Them AllXAML: One Language to Rule Them All
XAML: One Language to Rule Them All
 
PHP Presentation
PHP PresentationPHP Presentation
PHP Presentation
 
Phpbasics And Php Framework
Phpbasics And Php FrameworkPhpbasics And Php Framework
Phpbasics And Php Framework
 
Freelance web development
Freelance web developmentFreelance web development
Freelance web development
 
Phpyahoo
PhpyahooPhpyahoo
Phpyahoo
 
Getting Started with Flex and PHP
Getting Started with Flex and PHPGetting Started with Flex and PHP
Getting Started with Flex and PHP
 
25 Intro to Symfony #burningkeyboards
25 Intro to Symfony #burningkeyboards25 Intro to Symfony #burningkeyboards
25 Intro to Symfony #burningkeyboards
 
Introducing symfony
Introducing symfonyIntroducing symfony
Introducing symfony
 
Flex for php developers
Flex for php developersFlex for php developers
Flex for php developers
 
I didnt know Flex could do this
I didnt know Flex could do thisI didnt know Flex could do this
I didnt know Flex could do this
 
Lamp
LampLamp
Lamp
 
Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#
 

More from Mike Feltman (6)

Drop acid
Drop acidDrop acid
Drop acid
 
Feltman collections
Feltman collectionsFeltman collections
Feltman collections
 
What’s new in x case 8
What’s new in x case 8What’s new in x case 8
What’s new in x case 8
 
VFP & Ajax
VFP & AjaxVFP & Ajax
VFP & Ajax
 
Docking from a z in visual fox pro 9
Docking from a z in visual fox pro 9Docking from a z in visual fox pro 9
Docking from a z in visual fox pro 9
 
Client server
Client serverClient server
Client server
 

Introduction to afp

  • 1. Introduction to AFP Power for your Internet Server
  • 2. Who Am I  Mike Feltman  President F1 Technologies since 1990  Co-designer & author of Visual FoxExpress framework  North American AFP Distributor  “.NET Project Rescue Specialist”
  • 3. Agenda  What is AFP?  Why AFP?  Creating an AFP Site  Getting Started with Simple Pages  Separating code from layout  AFP Application Architecture  The AFP ControlCenter  Debugging  AFP Versions  Where and how to get AFP
  • 4. What is AFP?  Active FoxPro Pages  ISAPI Extension  ASP work alike using VFP code instead of VB Script or Java Script  Optional ASP.NET like separation of code from layout  Complete OOP support
  • 5. Why AFP?  VFP Language  Leverage VFP  Stable skills on the Internet  Fast  Secure  Use your existing classes  Easy  Take advantage of  Extensible VFP performance  Hassle-Free  Integrate with desktop apps
  • 6. Why AFP?  VFP Language  High performance  Stable and stability for mission critical  Fast environments  Secure  Support for  Easy clustering and  Extensible high-availability  Hassle-Free web sites.
  • 7. Why AFP?  VFP Language  Based on VFP  Stable  Multi-threaded  Fast without requiring  Secure MTDLLs  Easy  Automatically compiles pages  Extensible  Handles millions of  Hassle-Free hits per day  No Slow COM calls  No need for ODBC, ADO or OLEDB
  • 8. Why AFP?  VFP Language  No files stored in  Stable wwwRoot  Fast  Code is not visible  Secure to the client  Easy  Automatic session management  Extensible  Support for HTTPS  Hassle-Free  Integrates with Windows security
  • 9. Why AFP?  VFP Language  VFP Syntax  Stable  ASP like Object  Fast Model  Secure  Use any web  Easy development tool, VFP or Notepad  Extensible  Use VFP’s  Hassle-Free debugging capabilities  No need to start and stop IIS
  • 10. Why AFP?  VFP Language  Use your own or 3rd  Stable party VFP classes  Fast  Use VFP’s COM  Secure support  Easy  Anything goes with plug-ins  Extensible  Hassle-Free
  • 11. Why AFP?  VFP Language  Easy installation  Stable and configuration  Fast  Works with any  Secure ISAPI compatible web server (IIS,  Easy Apache, etc.)  Extensible  Hassle-Free
  • 12. Creating an AFP Site  Option 1  Create a folder in InetpubwwwRoot  Option 2  Create a folder anywhere  Enable web sharing  That’s It!
  • 13. Creating Simple Pages helloworld.afp  Create a new file in notepad with the following text <html> <body> <% ? "Hello World" %> </body> </html>  Save it as helloworld.afp  Navigate to it in your browser at http://localhost/afpdemo/helloworld.af p
  • 14. Creating Simple Pages listcustomers.afp  Create a new file in notepad with the following text <html> <title>AFP Customer List</title> <body> <% USE (_SAMPLES + [DATACUSTOMER]) SCAN ? Company ? [<br>] ENDSCAN %> </body> </html>  Save it as listcustomers.afp  Navigate to it in your browser at http://localhost/afpdemo/listcustomers.afp
  • 15. Creating Simple Pages  Additional Pages  ListCustomersXML.AFP  Menu.AFP  ViewSource.AFP  ProLib Samples  Sprechen Sie Deutsch?
  • 16. Code Separation  Programming 101 – Separate Form from Functionality  Not well supported in classic .ASP  Supported in ASP.NET  .Code file with the same name as the .AFP file can contain VFP code for the page. (test.afp code file = test.afp.code)
  • 17. Separating Code From Layout  Samples  CustomerList2.afp and CustomerList2.afp.code  Customer.afp and Customer.afp.code
  • 18. AFP Application Architecture  All of the .AFP files in a directory  Requires an Application Id in .AFPA file <application ID=“???"/>  Files in directories other than the application root can be made part of an application  Common Code can be stored in .AFPA.Code File  Functions  Class Definitions  Events
  • 19. AFP Demo Application Files  AFPDemo.afpa  AFPDemo.afpa.code  CustomerTable.afp
  • 20. The AFP ControlCenter  Displays Status for each Instance  Allows Configuration Modification  Send Requests to AFP without going through Web Server
  • 21. Debugging  DEBUG, SUSPEND, SET STEP ON & ASSERT are supported  DO AFP3Debug.prg  Use regular VFP debugger  Can also use ALF+F5 to open the debugger  Remember to exit “debug mode” with SHIFT+F5
  • 22. AFP Versions  AFP Professional  AFP Express  $499 US  $99 US  Supports up to 3  Supports only a host names single host name  Cluster support  No cluster support  Multiple server and  No plug-ins unlimited server  Limited debugging licenses available support
  • 23. Review  Key Features:  VFP Language  Stable  Fast  Secure  Easy  Extensible  Scalable  Complete debug support  Programming models:  Script within HTML pages  .Code files associated with pages  VCX, PRG classes  Application level code in .AFPA.Code Files
  • 24. AFP Sites of Interest  AFPFAQ.DE Active FoxPro Pages FAQ – multi-lingual  VFUG.ORG Large, popular all AFP site  Afpwiki.de Open Source AFP based WIKI  AFPHOSTING.COM (German) site dedicated to AFP Hosting  Prolib.de Manufacturers of Active FoxPro Pages
  • 25. Where to Get AFP  Download Demos and Documentation  www.f1tech.com  www.afpages.com  Purchase at www.f1tech.com
  • 26. Thank You  For more info  www.f1tech.com  www.afpages.com  Email MikeFeltman@f1tech.com