برای ارتباط با سایر برنامه ها منظورتون چیه !
چندتا روش داریم برای ارتباط با نرم افزارهای دیگه...
اول از همه! چیزی به نام ارتباط با پروسس های دیگه ویندوز از طریق نخ های ویندوز ویا چیزی شبیه به Remote Method که در زبانهای مثل #c ویا java وجود داره تو ویژوال فاکس پرو پشتیبانی نمیشه اونهم به خاطر اینکه اصولا ویژوال فاکس از چند نخی پشتیبانی نمیکنه و نخ های پروسس های ویژوال فاکس هم تک آپارتمان هستند STA(Single Thread Apartment)
اولین روش برای ارتباط با برنامه های دیگه با استفاده از جدول dbf هست که به راحتی میتونید با درایور odbc مخصوص به اینکار مثلا تو یک پایگاه داده دیگه اون جدول رو بخونید و ازش استفاده کنید البته فقط پایگاه داده باید از ODBC و از دستوراتی مانند OpenDataSource ,OpenRowSet که تو پایگاه داده Sql Server هست پشتیبانی کنه.!
مثل این برنامه که برای SqlServer
IsoTempPath ="\\172.20.101.208\myFiles\Test.dbf"
stropendatasource=[opendatasource('VFPOLEDB','Data Source="]+IsoTempPath+["')...]+temptable
genscript=[select ]+selfield+[ into ]+targetdatabasename+[.dbo.]+sourcetable+[ from ]+stropendatasource
SQLEXEC(oeconect,genscript)
و البته میتونید با #c برنامه ای بنویسید که مستقیم بدون واسطه دستورات ویژوال فاکس رو براتون اجرا کنه که خیلی جالبه اگر کسی دوست داشت بگه برای این کار سورس سی شارپ دارم.
دومین روش هم که البته اگر بخواهید وب سرویس بنویسید برای دیتابیس ویژوال فاکس تون استفاده از SOAP ToolKit که شما می تونید از برنامه ای که از روی جداول شما خروجی تهیه میکنه یک فایل با خروجی DLL تهیه کنید و بعد برای استفاده هم می تونید با هاست هایی که IIS ساپورت میکنن و البته بتونن DLL شما روهم رجیستر کنن به سادگی ارتباط برقرار کنید.
سومین روش هم که خوب خروجی گرفتن از دیتابیس هاتون هست که یکی از روشها هم همین XML که خودتون گفتین وخیلی ساده میتونین جدول رو به XML تبدیل کنید و هرجا که لازم دارید ازش استفاده کنید ویا خروجی های دیگه مثل اکسل و ...
باز هم بسته به الگوریتم کاری تون داره.!