ورود

View Full Version : دسترسی به فرم ها



michkadol
شنبه 01 مرداد 1390, 09:33 صبح
با سلام
3 تا سوال
سوال1:
- با اینکه فرمهای کاربر جدید و فرم دسترسی تیک open ندارد ولی باز هم پس از دادن پیغام "عدم مجوز دسترسی" ولی باز هم فرم باز میشود
میخواهم وقتی گزینه open تیک نداشت کاربر نتونه فرم مربوطه رو ببینه
سوال2:
تو فرم usernew تنظیم کردم وقتی کد کاربر در جدول وجود داشته باشه پیغام بده که این کد قبلا ثبت شده و از ادامه جلوگیری کند
ولی اگر در جدول data type رو از نوع number باشه خطای فوق رو نمایش میده
ولی اگر از نوع text باشه پیغام مذکور رو نمیده و فقط از ادامه جلوگیری میکنه
چهکار کنم که نوع فیلد از نوع تکست باشه و پیغام رو هم نمایش بدهد
سوال3
فرم تعریف کاربر unbound چطور میتونم اگه کاربر مجوز اضافه نمودن رو نداره نتونه کاربری رو ثبت کنه

michkadol
شنبه 01 مرداد 1390, 13:55 عصر
دوستان عزیز کسی وقت داره یه نگاهی به این مشکل بیندازه؟؟؟؟؟؟

mehdi_fiz
شنبه 01 مرداد 1390, 20:10 عصر
سلام دوست عزیز
من نمونه فایل شما را با توجه به سوال 1 و 2 اصلاح کردم و متوجه سوال 3 شما هم نشدم
روش محدودیت در دسترسی رو به نظر من یک پیچیدش کردین چون کاربر نهایی که نمی دونه فرم اصلی نام انگلیسیش home است که برای کاربر محدودیت ایجاد کند به نظر من باید برای هر دسته از فرم های مربوط به هم یک فیلد ایجاد کنید و داخل فرم تعریف کاربر برای هر گزینه یک تیک ایجاد کنید و نام فارسی اون رو بنویسید و بعد به صورت 0 و 1 داخل فیلد مورد نظر ذخیره کنید بعد یک تابع کلی ایجاد کنید که عدد رو فراخوانی کنه اگه 1 بود یعنی اجازه دسترسی و اگه 0 عدم دسترسی انشا الله که متوجه شده باشید
موفق باشید

hasanr
یک شنبه 02 مرداد 1390, 02:20 صبح
سلام
سوالتون رو در دو جای مختلف مطرح کردین
با عرض معذرت بهتر بود در همون تاپیک قبلی ( تعریف کاربر با سطح دسترسی متفاوت در اکسس (http://barnamenevis.org/showthread.php?74453-%D8%AA%D8%B9%D8%B1%DB%8C%D9%81-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%D9%85%D8%AA%D9%81%D8%A7%D9%88%D8%AA-%D8%AF%D8%B1-%D8%A7%DA%A9%D8%B3%D8%B3) ) ادامه میدادین که مطالب مرتبط به هم ، یکجا باشند

michkadol
یک شنبه 02 مرداد 1390, 08:13 صبح
سلام
سوالتون رو در دو جای مختلف مطرح کردین
با عرض معذرت بهتر بود در همون تاپیک قبلی ( تعریف کاربر با سطح دسترسی متفاوت در اکسس (http://barnamenevis.org/showthread.php?74453-%D8%AA%D8%B9%D8%B1%DB%8C%D9%81-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%D9%85%D8%AA%D9%81%D8%A7%D9%88%D8%AA-%D8%AF%D8%B1-%D8%A7%DA%A9%D8%B3%D8%B3) ) ادامه میدادین که مطالب مرتبط به هم ، یکجا باشند

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

michkadol
یک شنبه 02 مرداد 1390, 08:19 صبح
سلام دوست عزیز mehdi_fiz
با تشکر از وقتی که گذاشتین
فقط یک مشکل که وجود داره اینه که وقتی کاربر دسترسی نداره فرم باز میشه و پیام عدم دسترسی میده و بعد دوباره با زدن دکمه ok پیام، فرم بسته میشه
چه کار باید کرد که اصلا فرم دیده نشه فقط پیام عدم دسترسی به کاربر داده بشه؟

mehdi_fiz
دوشنبه 03 مرداد 1390, 00:34 صبح
سلام دوست عزیز
شما باید این کنترل ها رو داخل یک ماژول عمومی انجام بدید و مقدار برگشتی به صورت بالن باشد که در صورتی که true بود مثلا فرم باز شود و از این کد در پشت کلید فراخوانی فرم استفاده شود
موفق باشید

michkadol
سه شنبه 04 مرداد 1390, 07:37 صبح
سلام دوست عزیز
شما باید این کنترل ها رو داخل یک ماژول عمومی انجام بدید و مقدار برگشتی به صورت بالن باشد که در صورتی که true بود مثلا فرم باز شود و از این کد در پشت کلید فراخوانی فرم استفاده شود
موفق باشید

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

michkadol
چهارشنبه 05 مرداد 1390, 09:03 صبح
سلام دوستان نظری ندارند؟

michkadol
چهارشنبه 05 مرداد 1390, 13:44 عصر
همچنان منتظر خواهم بود

payman_xxp
شنبه 08 مرداد 1390, 02:00 صبح
همچنان منتظر خواهم بود
سلام
برای چنین کاری دوست من:

بعد از گرفتن یوزر و رمز ورود کاربر، با توجه به سطح دسترسی کاربر، منو یا زیر منویی که کاربر دسترسی نداره رو غیرفعال کنید( روش صحیح و اصولی)

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

michkadol
شنبه 08 مرداد 1390, 07:24 صبح
سلام
برای چنین کاری دوست من:

بعد از گرفتن یوزر و رمز ورود کاربر، با توجه به سطح دسترسی کاربر، منو یا زیر منویی که کاربر دسترسی نداره رو غیرفعال کنید( روش صحیح و اصولی)

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

چطوری قبل از لود شدن فرم بررسی صورت بگیره؟
من تو 2 تا event --on load و همچینین on open کدها رو گذاشتم تا بررسی صورت بگیره اما در هر دو ابتدا فرم باز میشه بعد بررسی صورت میگیره
چه کار کنم که قبل از اینکه فرم باز بشه این بررسی صورت بگیره
یا چطور میتونم باز شدن فرم را نگه دارم تا بررسی بشه که کاربر مجوز ورود داره یا نه
73074
73073

payman_xxp
شنبه 08 مرداد 1390, 09:16 صبح
سلام
پس روش اصولی رو بیخیال شدید!؟

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

michkadol
شنبه 08 مرداد 1390, 09:29 صبح
چطور میتونم واسه ایتم های منوبار custom1 شرط بزارم؟
یا نحوه فلگ رو اکه ممکنه توضیح بدین
ممنونم

dadsara
شنبه 08 مرداد 1390, 09:49 صبح
سلام
دوست عزیز
1- چرا در وسط کار نسبت به ایجاد یک تاپیک دیگر اقدام نموده اید
2- چه بسا بعضی از دوستان در همان تاپیک قبلی موضوع را پیگیری می کنند
3- جهت دسترسی به فیلد و فرم بایستی اقدامات زیر را بنظر بنده انجام دهید
1-3- ابتدا از جداول شروع کنید به این ترتیب که یک جدول برای کاربران
2-3 - یک جدول جهت نام فیلدها یا به عبارت دیگر تمام آبجکتهای موجود روی فرم از قبیل لیست باکسها ، کومبوها - کلید ذخیره ، کلید حذف و . . . و نام فرم و یک فیلد کلید
3-3- یک جدول جهت اختصاص یا عدم اختصاص فیلد مورد نظر به کاربر
تا اینجا کار طراحی جداول به پایان می رسد این مراحل را انجام دهید و در تاپیک خود قرار دهید تا بعد

payman_xxp
شنبه 08 مرداد 1390, 10:28 صبح
چطور میتونم واسه ایتم های منوبار custom1 شرط بزارم؟

شرط در فرم جدید بررسی دسترسی باید کنترل بشه


یا نحوه فلگ رو اکه ممکنه توضیح بدین

در پراپرتی custom command های خودتون از tag میتونید استفاده کنید.
موفق باشید.

michkadol
شنبه 08 مرداد 1390, 10:31 صبح
سلام
دوست عزیز
1- چرا در وسط کار نسبت به ایجاد یک تاپیک دیگر اقدام نموده اید
2- چه بسا بعضی از دوستان در همان تاپیک قبلی موضوع را پیگیری می کنند
3- جهت دسترسی به فیلد و فرم بایستی اقدامات زیر را بنظر بنده انجام دهید
1-3- ابتدا از جداول شروع کنید به این ترتیب که یک جدول برای کاربران
2-3 - یک جدول جهت نام فیلدها یا به عبارت دیگر تمام آبجکتهای موجود روی فرم از قبیل لیست باکسها ، کومبوها - کلید ذخیره ، کلید حذف و . . . و نام فرم و یک فیلد کلید
3-3- یک جدول جهت اختصاص یا عدم اختصاص فیلد مورد نظر به کاربر
تا اینجا کار طراحی جداول به پایان می رسد این مراحل را انجام دهید و در تاپیک خود قرار دهید تا بعد
با سلام
1-شرمنده ام بابت این که یک تاپیک جدید رو شروع کردم
چون در تاپیک قبلی کسی پاسخی نداد مجبور شدم در قابل جدیدی مطرح کنم

2- جداولی که میگین رو قبلا اماده کرده بودم(از نمونه های دیگر دوستان استفاده کردم)
نمونه زیر

michkadol
یک شنبه 09 مرداد 1390, 07:56 صبح
شرط در فرم جدید بررسی دسترسی باید کنترل بشه

در پراپرتی custom command های خودتون از tag میتونید استفاده کنید.
موفق باشید.

اگه وقتش رو دارین لطفا زحمت بکشیدرو نمونه واسم انجام بدین
در مورد تگ هم اگه وقت داشتین توضیح مختصری بدین که چه کاربردی دره و چطوری باید ازش استفاده کرد
متشکرم

michkadol
یک شنبه 09 مرداد 1390, 14:13 عصر
اقا کسی نبود این مشکل پست 12 رو حل کنه؟

michkadol
دوشنبه 10 مرداد 1390, 12:36 عصر
اقا کسی نبود این مشکل پست 12 رو حل کنه؟

اساتید محترم

michkadol
شنبه 15 مرداد 1390, 12:29 عصر
دوستان گرامی نمونه رو خودم تکمیلش کردم

Younestalebi
یک شنبه 16 مرداد 1390, 08:54 صبح
تنها كاري كه بايد انجام بدين جاي پيام و بستن فرم رو توي قسمت onopen جابجا كنين!!!!
به همين سادگي!!!

Younestalebi
سه شنبه 18 مرداد 1390, 13:12 عصر
شما بايد اول فرم را ببنديد بعد پيغام رو صادر كنيد

michkadol
چهارشنبه 19 مرداد 1390, 09:22 صبح
شما بايد اول فرم را ببنديد بعد پيغام رو صادر كنيد

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