DataMacro در جداول لینک شده
1- برای آموزش دیتامکرو تاپیک زیر رو ببینید:
آموزش: آموزش DataMacro (barnamenevis.org)
2- در سمت FrontEnd به Named Macro ها در سمت BackEnd دسترسی ندارین، بنابراین باید کارها رو در سمت FE انجام بدین.
3- اگر در دیتامکروها از User Defined Functions استفاده کرده باشین، بعد از split کردن جدول باید اون توابع رو در سمت FE نگه دارین تا مکرو بهش دسترسی داشته باشه.
توابعی که در BE باشند فقط در همونجا قابل دسترس هستن و چون بطور منطقی دسترسی مستقیم کاربر به BE بسته است، نیازی به اونها ندارید مگر زمانی که خودتون مستقیم با دیتا در BE سروکار داشته باشین.
1 ضمیمه
نقل قول: DataMacro در جداول لینک شده
در مثالی که آورده میشه یک جدول به شکل زیر داریم:
ضمیمه 152828
که فیلدهای Created , LastEdit , Row باید توسط دیتامکرو پر بشن.
فیلد Row از نوع شمارنده است و باید با اضافه شدن هر رکورد جدید خودکار محاسبه بشه و در صورت حذف هر رکورد تمامی Rowهای بعد از اون باید خودکار اصلاح بشن.
فیلد Created زمان insert رکورد با تاریخ و ساعت فعلی پر میشه.
فیلد LastEdit زمان ویرایش فیلد Comments رو نشون میده.
نقل قول: DataMacro در جداول لینک شده
قبل از هر چیز یک تابع برای محاسبه خودکار Row مینویسیم:
Public Function MaxRow() As Long
MaxRow = Nz(DMax("Row", "Comments"), 0)
End Function
توابع public سمت FrontEnd
فراموش نمیکنیم که توابعی که توسط دیتامکرو نیاز است باید در سمت Frontend هم باشن:
Option Compare Database
Option Explicit
Public Function MaxRow() As Long
MaxRow = Nz(DMax("Row", "Comments"), 0)
End Function
Public Function SetEcho(x As Boolean)
Echo x
End Function