खोज…


टिप्पणियों

फॉक्सप्रो 80 के दशक की शुरुआत में बनाया गया था (मूल रूप से फॉक्सबेस - 1984 के रूप में?) फॉक्स सॉफ्टवेयर द्वारा और मैक ओएस, यूनिक्स, डॉस, विंडोज प्लेटफार्मों पर समर्थित है। यह तब पीसी पर सबसे तेज डेटाबेस इंजन के रूप में जाना जाता था। बाद में 1992 में, दुर्भाग्य से , इसे माइक्रोसॉफ्ट द्वारा अधिग्रहित किया गया था। माइक्रोसॉफ्ट के कार्यभार संभालने के बाद, 1994 में डॉस (FPD) के लिए फॉक्सप्रो और विंडोज के लिए फॉक्सप्रो (एफपीडब्लू) 2.6 जारी किया गया। 1995 के अंत में, फॉक्सप्रो को "विज़ुअल" नाम मिला और प्लेटफ़ॉर्म का समर्थन केवल खिड़कियों तक ही सीमित था। यह फॉक्सप्रो का पहला संस्करण भी था जहां भाषा ऑब्जेक्ट ओरिएंटेड निकली।

Microsoft की आधिकारिक विज़ुअल फॉक्सप्रो (आमतौर पर सिर्फ VFP के रूप में संदर्भित) साइट इसे इस प्रकार बताती है:

Microsoft® Visual FoxPro® डेटाबेस डेवलपमेंट सिस्टम उच्च प्रदर्शन डेस्कटॉप, अमीर क्लाइंट, वितरित क्लाइंट, क्लाइंट / सर्वर और वेब डेटाबेस एप्लिकेशन बनाने के लिए एक शक्तिशाली उपकरण है।

हालाँकि यह एक पुरानी भाषा है, फिर भी इसे विंडोज़ डेस्कटॉप के लिए तेज़ी से डेटा केंद्रित अनुप्रयोग बनाने के लिए सबसे आसान भाषा माना जाता है। अगर आपको विंडोज़ डेस्कटॉप के लिए डेटा आधारित एप्लिकेशन बनाने की आवश्यकता है, तो VFP को चुनना जो आप वास्तव में आसानी से और तेज़ी से करेंगे।

संस्करण

संस्करण रिहा
FPW 2.6a 1994/10/28
विजुअल फॉक्सप्रो 3.0 1995/12/16
दृश्य फॉक्सप्रो 5.0 1997/01/24
दृश्य फॉक्सप्रो 6.0 2000/08/18
विजुअल फॉक्सप्रो 7.0 2002/01/04
दृश्य फॉक्सप्रो 8.0 2003/10/25
दृश्य फॉक्सप्रो 9.0 2004/12/13
Visual Foxpro 9.0 SP2 2007/10/21

स्थापना या सेटअप

दृश्य-फॉक्सप्रो सेट या स्थापित करने पर विस्तृत निर्देश।

नमस्ते दुनिया

सभी भाषाओं में पारंपरिक रूप से पहला उदाहरण "हैलो वर्ल्ड" छाप रहा है। संभवतः ऐसा करना VFP में सबसे आसान है:

? "Hello World"

वैश्विक त्रुटि हैंडलर जोड़ें

वीपीएफ एप्लिकेशन में अनहेल्ड एरर्स (अपवादों) को पकड़ने का एक सरल तरीका यह है कि आप अपने मुख्य प्रोग्राम की शुरुआत के पास ऑनर कमांड का उपयोग करें।

निम्नलिखित पर ERROR कमांड वर्तमान प्रोग्राम में एक विधि को "errorHandler" कहती है। ERROR (VFP त्रुटि नंबर), MESSAGE (VFP त्रुटि संदेश), PROGRAM (वर्तमान में निष्पादित प्रोग्राम का नाम) और LINENO (त्रुटि की लाइन संख्या) द्वारा दिए गए मान त्रुटिहेलर विधि से पारित किए जाते हैं।

ON ERROR DO errorHandler WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()

एक साधारण त्रुटिहैंडलर विधि निम्नलिखित की तरह लग सकती है।

PROCEDURE errorHandler
    LPARAMETERS tnVFPErrorNumber, tcVFPErrorMessage, tcProcWithError, tnLineNumber

    STORE 'Error message: ' + tcVFPErrorMessage + CHR(13) + ;
        'Error number: ' + TRANSFORM(tnVFPErrorNumber) + CHR(13) + ;
        'Procedure with error: ' + tcProcWithError + CHR(13) + ;
        'Line number of error: ' + TRANSFORM(tnLineNumber) TO lcDetails

    MESSAGEBOX(lcDetails, 16, "Unhandled Exception")

    ON ERROR *
    ON SHUTDOWN
    CLEAR EVENTS

    QUIT
ENDPROC

आप बीच-बीच में त्रुटि हैंडलर को बदल और पुनर्स्थापित भी कर सकते हैं। उदाहरण के लिए, एक बिंदु पर आप विशेष रूप से एक फ़ोल्डर में सभी तालिकाओं को खोलना चाहते हैं, और यदि आप नहीं कर सकते हैं तो आप जारी नहीं रखना चाहते हैं:

procedure DoSomethingWithExclusiveLock(tcFolder)
local lcOldError, llInUse, ix && by default these variables have a value of .F.
lcError = on('error') && save current handler
on error llInUse = .T.  && new handler
local array laTables[1]  
for ix=1 to adir(laTables, addbs(m.tcFolder) + '*.dbf'))
   use (addbs(m.tcFolder)+laTables[m.ix,1]) in 0 exclusive
endfor
on error &lcError && restore old handler
if m.llInUse && couldn't get exclusive lock on all tables
   close databases all
   return
endif
* do whatever
endproc

युक्ति: कभी-कभी, विशेष रूप से डिबगिंग के दौरान, आप डिफ़ॉल्ट त्रुटि हैंडलर को पुनर्स्थापित करना चाहते हैं जो आपको उस कोड को तोड़ने और स्थानांतरित करने की अनुमति देता है जहां त्रुटि हुई है, फिर कहीं भी पहले जहां आपको त्रुटि मिली थी, अस्थायी रूप से जोड़ते हुए:

on error

ऐसा करेगा।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow