שדות אוטומציה של מסמך (IF, COMPARE, MACROBUTTON, ועוד)

שדות אוטומציה של מסמך (IF, COMPARE, MACROBUTTON, ועוד)

שדות אוטומציה של מסמכים (IF, COMPARE, ועוד)

מדריך זה מציג כיצד לעבוד עם משפחת השדות של האוטומציה במסמכי Word ב Aspose.Words קוד פתוח חופשי עבור .NET – שדות המניעים טקסט מותנה, מאחסנים משתנים ברמת המסמך, ומחברים מקרו, ניווט והתנהגות הדפסה, במקום רק להציג ערך מחושב. כל אחד הוא Field תת-מחלקה ב 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 מכילים הוראות ספציפיות למדפסת המוטמעות ישירות במסמך.


טיפים ושיטות עבודה מומלצות

  • השתמש ב-FieldIf.EvaluateCondition() כדי לקרוא את תוצאת התנאי (FieldIfComparisonResult) מבלי צורך לנתח את TrueText/FalseText בעצמך.
  • FieldCompare ו-FieldIf חולקים את אותה הצורה LeftExpression/ComparisonOperator/ RightExpression – קוד הבונה או בוחן ביטוי השוואה אחד יכול להיות משומש מחדש עבור שני סוגי השדות.
  • זכרו שאלו כולם Field מחלקות משנה: GetFieldCode(), Update(), Remove(), ו Unlink() from עבודה עם שדות החל בדיוק באותו האופן כאן.

בעיות נפוצות

בעיהסיבהתיקון
FieldIf.EvaluateCondition() מחזיר Errorלא ניתן היה להעריך את האופרנדים או האופרטור של התנאי כפי שנכתבובדוק את LeftExpression, ComparisonOperator ו-RightExpression עבור ערכים תקינים
התוצאה של FieldDocVariable אינה משקפת ערך משתנה צפויVariableName אינו תואם שם משתנה הקיים בפועל במסמךאשר את שם המשתנה המדויק וודא שהוא קיים לפני קריאת Result
הטקסט המוצג של FieldGoToButton/FieldMacroButton אינו תואם למה שמציג WordDisplayText נקרא לפני שהשדה עודכן, או שהוגדר ללא קריאה תואמת של Update()הפעל Update() על השדה, או קרא מחדש את DisplayText לאחר כל שינוי בו

FAQ

איך אני קורא את תוצאת השדה המותנה IF?

השתמש ב-FieldIf.EvaluateCondition() לקבלת ה-FieldIfComparisonResult הגולמי, או קרא את TrueText / FalseText עבור שתי אפשרויות הטקסט המילוליות שהשדה מתחלף ביניהן.

מה ההבדל בין FieldIf ל-FieldCompare?

FieldIf (השדה IF) מתחלף בין TrueText ל-FalseText בהתאם לתנאיו. FieldCompare (השדה COMPARE) חולק את אותה צורת השוואה אך מפיק תוצאה בסגנון בוליאני במקום טקסט חלופי.

איך אני קורא את שם משתנה המסמך משדה DOCVARIABLE?

קרא FieldDocVariable.VariableName.

איך אני מוצא את היעד של שדה GOTOBUTTON?

קרא FieldGoToButton.Location; DisplayText נותן את התווית המוצגת עבור הכפתור במסמך.


סיכום API Reference

מחלקה / Enumתיאור
FieldIfIF שדה; LeftExpression, ComparisonOperator, RightExpression, TrueText, FalseText, EvaluateCondition()
FieldIfComparisonResultתוצאת Enum של FieldIf.EvaluateCondition(): True, False, Error
FieldCompareCOMPARE שדה; LeftExpression, ComparisonOperator, RightExpression
FieldDocVariableDOCVARIABLE שדה; VariableName
FieldGoToButtonGOTOBUTTON שדה; Location, DisplayText
FieldMacroButtonMACROBUTTON שדה; MacroName, DisplayText
FieldPrintPRINT שדה; PrinterInstructions, PostScriptGroup

ראה גם

 עברית