दस्तावेज़ ऑटोमेशन फ़ील्ड्स (IF, COMPARE, MACROBUTTON, और अधिक)
डॉक्यूमेंट ऑटोमेशन फ़ील्ड्स (IF, COMPARE, और अधिक)
यह गाइड दिखाता है कि Word के दस्तावेज़-ऑटोमेशन फ़ील्ड परिवार के साथ कैसे काम किया जाए in Aspose.Words FOSS के लिए .NET – फ़ील्ड जो शर्तीय टेक्स्ट को संचालित करते हैं, दस्तावेज़-स्तर के वेरिएबल्स को संग्रहीत करते हैं, और मैक्रोज़, नेविगेशन तथा प्रिंट व्यवहार को जोड़ते हैं, केवल गणना किया गया मान प्रदर्शित करने के बजाय। प्रत्येक एक Field उपवर्ग in the Aspose.Words.Fields नामस्थान: FieldIf, FieldCompare, FieldDocVariable, FieldGoToButton, FieldMacroButton, और FieldPrint. सभी इसका कोर विरासत में लेते हैं Field सदस्यों का वर्णन किया गया है फ़ील्ड्स के साथ काम करना – GetFieldCode(), Update(), Remove(), Unlink(), Start/Separator/End, Result, और Format – यह पृष्ठ प्रत्येक के लिए विशिष्ट क्या है, इसे कवर करता है।
शर्तीय टेक्स्ट FieldIf के साथ
FieldIf को लागू करता है IF फ़ील्ड। LeftExpression, ComparisonOperator, और RightExpression स्थिति का वर्णन करें – वही तीन-भाग वाला आकार जिसका उपयोग किया गया है IComparisonExpressionEvaluator (देखें फ़ील्ड के साथ काम करना) – और TrueText / FalseText दो संभावित परिणामों को रखें। कॉल करें EvaluateCondition() स्थिति को सीधे मूल्यांकित करने के लिए; यह एक FieldIfComparisonResult मान लौटाता है: True, False, या Error.
FieldCompare के साथ मानों की तुलना
FieldCompare COMPARE फ़ील्ड को लागू करता है। FieldIf की तरह, यह तुलना का वर्णन करने के लिए LeftExpression, ComparisonOperator, और RightExpression को उजागर करता है, लेकिन दो टेक्स्ट विकल्पों के बीच स्विच करने के बजाय बूलियन-शैली का परिणाम उत्पन्न करता है।
डॉक्यूमेंट वेरिएबल्स FieldDocVariable के साथ
FieldDocVariable DOCVARIABLE फ़ील्ड को लागू करता है, अपने VariableName प्रॉपर्टी के माध्यम से एक नामित दस्तावेज़-स्कोप्ड वेरिएबल पढ़ता है।
बटन: FieldGoToButton और FieldMacroButton
FieldGoToButton GOTOBUTTON फ़ील्ड को लागू करता है: Location बुकमार्क, पेज, या अन्य गंतव्य का नाम देता है जहाँ कूदना है, और DisplayText दस्तावेज़ में दिखाया गया लेबल है। FieldMacroButton MACROBUTTON फ़ील्ड को लागू करता है: MacroName चलाने वाले मैक्रो का नाम देता है और DisplayText लेबल है। दोनों FieldIf और FieldMacroButton अतिरिक्त रूप से IMergeFieldSurrogate को लागू करते हैं, वह इंटरफ़ेस जिसका उपयोग Word के मेल-मर्ज-सजग फ़ील्ड अपने आप को प्रतिस्थापनीय सामग्री के रूप में चिह्नित करने के लिए करते हैं।
FieldPrint के साथ प्रिंट निर्देश
FieldPrint PRINT फ़ील्ड को लागू करता है: PrinterInstructions और PostScriptGroup प्रिंटर-विशिष्ट निर्देश रखते हैं जो सीधे दस्तावेज़ में एम्बेड किए गए होते हैं।
टिप्स और सर्वोत्तम प्रथाएँ
- बिना स्वयं
TrueText/FalseTextको पार्स किए,FieldIf.EvaluateCondition()का उपयोग करके शर्त के परिणाम (FieldIfComparisonResult) पढ़ें। FieldCompareऔरFieldIfसमानLeftExpression/ComparisonOperator/RightExpressionआकार साझा करते हैं – कोड जो एक तुलना अभिव्यक्ति बनाता या निरीक्षण करता है, दोनों फ़ील्ड प्रकारों में पुन: उपयोग किया जा सकता है।- याद रखें ये सभी हैं
Fieldउपवर्ग:GetFieldCode(),Update(),Remove(), औरUnlink()from फ़ील्ड्स के साथ काम करना इसे यहाँ बिल्कुल उसी तरह लागू करें।
सामान्य समस्याएँ
| समस्या | कारण | समाधान |
|---|---|---|
FieldIf.EvaluateCondition() लौटाता है Error | शर्त के ऑपरेण्ड या ऑपरेटर को जैसा लिखा है वैसा मूल्यांकित नहीं किया जा सका | वैध मानों के लिए LeftExpression, ComparisonOperator, और RightExpression की जाँच करें |
FieldDocVariable परिणाम अपेक्षित चर मान को प्रतिबिंबित नहीं करता है | VariableName दस्तावेज़ में वास्तव में मौजूद चर नाम से मेल नहीं खाता है | पढ़ने से पहले सटीक वेरिएबल नाम की पुष्टि करें और यह सुनिश्चित करें कि वह मौजूद है Result |
FieldGoToButton/FieldMacroButton प्रदर्शित पाठ Word में दिखाए गए से मेल नहीं खाता | DisplayText को फ़ील्ड अपडेट होने से पहले पढ़ा गया था, या इसे बिना मिलते-जुलते Update() कॉल के सेट किया गया था | फ़ील्ड पर Update() को कॉल करें, या किसी भी परिवर्तन के बाद DisplayText को पुनः पढ़ें |
FAQ
मैं शर्तीय IF फ़ील्ड का परिणाम कैसे पढ़ूं?
कच्चे FieldIfComparisonResult के लिए FieldIf.EvaluateCondition() को कॉल करें, या फ़ील्ड द्वारा स्विच किए जाने वाले दो शाब्दिक पाठ विकल्पों के लिए TrueText / FalseText पढ़ें।
FieldIf और FieldCompare में क्या अंतर है?
FieldIf (IF फ़ील्ड) अपनी शर्त के आधार पर TrueText और FalseText के बीच स्विच करता है। FieldCompare (COMPARE फ़ील्ड) समान तुलना रूप साझा करता है लेकिन वैकल्पिक पाठ के बजाय बूलियन-स्टाइल परिणाम उत्पन्न करता है।
मैं DOCVARIABLE फ़ील्ड से दस्तावेज़ वैरिएबल का नाम कैसे पढ़ूं?
पढ़ें FieldDocVariable.VariableName.
मैं GOTOBUTTON फ़ील्ड के गंतव्य को कैसे खोजूँ?
पढ़ें FieldGoToButton.Location; DisplayText दस्तावेज़ में बटन के लिए दिखाया गया लेबल देता है।
API Reference सारांश
| Class / Enum | विवरण |
|---|---|
FieldIf | IF field; LeftExpression, ComparisonOperator, RightExpression, TrueText, FalseText, EvaluateCondition() |
FieldIfComparisonResult | Enum परिणाम FieldIf.EvaluateCondition() का: True, False, Error |
FieldCompare | COMPARE field; LeftExpression, ComparisonOperator, RightExpression |
FieldDocVariable | DOCVARIABLE field; VariableName |
FieldGoToButton | GOTOBUTTON फ़ील्ड; Location, DisplayText |
FieldMacroButton | MACROBUTTON फ़ील्ड; MacroName, DisplayText |
FieldPrint | PRINT फ़ील्ड; PrinterInstructions, PostScriptGroup |