עזרה בדוח

  • Post
    אלמוני
    אורח
    שלום
    אני מנסה בדו"ח הרשאות להפוך את השדה של האם עובד פעיל או לא
    לקלט בוליאני
    וכאשר קולטים Y אז שיביא לא פעילים או את שניהם
    וכאשר קולטים N שיביא רק פעילים
    כרגע כאשר קולטים N מביא את כולם
    ושקולטים Y מביא לא פעילים
    אשמח לעזרה
    תודה ענת
    השדה שעליו אני עושה את הקלט הוא usersb.inactive
מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • Replies
    אלמוני
    אורח
    בדו"ח פשוט (לא כחלק של פרוצדורה) די קשה לעשות את מה שנדרש מאחר וצריך לנתק את ערך הפרמטר (Y/N) מהשדה (USERSB.INACTIVE).

    בפרוצדורה, צריך להגדיר פרמטר מסוג CHAR כאשר במסך הבן "פרמטרים לפרוצדורה" יהיה מוגדר עם סוג Y, אשר הופך אותו לבוליאני. נניח שקוראים לפרמטר FLG. בשלב SQLI נדרש ביטוי כזה:

    AND USERSB.INACTIVE (:$.FLG = 'N'? 'Y' : '!')

    אם ערך הפרמטר N, הביטוי יחזיר רק רשומות בהן INACTIVE שונה מ-Y (דהיינו, כל מי שפעיל). אם ערך הפרמטר Y, אזי הביטוי יחזיר !: בכל הרשומות הערך INACTIVE יהיה שונה מזה, לכן תקבלי את כל הרשומות.

    אפשר לקרוא לזה "תכנות הפוכה": היא נדרשת מפני שבדרך כלל רוצים לסמן רק את החריגים – לכן שם השדה INACTIVE. אם שם השדה היה ACTIVE, לכאורה היה צריך לסמן את כולם ורק להסיר כאשר מישהו עוזב.

    yitzchok
    משתתף
    IL
    אם אני זוכר נכון יש שם חיתוך מותנה (USERSB?) ואם זה ככה אז סתם תנאי לא יעבוד, צריכים תת-שאילתא (NOT IN או NOT EXISTS)
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    אלמוני
    אורח
    תמיד תהיה רשומה ב-USERSB עבור רשומה ב-USERS – הרי משתמשי פריוריטי הם תמיד עובדים. ההיפך אינו נכון.
    אלמוני
    אורח
    היי
    האם זה אומר שחובה לבנות למשל GENERALLOAD לפי הדגל שבו יהיה נגיד המפתח של users
    כי זה דוח הרשאות
    כי אני לא רואה דרך אחרת
    נכון
    תודה
    yitzchok
    משתתף
    IL
    השאלה שלך לא ברורה.

    "כי זה דוח הרשאות"
    יש משהו מיוחד בדו"ח הראשות?
    את מתחילה מדו"ח סטנדרטי? או בונה דו"ח מכלום?

    אנחנו לא יודעים מה את עושה

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    אלמוני
    אורח
    אני רוצה לתקן משהו בתשובה שלי – יש קוד אשר מציב ערך בהתאם לביטוי :FLG = N. צריך לשנות אותו ל-FLG <> Y. אני מושפע יותר מדי משפות תכנות רגילות בהן ערך בוליאני יכול להיות TRUE או FALSE – כאן מדובר באות שערכה יכולה להיות Y או ריק.
מוצגות 6 תגובות – 1 עד 6 (מתוך 6 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.