مشاهده دست آورد نظرسنجی: مطالب در چه سطحی است و مفید است؟

رای دهنده
12. شما نمی توانید در این رای گیری رای بدهید
  • مفید

    12 100.00%
  • غیر مفید و تکراری

    0 0%
نمایش نتایج 1 تا 25 از 25

نام تاپیک: کلک های Acess

  1. #1
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    Thumbs up کلک های Acess

    در این تاپیک سعی میکنم کلک های خاصی ( روش ها ) رو آموزش بدم که هم در بهتر شدن و کم تر شدن خطا ها و سریع تر شدن برنامه کمک کنه

    امید وارم همه مشارکت کنن

    لیست موارد

    1-
    DataMacro
    https://barnamenevis.org/showthread.p...=1#post2356413

    2-پیام صوتی در اکسس
    https://barnamenevis.org/showthread.p...=1#post2357232



    آخرین ویرایش به وسیله AbbasSediqi : جمعه 20 اسفند 1395 در 11:33 صبح

  2. #2
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    اولین آموزش که بسیار دیدم باعث سردرگمی تازه کار ها و پرحجم شدن کد نویسی حتی بعضی از کهنه کار ها میشه

    5 مقوله است که همه رو میشه به راحتی انجام داد


    Insert , Update (Edit) , Delete در یک Table و مقوله پنجم هم همین موارد در Table دیگریست


    - مایکروسافت از Access 2007 به بعد قابلیت قدیمی ای رو که البته در اکسس تازگی داشت به فایل هاش اضافه کرد



    این قابلیت همون SQLFunction هستش که در اکسس به عنوان DataMacro شناخته میشه


    - بسیار هم قدرتمنده و ضریب خطای کمی داره و کد نویسی رو در این موارد بسیار کم میکنه



    و اما Datamacro کجاست

    1.jpg

    1.jpg

    دیتا ماکرو رو از اینجا میتونید ایجاد کنید

    اما توضیح :


    AfterInsert : همون طور که از اسمش مشخصه این حالت کارش اینه که بعد از هر ایجاد رکورد جدید بیاد و ماکرو ای رو که براش تعریف کردید اجرا کنه
    AfterUpdate: همون طور که از اسمش مشخصه این حالت کارش اینه که بعد از هر تغییر در رکورد های قبلی بیاد و ماکرو ای رو که براش تعریف کردید اجرا کنه
    AfterDelete: همون طور که از اسمش مشخصه این حالت کارش اینه که بعد از هر حذف رکورد بیاد و ماکرو ای رو که براش تعریف کردید اجرا کنه


    BeforeDelete : همون طور که از اسمش مشخصه این حالت کارش اینه که قبل از هر حذف رکورد بیاد و ماکرو ای رو که براش تعریف کردید اجرا کنه


    و اما BeforeChange : کارش اینه که قبل از هر تغییری بیاد و ماکرو ای رو که براش تعریف کردید رو اجرا کنه

    خوب بریم سراغ ایجاد یه دیتا ماکرو :

    برای همین روی Create Named Macro کلیک کنید

    1.jpg

    بعد از این وارد منوی دیتا ماکرو خواهید شد این منو به این شکله

    1.jpg
    آخرین ویرایش به وسیله AbbasSediqi : پنج شنبه 07 بهمن 1395 در 19:02 عصر

  3. #3
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    همون طور که تصویر بالا مشاهه میکنید دارای سه بخشه

    بخش بالایی سمت چپ که مربوطه Parameters

    بخش پایینب سمت چپ مربوطه به ماکرو

    بخش سمت راست منوی درختی همون سمت چپ پایینه


    از اینجا به بعد خیلی مهم میشه

    Parameters : پارامتر ها همون دریافتی های دیتا ماکرو هستن یعنی برای اینکه به دیتا ماکرو بتونید چیزی ارسال کنید باید براش پارامتر تعیین کنید و بعد با استفاده از پارمترهای تعیین شده برای دیتا ماکرو هرچی خواستید ارسال کنید

    به زبون ساده تر مثل یه متغییر میمونه برای یک فانکشن که باید برای اینکه فانکشن کارش رو انجام بده متغغیر رو بهش بدید


    خوب حالا بر روی CeateParameter در قسمت سمت چپ بالا کلیک کنید


    1.jpg


    بعد از کلیک کردن یک پارامتر ساخته میشه

    1.jpg

    هر پارامتر شامل دو بخشه

    اول اسم
    دوم توضیح که برای خودتون که بدونید این پارامتر چیه

  4. #4
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    بعد از ساختن یک پارامتر حالا نوبت ایجاد یک Action هستش

    فرض کنید میخواهید یک رکورد جدید ایجاد کنید ولی میخواهید تکراری نباشه

    من تو این تیبل دو تا Field بیشت ندارم الان ID و Name

    فرض کنید میخواهیم یک نام جدید ایجاد کنیم ولی تکراری نباشه

    خوب برای این کار به ترتیب این کار ها رو انجام میدیم

    از منوی Action باید LookUp A Record In رو انتخاب کنید

    1 (2).jpg

    بعد از انتخاب این Action مثل شکل زیر میشه

    1.jpg

    خوب میریم سراغ شماره 1 :

    Required : در اینجا مشخص میکنیم در کدوم Table این کار انجام بشه

    نکته بسیار مهم :

    مهم نیست در کدوم تیبل در حال ساخت دیتا ماکرو هستید

    چون در هر کاری در دیتا ماکرو باید تیبل هدف رو مشخص کنید

    خوب من یه تیبل بیشتر ندارم و اون رو انتخاب میکنم

    خوب میریم سراغ شماره 2 :

    در اینجا بهش میگیم بگرد ببین داده ای شبیه به این داری

    خوب به این شکل وارد مکنیم


    [Name]=[NameParameter]


    خوب حالا میریم سراغ شماره 3 :

    یعنی زمانی اجرا میشه که داده تکراری ای باشه

    خوب اول بهش میگم یه ارور نشون بده

    بنابراین RaiseError رو از منوی Action همین Lookup انتخاب کنید

    دقت کیند به عکس

    یه شماره در Error Number وارد کنید ودر Error Description متنی رو که میخواهید نمایش بده

    بعد از این از همون منوی Action باید StopMacro رو انتخاب کنید

    1.jpg

    خوب بعدش از منوی Action بعدی مثل عکس زیر CreateRecord رو انتخاب کنید

    1.jpg

    بعد از انتخاب باز ازتون تیبل هدف رو میخواد که بهش میدیم

    اما بعد باید از منوی Action همین SetField رو انتخاب کنید

    1.jpg

    حالا در مقابل Name نام Field رو بنویسید که اینجا میشه [Name]
    در مقابل Value هم نام Parameter رو که ایجاد کردید بنویسید که میشه [NameParameter]

    بعذ اگه خواستید یه پیام هم مثل قبل برای ایجاد کنید

    1.jpg

    خوب ابتدای کار تموم شد و حالا ذخیره میکنیم و براش یه اسم در نظر میگیریم

    من اسمش رو میذارم Insert
    آخرین ویرایش به وسیله AbbasSediqi : پنج شنبه 07 بهمن 1395 در 18:57 عصر

  5. #5
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    خوب حالا میریم سراغ فراخواین این Datamacro

    اول یه فرم بسازید و در اون یه Textbox ایجاد کنید و Button

    بعد بر روی OnClick این button کلیک کرده و MacroBuilder رو انتخاب کنید

    در منوی ماکرو از منوی Action باید Run DataMacro رو انتخاب کنید

    از منوی کشوی مقابل MacroName ماکرو ساخته شده رو انتخاب کنید

    میبینید که پارامتر ساخته شده رو ایجاد کرد و ازتون درخواست میکنه

    در مقابل پارامتر NameParameter هم [Text2] که در اینجا سام Textbox ساخته شده منه رو انتخاب میکنیم

    حالا فراخوانی شد

    اما نکته در هنگام استفاده از OnRaiseError در دیتا ماکرو باید کار زیر رو هم انجام بدید

    بر روی OnError فرم کلیک کنید و MacroBuilder رو انتخاب کنید

    بعد از منوی Action باید If رو انتخاب کنید

    در مقابل if بنویسید
    Error(1234) & Error(1)
    که یعنی اگر ارور شماره 1234 و ارور 1 که من به عنوان شماره در دیتا ماکرو قرا دادم بوجود اومد چی کار کنه

    بعد از منوی کشویی زیر if باید onerror رو انتخاب و فقط از منوی کشویی مقابل Go to آیتم next رو انتخاب کنید و بعد ذخیره کنید


    حالا تکمیل شد

    تست کنید


    نمونه بعدی به زودی

    خیلی سخته خدایی ریز به ریز تشریح کردنش

  6. #6
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    این هم نمونه کار
    فایل های ضمیمه فایل های ضمیمه

  7. #7
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    و اما عزیزانی که در محیط vba برنامه نویسی میکنن در فراخوانی DataMacro ممکن دچار مشکل بشن

    فراخوانی دیتا ماکرو در vba درای دو شرطه

    اول داده ست شده با هر پارامتر باید با نوع داده وارد شده با Field اصلی برابر باشه

    یعنی مثلا اگر فیلدی داشته باشید که از نوع عدد باشه و بعد بخواهید با دیتا ماکرو تغییر یا اضافه کنید بهش باید حتما داده وارد شده عددی باشه

    و اما اگه داده string باشه قضیه فرق میکنه باید قبل و بعد داده """" رو اضافه کنید

    نکته دوم باید قبل از اجرای دیتا ماکرو تمامی پارامتر ها رو هم ست کنید

    برای اینکه ساده تر بشه از این کد استفاده کنید


    Public Function SetDataMacro(DataMacroName As String, Parameters, ParameterValue)
    Dim i As Integer
    i = 0
    For Each Item In Parameters
    If IsNumeric(ParameterValue(i)) = True Then
    DoCmd.SetParameter Item, ParameterValue(i)
    Else
    DoCmd.SetParameter Item, """" & ParameterValue(i) & """"
    End If
    i = i + 1
    Next
    DoCmd.RunDataMacro DataMacroName
    End Function



    . برای فراخواین این فانکش هم باید مقدار رو به صورت Array وارد کنید

    دقت کنید در داده وارد شده باید index پارامتر و ParameterValue باهم برابر باشند

    یعنی اگر پارامتر در Array با Index شماره 0 باشه داده برابر هم باید در ParameterValue دارای Index 0 باشه


    SetDataMacro "Commodity.Update", Array("IDParameters", "AvailableParameters"), _
    Array(Me.cmb_Search.Column(0, Me.cmb_Search.ListIndex), _
    Me.cmb_Available.Value)

  8. #8
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,055

    نقل قول: کلک های Acess

    آموزش بسیار عالی و دقیق
    شبیه مکانیسم trigger در sql هست و کمک کرد (فقط بدلیل نیاز به تریگر) لازم نباشه که به sql کوچ کرد
    همینطور کابوس اکسپورت دیتابیس های sql که از تریگر استفاده میکردن به اکسس رو هم برطرف کرد

  9. #9
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    و اما ترفند بسیار جالب بعدی

    پیام صوتی در اکسس

    Function SMSG(Message As String)
    Dim speaks, speach
    speaks = Message
    Set speach = CreateObject("sapi.spvoice")
    speach.speak speaks
    End Function


    فایل های ضمیمه فایل های ضمیمه

  10. #10
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,055

    نقل قول: کلک های Acess

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

  11. #11
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

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


    با تشکر

  12. #12

    نقل قول: کلک های Acess

    [QUOTE=AbbasSediqi;2357232]و اما ترفند بسیار جالب بعدی

    پیام صوتی در اکسس

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

  13. #13
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    [QUOTE=mosaArabi;2357634]
    نقل قول نوشته شده توسط AbbasSediqi مشاهده تاپیک
    و اما ترفند بسیار جالب بعدی

    پیام صوتی در اکسس

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

    دوست گرامی نمونه قرار داده شد
    فایل های ضمیمه فایل های ضمیمه

  14. #14

    نقل قول: کلک های Acess

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

  15. #15
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    نمونه قرا داده شد
    فایل های ضمیمه فایل های ضمیمه

  16. #16

    نقل قول: کلک های Acess

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

  17. #17
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

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

    نمونه شما اطلاح گردید
    فایل های ضمیمه فایل های ضمیمه

  18. #18

    نقل قول: کلک های Acess

    سپاسگزارم جناب صدیقی.آیا امکان پذیر است که با نمایش نتیجه جستجوی کلمات آن کلمه تلفظ شود؟
    فایل های ضمیمه فایل های ضمیمه

  19. #19
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    نقل قول نوشته شده توسط hada22 مشاهده تاپیک
    سپاسگزارم جناب صدیقی.آیا امکان پذیر است که با نمایش نتیجه جستجوی کلمات آن کلمه تلفظ شود؟

    نمونه اطلاح شد
    فایل های ضمیمه فایل های ضمیمه

  20. #20
    کاربر دائمی آواتار Mehr@ban
    تاریخ عضویت
    آبان 1389
    محل زندگی
    بچه محله امام رضا
    پست
    562

    نقل قول: کلک های Acess

    سلام آقای صدیقی

    ممنون میشم در مورد مواردی که توی تصویر زیر هم هست یه توضیحی بفرمایید

    مخصوصا اون event log که خاصیتش چیه و چطور میشه ازش استفاده کرد؟
    عکس های ضمیمه عکس های ضمیمه

  21. #21
    کاربر دائمی آواتار AbbasSediqi
    تاریخ عضویت
    مهر 1392
    محل زندگی
    تهران
    پست
    409

    نقل قول: کلک های Acess

    نقل قول نوشته شده توسط Mehr@ban مشاهده تاپیک
    سلام آقای صدیقی

    ممنون میشم در مورد مواردی که توی تصویر زیر هم هست یه توضیحی بفرمایید

    مخصوصا اون event log که خاصیتش چیه و چطور میشه ازش استفاده کرد؟

    این ابزار برای اضافه کردن اطلاعات در مورد دیتا ماکرو در USysApplicationLog است

    در اصل برای دیباگینک بدرد میخوره

    لینک توضیح مایکرو سافت

    یا حق

    https://msdn.microsoft.com/en-us/lib.../ff192460.aspx

  22. #22
    کاربر دائمی آواتار Mehr@ban
    تاریخ عضویت
    آبان 1389
    محل زندگی
    بچه محله امام رضا
    پست
    562

    نقل قول: کلک های Acess

    سلام مجدد خدمت مشترکین این تاپیک!

    از آقای صدیقی درخواست دارم تا مجدد این دوره آموزشی کلک های اکسس رو از سر بگیرن و تکمیلش کنند که نکات قابل توجهی رو بهش اشاره میکنند.

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

    اگر فرصتی داشتین ممنون میشم در این موضوع هم مطالبی رو قرار بدین

  23. #23
    کاربر دائمی
    تاریخ عضویت
    آبان 1397
    محل زندگی
    شیراز
    پست
    318

    نقل قول: کلک های Acess

    با سلام
    جناب صدیقی مطالب درج شده عالی بود . لطفا در صورت امکان ادامه دهید ممنون

  24. #24
    کاربر دائمی
    تاریخ عضویت
    آبان 1397
    محل زندگی
    شیراز
    پست
    318

    نقل قول: کلک های Acess

    ممنون از لطف شما
    آخرین ویرایش به وسیله محمد رضا بهبودی : شنبه 24 آذر 1397 در 13:30 عصر

  25. #25
    کاربر دائمی
    تاریخ عضویت
    آبان 1397
    محل زندگی
    شیراز
    پست
    318

    نقل قول: کلک های Acess

    لطفا در مورد پست 36 اگر راه حلی به ذهنتان می رسد راهنمائی بفرمائید ممنون

تاپیک های مشابه

  1. کلک های اقتصادی مارکت ها
    نوشته شده توسط raha_jon در بخش Android Studio
    پاسخ: 7
    آخرین پست: جمعه 21 آذر 1393, 11:46 صبح
  2. نکته های برنامه نویسی
    نوشته شده توسط JavanSoft در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: یک شنبه 14 تیر 1383, 12:24 عصر
  3. آیا می دانید پورت های باز سیستم شما کدامند؟!
    نوشته شده توسط Vahid_Nasiri در بخش امنیت در شبکه
    پاسخ: 5
    آخرین پست: شنبه 24 آبان 1382, 18:22 عصر
  4. دیدن header فایل های dll
    نوشته شده توسط در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 9
    آخرین پست: یک شنبه 18 اسفند 1381, 13:48 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •