למישהו יצא לעבוד עם report builder?

  • פותח הנושא noamm
  • פורסם בתאריך

noamm

New member
למישהו יצא לעבוד עם report builder?

לא יודע אם זה הפורום המתאים לשאלה...

יש לי RDL עם שדות שאני מסתיר אותם אם לא הוזן בהם מלל.
אבל במסמך נשאר "חור" שתופס השדה בדף.
האם מישהו מכיר אפשרות שבמידה ואין מלל החלק של הדף התחתון יעלה למעלה.
מקווה שמובן.

תודה
 

pitoach

New member
SSRS הוא שירות שמגיע ביחד עם SQL SERVER

Report Builder במקור נועד בכדי להכין דוחות SSRS (אם כי יש מחלקות בדוט נט למשל שמאפשרות עבודה ישירה עם הדוחות שמייצרים). כך שנכון שזה לא פורום ל SQL SERVER אבל זה הכי קרוב שיש בתפוז (יש ב MSDN פורומים יותר ספציפיים למשל). לכן אני חושב שזה מתאים

ולגבי השאלה: אתה מבצע הסתרה של התוכן של האלמנט במקום לבצע הסתרה של האלמנט עצמו כניראה. נסה לבצע HIDE לטבלה למשל.

כמו כן SSRS עובד עם CSS פשוט כמו HTML ואתה יכול לעבוד עם CSS לכן כדי הלגיע לתוצאות שאתה רוצה. שים לב שvisibility ב CSS שומר על המקום הריק.

שים לב בקוד הבא של HTML להבדל בין "לא נראה" (תופס מקום, רק לא לא ניראה) לבין "לא מוצג" (לא תופס מקום).

<!DOCTYPE html>
<html>
<head>
<style>
h1.hidden {visibility:hidden;}
h1.display {display:none}
</style>
</head>

<body>
<h1>This is a visible heading</h1>
<h1 class="hidden">This is a hidden heading</h1>
<h1 class="display">This is a hidden heading</h1>
<p>Notice that the hidden heading still takes up space.</p>
</body>
</html>
 

noamm

New member
אני משתמש בשדה בפרמטר

<Visibility>
<Hidden>=iif(Fields!INFORMANT_NAME.Value = "", true, false)</Hidden>
</Visibility>


לדומא
=iif(Fields!RISK_THIRD_PARTY_REMARKS.Value = "", true, false) מצורף צילום מסך

לא הבנתי איפה ה display נקבע.
ההצגה או אי הצגה צריכה להיות כתלות להמצאות מלל בשדה.
 

pitoach

New member
נראה אם הבנתי נכון מהתמונה

אני רואה שמסומן בצד שמאל השדה ליד הכותרת:
הערות לסיכונים צד ג

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

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

מה שאתה עשית זה להסתיר את התוכן של התא ולכן התא עדין נמצא ותופס מקום.

אפשרות 1: לעבוד עם CSS (יותר מומלץ בעיני אבל מחייב מעט יותר עבודה בפעם הראשונה... התוצאות הרבה יותר מגוונות ובטוחות)
אפשרות 2: להכניס את התנאי על הצגה של השורה ולא על התוכן של התא
* אם הטופס שלך לא מתוכנן בצורה מתאימה אז כמובן אתה כיול לתכנן אותו עתה בצורה שונה.
 

noamm

New member
תודה

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

תודה!
 

noamm

New member
האם מכירים דרכים יותר טובות להפקת מכתבים?

כל הכתבים שלנו מתבססים על RDL
האם יש אופציות יותר טובות? יותר נוחות\גמישות?
 

pitoach

New member
HTML פשוט (אפשר לשלוח באמצעות שאילתה רגילה)

אפשר לייצר HTML דיי בקלות בעזרת שאילתה רגילה שמביאה את התוצאות שרוצים ושימוש ברמז for xml
 
למעלה