הצטרפו לקבוצות שלנו לקבלת עדכונים מרוכזים פעם בשבוע:

ווטסאפ:
http://wa.dwh.co.il
טלגרם:
http://telegram.dwh.co.il

הצמדת פילטר ליוזר

More
16 years 1 month ago - 16 years 1 month ago #5524 by aviv
גירסת boxi 3.1

אני רוצה להגביל יוזר לעבוד אך ורק עם Group_ID מסויים.
אני מודע לאופצייה של ה-Row restrictions בה לכל טבלא המכילה את הgroup ID אני אגדיר את ההגדרה ב-where ל-Group ID המסויים או בכלל ליצור אפשרות עם BOUSER וטבלת הרשאות כך שזה יהיה עוד יותר גנרי.

אבל הדבר כרוך בהגדרה לכל הטבלאות וגם בעתיד ידרוש הגדרות חדשות לכל טבלא חדשה עם group id שארצה להוסיף.

האם יש דרך אחרת פשוט להגדיר לאותו יוזר שלכל שאילתא שעושה עם טבלא המקושרת לטבלת group id הוא יצמיד לו את ה-filter ש-group id = לערך המסויים. ?
Last edit: 16 years 1 month ago by aviv.

Please התחברות to join the conversation.

More
16 years 1 month ago - 16 years 1 month ago #5525 by Yoav
self join +משפט select בסגנון subquery או exists יעשה את העבודה ויחסוך את ה-join,מה שכן בטבלה הפנימית שה- select פונה אליה צריך להיות שם היוזר וה-group_id.

בדרך זו בין אם הטבלה מקושרת או לא ההרשאה נבדקת וכמובן שיש חסכון ב-join.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il
Last edit: 16 years 1 month ago by Yoav.

Please התחברות to join the conversation.

More
16 years 1 month ago #5526 by aviv
מה הכוונה ל-self join ? (זה אחד הפרמטרים ?)
אני עדיין אצטרך להגדיר את כל הטבלאות שיש להן group id .

אך אני יכול לכפוף את זה שכל טבלא שמקושרת עם Dim_Group
ישר תקבל את התנאי.

אני רוצה שגם אם הוספתי fact חדש שמקושר Dim Group אז גם הוא תמיד יקבל את התנאי group id=למשהו
וזאת מבלי להגדיר אותו ב-restrictions

Please התחברות to join the conversation.

More
16 years 1 month ago #5528 by Yoav
self join = משפט where על טבלת Dim_Group שבמקרה זה יכלול שאילתת exists או subquery על טבלת ההרשאות (שאותה תצטרך לבנות ולתחזק),בדרך זו חסכת join ובמידה ויוזר עובר דרך הטבלה ההרשאה תיזרק.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il

Please התחברות to join the conversation.

More
16 years 1 month ago - 16 years 1 month ago #5529 by תמיר
בגדול מה שאתה מחפש לא נמצא בBO-אין מערכת הרשאות גנרית לכל הטבלאות. יחד עם זאת, בא לי רעיון שאולי יוכל לעזור לך.

תבצע את השלבים הבאים:

1. צור טבלה המכילה את כל הערכים הייחודים שאותם אתה רוצה לפלטר (Group_id?)והוסף טבלה זאת לעולם.

2. הגדר row restriction על טבלה זאת.

3. קשר טבלה זאת לטבלה המרכזית שעליה את רוצה ליצור הרשאות.

4.קשר טבלה זאת לשאר הטבלאות בעולם התוכן עם shortcut join.

5. צור פילטר עם 1=1 , אך בtables הוסף את הטבלה החדשה שיצרנו. הפוך פילטר זה לmandatory בעולם.

תראה אם זה עובד וחוסך לך זמן. :smile:


תמיר
Last edit: 16 years 1 month ago by תמיר.

Please התחברות to join the conversation.

More
16 years 1 month ago #5530 by Yoav
אם תגדיר שאילתת exists או sub ב-restriction אתה תחסוך לעצמך את הצורך לקשר את את הטבלה לכל טבלה בעולם.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il

Please התחברות to join the conversation.

More
16 years 1 month ago - 16 years 1 month ago #5532 by aviv
ניראה לי שתמיר הבין אותי קצת יותר לכוונה כי בגדול
כן עשיתי זאת עם הגדרת sub query ב-Restriction לכל Fact שיש
לו Group ID .
ומעצלנות לגבי העתיד שאלתי איך אוכל למנוע הוספת Restriction לכל
Fact שבעתיד.
עכשיו אני לא מצפה מה-BO שיקרא מחשבות כי יש פה חוקיות והיא
כל טבלא שמקושרת לאותו מימד Group ID .

הפתרון של תמיר נותן פיתרון לאותההרשאת היוזר ומגביל אותו לgroup ID אבל מצד שני הוא פוגע בשאר היוזרים שכן מותר להם לראות את כל הgroup .
אפשר כמובן לשכלל את הטבלא הזאת ולהוסיף לה עמודת BOUSER
וב-Filter לשים שאילתא לאותה טבלת הרשאות.
אממה צריך לשאר היוזרים לתת הרשאה לכל ה-Group ID ולדאוג לתחזק את הטבלא הזאת לכל Group ID שהתווסף אחרת היוזרים שיכולים לראות יתחילו להתעצבן שאיזה Group חמק מעיניהם.


אלא אם כן ניתן להגדיר פילטר Mandetoryברמת יוזר ספציפי
ולא כלל היוזרים.
האמת שזה היה גם הכיוון הראשוני שלי אבל הוא ניגנז בגלל שלא ששמתי לב שאין אפשרות לכפות Filter ברמת יוזר (שימו לב לכותרת :wink: )
אלא אם כן אתם יודעים איך כן לכפות Filter אבל רק ליוזרים מסוימים
כפי שניתן להעלים אוביקטים באופן ספיציפי לכל יוזר.


בכל מיקרה ממש תודה על העזרה!
Last edit: 16 years 1 month ago by aviv.

Please התחברות to join the conversation.

More
16 years 1 month ago - 16 years 1 month ago #5533 by תמיר
אביב שלום,

הפתרון שהצעתי, הוא גלובלי לכל הUsers ואינו דורש התעסקות (מעבר לrepository) עבור יוזר כזה או אחר.

אני מדגיש: יוצרים טבלה המכילה את כל הערכים שלפיהם רוצים לבצע את ההרשאות (במקרה הזה group_id)

מבצעים על טבלה זאת row_restriction רגיל (שים לב :excalm: ללא bouser)

דואגים שבכל שאילתא יהיה קישור לטבלה זאת (באמצעות shortcut join ופילטר גלובלי)


אתה לא צריך לדאוג ליוזר כזה או אחר: אם מישהו צריך לראות את כל הקבוצות פשוט לא מגדירים עליו row_restriction.

זה כל הסיפור :smile:

תמיר
Last edit: 16 years 1 month ago by תמיר.

Please התחברות to join the conversation.

More
16 years 1 month ago #5534 by Yoav
אביב,בשיטה שהצעתי יש מינימום תחזוקה:אתה משלב טבלת הרשאות ב-restrictions ,חוסך שימוש ב-joins ופוסח על ה-BOUSER,פתרונות טובים יותר משלבים טבלאות דינמיות,תחזוקה גדולה יותר ועוד.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il

Please התחברות to join the conversation.

More
16 years 1 month ago #5540 by aviv
תמיר אין ספק שהפתרון ערמומי ומקורי לאללה
אבל אם אני אגדיר את הפילטר ברמת העולם אז יהיה בלגן עם שאילתות בהן משתתפות טבלאות שלא מקושרות למימד Group.
אז הפתרון יהיה להגדיר את הפילטר ברמת Class בו נימצא Fact שקשור
למימד Group וזה גם סוג של תחזוקה כי לכל Fact חדש
אצטרך להוסיף את אותו filter .
אם אני כבר מתאמץ עדיף לעשות זאת כמו שצריך מבלי ל"זבל" את השאילתא עם 1=1 .

יואב - ניראה לי שמה שאתה אומר זה מה שגם ככה אני מיישם.
או בוא נישאל את זה אחרת, האם הפיתרון שלך מצריך
תוספת במידה ואני מוסיף Fact חדש שמקושר למימד Group .

בכל מיקרה יצא לנו אחלה דיון הייתי אומר

Please התחברות to join the conversation.

More
16 years 1 month ago - 16 years 1 month ago #5541 by Yoav
לא,בשביל זה יש את שאילתת ה- exists ב-row restriction.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il
Last edit: 16 years 1 month ago by Yoav.

Please התחברות to join the conversation.

More
16 years 1 month ago #5542 by aviv
אבל לא משנה מה תכתוב ב-where ב-row restriction זה תמיד
יהיה תחת טבלא מסויימת.
במקרה הזה אני מאמין שאתה תשים רק מתחת למימד Group נכון?
אבל אם אני אוסיף Fact חדש ואגרור אך ורק את המדד ממנו
ולא אוסיף שום אוביקט אחר ממימד ה-Group אז ה-Fact לא יחתך על פי
ה-Group Id המסויימים ואני אקבל את סה"כ של המדד מכל ה-Groups .

Please התחברות to join the conversation.

More
16 years 1 month ago #5547 by Yoav
תהיה חייב לתחזק את זה,דהינו להוסיף את ההרשאה על הטבלה אבל לא תצטרך לבצע join בין טבלת ההרשאות לטבלת ה-fact בגלל שאילתת ה-exists.

אמרתי לך: אם אתה רוצה פתרון דינמי יעיל תצטרך לבנות מערך של טבלאות דינמיות והרשאות מכיוון ה-DB,הנושא פשוט,היישום לא.

Best Regards

Yoav Yahav

BI & DWH & SAP Business Objects

+972-52-3562982

bi.bobjects@gmail.com
thebobaba.blogspot.com/
www.bics.co.il/193657/sapbicoeeng
www.bo.dwh.co.il

Please התחברות to join the conversation.

Moderators: Yoav
Time to create page: 0.406 seconds