2012-05-02 9 views
18

मेरी आवश्यकताएं मुझे एक "विवरण" बैंड में एकाधिक पंक्तियां रखने के लिए बाध्य करती हैं।एक बैंड में एकाधिक पंक्तियों के साथ डेटा ओवरफ़्लो के साथ एक पंक्ति को खींचें

अभी मेरे पास बाईं ओर कॉलम में एक स्थिर टेक्स्ट फ़ील्ड (जो रंग में हाइलाइट किया गया है) और इसके बगल में तीन टेक्स्ट डेटा फ़ील्ड हैं।

मेरी रिपोर्ट में मैं जो चाहता हूं वह है कि तीन बैंडों के साथ स्थिर टेक्स्ट बैंड ऊंचाई में फैला होना चाहिए जब तीन बैंडों में से किसी एक में डेटा बहती है, अगली पंक्ति "ठीक से" विस्तारित पंक्ति के नीचे प्रदर्शित होती है। "ठीक से" मेरा मतलब है कि अगली पंक्ति तत्वों में उनके "शीर्ष" मान समान होना चाहिए और उसी "पंक्ति" में प्रदर्शित होना चाहिए।

मैंने "ओवरफ्लो के साथ खिंचाव" ध्वज "सत्य" और "स्थिति" को "फ्लोट" पर सेट करने की कोशिश की लेकिन समस्या यह है कि अगली पंक्ति डेटा ठीक तरह से स्थित नहीं है।

+1

मेरे पास मेरा जवाब है लेकिन मैं इसे इस टिप्पणी बॉक्स, चरित्र सीमा में पोस्ट नहीं कर सकता। न तो मैं इसका जवाब दे सकता हूं, मुझे इस प्रश्न पूछने के 8 घंटे बाद जवाब मिला और स्टैक ओवरव्लो मुझे अनुमति नहीं देता है। कोई भी एक समान प्रश्न पूछता है और मैं इसका उत्तर देने में सक्षम हूं। – Rachcha

+1

यह विपरीत है: आप पहले 8 घंटों के भीतर जवाब नहीं दे सकते। इसे अभी आज़माएं। – mdahlman

उत्तर

27

मुझे जवाब मिला है। समाधान की कुंजी एक पंक्ति के अंदर तत्वों को एक साथ जोड़ रही है।

  1. सभी स्थिर टेक्स्ट लेबल हटाएं। कोट्स में टेक्स्ट के साथ टेक्स्ट फ़ील्ड का उपयोग करें। उन्हें अन्य टेक्स्ट फ़ील्ड और डेटा फ़ील्ड के साथ समूहीकृत किया जा सकता है।
  2. उद्धृत टेक्स्ट फ़ील्ड के समान समूह में उद्धृत टेक्स्ट फ़ील्ड के बाद सभी डेटा फ़ील्ड रखें।
  3. अब, उन सभी पंक्तियों के साथ ऐसा ही करें जिन्हें आप प्रदर्शित करना चाहते हैं। व्यक्तिगत पंक्ति के लिए अलग समूह।

सभी gorups में सभी तत्वों को एक समूह के सभी घटकों का चयन करें, या, और इस कार्य करें:

  • सेट "स्थिति" "फ्लोट" के लिए
  • सेट "खिंचाव प्रकार" "सबसे ऊंची वस्तु से संबंधित"
  • "विस्तृत ओवरफ्लो के समय प्रिंट करें" चेकबॉक्स को चेक करें।
  • "अतिप्रवाह के साथ खिंचाव" चेकबॉक्स को चेक करें।

हम सब कुछ "खिंचाव" बनाने के लिए कर सकते हैं।

अब, बैंड को इन विस्तारित विवरणों के साथ गतिशील रूप से विस्तार करना होगा। बस बैंड गुणों पर जाएं, स्प्लिट प्रकार को "डिफ़ॉल्ट" पर सेट करें और स्प्लिट को सही करने की अनुमति दें। यह मेरे लिए चाल थी।

+0

मुझे वही समस्या है जो मैंने यहां बताया [लिंक] (http://stackoverflow.com/questions/18599795/jasper-reports-align-dynamic-text-fields-and-their-labels-horizontally)। मेरे मामले में मैं लेबल को अलग-अलग शैली बनाना चाहता हूं उदा। बोल्ड लेबल यदि मैंने "नाम:" + एफ {नाम} जैसे फ़ील्ड के साथ स्थिर पाठ डाला है तो मैं लेबल को अलग से कैसे प्रारूपित कर सकता हूं। साथ ही, क्या आप हमें कुछ स्क्रीनशॉट दिखा सकते हैं कि आपने वास्तव में तत्वों को कैसे समूहित किया? धन्यवाद – Ali

+1

@Ali, क्षमा करें, आदमी, मेरे पास अब जैस्पर तक पहुंच नहीं है, लेकिन मेरा मानना ​​है कि यह गुण बॉक्स के माध्यम से किया जा सकता है। इसे बहुत आसान होना चाहिए, यहां तक ​​कि मेरे मामले में भी मैंने लेबल को बोल्ड बना दिया था। मैंने उल्लेख नहीं किया कि इन पदों में यह बहुत आसान और स्पष्ट था। – Rachcha

3

मेरे मामले में जैसा आपने सलाह दी थी काम नहीं किया। मुझे आपके समाधान को थोड़ा सा संशोधित करना पड़ा - मैंने ऑब्जेक्ट्स को समूहित करने के बजाय "फ्रेम" बनाया, और उस फ्रेम में previuosly समूहित तत्व डाल दिया। मैंने स्थिति टाइप = "फ्लोट" और खिंचाव टाइप = उस फ्रेम में "कोई खिंचाव नहीं", और अपने बच्चे के आइटम पर stretchType = "RelativeToTallestObject" सेट करें - तो यह सब काम करता है।

+0

उत्तर के लिए धन्यवाद। यदि आप जैस्परसेवर का अपना संस्करण जोड़ते हैं और अन्य महत्वपूर्ण विवरण यहां सभी के लिए बेहतर होगा। – Rachcha

+0

बेशक: उत्पाद संस्करण: जैस्परॉफ्ट iReport Designer 5.5.0; जावा: 1.7.0; जावा हॉटस्पॉट (टीएम) 64-बिट सर्वर वीएम 21.0-बी 17; सिस्टम: विंडोज 7 वर्क। 6.1 amd64 पर काम कर रहा है; Cp1250; pl_PL (ireport); मुझे लगता है कि यह सब कुछ है ... – murison

4

यदि कोई व्यक्ति इस समस्या तक आता है और उत्तर के ऊपर काम नहीं करता है। मैं आपके एक्सएमएल के मूल तत्व की जांच करने का सुझाव देता हूं। यदि इसमें निम्न विशेषता है तो इसे हटा दें:

printOrder="Horizontal" 

फिर ऊपर दिए गए उत्तरों को काम करना चाहिए।

आशा है कि मैं किसी को एक ही सामान को गुगल करने का दिन बचाऊंगा।

संबंधित मुद्दे