ביטוי לערך פחות ערך

פורומים אפיון ופיתוח פריוריטי ביטוי לערך פחות ערך

  • Post
    sayo
    משתתף
    היי, אני מנסה להכניס עמודה לדוח שינויים במחיר שהנתונים נלקחים ממסך GEN_CHANGE_LOG
    אני רוצה להציג את ההפרש בין הערך הקודם לבין הערך החדש (של שינוי במחיר בסיס)
    NEWVALUE – OLDVALUE
    אך מכיוון שהם מסוג RCHAR אני לא יודעת איך לרשום את הביטוי…
    אשמח לקצת עזרה…
מוצגות 10 תגובות – 1 עד 10 (מתוך 10 סה״כ)
  • Replies
    123
    משתתף
    עמוד 27 ב SDK.
    sayo
    משתתף
    אתה יכול להיות יותר ספציפי כי קראתי את כל הפרק ולא מצאתי…
    יש המרה שך REAL לINT ולהפך אבל לא מצאתי משהו שממיר סטרינג לREAL
    123
    משתתף
    ASCII TO INTEGER = ATOI
    ASCII TO REAL = ATOR
    SELECT ATOR(NEWVALUE) – ATOR(OLDVALUE) FROM GEN_CHANGE_LOG FORMAT;

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

    roni
    משתתף
    היי
    הביטוי המקורי הוא INT או REAL
    בדר כלל הופכים אותו לRCHAR כדי להוסיף מטבע
    צריך לראות מה השדה שבביטוי ובו להשתמש
    – "להפשיט" את הביטוי של STRCAT לשדה המחושב
    אפשר לראות את השדה גם במסך שבו הוא מוצג וכך להבין יותר טוב מהוא
    דוגמה נוספת לשיטה היא מחיר בחשבונית שהוא REAL ובהדפסת החשבונית הופכים אותו ל RCHAR
    sayo
    משתתף
    בניתי דו"ח שנקרא 'דו"ח שינויים במחירון'
    הדו"ח מציג את כל המקטים שנעשו בהם שינוי במחיר בסיס לפי תאריך ושם משתמש,
    המחיר הישן והמחיר החדש.
    אני רוצה להוסיף עמודת הפרש בין המחיר הישן לחדש מבלי לעשות זאת בעיצוב דו"ח…
    123
    משתתף
    טבלת היסוד שלך לדוח צריכה להיות PARTPRICE.
    שם הערכים של המחירים במחירון הם ב REAL
    sayo
    משתתף
    אבל אין שם כלום כמו למשל ערך ישן וערך חדש…
    ניסיתי לחלץ את המספרים מהאותיות ויש לי שגיאה, מה לא בסדר בזה:
    RSTRIND(GEN_CHANGE_LOG.OLDVALUE,4,((STRLEN(GEN_CHANGE_LOG.OLDVALUE)) – 4))K
    123
    משתתף
    הכיוון הזה בעייתי. תנסי שוב להבין מה את רואה בטבלה PARTPRICE.
    ערך ישן וערך חדש את תקבלי כאשר תחתכי את המוצר במחירונים הרלוונטים בתאריכים השונים שאת רוצה לראות
    יש סה"כ 4 מפתחות U בטבלה הזו ואת צריכה להשתמש בכולם ואז לחלץ את הערך PRICE מהטבלה.
    אני אנסה לרשום לך את זה ב WINDBI מאוחר יותר אם תסתבכי.
    sayo
    משתתף
    אז הצלחתי לחלץ את המספרים מהאותיות ולהפוך את הערך לint
    ATOI(STRPIECE(#40, ' ', 2, 1))
    כש-#40 = GEN_CHANGE_LOG.NEWVALUE

    אני רוצה לעשות אותו הדבר עם הערך הישן אבל שם יש ביטוי: '0.00' ולכן אני מקבלת שגיאה…

    מה אפשר לעשות?

    sayo
    משתתף
    לא משנה, הסתדרתי

    בסופו של דבר הצלחתי להציג הפרש בין 2 שדות מבלי להתבסס על טבלה אחרת או ההצעות האחרות שהיו פה…

    תודה בכל זאת!

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