none
יצירת שדה יתרה לתנועות כספיות לכרטיס, באמצעות SSRS או שאילתא RRS feed

  • שאלה

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

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

    לאחר מחשבה, אני יכול לבצע את זה באמצעות שאילתא אשר מריצה את התנועות בסדר של כרטיסי החשבון כמיון ראשי. ומיון משני את ה ID של התנועה. כעת אני יוצר שדה שהוא שאילתא אשר מסכמת את כל התנועות קטן-שווה ל ID הנוכחי, ואשר מתאימות לכרטיס החשבון הנוכחי.

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

    יום ראשון 27 מרץ 2011 08:37

תשובות

כל התגובות

  • האם תוכל לפרט יותר? כי לפי התיאור שפה נראה לי ש-GROUP BY ו-SUM אמורים לתת לך פתרון פשוט - או מהדו"ח או מה-DB.


    itaigitt, http://copypastenet.blogspot.com
    יום ראשון 27 מרץ 2011 14:07
  • העמודה שאתה מתאר זה בעצם מה שנהוג לכנות: running totals ונתונים כאלה מומלץ לעדכן בזמן אמת ולשמור בבסיס הנתונים.

    על מנת לטפל בנתונים קיימים או להציג בדוח אפשר להריץ בלולאה משהו כמו הקוד המדומה הבא:

     

    UPDATE table SET Balance = (@MyRunningTotal + @ThisRowAmount) WHERE Id = @Id 

     


    -- Yaniv www.sqlserverutilities.com http://blogs.microsoft.co.il/blogs/yaniv_etrogi
    יום ראשון 27 מרץ 2011 14:10
  • תודה יניב, אני רואה שיש הרבה חומר על Running Total זה עזר מאוד.

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

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

    יום שני 28 מרץ 2011 08:12
    • סומן כתשובה על-ידי Matanya Zac יום שלישי 29 מרץ 2011 09:24
    יום שני 28 מרץ 2011 09:05