کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی
کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی

تابعی برای جمع آوری مقدار از رکوردست






Field2.IsComplex DAO.Property :

مقدار True(عددی غیر صفر) یا False(برابرصفر) را که نشان دهنده وجود یک دیتا تایپ چند مقداری است را باز می گرداند.... ( multi-valued data type )


Null=No Valid Data

named-argument


Join:

اگرExpression خالی باشد Set Result=Null

Static Values As New Collection

Set Records=CurrentDb.OpenRecordSet....

(dbOpenSnapShot)

CollValues Records , Delimiter , Result

Values.Add Result

Join=Result




CollValues:


ByRef Rec As DAO.RecordSet

ByRef Delimiter

ByRef Result





Dim SubRec As DAO.RecordSet

Dim Value As Variant

'If Rec.RecordCount>0 Then

While Not Rec.EOF

      Value=Rec.Field(0).Value

          If Rec.Fields(0).IsComplex Then

                 Set SubRec=Rec.Fields(0).Value

                 CollValues SubRec , Delimiter , Result

         ElseIf Nz(Value)="" Then

         ElseIf IsEmpty(Result)

              Result=Value

         Else

              Result=Result & Delimiter & Value

         End If

Rec.MoveNext

Wend

'Else

'Result=Null

'End If



















Expression,Domain,Criteria : 

Const SqlMask As String = "Select {0} From {1} {2}"
Const SqlLead As String = "Select "
Const SubMask As String = "({0}) As T"

Const FilterMask As String = "Where {0}"

Dim Sql As String
Dim SqlSub As String
Dim Filter As String


اگر Expression خالی باشد باید فکر چاره ای باشید و همینطور آرگومان های بعدی


اگر Select را در Domain( که نام جدول یا کوئری و یا زبان اس کیو ال ممکن است داخلش نوشته شده باشد ) یافت نتیجتا Domain یک عبارت اس کیو ال است.
If InStr(1, LTrim(Domain), SqlLead, vbTextCompare) = 1 Then 

در اینجا اگر در آرگومان Domain عبارت Select را بیابد متغیر SqlSub می شود جایگزین کردن Domain با {0}

SqlSub = Replace(SubMask, "{0}", Domain)
Else

در غیر اینصورت Domain نام جدول یا کوئری است.

SqlSub = Domain

End If
اگر آرگومان Criteria پر باشد 
If Trim(Criteria) <> "" Then 
ساخت یک شرط را خواهیم داشت . که عبارت داخل Criteria را بجای {0} در FilterMask قرار خواهد داد.
Filter = Replace(FilterMask, "{0}", Criteria)
End If 
حالا ساخت نهایی Sql که باتابع Replace تودرتو یا Nested Replace انجام گرفته و اگر اشتباهی در نوشتار نداشته باشیم خروجی یک عبارت Sql درست خواهد بود.
Sql = Replace(Replace(Replace(SqlMask, "{0}", Expression), "{1}", SqlSub), "{2}", Filter) 

یعنی درواقع در Replace های بالا جای ۲ ۱ ۰ عبارت یا رشته هایی که داخل آرگومان ها هستند  قرار داده شدِس.


Example : 


Expression="[First Name] & ' ' & [Last Name] & '<' & [Email Address] & '>'"

Domain="Tbl1"

Criteria="[Job]='" & [Job] & "'"


Change To Sql :


"Select [First Name] & ' ' [Last Name] & '<' & [Email Address] & '>' From Tbl1 Where [Job]=' & [Job] & '"



با قرار دادن Optional قبل از آرگومان ها می شود آنها را در تابع اختیاری کرد نه اجباری ( Required ).



وقتی دیتا تایپ فیلدی عددی نیست مثل نام بای  از تک کوتیشن بین آنها استفاده کنیم : 

"FirstName='" & Variable1 & "'"

اگر بنویسید :

"FirstName=" & Variable1 & ""

قطعا دچار خطا خواهید شد ، برای دیتا تایپ عددی نیازی به قرار دادن تک کوتیشن ها ندارید.









multivalued field چیست





زمان کلیک روی فلش  کمبوباکس چند انتخابی ، چک باکس ها ظاهر می شوند تا انتخاب های شما را نمایش دهند.



A multivalued field combo box


می توان موارد در فهرست را تیک زد یا تیک را برداشت سپس با فشردن کلید OK ذخیره موارد انتخابی را انجام داد.موارد انتخاب شده در multivalued field نگهداری شده و زمان نمایش با کاما از هم جدا می شوند.( بصورت پیش فرض ) 


A multivalued field with values separated by a comma


ایده پشت این فیلدهای دارای چند مقدار این است که پشتیبانی از مواردی را که می خواهید بیش از یک گزینه را انتخاب و ذخیره کنید ، بدون نیاز به ایجاد طراحی پایگاه داده پیشرفته تر ، آسان می کند. در پشت صحنه ، Access این کار را انجام می دهد ، بطور خودکارداده ها را جدا می کند و دوباره آن ها را کنار هم می آورد تا مقادیر را در یک فیلد نشان دهد . یک فیلد چند مقداری Access مدل یک رابط چند به چند است.



مهم : زمان انتقال از پایگاه داده اکسس به سرور Sql ، این فیلد چندمقداری در Sql به یک فیلد ntext که حاوی مجموعه ای از مقادیر محدود شده است تبدیل می شود . از آنجائیکه Sql Server  از یک نوع داده چند مقداری که یک رابطه چند به چند را مدل می کند پشتیبانی نمی کند ، ممکن است به کار طراحی و تبدیلی اضافی نیاز باشد.



حذف یک multivalued field 

مهم :

 زمان حذف فیلد چند مقداری که حاوی داده است ، آن داده بصورت دائم از دست می رود و نمی توان آنرا undo کرد . به این دلیل بایستی قبل از حذف هر فیلد از جدولی یا سایر اجزاء پایگاه داده بکاپ  ( پشتیبان ) گرفت.



فیلدهای چند مقداری به عنوان اشیاء Recordset در DAO نشان داده می شوند. مجموعه رکوردهای ( Recordset ) یک فیلد ، فرزند مجموعه رکوردهای جدولی است که حاوی فیلد multivalued است . برای نمونه سازی مجموعه رکوردهای فرزند ( Child ) از ویژگی Value فیلد multivalued ( چند مقداری ) استفاده بُنمائید.


Set rsParent=....openrecordset("Tasks")

Set  rsChild=rsParent!assignedto.value

loop in rschild and finish










مهرنوش طوسی ، باوان در نون.خ ۴



صفحه شبکه نسیم ۱۳ فروردین ۱۴۰۲ ( البته یکشنبه ) عدد ۵ و ۱۲ کجای تقویمه 









وقوع زمین لرزه در ایران سال ۱۴۰۲ ؟!!!







در کتاب های تاریخ نوشته شده است: آغا محمد خان ( قجری ) در سن یازده سالگی به دلیل اینکه چهره جذابی داشت توسط خواجگان حرمسرای عادلشاه - حاکم مشهد- در حال معاشقه با یکی از همسران وی دیده شد و به دستور عادلشاه که از بستگان محمود افغان بود - به روایتی پسر عموی محمود افعان بود - اخته گردید.



۱۶ فروردین ۱۴۰۲ : خودکشی یا قتل ؟!!!


مرکز اطلاع‌رسانی پلیس گیلان ضمن ابراز تاسف و تسلیت به خانواده مرحوم "کیومرث پوراحمد" و اهالی هنر و سینمای کشور تصریح کرده است که مشروح رخداد را پس از بررسی‌ کارآگاهان پلیس و کسب نتیجه به اطلاع‌ همگان می رساند.
دادستان عمومی و انقلاب مرکز گیلان هم با تایید خبر فوت کیومرث پوراحمد گفت: به محض دریافت گزارش، بازپرس ویژه قتل در محل حاضر شد و با بررسی های اولیه نظر بر خودکشی این کارگردان سینما داده شد که واکاوی جزئیات، مستلزم رسیدگی دقیق قضایی می باشد.

سید مهدی فلاح میری عنوان کرد: مرحوم کیومرث پوراحمد ساعت یک بامداد روز چهارشنبه مورخ ۱۴۰۲/۱/۱۶ در یکی از واحدهای دهکده ساحلی انزلی دار فانی را وداع گفت.
دادستان مرکز استان در ادامه اظهار کرد: درحال حاضرجسد به پزشکی قانونی انتقال داده شد تا علت تامه مرگ بررسی و پس از آن خبرتکمیلی متعاقبا اطلاع رسانی می شود.


به گزارش ایسنا، سید مهدی فلاح میری دادستان عمومی و انقلاب مرکز استان با تایید خبر فوت کیومرث پور احمد گفت: به محض دریافت گزارش، بازپرس ویژه قتل در محل حاضر شد و با بررسی‌های اولیه نظر بر خودکشی این کارگردان سینما داشتند که واکاوی جزئیات، مستلزم رسیدگی دقیق قضایی است.



* تعهدات سازمان در قبال بیمه‌شدگان اختیاری

کمک‌هزینه ازدواج،ازکارافتادگی جزئی،غرامت دستمزد ایام بیماری و بارداری و بیمه بیکاری شامل بیمه‌شدگان اختیاری نمی‌شود؛زیرا این بیمه‌شدگان دارای کارفرما نیستند همچنین در کارگاه‌های مشمول قانون کار اشتغال ندارند و خود مستقیما خواهان ادامه بیمه به طور اختیاری هستند.



تصاویری از لانا‌ دل‌ ری، خواننده و ترانه‌سرای معروف آمریکایی در حال گرفتن غذای ایرانی از رستوران تهران در لس‌آنجلس





فروردین ۱۴۰۲ و اتاق سیگار فقط مخصوص شاعران : 

دوست سپاه ولی امری ما را به سمت تجمع اهل دخان راهنمایی می‌کند. چند قدم دورتر از سالن افطار، در را باز کرده بودند و پشت آن چند تا میز، چند تا بسته سیگار، چند تا فندک و چند تا جاسیگاری فراهم کرده بودند. کسانی که اهل دود بودند، بی درنگ به اینجا شتافته بودند و چشم‌شان از دیدن این پذیرایی جانانه رنگی شده بود. از کسی که پلاستیک سیگارها دستش بود می‌پرسم این ماجرا مال هر سال است؟ با خنده می‌گوید بله. هرسال خودمان انواع سیگارها را تهیه می‌کنیم، می‌آوریم و خودمان هم جمع می‌کنیم. او هم تأکید می‌کند که این اتفاق فقط برای دیدار شاعران رقم می‌خورد. بعد هم به شوخی می‌گوید اگر کم و کسری دارید بگویید! یکی دو نفر هم شوخی‌شان گل می‌کنند و اسم دو تا برند مشهور را می‌برند. دوست‌مان با جدیت زیادی توضیح می‌دهد که می‌خواستم بگیرم، ولی تمام کرده بود! خب چرا از خودمان پنهان کنیم؟ شاعران سیگاری کم نیستند. همه شاعران سیگاری نیستند، ولی در یک دیدار چندساعته و چند صد نفری، طبیعی است که تعدادی از آنها سیگاری هستند و نیاز به سیگار دارند! فقط از رهبری برمی‌آید که تا این حد حواسش به شاعران باشد. وگرنه بیت رهبری کجا و سیگار کجا؟






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

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




تصویر هنرپیشه های ایرانی در کانادا؟!!!




۲۱ دانه سیر و ۷ عدد لیمو سنگی (لیمو ترش بزرگ ) را با مخلوط کن میکس کرده و یک لیتر آب ( ۴ لیوان ) به آن اضافه کنید سپس روی شعله ملایم تا ۴۸ درجه برسانید ، سپس اجازه دهید ترکیب سرد شود . آنرا در یخچال نگهداری کنید و هر شب بعد از شام یک استکان به مدت ۲۰ شب میل نمایید
بعد از شب بیستم یک هفته وقفه بیندازید و پس از گذشت یک هفته همین پروسه را به مدت ۲۰ شب دیگر تکرار کنید اگر خواستید این درمان را دو باره انجام بدهید باید پس از یک سال اقدام نمایید .
تمام گرفتگی رگ ها در سراسر بدن بخصوص قلب باز می شود و چربی ها ی درون رگ ها می سوزد .
این درمان برای همه افراد حتی کسانی که مشکل حاد ندارند نیز توصیه می شود.
کسانی که طبق تشخیص پزشک به عمل جراحی نیاز دارند بهتر است قبل از اقدام به عمل یک بار این شیوه را امتحان کنند شاید پس از آن نیازی به عمل نباشد.