איך לכתוב קוד מאקרו בסיסי לסולידוורקס ב VBA? - חלק ראשון








בשיעור הזה נכיר איך בנוי קוד מאקרו בסיסי בסולידוורקס שורה אחרי שורה,

נכיר סוגי משתנים - String , Long, boolean, Integer

נלמד איך פותחים קובץ אוטומטית באמצעות קוד מאקרו ואיך יוצרים בו שרטוט.


לצורך הלימוד, צרו לעצמכם קובץ PART ריק שמור עם שם עבור השיעור הזה.

בסוף השיעור (פוסט 2) מצורף הקוד המלא כך שתוכלו בנוחות להעתיק אותו במלואו. מומלץ קודם לקרוא את הפוסטים ורק לאחר מכן להתחיל לכתוב ממש.

תוכלו לשתף ולשאול בפורום סולידוורקס מאקרו


כדי ליצור קוד מאקרו חדש, ליחצו על הכפתור:





(אם אין לכם את סרגל הכלים של מאקרו, צפו בהסבר היכן למצוא אותו )


תנו שם לקובץ ושימרו אותו. לאחר הלחיצה על SAVE יפתח החלון הבא:





תוכלו בתמונה לראות מבנה ראשון לקוד. השורה הראשונה בקוד היא:


Dim swApp As Object

והיא הגדרת משתנה שהוא ברירת מחדל של הקוד. נשנה אותו, במקומה יש להגדיר בתחילתו של מאקרו (כמעט תמיד!) את שני המשתנים הבאים:

Dim swApp                    	As SldWorks.SldWorks
Dim swModel                  	As SldWorks.ModelDoc2

חשוב לדעת שכל המשתנים שנרצה להוסיף בקוד חייבים להופיע במקום הזה, הכוונה היא מעל השורה:

Sub Main()

מילת מפתח להגדרת משתנה, תמיד תופיע לפני שם המשתנה ---------- Dim

As ----------------------- הגדרת סוג המשתנה ואיזה פונקציות נוכל לקבל ממנו


משתנה ראשון:

swApp

תפקידו להכיל את הפונקציות הרלוונטיות לסולידוורקס כתוכנה - פתיחת התוכנה, פתיחת קובץ חדש, שימוש באפשרויות מערכת (SYSTEM OPTIONS) בתוך הקוד.

Set swApp = Application.SldWorks

: Set

מילת מפתח לקביעת ערכו של משתנה, משמעותה בשורה זו היא:

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


לדוגמא, השורה הבאה תפקידה לפתוח קובץ PART;


Set swModel = swApp.OpenDoc6(Filename, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings)


משמעות שורה זו היא;

קבע את ערכו של המשתנה swModel להיות קובץ ה PART שיפתח, באמצעות הפונקציה OpenDoc6 (היכנסו לקישור ללמוד על הפונקציה בדף ההסבר באתר סולידוורקס)


בדף ההסבר תוכלו לראות את הדוגמא הבאה:


Dim instance As ISldWorks
Dim FileName As System.String
Dim Type As System.Integer
Dim Options As System.Integer
Dim Configuration As System.String
Dim Errors As System.Integer
Dim Warnings As System.Integer
Dim value As ModelDoc2
 
value = instance.OpenDoc6(FileName, Type, Options, Configuration, Errors, Warnings)

בדוגמא רואים הגדרת 8 משתנים:


ISldWorks

הוא swApp אצלנו.


המשתנה הבא הוא:

FileName

הוא משתנה חדש מסוג: String, משתנה שמכיל תווים ואותיות.


FileName = "D:\Google Drive\A.SLDPRT"

בדוגמא רואים שהמשתנה הראשון בפונקציה לפתיחת קובץ הוא FileName, שתפקידו לנתב את הקוד לפתיחת קובץ ספציפי.

את הניתוב לקובץ מעתיקים באמצעות לחיצה על הקובץ בתוך התיקייה בכפתור ימני בעכבר תוך כדי לחיצה על כפתור שיפט, ושם בתפריט יש את האפשרות "העתק כנתיב", או "COPY AS PATH".


המשתנה הבא הוא:

Type

הוא משתנה חדש מסוג: Integer, משתנה שמכיל מספרים שלמים (ללא נקודה עשרונית)

תפקידו "להודיע" לפונקציה מאיזה סוג הקובץ שעליה לפתוח - האם הוא PART, ASSEMBLY או DRAWING.


אם Integer הוא משתנה של מספר, למה בדוגמא מופיע הביטוי "swDocPART"?

הסיבה לכך היא שהביטוי swDocPART הוא משתנה מובנה ב API של סולידוורקס (ליחצו על הקישור להסבר בדף ההסבר באתר סולידוורקס API), וערכו הוא 1. בגלל שהוא מובנה, לא צריך להגדיר אותו באמצעות מילת המפתח Dim.

הקובץ שנרצה לפתוח בשיעור זה הוא מסוג PART.


המשתנה הבא הוא:

Options

ונעמיק בו בשיעור אחר.


המשתנה הבא הוא:

Configuration

והוא משתנה מסוג String, שדרכו ניתן לספק לפונקציה את שם הקונפיגורציה שנרצה שתפתח בקובץ. אם רוצים שהקובץ יפתח בקונפיגורציה "DEFAULT", יש להזין " " בפונקציה כמו בדוגמא.


המשתנים הבאים הם:

Errors

Warnings

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


עד כאן לפסט הזה, מה עשינו עד כאן?

הסברנו על המשתנים הבסיסיים והסברנו על פונקציה חשובה ראשונה בקוד.


בפוסט הבא - נפתח שרטוט, ניצור עיגול ונסגור את השרטוט.

הירשמו כחברים באתר ותקבלו את הפוסטים הבאים ישר לתיבת המייל שלכם.