השוואה בין 2 בומים

פורומים שימוש במערכת השוואה בין 2 בומים

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

    איך אני מוציא בפריוריטי דו"ח שמראה לי את ההבדלים בין 2 הבומים?
    כלומר מה יש פה שאין שם והפוך.

    דוגמה:
    בום עם 200 פריטים תחתיו בהשוואה לבום עם 205 פריטים תחתיו.
    אני רוצה לראות דו"ח רק עם ה-5 פריטים שמהווים את ההבדל.

    תודה מראש.

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

    /*
    Stack4:
    key: -> part
    intdata: 1 if appears in tree 1
    realdata: quant in tree 1
    intdata2: 1 if appears in tree 2
    realdata: quant in tree 2
    The report will print parts where intdata intdata2, or realdata
    realdata2
    */
    LINK PARTARC TO :$.ARC;
    ERRMSG 1 WHERE :RETVAL <= 0;
    LINK STACK4 TO :$.STK;
    ERRMSG 1 WHERE :RETVAL <= 0;
    LINK PART TO :$.P1;
    ERRMSG 1 WHERE :RETVAL 0;
    EXECUTE SONRAW :$.P1, SQL.DATE8, :$.ARC, 2, '-N';
    INSERT INTO STACK4 (KEY, INTDATA, REALDATA)
    SELECT SON, 1, COEF
    FROM PARTARC
    WHERE SON > 0;
    UNLINK PART;
    DELETE FROM PARTARC;
    LINK PART TO :$.P2;
    ERRMSG 1 WHERE :RETVAL 0;
    EXECUTE SONRAW :$.P2, SQL.DATE8, :$.ARC, 2, '-N';
    :COEF = 0.0;
    DECLARE CUR CURSOR FOR
    SELECT SON, COEF
    FROM PARTARC
    WHERE SON > 0;
    OPEN CUR;
    GOTO 300 WHERE :RETVAL <= 0;
    LABEL 100;
    FETCH CUR INTO :SON, :COEF;
    GOTO 200 WHERE :RETVAL <= 0;
    UPDATE STACK4 SET
    INTDATA2 = 1, REALDATA2 = :COEF
    WHERE KEY = :SON;
    LOOP 100 WHERE :RETVAL = 1;
    INSERT INTO STACK4 (KEY, INTDATA2, REALDATA2)
    VALUES (:SON, 1, :COEF);
    LOOP 100;
    LABEL 200;
    CLOSE CUR;
    UNLINK PART;
    LABEL 300;
    UNLINK STACK4;
    UNLINK PARTARC;
    /* dynamic column titles! */
    :COLTITLES = 1;
    SELECT ENTMESSAGE ('$', 'P', 10) INTO :TITLE1 FROM DUMMY;
    :REPCOLTITLE.30 = STRCAT (:P1NAME, ' ', :TITLE1);
    :REPCOLTITLE.40 = STRCAT (:P2NAME, ' ', :TITLE1);

    הדו"ח הקשור די פשוט אך יש שורת DUMMY.DUMMY:
    = 1 AND ((STACK4.INTDATA STACK4.INTDATA2) OR
    (STACK4.REALDATA STACK4.REALDATA2))

מוצגות 2 תגובות – 1 עד 2 (מתוך 2 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.