SHOW:
|
|
- or go back to the newest paste.
1 | - | 'VRB Pubbliche |
1 | + | 'Solid DXF |
2 | ||
3 | - | Option Explicit |
3 | + | Dim swApp As SldWorks.SldWorks |
4 | Dim Model As ModelDoc2 | |
5 | - | Public PRG_NUM(5) As String 'MATRICE CON NUMERI DI PROGRAMMA |
5 | + | Dim DTable As DesignTable |
6 | - | Public PRG_TOT As String 'NUMERO PROGRAMMA FINALE |
6 | + | Dim WS_OBJ As Excel.Worksheet |
7 | - | Public YEARS As Integer 'ANNO |
7 | + | Dim part As Object |
8 | Dim SelMgr As Object | |
9 | - | Public INPUT_FOLDER As String 'CARTELLE |
9 | + | Dim NR_View As Byte |
10 | - | Public OUTPUT_FOLDER As String |
10 | + | |
11 | - | Public SLD_PTH As String |
11 | + | |
12 | - | Public DXF_FOLD As String |
12 | + | Sub MODEL_SUB(ByVal NFD As String, ByVal ACTACT As Byte) |
13 | - | Public DXF_CFOLD As String |
13 | + | ACT_MOD = INFO_DAT(NFD, 0, 6) |
14 | - | Public NST_FOLD As String |
14 | + | |
15 | - | 'Public NST_FOLD2 As String |
15 | + | Set swApp = CreateObject("SldWorks.Application") |
16 | - | Public SPC_FOLD As String |
16 | + | swApp.Visible = False |
17 | - | Public FNLANTE_FOLDER As String |
17 | + | |
18 | - | Public DXF_ANTE_18 As String |
18 | + | Set part = swApp.OpenDoc6(SLD_PTH & Left(INFO_DAT(NFD, 0, 6), 10) & INFO_DAT(NFD, 0, 9) & ".SLDPRT", 1, 0, "", 0, 0) 'AGGIUNTA REVISIONE |
19 | - | Public DXF_ANTE_15 As String |
19 | + | Select Case swApp.ActiveDoc.Extension.HasDesignTable() |
20 | Case True | |
21 | Case False | |
22 | - | Public NN_CODE As Integer 'NUMERO CODICI PER PRODUZIONE ESTERNA |
22 | + | MsgBox "THIS FILE DO NOT CONTAINS ANY TABLE DESIGN", vbCritical |
23 | - | Public NN_MAT As Integer 'NUMERO MATERIALI PER PRODUZIONE ESTERNA |
23 | + | Exit Sub |
24 | - | Public STR_COD(1000) As String 'MATRICE CON I CODICI DELLE PORTE |
24 | + | End Select |
25 | - | Public STR_MTR(40) As String 'MATRICE CON MATERIALI |
25 | + | Set Model = swApp.ActiveDoc |
26 | filePth = Model.GetPathName | |
27 | ||
28 | - | Public INFO_VAR(4, 100) As String 'MATRICE TRASPORTO DATI; LA RIGA 0 CONTIENE I DATI GENERALI LA RIGA 1 CONTIENE LE ETICHETTE, LA RIGA 2 I CORRISPONDENTI VALORI |
28 | + | STR_FNAME = Right(filePth, InStr(1, StrReverse(filePth), "\", vbBinaryCompare) - 1) |
29 | - | Public INFO_DAT(5000, 2, 100) As String 'MATRICE DATI COMPLESSIVA:IL 1°INDICE E'PROGRESSIVO FILE GLI ALTRI SONO INFO _VAR |
29 | + | |
30 | - | Public INFO_PST(5000, 2, 100) As String 'MATRICE DATI FILE CSV PIASTRONI FIBRA |
30 | + | Set DTable = Model.GetDesignTable |
31 | - | Public NM_DT As Integer 'NUMERO DATI TOTALI |
31 | + | GET_ERR = swApp.GetErrorMessages(vMsgs, vMsgIds, vMsgTypes) 'RESETTA LO STACK MESSAGGI |
32 | ||
33 | - | Public DXF_LST As Variant, I2 As Integer 'LISTE DXF INTERNI, DXF ESTERNI E PROGRAMMI S4 |
33 | + | isGood = DTable.Attach |
34 | - | 'Public DXF_LST_EXT As Variant, I1 As Integer |
34 | + | If isGood = False Then |
35 | - | 'Public DXF_LST_EXT2 As Variant, I12 As Integer |
35 | + | MsgBox "Table attachment failed", vbCritical |
36 | - | Public DXF_OUT As Variant, I3 As Integer |
36 | + | Exit Sub |
37 | - | 'Public DXF_18 As Variant, I4 As Integer |
37 | + | End If |
38 | - | 'Public DXF_15 As Variant, I5 As Integer |
38 | + | |
39 | Set WS_OBJ = DTable.Worksheet | |
40 | Call TAB_EDT(NFD) | |
41 | - | Public VAR_APE As Integer 'VARIABILE CHE DICE SE PRODURRE INTERNAMENTE O ESTERNAMENTE |
41 | + | Call MOD_CHECK(NFD) |
42 | - | Public VCF As Integer |
42 | + | |
43 | VVVV = Replace(INFO_DAT(NFD, 0, 7), "H", "") | |
44 | - | Public TOOL_VAR(20, 100, 7) As String 'MATRICE DATI TORRETTA CARICATA DAL FOGLIO TOOLS |
44 | + | VVVV = Replace(VVVV, "G", "") |
45 | VVVV = Replace(VVVV, "P", "") | |
46 | VVVV = Val(VVVV) | |
47 | - | Public ACT_MOD As String |
47 | + | |
48 | - | Public NHD As Integer |
48 | + | VW = VW_SET(VVVV) |
49 | RW = DTable.Worksheet.Range("VW_ROT", "VW_ROT").Value | |
50 | MD = INFO_DAT(NFD, 0, 9) | |
51 | ||
52 | - | Public QCSP As Single |
52 | + | For i = 1 To 100 |
53 | - | Public PULS_TYPE As Byte |
53 | + | If InStr(1, INFO_DAT(NFD, 1, i), "MOD", vbTextCompare) > 0 Then |
54 | - | Public INDIC_TYPE As Byte |
54 | + | REV_ON_DAT = INFO_DAT(NFD, 2, i) |
55 | - | Public CUR_COM As String |
55 | + | Exit For |
56 | End If | |
57 | Next i | |
58 | - | Public BLC_DAT(5000, 10, 100) As String 'matrice e variabili per validazione dati fineline |
58 | + | |
59 | - | Public kl As Integer |
59 | + | If MD <> REV_ON_DAT Then MsgBox "ATTENZIONE: INDICE DI REVISIONE ERRATO SU MODELLO " & INFO_VAR(0, 0), vbCritical |
60 | DTable.UpdateModel | |
61 | - | '************************************************************************************************************** |
61 | + | DTable.Detach |
62 | GET_ERROR = swApp.GetErrorMessages(vMsgs, vMsgIds, vMsgTypes) | |
63 | - | Public MAT_NST(20, 1000, 4, 3) As String 'MATRICE PER IL NESTING |
63 | + | If GET_ERROR > 0 Then INFO_DAT(NFD, 0, 20) = ERR_TRAPP(GET_ERROR, vMsgs, vMsgIds, vMsgTypes) Else INFO_DAT(NFD, 0, 20) = "" |
64 | - | Public MATNEST(20, 200, 10) As String |
64 | + | |
65 | Call SUB_DXF(NFD, VW, RW, ACTACT) | |
66 | - | Public ANT_NST(20, 1000, 8, 3) As String 'MATRICE PER IL NESTING ANTE |
66 | + | |
67 | - | Public ANTNST(20, 500, 2) As String |
67 | + | Erase INFO_VAR |
68 | NR_View = Empty | |
69 | ||
70 | - | Public INST(17, 150, 40, 40, 14) As String 'MATRICE INFO NESTING |
70 | + | Set part = swApp.ActiveDoc |
71 | Set SelMgr = part.SelectionManager | |
72 | - | '(0,0,0,0,1) = NUMERO PROGRAMMA |
72 | + | Set part = Nothing |
73 | - | '(0,0,0,0,2) = NUMERO MATERIALI PRESENTI DA NESTRARE |
73 | + | swApp.CloseDoc STR_FNAME |
74 | - | '(0,0,0,0,3) = DIMENSIONE TAGLIO IN X |
74 | + | 'swApp.ExitApp |
75 | - | '(0,0,0,0,4) = DIMENSIONE TAGLIO IN Y |
75 | + | |
76 | - | '(0,0,0,0,5) = MASSIMO SVUOTAMENTO IN X A DX DEL PEZZO |
76 | + | |
77 | - | '(0,0,0,0,6) = MASSIMO RIFILO IN X A SX DEI PEZZI OLTRE IL QUALE IL FOGLIO VIENE TAGLIATO |
77 | + | RRR: |
78 | - | '(NM,0,0,0,0) = NOME DEL MATERIALE NM |
78 | + | |
79 | - | '(NM,0,0,0,1) = NUMERO DI NESTING NEL MATERILAE NM |
79 | + | |
80 | - | '(NM,0,0,0,2) = SPESSORE DEL MATERIALE |
80 | + | End Sub |
81 | ||
82 | - | '(NM,NN,0,0,0) = NOME DEL N-ESIMO NESTING DEL MATERIALE NM |
82 | + | Sub TAB_EDT(ByVal NFG As Integer) |
83 | - | '(NM,NN,0,0,1) = TESTA DEL N-ESIMO NESTING DEL MATERIALE NM |
83 | + | Set DTable = part.GetDesignTable |
84 | - | '(NM,NN,0,0,2) = QUANTITÃ DEL N-ESIMO NESTING DEL MATERIALE NM |
84 | + | If DTable.Attach = False Then |
85 | - | '(NM,NN,0,0,3) = DIMENSIONE Y DEL N-ESIMO NESTING DEL MATERIALE NM |
85 | + | MsgBox "Table attachment failed", vbCritical |
86 | - | '(NM,NN,0,0,4) = DIMENSIONE X DEL N-ESIMO NESTING DEL MATERIALE NM |
86 | + | Exit Sub |
87 | - | '(NM,NN,0,0,5) = NUMERO RIGHE DEL N-ESIMO NESTING DEL MATERIALE NM |
87 | + | End If |
88 | - | '(NM,NN,0,0,6) = STRINGA DEL N-ESIMO NESTING DEL N-ESIMO MATERIALE |
88 | + | |
89 | - | '(MN,NN,0,0,8) = ALTEZZA TOP DEL MATERIALE MN E DEL NESTING NN |
89 | + | On Error GoTo ERR_LBL |
90 | - | '(MN,NN,0,0,9) = BANDELLA IN PINZA O IN ALTO |
90 | + | VARCOUNT = 0 |
91 | - | '(MN,NN,0,0,10) = SVUOTAMENTO LATERALE MINIMO DEL MATERIALE MN, DEL NESTING NN |
91 | + | TAB_NAM = ActiveWorkbook.Name |
92 | - | '(MN,NN,0,0,11) = NUMERO COMPLESSIVO PEZZI CONTENUTI UN NESTING |
92 | + | For Each NAMS In Workbooks(TAB_NAM).Names |
93 | - | '(MN,NN,0,0,12) = SHIFT Y DEL NESTING (SI USA IN CASO DI UTILIZZO PARZIALE IN Y DEL FOGLIO, I PEZZI VENGONO ALLONTANATI DALLE PINZE DELLA QUANTITA' SHIFT Y) |
93 | + | If InStr(1, NAMS.Name, "VAR_", vbBinaryCompare) Then |
94 | - | '(MN,NN,0,0,13) = MINORE SPOSTAMENTO LATERALE SINISTRO DEL MATERIALE MN, DEL NESTING NN E DELLA RIGA RR MA > 250 - PER BANDELLA LATERALE DX |
94 | + | DTable.Worksheet.Range(NAMS.Name, NAMS.Name).Value = 0 |
95 | VARCOUNT = VARCOUNT + 1 | |
96 | - | '(NM,NN,RR,0,0) = NUMERO DI COLONNE DELLA N-ESIMA RIGA DEL N-ESIMO NESTING DEL N-ESIMO MATERIALE |
96 | + | End If |
97 | - | '(NM,NN,RR,0,7) = ALTEZZA DELLA RIGA RR, NESTING NN E MATERIALE NM |
97 | + | Next NAMS |
98 | - | '(MN,NN,RR,0,10) = SVUOTAMENTO LATERALE DESTRO DEL MATERIALE MN, DEL NESTING NN E DELLA RIGA RR |
98 | + | |
99 | - | '(MN,NN,RR,0,11) = SPOSTAMENTO LATERALE SINISTRO DEL MATERIALE MN, DEL NESTING NN E DELLA RIGA RR |
99 | + | For i = 1 To 100 |
100 | - | '(MN,NN,RR,0,12) = DIMENSIONE IN X DELLA RIGA RR, DEL NESTING NN E DEL MATERIALE MN |
100 | + | LAB = Replace(INFO_DAT(NFG, 1, i), ".", "") |
101 | VLR = INFO_DAT(NFG, 2, i) | |
102 | - | '(NM,NN,RR,CC,0) = NOME DELLA PARTE |
102 | + | |
103 | - | '(NM,NN,RR,CC,1) = DIMENSIONE X DELLA PARTE |
103 | + | If InStr(1, LAB, "VER", vbBinaryCompare) > 0 Then |
104 | - | '(NM,NN,RR,CC,2) = DIMENSIONE Y DELLA PARTE |
104 | + | VLR = Replace(VLR, "H", "") |
105 | - | '(NM,NN,RR,CC,3) = COORDINATA X DELLA PARTE |
105 | + | VLR = Replace(VLR, "G", "") |
106 | - | '(NM,NN,RR,CC,4)= COORDINATA Y DELLA PARTE |
106 | + | VLR = Replace(VLR, "P", "") |
107 | - | '(MN,NN,RR,CC,5) = SPESSORE DELLA PARTE |
107 | + | VLR = Val(VLR) |
108 | - | '(MN,NN,RR,CC,6) = CONTROLLO TESTA DELLA PARTE |
108 | + | End If |
109 | - | '(NM,NN,RR,CC,9) = COORDINATA X FINALE DELLA PARTE |
109 | + | |
110 | - | '(NM,NN,RR,CC,10) = COORDINATA Y SUP DELLA PARTE |
110 | + | For Each NAMS In Workbooks(TAB_NAM).Names |
111 | - | '(MN,NN,RR,CC,8) = COMMESSA DELLA PARTE |
111 | + | If InStr(1, NAMS.Name, ".", vbBinaryCompare) > 0 Then MsgBox "ERRORE ETICHETTA SU TABELLA " & swApp.ActiveDoc |
112 | - | '(MN,NN,RR,CC,7) = CODICE DISEGNO DELLA PARTE |
112 | + | If NAMS.Name = "VAR_" & LAB Then |
113 | - | '(MN,NN,RR,CC,11) = COORDINATA SCARICO DELLA PARTE |
113 | + | DTable.Worksheet.Range("VAR_" & LAB, "VAR_" & LAB).Value = VLR |
114 | VARWRITE = VARWRITE + 1 | |
115 | End If | |
116 | - | Public STR_OUT(32) As String 'COMANDI DI SCARICO PER PAR |
116 | + | Next NAMS |
117 | - | Public CLAMP As Integer 'COMANDI PER PEZZO IN PINZA O NO |
117 | + | Next i |
118 | - | Public PUNCHING_MACHINE As String |
118 | + | |
119 | DTable.UpdateModel | |
120 | - | 'TOOL |
120 | + | DTable.Detach |
121 | - | Public TL_CUT_V As String |
121 | + | GoTo ENDSUB |
122 | - | Public TL_CUT_V2 As String |
122 | + | ERR_LBL: |
123 | - | Public LUTV As Double |
123 | + | MsgBox "ERRORE SU TABELLA " & INFO_DAT(NFG, 0, 6) |
124 | - | Public LUTV2 As Double |
124 | + | ENDSUB: |
125 | - | Public TL_CUT_O As String |
125 | + | End Sub |
126 | - | Public LUTH As Double |
126 | + | |
127 | - | Public TL_CUT_SQ1 As String |
127 | + | Sub SUB_DXF(ByVal NFG As Integer, ByVal V_VIEW As Byte, ByVal R_VIEW As Double, ByVal ACTACT As Byte) |
128 | - | Public TL_CLN As String |
128 | + | |
129 | - | Public TL_MCRG As String |
129 | + | Dim boolstatus As Boolean |
130 | - | Public TCUT As Double |
130 | + | Dim longstatus As Long, longwarnings As Long |
131 | - | Public H_SQ1 As Double |
131 | + | Dim Feature As Object |
132 | - | Public OFS_TRAV As Double |
132 | + | Dim filePth As String |
133 | - | Public LRC As Double |
133 | + | Dim DrawWiew As Object |
134 | - | Public RRC As Double |
134 | + | Dim sVWiew As SldWorks.View |
135 | - | Public x_LRC As Double |
135 | + | |
136 | Set swModel = swApp.ActiveDoc | |
137 | - | 'RIFILI |
137 | + | Set part = swApp.ActiveDoc |
138 | - | Public RIF_SUP As Double |
138 | + | Set SelMgr = part.SelectionManager |
139 | - | Public RIF_SX As Double |
139 | + | |
140 | - | Public RIF_DX As Double |
140 | + | filePth = swModel.GetPathName |
141 | - | Public RIF_ANT As Double |
141 | + | drvVal = Left(filePth, 1) |
142 | - | Public BANDL As Double |
142 | + | lenext = InStr(1, StrReverse(filePth), "\", vbBinaryCompare) - 1 |
143 | - | Public MCR_X As Double |
143 | + | fileName = Left(Right(filePth, lenext), Len(Right(filePth, lenext)) - InStr(1, StrReverse(Right(filePth, lenext)), ".", vbBinaryCompare)) |
144 | - | Public MCR_Y As Double |
144 | + | |
145 | part.SetBendState 2 | |
146 | - | Public POS_PINZE As String |
146 | + | boolstatus = part.EditRebuild3 |
147 | ||
148 | 'Set part = swApp.OpenDoc6("\\NT1\TEP-VAULT\SWP\WitturETODrawing.DRWDOT", 3, 0, "", longstatus, longwarnings) | |
149 | - | Public NPAR_FLD As String |
149 | + | Set part = swApp.OpenDoc6("\\nt1\UFFTEP\3D_parametrizzati\SWP\WitturETODrawing.DRWDOT", 3, 0, "", longstatus, longwarnings) |
150 | - | Public PAR_FLD As String |
150 | + | Set DrawWiew = part.CreateDrawViewFromModelView2(filePth, VDS(V_VIEW), 0, 0, 0) |
151 | - | Public VPR_FLD As String |
151 | + | |
152 | - | Public PDF_FLD As String |
152 | + | boolstatus = part.Extension.SelectByID2(NAME_VW, "DRAWINGVIEW", 0, 0, 0, False, 0, Nothing, 0) |
153 | - | Public IN_FLD As String |
153 | + | boolstatus = part.DrawingViewRotate(R_VIEW / 57.29578) 'TO ROTATE VIEW |
154 | - | Public VIPROS_FLD As String |
154 | + | |
155 | - | Public PAR_DXF_FLD As String |
155 | + | Set swModel = swApp.ActiveDoc |
156 | Set swSelMgr = swModel.SelectionManager | |
157 | - | Public STIPITI As String |
157 | + | Set swModelDocExt = swModel.Extension |
158 | - | Public STIPITI_PORTALI As String |
158 | + | |
159 | - | Public LATO_BATTUTA As String |
159 | + | Call DRW_CLR(1) |
160 | - | Public STIPITI_SLIM As String |
160 | + | |
161 | - | Public RIVESTIMENTI_SLIM As String |
161 | + | |
162 | - | Public ANTE As String |
162 | + | If ACTACT = 1 Then |
163 | - | Public ANTE_2 As String |
163 | + | If Application.UserName = "Galloni A." Or Application.UserName = "Sassi, Samuele (Wittur Italy)" Or Application.UserName = "Armencea, Decebal (Wittur Italy)" Then |
164 | - | Public RIV_2 As String |
164 | + | part.SaveAs2 OUTPUT_FOLDER & INFO_DAT(NFG, 0, 16) & ".DXF", 0, True, False 'NOME CON CUI SI SALVA IL DXF |
165 | - | Public RIVESTIMENTI_ANTA As String |
165 | + | Else |
166 | - | Public RINFORZI_SALD As String |
166 | + | part.SaveAs2 DXF_CFOLD & INFO_DAT(NFG, 0, 16) & ".DXF", 0, True, False 'NOME CON CUI SI SALVA IL DXF |
167 | - | Public RINFORZI_MTG As String |
167 | + | End If |
168 | - | Public TRAVERSA As String |
168 | + | End If |
169 | - | Public TRAVERSA_PORTALE As String |
169 | + | If ACTACT = 2 Then part.SaveAs2 OUTPUT_FOLDER & INFO_DAT(NFG, 0, 16) & ".DXF", 0, True, False |
170 | - | Public SOTTOSOGLIA As String |
170 | + | |
171 | - | Public RINFORZI_TRF As String |
171 | + | |
172 | - | Public STAFFE As String |
172 | + | Set part = swApp.ActiveDoc |
173 | - | Public COPRIFESSURA As String |
173 | + | Set SelMgr = part.SelectionManager |
174 | - | Public PARAMENTI As String |
174 | + | Set part = Nothing |
175 | - | Public ENTRANCE As String |
175 | + | swApp.CloseDoc swApp.ActiveDoc.GetTitle |
176 | - | Public ALTRO_TRF As String |
176 | + | Set part = swApp.ActivateDoc2(filePth, False, longstatus) |
177 | - | Public ALTRO_VPR As String |
177 | + | |
178 | - | Public ALTRO_EMZ As String |
178 | + | part.SetBendState 3 |
179 | - | Public PIASTRONI_CAR As String |
179 | + | boolstatus = part.EditRebuild3 |
180 | - | Public PIASTRONI_LAND As String |
180 | + | |
181 | - | Public ENTRANCE_2 As String |
181 | + | |
182 | End Sub | |
183 | ||
184 | - | Public PREV As String |
184 | + | |
185 | - | Public FORMATISS(200, 8) As String |
185 | + | Function VDS(ByVal NVIEW As Byte) As String |
186 | - | Public BONOS(1500, 2) As String |
186 | + | |
187 | - | Public YYERR As String |
187 | + | LNG = UCase(swApp.GetCurrentLanguage) |
188 | ||
189 | Select Case LNG | |
190 | - | Public DSCM(200, 2) As String |
190 | + | Case "ENGLISH" |
191 | - | Public INFO_MAT(200, 11) As String |
191 | + | CLang = 1 |
192 | - | Public tiemp(200, 2) As String |
192 | + | Case "ITALIANO", "ITALIAN" |
193 | CLang = 2 | |
194 | - | Public SPC_R_OLD As String |
194 | + | Case Else |
195 | - | Public QCSP_OLD As Single |
195 | + | MsgBox "Errore su linguaggio", vbCritical |
196 | - | Public VAR_ACCORP As Integer |
196 | + | End Select |
197 | - | Public VAR_PIASTRFIBRA As Integer |
197 | + | |
198 | - | Public VAR_ERRACC As Integer |
198 | + | Select Case NVIEW |
199 | Case 1 | |
200 | - | Public TL_PUNCH(2000, 200) As String |
200 | + | If CLang = 1 Then VDS = "*Top" |
201 | - | Public tool_use(50, 2) As String |
201 | + | If CLang = 2 Then VDS = "*Superiore" |
202 | Case 2 | |
203 | - | Public FNL_SEQUENCING As Integer |
203 | + | If CLang = 1 Then VDS = "*Bottom" |
204 | If CLang = 2 Then VDS = "*Inferiore" | |
205 | - | Public RPT_SPC(100, 20, 3) As String 'REPORT PER INSERIEMNTO VALORI SPACCHI MANUALMENTE |
205 | + | Case 3 |
206 | - | Public RP As Integer 'CONTATORE RIGHE REPORT |
206 | + | If CLang = 1 Then VDS = "*Right" |
207 | - | Public RP2 As Integer 'CONTATORE RIGHE REPORT |
207 | + | If CLang = 2 Then VDS = "*Destra" |
208 | Case 4 | |
209 | - | Public VPRSS As Integer |
209 | + | If CLang = 1 Then VDS = "*Left" |
210 | If CLang = 2 Then VDS = "*Sinistra" | |
211 | - | Public comm_omg_spc As String |
211 | + | Case 5 |
212 | If CLang = 1 Then VDS = "*Front" | |
213 | - | Public COD_ETICHETTATI As String |
213 | + | If CLang = 2 Then VDS = "*Frontale" |
214 | - | Public STR_VR_ACC As String |
214 | + | End Select |
215 | - | Public STR_VR_FIBRA As String |
215 | + | |
216 | ||
217 | - | Public LISTA_MAT_FNL As Integer |
217 | + | End Function |
218 | ||
219 | - | Public FGL_REC As Integer |
219 | + | |
220 | - | Public MAT_FGL_RECUPERO As String |
220 | + | Function NAME_VW() As String |
221 | ||
222 | - | Public ULTF As Integer |
222 | + | Dim swModel As SldWorks.ModelDoc2 |
223 | - | Public ULTF2(300) As String |
223 | + | Dim swDraw As SldWorks.DrawingDoc |
224 | Dim swSheet As SldWorks.Sheet | |
225 | Dim sVWiew As SldWorks.View | |
226 | ||
227 | Set swModel = swApp.ActiveDoc | |
228 | Set swDraw = swModel | |
229 | Set sVWiew = swDraw.GetFirstView | |
230 | Set sVWiew = sVWiew.GetNextView | |
231 | ||
232 | NAME_VW = sVWiew.GetName2 | |
233 | ||
234 | If NAME_VW <> "" Then Else MsgBox "NESSUNA VISTA CARICATA", vbCritical | |
235 | ||
236 | ||
237 | End Function | |
238 | ||
239 | ||
240 | Function VW_SET(ByVal NV As String) As Byte | |
241 | ||
242 | NV = Replace(NV, "G", "") | |
243 | NV = Replace(NV, "H", "") | |
244 | ||
245 | On Error Resume Next | |
246 | VW_SET = 99 | |
247 | NVR = Val(Trim(NV)) | |
248 | ||
249 | VW_SET = DTable.Worksheet.Range("VW_00", "VW_00").Value | |
250 | If VW_SET = 99 Then | |
251 | ||
252 | ||
253 | Select Case NVR | |
254 | Case 1, 3 | |
255 | VW_SET = DTable.Worksheet.Range("VW_01", "VW_01").Value | |
256 | Case 2, 4 | |
257 | VW_SET = DTable.Worksheet.Range("VW_02", "VW_02").Value | |
258 | End Select | |
259 | End If | |
260 | ||
261 | End Function | |
262 | ||
263 | ||
264 | ||
265 | ||
266 | ||
267 | ||
268 | Sub DRW_CLR(ByVal ZSD As Byte) | |
269 | ||
270 | Set swDraw = swApp.ActiveDoc | |
271 | Set swSheet = swDraw.GetCurrentSheet | |
272 | Set swView = swDraw.GetFirstView | |
273 | Set swView = swView.GetNextView | |
274 | Set swAnn = swView.GetFirstAnnotation | |
275 | Do While Not Nothing Is swAnn | |
276 | swAnn.Visible = 3 | |
277 | Set swAnn = swAnn.GetNext3 | |
278 | Loop | |
279 | ||
280 | Set part = swApp.ActiveDoc | |
281 | Set SelMgr = part.SelectionManager | |
282 | boolstatus = part.SetUserPreferenceToggle(196, False) | |
283 | ||
284 | End Sub | |
285 | ||
286 | ||
287 | Sub MOD_CHECK(ByVal NFG As Integer) | |
288 | ||
289 | On Error GoTo ERR | |
290 | INFO_VAR(0, 1) = DTable.Worksheet.Range("REV_IND", "REV_IND").Value | |
291 | GoTo ENDFUNCT | |
292 | ERR: | |
293 | MsgBox "ATTENZIONE: NON RILEVATO INDICE DI REVISIONE SU MODELLO " & INFO_DAT(NFG, 0, 0) | |
294 | ENDFUNCT: | |
295 | ||
296 | End Sub | |
297 | ||
298 | ||
299 | Function ERR_TRAPP(Count, vMsgs As Variant, vMsgIds As Variant, vMsgTypes As Variant) As String | |
300 | ERR_STR = "" | |
301 | For i = 0 To (Count - 1) | |
302 | ERR_STR = ERR_STR & " " & vMsgs(i) | |
303 | Next i | |
304 | ERR_STR = Replace(ERR_STR, Chr(13), "") | |
305 | ERR_TRAPP = Trim(Replace(ERR_STR, "Avvertenza: ", "")) | |
306 | ||
307 | End Function | |
308 | ||
309 | ||
310 | ||
311 | ||
312 | ||
313 |