› פורומים › אפיון ופיתוח פריוריטי › סימני ? בחיתוך OUTER JOIN
- This topic has 7 תגובות, משתתף 1, and was last updated לפני 11 שנים, 4 חודשים by
אלמוני.
- Post
-
- מרץ 3, 2014 בשעה 6:02 pm
שלום,אני מכינה דוח שכולל בין היתר מלאי נוכחי במחסן.
כאשר אין מלאי ממק"ט מסוים אני עדיין רוצה שיופיע לי בדו"ח המק"ט.
הוספתי את הסימן ? בעבור טבלת החיתוך, על הטבלה שיכולה להיות ריקה ( WARHSBAL.PART)הבעיה היא שאני לא בטוחה כמה אני צריכה "לגרור את הסימן שאלה"
האם לגרור את ה? על חיתוכים עם כל חיתוך נוסף עם טבלת PART
האם יש לגרור את ? על חיתוכים נוספים עם
הטבלה הריקה WARHSBAL ?
אם לדוגמא יש לגרור חיתוכים עם טבלת WARHSBALאז האם ה? ממשיך לכל שאר החיתוכים גם כן…?בקיצור הסתבכתי…הוספתי סימני שאלה על כל החיתוכים
ואני מקבלת דו"ח תקין אבל לוקח לו יותר מידי זמן לשליפה פשוטה ואני בטוחה שזה בגלל זה.תודה,
שירן
- Replies
-
- מרץ 4, 2014 בשעה 3:06 pm
שלום שירןאני לא יודע מה מבנה הדוח ואלו עמודות מופיעות בו, לפי מה שאת מתארת מספיק להגדיר סימן שאלה רק על עמודת חיתוך WARHSBAL.PART, כיוון שאת רוצה שכל פריט יופיע בדוח גם אם הוא לא נמצא במלאי במחסן.
יאיר
- מרץ 4, 2014 בשעה 3:45 pm
היי יאיר,
ניסיתי..אבל הדו"ח כל כך איטי והוא תוקע לי בכל פעם את המחשב… ואני לא מבינה למה.
הנה הדו"ח אם זה עוזר,יש לך רעיון מה הבעיה?תודה תודה!
שירן.SELECT ROY_HTRANS.DOCNO AS 'תעודה',
ROY_HTRANS.CURDATE AS 'תאריך',
ALN_SERIAL.SERNUM AS 'ע"הפק שם',
FAMILY.FAMILYNAME AS 'משפחה',
FAMILY.FAMILYDES AS 'משפחה תאור',
ASSEMBLYSTATUSES.CODE AS 'הרכבה סטטוס',
PART1.PARTNAME AS 'גזיר',
PART1.PARTDES AS 'מוצר תאור',
REALQUANT(ROY_HTRANSPART.ORDQUANT) AS 'בהזמנה כמות',
REALQUANT(ROY_HTRANSPART.TQUANT) AS 'שנגזרה כמות',
REALQUANT(ROY_HTRANSPART.CQUANT) AS 'לגזור כמות',
(ORDQUANT – TQUANT > 0 ? ORDQUANT – TQUANT : 0) AS 'לגזור שנותר כמות',
(0.0 + (REALQUANT(TQUANT) / REALQUANT(ORDQUANT) * 100)) AS 'ביצוע אחוז',
PART2.PARTNAME AS 'בד ט"מק',
PART2.PARTDES AS 'מוצר תאור',
CUSTOMERS.CUSTNAME AS '10 סטטוס',
REALQUANT(WARHSBAL.BALANCE) AS '10ב מפעל \'ביח יתרה',
UNIT1.UNITNAME AS 'מפעל \'יח',
CUSTOMERS1.CUSTNAME AS '11 סטטוס',
REALQUANT(WARHSBAL1.BALANCE) AS '11ב מפעל \'ביח יתרה',
PART2.PARTNAME AS 'ט"מק',
WAREHOUSES.WARHSNAME AS 'מחסן',
WAREHOUSES.LOCNAME AS 'איתור',
SERIAL.SERIALNAME AS 'ע"פק/מנה',
ACT.ACTNAME AS 'פעולה',
EXEC.ENAME AS 'ישות שם'
FROM EXEC , ACT , SERIAL , WAREHOUSES WAREHOUSES1 , WAREHOUSES
, PARTARC , WARHSBAL WARHSBAL1 ?, CUSTOMERS CUSTOMERS1 , UNIT UNIT1
, WARHSBAL ?, CUSTOMERS , PART PART2 , ROY_HTRANSPART , PART PART1
, ASSEMBLYSTATUSES , FAMILY , ALN_SERIAL , ROY_HTRANS
WHERE (EXEC.ENAME = (ACT.ACT >= -1000 ? 'ACT' : 'PALLETS'))
AND (EXEC.TYPE = 'F')
AND (PART2.PUNIT = UNIT1.UNIT)
AND (WARHSBAL1.ACT -5 /* RELEASE */)
AND (WARHSBAL.ACT -5 /* RELEASE */)
AND (WARHSBAL.ACT = ACT.ACT)
AND (WARHSBAL.SERIAL = SERIAL.SERIAL)
AND (WARHSBAL1.WARHS = WAREHOUSES1.WARHS)
AND (WAREHOUSES1.WARHS =14)
AND (WAREHOUSES.WARHS =-2)
AND (WARHSBAL.WARHS = WAREHOUSES.WARHS)
AND (WARHSBAL1.CUST = CUSTOMERS1.CUST)
AND (WARHSBAL.CUST = CUSTOMERS.CUST)
AND (PARTARC.SON = WARHSBAL1.PART)
AND (PARTARC.SON = WARHSBAL.PART)
AND (PARTARC.SON = PART2.PART)
AND (ROY_HTRANSPART.PART = PARTARC.PART)
AND (ROY_HTRANSPART.PART = PART1.PART)
AND (ROY_HTRANS.HTRANS = ROY_HTRANSPART.HTRANS)
AND (ROY_HTRANS.STATUS = ASSEMBLYSTATUSES.ASSEMBLYSTATUS)
AND (ROY_HTRANS.FAMILY = FAMILY.FAMILY)
AND (ROY_HTRANS.SERIAL = ALN_SERIAL.ALN_SERIAL)
AND ( 1=1 )ORDER BY 21 ASC, 15 ASC, 14 ASC, 22 ASC, 23 ASC, 24 ASC, 16 ASC, 25 ASC,
26 ASC ;- מרץ 5, 2014 בשעה 2:04 pm
הי שירןהבעיה היא לא בסימן שאלה כזה או אחר ,הדוח לא בנוי נכון מבחינת מזהי עמודות וחיתוכים של מזהי העמודות,יהיה קשה להסביר מה ואיך לתקן, לכן אני מצרף לך דוגמא של דוח פשוט שהתוצאות שלו הן העמודות הבאות : מק"ט, יתרה במחסן Main , יתרה במחסן Outl.
תוכלי לראות איך לבצע קישורים וחיתוכים על עמודות שחוזרות על עצמן, אני מקווה שזה יעזור לך.SELECT PART.PARTNAME AS 'ט"מק',
REALQUANT(WARHSBAL.BALANCE) AS 'Main -ב יתרה',
REALQUANT(WARHSBAL1.BALANCE) AS 'Outl -ב יתרה'
FROM WAREHOUSES WAREHOUSES1 , WAREHOUSES , WARHSBAL WARHSBAL1 ?, WARHSBAL
?, PART
WHERE (WAREHOUSES1.LOCNAME ='0')
AND (WAREHOUSES.LOCNAME ='0')
AND (WARHSBAL1.WARHS = WAREHOUSES1.WARHS)
AND (WARHSBAL.WARHS = WAREHOUSES.WARHS)
AND (WAREHOUSES1.WARHSNAME ='Outl')
AND (WAREHOUSES.WARHSNAME ='Main')
AND (PART.PART = WARHSBAL1.PART)
AND (PART.PART = WARHSBAL.PART)
AND ( 1=1 )- מרץ 5, 2014 בשעה 3:05 pm
היי ,
עברתי על הדוח שלך ולא ראיתי משהו ששונה מהלוגיקה שאני מכירה.האם תוכל לתת לי כיוון? להפנות אותי לשורה ספציפית כדוגמא בדוח שלי שיש בה טעות?
הלוגיקה שאני מכירה זה שאם צריך לחתוך לאותה טבלה פעמיים אז נותנים לה מזהה.
פשוט אני ממש לא מבינה מה אני עושה לא בסדר, אם תוכל רק טיפה יותר לכוון אותי…
תודה רבה!
שירן.- מרץ 6, 2014 בשעה 10:42 am
- מרץ 6, 2014 בשעה 9:21 pm
הי שירן
אם כך אז כנראה שאני טועה בהבנת הגדרת הדוח,בכל אופן לצערי אין לי תובנה שיכולה לקדם אותך.
אולי מישהו אחר מחברי הפורום יוכל להיות לך לעזר.בהצלחה
יאיר- מרץ 10, 2014 בשעה 5:13 pm
- יש להתחבר למערכת על מנת להגיב.