הצגת מכירות עם מחיר ממחירון בסיס שבתוקף

פורומים אפיון ופיתוח פריוריטי הצגת מכירות עם מחיר ממחירון בסיס שבתוקף

  • Post
    david
    משתתף
    שלום
    אני רוצה לצרף לדוח מכירות לפי פריט את המחיר ממחירון בסיס.
    הבעיות
    1) יש מחירון בסיס ישן שאינו בתוקף ואחד שבתוקף
    2) לא לכל המוצרים יש מחיר במחירון בסיס שבתוקף
    אבל אני רוצה לקבל את כל המוצרים שנמכרו

    ניסיתי לקשור בצורה הזאת אבל לא עבד רצ"ב קובץ
    תודה

מוצגות 11 תגובות – 1 עד 11 (מתוך 11 סה״כ)
  • Replies
    david
    משתתף
    קובץ
    david
    משתתף
    ננסה אקסל
    והדבקה
    מיקום עמודת טבלה שם טבלה מזהה עמודה קלט לעמודה הסתרת עמודה חישוב עמודה בטוי/תנאי מספר עמודה עמודת חיתוך טבלת חיתוך מזהה חיתוך
    631 PLIST PARTPRICE 5? Y Y 632 0
    699 PLDATE PRICELIST 5? Y 699 PLDATE PARTPRICE 5?
    699 PLIST PRICELIST 5? Y 700 PLIST PARTPRICE 5?
    Lior
    מנהל בפורום
    תנסה שוב להעלות את האקסל. ביצעתי שינוי כלשהו בהגדרות הפורום.
    גודל הקובץ המקסימלי 512KB. אם זה יוצא יותר – תעשה לו זיפ ותעלה.
    david
    משתתף
    רצב [file name=plis2.xls size=19968]https://www.priority-forums.com/he/images/fbfiles/files/plis2.xls[/file]
    Lior
    מנהל בפורום
    1. מה התנאי הרשום לעמודה במיקום 631 ?
    2. האם אלו כל עמודות הדו"ח ???
    david
    משתתף
    אלה לא כל השורות רק הרלוונטית
    התנאי הוא שמחירון ID = -1 שזה מחירון בסיס
    Lior
    מנהל בפורום
    הדרך המהירה לפתרון לדעתי הוא שילוב של הדו"ח בתוך פרוצדורה, הפרוצדורה תכין טבלה זמנית שתועבר לדו"ח.
    STACK4 מתאימה לתפקיד הזה.
    עמודת KEY תכיל את מספר הפריט, עמודת REALDATA תכיל את המחיר במחירון הבסיס.
    מכניסים לSTACK4 את כל הפריטים שיש להם מחיר במחירון הבסיס שבתוקף, ובדו"ח outer join ל STACK4 ללא תנאים.

    מצ"ב קוד ליצירת הטבלה הזמנית [file name=STACK4.txt size=464]https://www.priority-forums.com/he/images/fbfiles/files/STACK4.txt[/file]

    david
    משתתף
    הכנתי דוגמה פשוטה
    אני לא מבין למה הקוד מראה רק את המחירון שבתוקף
    הרי אין כאן התיחסות לנושא האם הוא בתוקף או לא
    שמוגדר בשדה VALID
    טבלה PRICELISTDATE
    ולכן הוא היה צריך לתת את שני המחירים ( יש שני מחירוני בסיס )
    SELECT ORDNAME , PARTNAME , PARTPRICE.PRICE
    ‎FROM ORDERS, ORDERITEMS, PART, PARTPRICE ? ,PRICELIST ?‎
    ‎WHERE ORDERS.ORD = ORDERITEMS.ORD‎
    ‎AND ORDERITEMS.PART = PART.PART‎
    ‎/* price tables */
    AND (PARTPRICE.PART = PART.PART)‎
    ‎AND (PRICELIST.PLDATE = PARTPRICE.PLDATE)‎
    ‎AND (PRICELIST.PLIST = PARTPRICE.PLIST)‎
    ‎ORDER BY 2‎
    ‎FORMAT ;‎
    תודה
    Lior
    מנהל בפורום
    בגלל התנאי : PRICELIST.PLDATE = PARTPRICE.PLDATE

    PRICELIST.PLDATE מכיל את תאריך כניסת המחירון לתוקף. כדי לקבל את שתי גרסאות המחירון אתה צריך להוריד את התנאי הזה.

    הערה:
    ההבחנה בין גרסאות מחירון מתבצעת באמצעות PRICELISTDATE עם מפתח (PLIST,PLDATE).
    כל רשומה ב PARTPRICE למחירון כלשהו מכילה את אחד התאריכים בטבלה הזו. הרשומות שב PARTPRICE ששייכות למחירון בתוקף הן אלו המכילות את התאריך של המחירון המסומן בדגל במסך תאריכי מחירון. כאשר אתה מסמן את הדגל , התאריך נרשם ב PRICELIST בעמודה PLDATE וזה מה שרואים בכותרת. מסך מחירי מוצרים חותך את PARTPRICE ישירות מול PRICELIST לפי מה שנרשם ב PLDATE אחרי סימון הדגל.

    david
    משתתף
    כל הכבוד על הידע והנכונות להסביר
    Lior
    מנהל בפורום
    חן חן.
    שמחתי לסייע.
מוצגות 11 תגובות – 1 עד 11 (מתוך 11 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.