PDA

View Full Version : راهنمایی در خصوص عدم Refresh فرم



Milad_ATM
یک شنبه 27 بهمن 1398, 13:50 عصر
با سلام
طبق تصویر ،من سه textbox متصل به Query در فرمم دارم که با وجود اینکه در رویدادهای On load ، Before Update ، After update هر سه Textbox و فرم رو با کد Requery میکنم و در On current با ماکرو فرممو Refresh میکنم ، تا کلید F5 رو نزنم این سه textbox آپدیت نمیشن!
ممنون میشم راهنمایی کنید


Me.Text158.RequeryMe.Text154.Requery
Me.Text156.Requery
Me.Refresh

151369

mazoolagh
دوشنبه 28 بهمن 1398, 13:04 عصر
یک نمونه ساده شده در حد بازسازی موقعیت بگذارین تا بشه سازوکار رو بررسی کرد

Milad_ATM
شنبه 10 اسفند 1398, 10:01 صبح
http://yekupload.ir/90eba59df477025b/QC_Base_System_2.8.5_-_Copy.accdb
این لینک نمونه فایل هست.

لازم به توضیحه که من یک Table دارم که ردیف های آن شامل اعداد 200 تا 300 هست.
و یک تکست باکس که عدد تصادفی بین 200 تا 300 رو برمیگردونه
با استفاده از یک Query ردیف شماره موجود در textbox رو از table برداشته و روی فرمم نمایش میدم.
منتها مشکل اینه که زمان باز شدن فرم Textbox ها Requery نمیشن و حتما باید F5 رو بزنی.
151392

151393

151394

151395

شاگرد آرام
شنبه 10 اسفند 1398, 18:29 عصر
دوست عزیز پیشنهاد می کنم یک ماژول اینجاد کرده و در ماژول یک تابع به نام زیر تعریف کنید


Public Function getInt() As Integer
getInt = Int((300 - 200 + 1) * Rnd + 200)
End Function



بعد شرط کوئری رو به نام تابع تغییر بدین . فکر کنم حل بشه . موفق باشین


http://h63.ir

Milad_ATM
یک شنبه 11 اسفند 1398, 11:03 صبح
متاسفانه با error مواجه میشم
ممکنه راهنمایی کنید ؟
151397

151398

mazoolagh
یک شنبه 11 اسفند 1398, 12:07 عصر
مشکلی که در فرم شما هست به bound بودن اون برمیگرده،
برای خواسته شما (نمایش رندوم یک رکورد از یک جدول مستقل از فرم هنگام باز شدن اون - اگر درست گرفته باشم) نیازی به این کار و رفرش های متعدد نیست :

1- فرم رو unbound کنید و تمام refresh/requery ها رو از کدها بردارین.
2- به کوئری englishlearn هم نیازی نیست، حذف کنید.
3- انتخاب رکورد رندوم در جدول randomsentence فیلد row (یا id یا ...) نیازی نیست که حتما به ترتیب باشه (توضیح میدم) ولی باید یکتا باشه.
4- کنترل text157 رو به combobox تغییر بدین (و اسم با معنی براش انتخاب کنید sentences) :
rowsource = randomsentence
column count = 4

5- control source کنترل های text156 , … رو به ستونهای متناظر با کمبوباکس sentences منسوب کنید.

mazoolagh
یک شنبه 11 اسفند 1398, 12:09 عصر
نمای فرم
151399

mazoolagh
یک شنبه 11 اسفند 1398, 12:14 عصر
در جدول randomsentence فیلد row رو حذف و بجاش یک فیلد autonumber میگذاریم (برای اطمینان از یکتا بودن اون) :
151400

mazoolagh
یک شنبه 11 اسفند 1398, 12:27 عصر
حالا میریم سروقت کد نویسی:

قبل از هر چیز، انتخاب یک رکورد بصورت random براساس مقدار یک فیلد (در نمونه شما row) و در یک بازه فقط زمانی منطقی هست که مطمئن باشیم بازای تمام مقادیر در اون بازه (در مثال شما از 200 تا 300) حتما یک رکورد با مقدار فیلد در این بازه وجود داره (یعنی 101 رکورد باید داشته باشیم)
حتی در همین جدول هم مقادیر حذف شده دارید (94 رکورد بجای 101 رکورد) بنابراین کد شما (یا آقای آرام) بفرض کار کردن هم برای مقادیر حذفی به مشکل میخورن.

روش درست این هست که به جای تابعی که یک مقدار random بین 200 تا 300 برگردونه، از تابعی که یک مقدار random بین 0 تا recordcount-1 برگردونه بعنوان record position استفاده کنیم.

mazoolagh
یک شنبه 11 اسفند 1398, 12:32 عصر
اگر فقط یکبار و در form load قرار هست مقدار random بگیرید نیازی به نوشتن روتین جداگانه نیست و میتونین در همون رخداد کدش رو بگذارین.

ولی چون توابعی مثل همین برگردوندن یک مقدار random در یک بازه، معمولا پرکاربرد هستن بهتره اونها رو در یک ماجول جداگانه تعریف کنین تا در تمام برنامه در دسترس باشن.

Private Sub Form_Load()
RandomSentence
End Sub
Sub RandomSentence()
Sentences = Sentences.ItemData(RndX(0, Me.Sentences.ListCount - 1))
End Sub
Public Function RndX(MIN As Long, Max As Long) As Long
Randomize Timer
RndX = Int((Max - MIN + 1) * Rnd + MIN)
End Function

mazoolagh
یک شنبه 11 اسفند 1398, 12:45 عصر
در دیتابیس پیوست کمبو sentences رو مخفی نکردم تا طرز کارش رو متوجه بشین
همینجور یک باتن roll هم گذاشتم تا بتونین random بودن رو تست کنین.

mazoolagh
یک شنبه 11 اسفند 1398, 12:52 عصر
پس از گفتار:

1- قرار بود فقط نمونه ساده شده برنامه رو بگذارین - یعنی تمام ابجکت ها و کدهای غیرضروری برداشته بشن تا بشه مشکل رو دید؛
بخصوص کدهای مزاحم autoexec!

2- در برنامه ای که آپلود کردین یک سری تصاویر هست که باعث میشه حتی پس از compact کردن حجمش بالا بمونه - من این تصاویر رو حذف کردم ولی به یاد داشته باشین برای همه در دسترس هست!

شاگرد آرام
یک شنبه 11 اسفند 1398, 13:03 عصر
دوست عزیز تابع رو در یک ماژول جداگانه تعریف کنید . احتمالا تابع رو در فرم تعریف کردین.


http://h63.ir

Milad_ATM
دوشنبه 12 اسفند 1398, 14:17 عصر
ممنون از راهنمایی کاملتون
به این مشکل برخوردم و نمیدونم ایراد از کجاست!
151412

151413

mazoolagh
سه شنبه 13 اسفند 1398, 09:10 صبح
ممنون از راهنمایی کاملتون
به این مشکل برخوردم و نمیدونم ایراد از کجاست!
151412

151413

بنظر میاد مشکلی در آفیس داشته باشین ،
یک احتمال این هست که آفیس 64 بیت یا ورژن دیگه ای جز 2013 داشته باشین و کامپایلر اون به ترکیب rnd (که singleهست) و min-max (که long هستن) حساس باشه.
یکی از دو راه زیر رو تست کنین:
1- تابع Rndx رو حذف و کدش رو مستقیما استفاده کنید.
2- مقادیر min-max رو single یا integer بگذارین.

ariayekta
چهارشنبه 21 اسفند 1398, 23:19 عصر
بجای ستاره % روتست کن

mazoolagh
شنبه 24 اسفند 1398, 10:51 صبح
اینجا * اپراتور ضرب هست!
اون % برای like در شرط sql به کار میره و کلا بی ارتباط به این داستان.

lawyerlaw.ir
شنبه 24 اسفند 1398, 18:49 عصر
وکالت امور قرارداد های تجاری
هر رابطه ی تجاری اعم از فروش، اجاره، حمل و نقل، نمایندگی انحصاری و … با تنظیم یک قرارداد آغاز میگردد در قرارداد ها چهارچوب روابط کاری اشخاص مشخص گردیده و تعهدات آنها تعیین میگردد نحوه تنظیم قرارداد و اشراف بر آن می تواند شما را از مراجعات مکرر به محاکم قضایی بی نیاز نماید.


با عنایت به آنکه در قانون مدنی عقود به دو دسته عقود معین و عقود غیر معین تقسیم میشوند بسیار حائز اهمیت است که با توجه به نوع قرارداد بدانیم که قرارداد تنظیمی جزء کدام دسته از عقود محسوب میشود چرا که عقود معین غالبا دارای چهارچوب مشخصی از سوی قانونگذار می باشد که گاها توافق بر خلاف آن ممکن نیست از اینرو اشراف بر مبانی قانونی می تواند قالب عقود و قرارداد ها را تعیین نماید.


از اینرو گام اول در امور قرارداد ها تهیه و تنظیم یک قرارداد خود با شرایط درست و منصفانه و مطابق استاندارد های قانونی می باشد حال شاید برخی بگویند بسیار دیده شده است که یک قرارداد بسیار خوب تنظیم گردیده است اما باز هم طرفین آن دچار مشکل گردیده و به دادگاه مراجعه نموده اند پاسخ ما به آنها این است که تنظیم یک قرارداد خوب به معنای تضمین روابط خوب و حسنه فی مابین طرفین قراراداد نمی باشد چراکه عدول هر یک از طرفین قرارداد از تعهدات قراردادی خوب سبب بروز اصطکاک و گاه مراجعه به محاکم دادگستری می شود لیکن چنانچه شما با یک قرارداد درست به دادگاه مراجعه نمایید بسیار سریع تر و بهتر مسائل شما حل و فصل خواهد شد ما مفتخریم که در تنظیم قراردادها حقوقی و تجاری پیشرو بوده و بهترین خدمات را در حوزه تنظیم قرارداد به شما ارایه خواهیم نمود.
https://lawyerlaw.ir/
https://bit.ly/2WfmxgT

Ali_Fallah
شنبه 24 اسفند 1398, 21:53 عصر
الان باید به متن ارسالی شما چه پاسخی بدیم
امور قراردادها !!!؟؟؟