שאילתא לפי חברה

פורומים אפיון ופיתוח פריוריטי שאילתא לפי חברה

  • Post
    sayo
    משתתף
    היי,

    ניסיתי להכניס בדוח את השאילתא:
    SQL.ENV = 'COMPANY' ? AGENTS.AGENTNAME IN
    : ('103','104','105','109','110','111','115')
    AGENTS.AGENTNAME IN
    ('4','6','10','20','8','22')

    אני רוצה שברגע שמריצים את הפרוצדורה בחברה מסויימת היא תיקח בחשבון רק את הסוכנים שרשמתי
    אך אני מקבלת שגיאה
    איך אני יכולה לרשום זאת בדוח?

    תודה

מוצגות 3 תגובות – 1 עד 3 (מתוך 3 סה״כ)
  • Replies
    אלמוני
    אורח
    נראה שאת צריכה להשתמש ב-AGENTS.AGENTCODE ולא AGENTNAME

    אבל זו לא הבעיה האמיתית: צריך לכתוב בפורמט של שאילתא, משהו כמו

    AND AGENTS.AGENTCODE IN
    ? SQL.ENT = 'COMPANY' )
    ('1','3','5') :
    (('2','4','6')

    אינני בטוח שהצורה הזו תתקבל, בגלל השימוש ב-IN. לכן הייתי מפשט את ה-SQL ע"י הוספת שדה לטבלת הסוכנים (נניח "חברה") ואז בוחרים את הסוכנים לפי החברה שלהם ולא לפי המספר שלהם. מבחינת תחביר, יותר קל להשתמש בסימן = מאשר IN.

    אלמוני
    אורח
    אגב, פתרון הוספת השדה מטפל גם במקרה שיש סוכן חדש – לא צריך לזכור לשנות את הפרוצדורה אלא מסמנים את השדה המתאים בכרטיס הסוכן. אני מעדיף להשתמש בדגלים ברשומות (למשל בסטטוסים) ולחתוך לפי הדגל מאשר לכתוב משפטי IN ולציין מפורשות את האיברים.
    sayo
    משתתף
    רעיון מעולה, תודה!
מוצגות 3 תגובות – 1 עד 3 (מתוך 3 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.