سلام
اگر از ویوی قابل ویرایش استفاده میکنید باید جدول را Update کنید.
TableUpdate()
Printable View
سلام
اگر از ویوی قابل ویرایش استفاده میکنید باید جدول را Update کنید.
TableUpdate()
خیر بنده از خود جدول البته با فیلتر خاص هر کاربر استفاده کرده ام
سلام
اگر از فرم استفاده میکنید دقت کنید در DataEnvironment همان جدول چگونه Update میشود.
با تشکر از شما جناب اقای توکل
به حضورتان عرض شود که من از فرم استفاده میکنم ولی از data environment فرم استفاده نمیکنم بدلیل مشکلاتی که برای استفاده مشترک بوجود امده بود
من در init فرم جدوالی را که نیاز دارم use میکنم
خواهش میکنم راهنمائی فرمائید که واقعا مشکل دارم
سلام
شاید در ساخت ایندکس ها مشکل دارد.
من نمیدانم که مشکل چیست ولی واقعا عجیب است
بفرمائید فرمان = TABLEUPDATE(.T.) واقعا کار آیی دارد یا نه
نیازی به نصب نرم افزار یا کار دیگری روی server نیست
سلام
این فرمان قاعدتا بر روی Cursor ها کار میکند.
با سلام
من از ado استفاده میکنم و sql چرا وقتی یک رکورد به بانک اضافه میکنم باید از برنامه خارج شم دوباره برنامه رو اجرا کنم حالا میتونم رکورد رو ببینم یا جستجو با موفقیت انجام میشه
لطفا اگه کسی از دوستان راهنمایی کنه ممنون میشم
سلام
احتمالاً یه دستوری مثل UpdateTable باید داشته باشه.
میشود بفرمائید که اگر در فرمها از local view استفاده کنم چگونه میتوانم انرا ابدیت کنم که اطلاعات جدید ثبت شده در بانک را داشته باشم بدون اینکه از فرم خارج شوم
یا چگونه میشود یک query را در فرم ابدیت کنم بدون اینکه انرا مجدد بسازم برای اوردن اطلاعات جدید ثبت شده
سلام
با دستور UpdateTable یا در DataEnvironment تنظیمات را بر اساس بدون بافرینگ ست کنید.
من از DataEnvironment که استفاده نمیکنم ولی در خصوص UpdateTable اگر برایتان امکان دارد مقداری توضیح دهید با توجه به اینکه برنامه شبکه میباشد
بفرمائید چگونه میشود از داخل برنامه شرط یا فیلتر local veiw را تعیین نمود و بر اساس ان نمایش داده شود
سلام
اینکه شما از TableUpdate استفاده کرده باشید باید در Cuersorsetprop آنرا تعیین کنید.
در مورد سوال دم اگر با دستورات SQL است از where.
با سلام و تشکر
منظورم از این کار این است که در فرم به جای table از local veiw استفاده کردم و میخواهم در ان حذف اضافه و ... نمایم که در جدول اصلی اعمال شود حال شما فرض کنید که مثلا اطلاعات روز خاص 25/06/1384 را میخواهم این کار را انجام دهم و چند لحضه اطلاعات 26/06/1384 را
و از فیلتر کردن بانک هم نمیخواهم استفاده کنم چون تعداد رکوردهای بانک اصلی زیاد میباشد و وقت گیر است
اقایان میشود بفرمائید که چگونه میشود در local veiw از idx یا cdx بهره برد
سلام
دوست عزیز اصلا Local View جدول نیست!
یک پرس و جوی است. که از وری Select SQL ساخته می شود و ممکن است شما آن را UpdateAble کنید. بنابراین شما دیگر جدول اصلی را ندارید بلکه یک فایل از پرس و جوی دارید. این فایلها بر اساس چیزی که در SELECT است ساخته می شوند و ربطی به INDEX ندارند. آنها را نمیتوان ایندکس گذاری کرد. مگر اینکه اطلاعات View در به یک جدول فاکس معمولی تبدیل شوند. که این هم خودش داستان مفصلی دارد.
اما در مورد استفاده بهتر از جداول استفاده کنید و RushMore را به کمک گرفته و اون را هم کمک کنید.
شاید بسیاری از دوستان با این تکنولوژی آشنا باشند اما آنرا کمک نمی کنند. شاید بگید چطوری باید کمک بشه؟
خب اگه اینو بدونید که RushMore بر اساس ایندکس کار می کنه و اگر ایندکسی از قبل ساخته باشه از اون استفاده میکنه به این نتیجه می رسیم که برای سرعت در FOXPRO باید فیلدهایی که مثلا Set filter می شوند را Index ساخت و هر چند که این ایندکس به درد کابر نخورد اما سرعت را بالا میبرد.
با این تفاسیر RushMore را بکار گیرد و آنرا کمک کنید.
در ضمن بعضی اوقات هم آنرا از کار باید انداخت!
شما می دانید چه موقع؟
من توی dataenvorment بین table ها ارتباط برقرار میکنم (بین جدولها رو با خط به هم وصل میکنم ) ولی توی جستجوها بقیه رکوردها توی فایلهای دیگه پیدا نمی شه . کار من غلطه یا ...
سلام
یک امر مسلم اینه که وقتی ارتباطی برقرار بشه حرکت در جدول اول رکورد متناظر در جدول دوم را بدهد. خب معلومه که اینکار بر روی جداول تاثیر می گذارد.
خوب آخه این اتفاق واسه من نمی افته
یه راه که راحت بشه با کد نویسی sql رو به فاکس چسبوند هست ؟
سلام
دوست عزیز SQL یعنی چی؟
هیچی بیخیال ولش کن . اصلا دیتابیس یعنی چه ؟
بابا من میخوام sqlserver رو فاکس بچسبونم همین
می خواین با بانکهای اس کیو ال کار کنید یا برای نصب برنامه تون مشکل دارید؟
می خوام مثل .vb.nt که به sql وصلش میکنم با فاکس هم همین کار رو بکنم
سلام
ببین دوست عزیز چند راه داری:
1- استفاده از ADO و DAO به صورت ویژوال
2- استفاده از Connection و Remote View به صورت ویژوال
3- استفاده از Connection و Remote View به صورت دستوری
خب حالا کدومش را می خواهی؟
برنامه نویسان بیسیک از روش ADo بیشتر استفاده میکنند.
اگر نحوه اتصال را می خواهی راجع به MySQL من گفته ام شما می توانید همین را برای هر دیتابیسی که دلتان خواست عمل کنید. فرقی نمی کند شما می توانید به تمام بانکها وصل شوید.
اما در مورد ADO هم کار ویژوال راحت است.
اگر مشکلی هم داری بگو کمک کنم.
خوب ado رو توی vb بلدم توی fox چیکار کنم ؟
نکته بسیار جالبی دیدم که دوستان اشاره نکرده بودند. در مجموع کار با این تابع سرعت و دقت به همراه داره و من سعی میکنم با توجه به حجم بالای استفاده از ریسورسهای کامپیوتر میزبان و شبکه حتی المقدور برای جلوگیری از خطا و پایین آوردن حجم استفاده از شبکه ازش استفاده کنم.نقل قول:
نوشته شده توسط binyaz2003
یه کرسر ایجاد کرده (البته دوستی می گفت کرسرهای بالای ده هزار رکورد یعنی برنامه نویس نمیدونه چه داره میکنه) و برای آپدیت هم رکوردهای تغییر یافته کرسر رو مارک میکنیم و برای هر تغییر (مجددا با استفاده از همون تابع) اسکیوال رو آپدیت میکنیم. به این شیوه تقریبا داریم مستقیم با اسکیوال کار میکنیم و دقت و امنیت تضمین شده است.
اول یه دی اس ان (بهتر از دی اس ان لس کار میکنه) ایجاد کنید. بعد یه دیتابیس و یه کانکشن با استفاده از دی اس ان مربوطه.
به ترتیب:
1- ایجاد دی اس ان:
SomeServer="10.10.10.1"
DECLARE INTEGER SQLConfigDataSource in odbccp32.DLL ;
INTEGER hwndParent, INTEGER fRequest, ;
STRING @lpszDriver, STRING @lpszAttributes
lcAttributes = "DSN=mydsn" + CHR(0) + ;
"Server="+SomeServer + CHR(0) + ;
"database=db"
#DEFINE ODBC_ADD_SYS_DSN 4
lnReturn = SQLConfigDataSource( 0, 4, "SQL Server" + CHR(0), lcAttributes )
IF lnReturn<>1
MESSAGEBOX("DSN creation failed",16)
ENDIF
نکته: ایجاد دی اس ان با یوزر و پس رو فراموش کنید.
2- ایجاد کانکشن:
open database mydb shared
CREATE CONNECTION remote_01 DATASOURCE 'mydsn' userid 'user' password 'pass'
3- استفاده از تابع:
lhn = SQLCONNECT("remote_01")
a="SELECT * FROM main"
result=SQLEXEC(lhn, a ,"main")
ایا شما نیز با Query فاکس 9 مشکل دارید برای group یا (یک فیلد)sum
برای حل این مشکل set enginebehavior را روی 70 set کنید
ممنون از لطف شما
با سلام
من میخواستم از طریق VIEW دسترسی به رکورد مورد نظر در جدول اصلی را داشته باشم یا به عبارتی همزمان با رکورد مورد نظر در VIEW رکورد جدول اصلی نیز در اختیار باشد
لطفا همکاری فرمائید
سلام
منظور از رکورد اصلی چیه؟ آیا تغییرات اعمال بشه؟ یا ؟
من VIEW را با فیلتر خاص مثلا اطلاعات یک روز را از یک جدول آورده ام و تمام ثبت و اصلاح و حذف از طریق VIEW مربوطه انجام میگیرد حال من میخواهیم در یک رکورد از جدول VIEW که هستم بتوانم دسترسی به همان رکورد از جدولی که VIEW از ان تهیه شده است داشته باشم
سلام
خب در View از یک فیلد که شماره رکورد را بر می گرداند بهره ببرید. سپس از طریق این شماره رکورد رکورد اصلی را دسترسی خواهید داشت. مثلا:
select recno(),cName,cFamily from personal
راهی غیر از این چون با این روش مشکل پیش می اید بدلیل اینکه تعداد کاربران از یک طرف و ورودی هر کدام و اصلاحات و حذف و ....
هدف من از VIEW سرعت بود چون تعداد رکوردهای جدول اصلی زیاد میباشد
سلام
خب شرط محدود کردن تون را بگذار?د
در صورتی که در مسیر فایل موردنیاز (dbf, index ,....) و یا هر آدرسی دیگری که دارای کاراکتر space (فاصله) باشد به هنگام خواندن با مشکل مواجه می شویم
برای رفع این مشکل چه باید کرد
(در نظر بگیرید که جداول در شاخه my document خود کاربر ذخیره شده و شما می خواهید آن را باز (use) کنید
جالب اینکه اگر از طریق خود فاکس باز کنید مشکلی نیست ولی همان آدرس را وقتی ذخیره می کنید (تابع dbf()( و می خواهید از طریق متغیر محتوی آن مجددا آن فایل را بخوانید با پیام خطا مواجه می شوید
سلام
باید از " استفاده کنید: مثلا "a:\ali reza\a.dbf"