خاطرات فنی من

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

سعی می کنم مطالب برای دیگران هم قابل استفاده باشند اما به دلیل کمی وقت نمی توانم زیاد نگران نگارش و چینش متن باشم

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

اما نیاز شما سر جای خودش باقیست.



یه عنوان یک Workaround (که نمی دانم ترجمه فارسی اش چه می شود) برای گروههایی که زیر 10 عضو دارند می توانید از این راه استفاده کنید:
در infopath روی فرمتان یک فیلد text تعریف کنید برای نگه داری از نام کاربر جاری. اسمش را مثلا بگذارید currentUserName. و یک متغیر Yes/No به نام IsGroupMember
یک قانون برای هنگام باز شدن فرم تعریف کنید که این فیلد را مقدار دهی کند با تابع userName. برای تعریف قانون هنگام باز شدن فرم از این مسیر اقدام کنید:
Data tab in ribbon -> Form Load -> New Rule

بعد از آن یک قانون دیگر تعریف کنید برای مقدار دهی فیلد IsGroupMember با این مقدار
currentUserName = "user1" or currentUserName = "user2" so on, so forth
(هر کدام از ایم orها باید در پرانتز باشند اما در این وبلاگ نمی شود درست نوشت)

حالا روی هر فیلدی که می خواهید غیرفعال یا مخفی کنید باید یک قانون بنویسید بر اساس این متغیر IsGroupMember.
با این روش حداقل وقتی اعضای گروهتان تغییر کردند شما یک نقطه در فرم را تغییر می دهید.
موافقین ۰ مخالفین ۰ ۹۴/۰۱/۱۱
محسن

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی