How to Return Values to AppleScript from FoxPro

ID: Q149107

3.00b MACINTOSH kbinterop kbhowto

The information in this article applies to:

  • Microsoft Visual FoxPro for Macintosh, version 3.0b

SUMMARY

It is possible to use AppleScript to run a Visual FoxPro program and return a value to AppleScript.

MORE INFORMATION

In the following example, the AppleScript portion asks the user for a Customer ID and then calls a Visual FoxPro program. The Visual FoxPro program then opens a database, sums the order amounts for the Customer ID that was entered, and returns the sum to the script. Then the script displays the result in a dialog box.

1. Save the following FoxPro program file as MyQuery.prg in the Visual

   FoxPro folder:

   PARAMETERS lcCustID
   SET DEFAULT TO HOME()+"Samples:Data"
   OPEN DATA TestData.DBC
   SELECT SUM(Order_Amt) AS Tot_Ord_Amt ;
      FROM Orders ;
      WHERE Cust_Id=UPPER(lcCustID) ;
      INTO CURSOR Temp
   SET DEFAULT TO HOME()
   IF _TALLY > 0   && Check to see that any records where found
      RETURN Temp.Tot_Ord_Amt
   ELSE
      RETURN _TALLY
   ENDIF

2. Use the AppleScript Script Editor to save and run the following script.

   IMPORTANT: When typing the code listed below, replace the semicolons
   with the AppleScript line continuation character by typing Option+Enter
   in the Script Editor.

   copy (display dialog "Please enter the Customer's ID" buttons ;
      {"OK", "Cancel"} default answer "") to dialogResults

   if the button returned of dialogResults is "OK" and ;
      {the text returned of dialogResults} is not "" then

      tell application ;
         "Macintosh HD:Microsoft Visual FoxPro:Microsoft Visual FoxPro"

            activate
            Do Script "SET DEFAULT TO HOME()"
            Do Script ;
               "myquery(["&{the text returned of dialogResults}&"])"
            display dialog the result

      end tell

   end if

Additional reference words: 3.00b VFoxMac KBCategory: kbinterop kbhowto KBSubcategory: FxinteropDde
Keywords          : kbcode FxinteropDde 
Version           : 3.00b
Platform          : MACINTOSH


Last Reviewed: May 22, 1998
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.