mrozer
-
Total Posts
:
3
- Scores: 0
-
Reward points
:
0
- Joined: 5/10/2010
-
Status: offline
|
vbscript+sql+access application
Monday, May 10, 2010 10:28 PM
( permalink)
i am very new user of this forum and also vbscript i write attached script for my case. it works fine but takes too much of time. i have to search all fields according to my purpose. is there any generic approach to make it more shorter time ? is there any alternative in stead of dbopenforwardonly or dbopendynaset ? how could i make it more faster ? regards mustafa Option Compare Database Private Sub Command0_Click() Set dosya = CurrentDb() Dim dskayitlar As Recordset Dim dskayitlar1 As Recordset Dim dskayitlar2 As Recordset Dim dskayitlar3 As Recordset Dim dskayitlar4 As Recordset Dim dskayitlar5 As Recordset Dim dskayitlar6 As Recordset Dim dskayitlar7 As Recordset Dim dskayitlar8 As Recordset Dim dskayitlar9 As Recordset Dim dskayitlar10 As Recordset Dim dskayitlar11 As Recordset Dim dskayitlar12 As Recordset Dim dskayitlar13 As Recordset Dim dskayitlar14 As Recordset Dim C$(10000, 1) Dim D$(10000, 1) Dim E$(10000, 1) Dim F$(10000, 1) Dim G$(15, 1) Dim K1$(4, 1) Dim L1$(12, 1) Dim H$(10000, 1) Dim L$(10000, 1) Dim J$(10000, 1) Dim K$(10000, 1) Dim alan$(4, 1) vSQL$ = " SELECT * FROM Cweld WHERE [Field1] Is Null" Set dskayitlar = dosya.OpenRecordset(vSQL$, dbOpenDynaset) kayitsayisi = dskayitlar.RecordCount t = 0 s = 0 Do Until dskayitlar.EOF hesap1$ = dskayitlar!Field2 hesap2$ = dskayitlar!Field3 vSQL1$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap1$ Set dskayitlar1 = dosya.OpenRecordset(vSQL1$, dbOpenForwardOnly) hesap3$ = dskayitlar1!Field4 hesap4$ = dskayitlar1!Field5 hesap5$ = dskayitlar1!Field6 If dskayitlar1!Field7 <> Empty Then hesap6$ = dskayitlar1!Field7 Else hesap6$ = 0 End If 'C$(i, 1) = hesap3$ 'D$(i, 1) = hesap4$ 'E$(i, 1) = hesap5$ 'F$(i, 1) = hesap6$ vSQL2$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap2$ Set dskayitlar2 = dosya.OpenRecordset(vSQL2$, dbOpenForwardOnly) hesap7$ = dskayitlar2!Field4 hesap8$ = dskayitlar2!Field5 hesap9$ = dskayitlar2!Field6 If dskayitlar2!Field7 <> Empty Then hesap10$ = dskayitlar2!Field7 Else hesap10$ = 0 End If 'G$(i, 1) = hesap7$ 'H$(i, 1) = hesap8$ 'J$(i, 1) = hesap9$ 'K$(i, 1) = hesap10$ For ii = 1 To 4 alan$(1, 1) = "[Field4]=" alan$(2, 1) = "[Field5]=" alan$(3, 1) = "[Field6]=" alan$(4, 1) = "[Field7]=" vSQL3$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap3$ Set dskayitlar3 = dosya.OpenRecordset(vSQL3$, dbOpenForwardOnly) Do Until dskayitlar3.EOF If ii = 1 Then hesap11$ = dskayitlar3!Field5 hesap12$ = dskayitlar3!Field6 If dskayitlar3!Field7 <> Empty Then hesap13$ = dskayitlar3!Field7 Else hesap13$ = 0 End If End If If ii = 2 Then hesap11$ = dskayitlar3!Field4 hesap12$ = dskayitlar3!Field6 If dskayitlar3!Field7 <> Empty Then hesa13$ = dskayitlar3!Field7 Else hesap13$ = 0 End If End If If ii = 3 Then hesap11$ = dskayitlar3!Field4 hesap12$ = dskayitlar3!Field5 If dskayitlar3!Field7 <> Empty Then hesap13$ = dskayitlar3!Field7 Else hesap13$ = 0 End If End If If ii = 4 Then hesap11$ = dskayitlar3!Field4 hesap12$ = dskayitlar3!Field5 hesap13$ = dskayitlar3!Field6 End If If (hesap11$ <> hesap4$) And (hesap11$ <> hesap5$) And (hesap11$ <> hesap6$) And (hesap12$ <> hesap4$) And (hesap12$ <> hesap5$) And (hesap12$ <> hesap6$) And (hesap13$ <> hesap4$) And (hesap13$ <> hesap5$) And (hesap13$ <> hesap6$) Then hesap14$ = dskayitlar3!Field2 Else s = s + 1 G(s, 1) = dskayitlar3!Field2 End If dskayitlar3.MoveNext Loop Next ii vSQL4$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap14$ Set dskayitlar4 = dosya.OpenRecordset(vSQL4$, dbOpenForwardOnly) hesap27$ = dskayitlar4!Field4 hesap28$ = dskayitlar4!Field5 hesap29$ = dskayitlar4!Field6 If dskayitlar4!Field7 <> Empty Then hesap30$ = dskayitlar4!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL5$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar5 = dosya.OpenRecordset(vSQL5$, dbOpenForwardOnly) hesap32$ = dskayitlar5!Field4 hesap33$ = dskayitlar5!Field5 hesap34$ = dskayitlar5!Field6 If dskayitlar5!Field7 <> Empty Then hesap35$ = dskayitlar5!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then C(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL6$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap4$ Set dskayitlar6 = dosya.OpenRecordset(vSQL6$, dbOpenForwardOnly) Do Until dskayitlar6.EOF If ii = 1 Then hesap15$ = dskayitlar6!Field5 hesap16$ = dskayitlar6!Field6 If dskayitlar6!Field7 <> Empty Then hesap17$ = dskayitlar6!Field7 Else hesap17$ = 0 End If End If If ii = 2 Then hesap15$ = dskayitlar6!Field4 hesap16$ = dskayitlar6!Field6 If dskayitlar6!Field7 <> Empty Then hesap17$ = dskayitlar6!Field7 Else hesap17$ = 0 End If End If If ii = 3 Then hesap15$ = dskayitlar6!Field4 hesap16$ = dskayitlar6!Field5 If dskayitlar6!Field7 <> Empty Then hesap17$ = dskayitlar6!Field7 Else hesap17$ = 0 End If End If If ii = 4 Then hesap15$ = dskayitlar6!Field4 hesap16$ = dskayitlar6!Field5 hesap17$ = dskayitlar6!Field6 End If If (hesap15$ <> hesap3$) And (hesap15$ <> hesap5$) And (hesap15$ <> hesap6$) And (hesap16$ <> hesap3$) And (hesap16$ <> hesap5$) And (hesap16$ <> hesap6$) And (hesap17$ <> hesap3$) And (hesap17$ <> hesap5$) And (hesap17$ <> hesap6$) Then hesap18$ = dskayitlar6!Field2 Else s = s + 1 G(s, 1) = dskayitlar6!Field2 End If dskayitlar6.MoveNext Loop Next ii vSQL7$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap18$ Set dskayitlar7 = dosya.OpenRecordset(vSQL7$, dbOpenForwardOnly) hesap27$ = dskayitlar7!Field4 hesap28$ = dskayitlar7!Field5 hesap29$ = dskayitlar7!Field6 If dskayitlar7!Field7 <> Empty Then hesap30$ = dskayitlar7!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL8$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar8 = dosya.OpenRecordset(vSQL8$, dbOpenForwardOnly) hesap32$ = dskayitlar8!Field4 hesap33$ = dskayitlar8!Field5 hesap34$ = dskayitlar8!Field6 If dskayitlar8!Field7 <> Empty Then hesap35$ = dskayitlar8!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then D(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL9$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap5$ Set dskayitlar9 = dosya.OpenRecordset(vSQL9$, dbOpenForwardOnly) Do Until dskayitlar9.EOF If ii = 1 Then hesap19$ = dskayitlar9!Field5 hesap20$ = dskayitlar9!Field6 If dskayitlar9!Field7 <> Empty Then hesap21$ = dskayitlar9!Field7 Else hesap21$ = 0 End If End If If ii = 2 Then hesap19$ = dskayitlar9!Field4 hesap20$ = dskayitlar9!Field6 If dskayitlar9!Field7 <> Empty Then hesap21$ = dskayitlar9!Field7 Else hesap21$ = 0 End If End If If ii = 3 Then hesap19$ = dskayitlar9!Field4 hesap20$ = dskayitlar9!Field5 If dskayitlar9!Field7 <> Empty Then hesap21$ = dskayitlar9!Field7 Else hesap21$ = 0 End If End If If ii = 4 Then hesap19$ = dskayitlar9!Field4 hesap20$ = dskayitlar9!Field5 hesap21$ = dskayitlar9!Field6 End If If (hesap19$ <> hesap3$) And (hesap19$ <> hesap4$) And (hesap19$ <> hesap6$) And (hesap20$ <> hesap3$) And (hesap20$ <> hesap4$) And (hesap20$ <> hesap6$) And (hesap21$ <> hesap3$) And (hesap21$ <> hesap4$) And (hesap21$ <> hesap6$) Then hesap22$ = dskayitlar9!Field2 Else s = s + 1 G(s, 1) = dskayitlar9!Field2 End If dskayitlar9.MoveNext Loop Next ii vSQL10$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap22$ Set dskayitlar10 = dosya.OpenRecordset(vSQL10$, dbOpenForwardOnly) hesap27$ = dskayitlar10!Field4 hesap28$ = dskayitlar10!Field5 hesap29$ = dskayitlar10!Field6 If dskayitlar10!Field7 <> Empty Then hesap30$ = dskayitlar10!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL11$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar11 = dosya.OpenRecordset(vSQL11$, dbOpenForwardOnly) hesap32$ = dskayitlar11!Field4 hesap33$ = dskayitlar11!Field5 hesap34$ = dskayitlar11!Field6 If dskayitlar11!Field7 <> Empty Then hesap35$ = dskayitlar11!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then E(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL12$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap6$ Set dskayitlar12 = dosya.OpenRecordset(vSQL12$, dbOpenForwardOnly) Do Until dskayitlar12.EOF If ii = 1 Then hesap23$ = dskayitlar12!Field5 hesap24$ = dskayitlar12!Field6 If dskayitlar12!Field7 <> Empty Then hesap25$ = dskayitlar12!Field7 Else hesap25$ = 0 End If End If If ii = 2 Then hesap23$ = dskayitlar12!Field4 hesap24$ = dskayitlar12!Field6 If dskayitlar12!Field7 <> Empty Then hesap25$ = dskayitlar12!Field7 Else hesap25$ = 0 End If End If If ii = 3 Then hesap23$ = dskayitlar12!Field4 hesap24$ = dskayitlar12!Field5 If dskayitlar12!Field7 <> Empty Then hesap25$ = dskayitlar12!Field7 Else hesap25$ = 0 End If End If If ii = 4 Then hesap23$ = dskayitlar12!Field4 hesap24$ = dskayitlar12!Field5 hesap25$ = dskayitlar12!Field6 End If If (hesap23$ <> hesap3$) And (hesap23$ <> hesap4$) And (hesap23$ <> hesap5$) And (hesap24$ <> hesap3$) And (hesap24$ <> hesap4$) And (hesap24$ <> hesap5$) And (hesap25$ <> hesap3$) And (hesap25$ <> hesap4$) And (hesap25$ <> hesap5$) Then hesap26$ = dskayitlar12!Field2 Else s = s + 1 G(s, 1) = dskayitlar12!Field2 End If dskayitlar12.MoveNext Loop Next ii vSQL13$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap26$ Set dskayitlar13 = dosya.OpenRecordset(vSQL13$, dbOpenForwardOnly) hesap27$ = dskayitlar13!Field4 hesap28$ = dskayitlar13!Field5 hesap29$ = dskayitlar13!Field6 If dskayitlar13!Field7 <> Empty Then hesap30$ = dskayitlar13!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL14$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar14 = dosya.OpenRecordset(vSQL14$, dbOpenForwardOnly) hesap32$ = dskayitlar14!Field4 hesap33$ = dskayitlar14!Field5 hesap34$ = dskayitlar14!Field6 If dskayitlar14!Field7 <> Empty Then hesap35$ = dskayitlar14!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then F(t, 1) = K1(I, 1) End If Next I s = 0 it = 1 For ii = 1 To 4 vSQL15$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap7$ Set dskayitlar15 = dosya.OpenRecordset(vSQL15$, dbOpenForwardOnly) Do Until dskayitlar15.EOF If ii = 1 Then hesap11$ = dskayitlar15!Field5 hesap12$ = dskayitlar15!Field6 If dskayitlar15!Field7 <> Empty Then hesap13$ = dskayitlar15!Field7 Else hesap13$ = 0 End If End If If ii = 2 Then hesap11$ = dskayitlar15!Field4 hesap12$ = dskayitlar15!Field6 If dskayitlar15!Field7 <> Empty Then hesap13$ = dskayitlar15!Field7 Else hesap13$ = 0 End If End If If ii = 3 Then hesap11$ = dskayitlar15!Field4 hesap12$ = dskayitlar15!Field5 If dskayitlar15!Field7 <> Empty Then hesap13$ = dskayitlar15!Field7 Else hesap13$ = 0 End If End If If ii = 4 Then hesap11$ = dskayitlar15!Field4 hesap12$ = dskayitlar15!Field5 hesap13$ = dskayitlar15!Field6 End If If (hesap11$ <> hesap8$) And (hesap11$ <> hesap9$) And (hesap11$ <> hesap10$) And (hesap12$ <> hesap8$) And (hesap12$ <> hesap9$) And (hesap12$ <> hesap10$) And (hesap13$ <> hesap8$) And (hesap13$ <> hesap9$) And (hesap13$ <> hesap10$) Then hesap14$ = dskayitlar15!Field2 Else s = s + 1 G(s, 1) = dskayitlar15!Field2 End If dskayitlar15.MoveNext Loop Next ii vSQL16$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap14$ Set dskayitlar16 = dosya.OpenRecordset(vSQL16$, dbOpenForwardOnly) hesap27$ = dskayitlar16!Field4 hesap28$ = dskayitlar16!Field5 hesap29$ = dskayitlar16!Field6 If dskayitlar16!Field7 <> Empty Then hesap30$ = dskayitlar16!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL17$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar17 = dosya.OpenRecordset(vSQL17$, dbOpenForwardOnly) hesap32$ = dskayitlar17!Field4 hesap33$ = dskayitlar17!Field5 hesap34$ = dskayitlar17!Field6 If dskayitlar17!Field7 <> Empty Then hesap35$ = dskayitlar17!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then H(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL18$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap8$ Set dskayitlar18 = dosya.OpenRecordset(vSQL18$, dbOpenForwardOnly) Do Until dskayitlar18.EOF If ii = 1 Then hesap15$ = dskayitlar18!Field5 hesap16$ = dskayitlar18!Field6 If dskayitlar18!Field7 <> Empty Then hesap17$ = dskayitlar18!Field7 Else hesap17$ = 0 End If End If If ii = 2 Then hesap15$ = dskayitlar18!Field4 hesap16$ = dskayitlar18!Field6 If dskayitlar18!Field7 <> Empty Then hesap17$ = dskayitlar18!Field7 Else hesap17$ = 0 End If End If If ii = 3 Then hesap15$ = dskayitlar18!Field4 hesap16$ = dskayitlar18!Field5 If dskayitlar18!Field7 <> Empty Then hesap17$ = dskayitlar18!Field7 Else hesap17$ = 0 End If End If If ii = 4 Then hesap15$ = dskayitlar18!Field4 hesap16$ = dskayitlar18!Field5 hesap17$ = dskayitlar18!Field6 End If If (hesap15$ <> hesap7$) And (hesap15$ <> hesap9$) And (hesap15$ <> hesap10$) And (hesap16$ <> hesap7$) And (hesap16$ <> hesap9$) And (hesap16$ <> hesap10$) And (hesap17$ <> hesap7$) And (hesap17$ <> hesap9$) And (hesap17$ <> hesap10$) Then hesap18$ = dskayitlar18!Field2 Else s = s + 1 G(s, 1) = dskayitlar18!Field2 End If dskayitlar18.MoveNext Loop Next ii vSQL19$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap18$ Set dskayitlar19 = dosya.OpenRecordset(vSQL19$, dbOpenForwardOnly) hesap27$ = dskayitlar19!Field4 hesap28$ = dskayitlar19!Field5 hesap29$ = dskayitlar19!Field6 If dskayitlar19!Field7 <> Empty Then hesap30$ = dskayitlar19!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL20$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar20 = dosya.OpenRecordset(vSQL20$, dbOpenForwardOnly) hesap32$ = dskayitlar20!Field4 hesap33$ = dskayitlar20!Field5 hesap34$ = dskayitlar20!Field6 If dskayitlar20!Field7 <> Empty Then hesap35$ = dskayitlar20!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then L(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL21$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap9$ Set dskayitlar21 = dosya.OpenRecordset(vSQL21$, dbOpenForwardOnly) Do Until dskayitlar21.EOF If ii = 1 Then hesap19$ = dskayitlar21!Field5 hesap20$ = dskayitlar21!Field6 If dskayitlar21!Field7 <> Empty Then hesap21$ = dskayitlar21!Field7 Else hesap21$ = 0 End If End If If ii = 2 Then hesap19$ = dskayitlar21!Field4 hesap20$ = dskayitlar21!Field6 If dskayitlar21!Field7 <> Empty Then hesap21$ = dskayitlar21!Field7 Else hesap21$ = 0 End If End If If ii = 3 Then hesap19$ = dskayitlar21!Field4 hesap20$ = dskayitlar21!Field5 If dskayitlar21!Field7 <> Empty Then hesap21$ = dskayitlar21!Field7 Else hesap21$ = 0 End If End If If ii = 4 Then hesap19$ = dskayitlar21!Field4 hesap20$ = dskayitlar21!Field5 hesap21$ = dskayitlar21!Field6 End If If (hesap19$ <> hesap7$) And (hesap19$ <> hesap8$) And (hesap19$ <> hesap10$) And (hesap20$ <> hesap7$) And (hesap20$ <> hesap8$) And (hesap20$ <> hesap10$) And (hesap21$ <> hesap7$) And (hesap21$ <> hesap8$) And (hesap21$ <> hesap10$) Then hesap22$ = dskayitlar21!Field2 Else s = s + 1 G(s, 1) = dskayitlar21!Field2 End If dskayitlar21.MoveNext Loop Next ii vSQL22$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap22$ Set dskayitlar22 = dosya.OpenRecordset(vSQL22$, dbOpenForwardOnly) hesap27$ = dskayitlar22!Field4 hesap28$ = dskayitlar22!Field5 hesap29$ = dskayitlar22!Field6 If dskayitlar22!Field7 <> Empty Then hesap30$ = dskayitlar22!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL23$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar23 = dosya.OpenRecordset(vSQL23$, dbOpenForwardOnly) hesap32$ = dskayitlar23!Field4 hesap33$ = dskayitlar23!Field5 hesap34$ = dskayitlar23!Field6 If dskayitlar23!Field7 <> Empty Then hesap35$ = dskayitlar23!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then J(t, 1) = K1(I, 1) End If Next I s = 0 For ii = 1 To 4 vSQL24$ = " Select * from CQuad4 Where " + alan$(ii, 1) + hesap10$ Set dskayitlar24 = dosya.OpenRecordset(vSQL24$, dbOpenForwardOnly) Do Until dskayitlar24.EOF If ii = 1 Then hesap23$ = dskayitlar24!Field5 hesap24$ = dskayitlar24!Field6 If dskayitlar24!Field7 <> Empty Then hesap25$ = dskayitlar24!Field7 Else hesap25$ = 0 End If End If If ii = 2 Then hesap23$ = dskayitlar24!Field4 hesap24$ = dskayitlar24!Field6 If dskayitlar24!Field7 <> Empty Then hesap25$ = dskayitlar24!Field7 Else hesap25$ = 0 End If End If If ii = 3 Then hesap23$ = dskayitlar24!Field4 hesap24$ = dskayitlar24!Field5 If dskayitlar24!Field7 <> Empty Then hesap25$ = dskayitlar24!Field7 Else hesap25$ = 0 End If End If If ii = 4 Then hesap23$ = dskayitlar24!Field4 hesap24$ = dskayitlar24!Field5 hesap25$ = dskayitlar24!Field6 End If If (hesap23$ <> hesap7$) And (hesap23$ <> hesap8$) And (hesap23$ <> hesap9$) And (hesap24$ <> hesap7$) And (hesap24$ <> hesap8$) And (hesap24$ <> hesap9$) And (hesap25$ <> hesap7$) And (hesap25$ <> hesap8$) And (hesap25$ <> hesap9$) Then hesap26$ = dskayitlar24!Field2 Else s = s + 1 G(s, 1) = dskayitlar24!Field2 End If dskayitlar24.MoveNext Loop Next ii vSQL25$ = " Select * from CQuad4 Where " + "[Field2]=" + hesap26$ Set dskayitlar25 = dosya.OpenRecordset(vSQL25$, dbOpenForwardOnly) hesap27$ = dskayitlar25!Field4 hesap28$ = dskayitlar25!Field5 hesap29$ = dskayitlar25!Field6 If dskayitlar25!Field7 <> Empty Then hesap30$ = dskayitlar25!Field7 Else hesap30$ = 0 End If K1(1, 1) = hesap27$ K1(2, 1) = hesap28$ K1(3, 1) = hesap29$ K1(4, 1) = hesap30$ it = 1 For kk = 1 To 3 vSQL26$ = " Select * from CQuad4 Where " + "[Field2]=" + G(kk, 1) Set dskayitlar26 = dosya.OpenRecordset(vSQL26$, dbOpenForwardOnly) hesap32$ = dskayitlar26!Field4 hesap33$ = dskayitlar26!Field5 hesap34$ = dskayitlar26!Field6 If dskayitlar26!Field7 <> Empty Then hesap35$ = dskayitlar26!Field7 Else hesap35$ = 0 End If L1(it, 1) = hesap32$ it = it + 1 L1(it, 1) = hesap33$ it = it + 1 L1(it, 1) = hesap34$ it = it + 1 L1(it, 1) = hesap35$ it = it + 1 Next kk For I = 1 To 4 If K1(I, 1) <> L1(1, 1) And K1(I, 1) <> L1(2, 1) And K1(I, 1) <> L1(3, 1) And K1(I, 1) <> L1(4, 1) And K1(I, 1) <> L1(5, 1) And K1(I, 1) <> L1(6, 1) And K1(I, 1) <> L1(7, 1) And K1(I, 1) <> L1(8, 1) And K1(I, 1) <> L1(9, 1) And K1(I, 1) <> L1(10, 1) And K1(I, 1) <> L1(11, 1) And K1(I, 1) <> L1(12, 1) Then K(t, 1) = K1(I, 1) End If Next I s = 0 dskayitlar.MoveNext t = t + 1 Loop 'hesap13$ = "ELEMID" ' hesap14$ = "'" + hesap13$ + "'" 'vSQL3$ = " Select * from Cweld Where " + "[Field5]=" + hesap14$ 'Set dskayitlar3 = dosya.OpenRecordset(vSQL3$, dbOpenDynaset) 'dskayitlar3.MoveLast 'kayitsayisi3 = dskayitlar3.RecordCount 'dskayitlar3.MoveFirst 'For ii = 1 To kayitsayisi3 'hesap11$ = LTrim(dskayitlar3!Field6) 'hesap12$ = LTrim(dskayitlar3!Field7) 'hesap15$ = LTrim(dskayitlar3!Field3) 'L$(ii, 1) = hesap11$ 'M$(ii, 1) = hesap12$ 'N$(ii, 1) = hesap15$ 'dskayitlar3.MoveNext 'Next ii 'For jjj = 1 To kayitsayisi3 'DUP = L$(jjj, 1) 'For iii = 1 To kayitsayisi3 'If DUP = L$(iii, 1) And (jjj <> iii) Then 'L$(jjj, 1) = 0 'End If 'If DUP = M$(iii, 1) And (jjj <> iii) Then 'L$(jjj, 1) = 0 'End If 'Next iii 'Next jjj 'For j1 = 1 To kayitsayisi3 'DUP2 = M$(j1, 1) 'For i1 = 1 To kayitsayisi3 'If DUP2 = L$(i1, 1) And (j1 <> i1) Then 'M$(j1, 1) = 0 'End If 'If DUP2 = M$(i1, 1) And (j1 <> i1) Then 'M$(j1, 1) = 0 'End If 'Next i1 'Next j1 Open "C:\Documents and Settings\t32206\Desktop\Mecosa_Cquad.txt" For Output As #1 r = 1 For z = 1 To kayitsayisi p = Trim(Str(r)) Print #1, "CQUAD4," + p + "," + p + "," + C$(z, 1) + "," + D$(z, 1) + "," + E$(z, 1) + "," + F$(z, 1) r = r + 1 Next z Open "C:\Documents and Settings\t32206\Desktop\Mecosa_Cquad.txt" For Append As #2 For z = 1 To kayitsayisi p = Trim(Str(r)) Print #2, "CQUAD4," + p + "," + p + "," + H$(z, 1) + "," + L$(z, 1) + "," + J$(z, 1) + "," + K$(z, 1) r = r + 1 Next z 'If C$(z, 1) <> "0" And G$(z, 1) <> "0" Then 'Print #1, "CWELD," + p + "," + N$(z, 1) + ",," + "PARTPAT" + "," + L$(z, 1) + "," + M$(z, 1) + ",,," + C$(z, 1) + "," + G$(z, 1) + ",,,,,,,,,," 'Else 'Print #1, "CWELD," + p + "," + N$(z, 1) + ",," + "ELEMID" + "," + L$(z, 1) + "," + M$(z, 1) + ",,," + H$(z, 1) + "," + J$(z, 1) 'End If 'If F$(z, 1) And L$(z, 1) <> 0 Then 'Print #1, "RBE2," + p + "," + L$(z, 1) + "," + "123456," + C$(z, 1) + "," + D$(z, 1) + "," + E$(z, 1) + "," + F$(z, 1) 'End If 'r = r + 1 'Next z 'Close #1 'Open "C:\Documents and Settings\t32206\Desktop\rbe2_bcgrid_Cspot.txt" For Append As #2 ' For s = 1 To kayitsayisi3 't = Trim(Str(r)) 'If K$(s, 1) = 0 And M$(s, 1) <> 0 Then 'Print #2, "RBE2," + t + "," + M$(s, 1) + "," + "123456," + G$(s, 1) + "," + H$(s, 1) + "," + J$(s, 1) 'End If 'If K$(s, 1) <> 0 And M$(s, 1) <> 0 Then 'Print #2, "RBE2," + t + "," + M$(s, 1) + "," + "123456," + G$(s, 1) + "," + H$(s, 1) + "," + J$(s, 1) + "," + K$(s, 1) 'End If 'r = r + 1 'Next s 'Close #2 'y = 1 'Open "C:\Documents and Settings\t32206\Desktop\rbe2_bcgrid_Cspot.txt" For Append As #3 'For iii = 1 To kayitsayisi3 'zz = Trim(Str(y)) 'If L$(iii, 1) <> 0 And M$(iii, 1) <> 0 Then 'res(iii, 1) = y 'Print #3, "BCGRID," + zz + "," + L$(iii, 1) + "," + M$(iii, 1) 'End If 'y = y + 1 'Next iii 'Close #3 'u = 1 'Open "C:\Documents and Settings\t32206\Desktop\rbe2_bcgrid_Cspot.txt" For Append As #4 'For jj = 1 To kayitsayisi3 'tt = Trim(Str(u)) 'If res(jj, 1) <> 0 Then 'Print #4, "CSPOT," + tt + "," + Trim(Str(res(jj, 1))) + ",,,,,,,,,,,,," 'End If 'u = u + 1 'Next jj 'Close #4 End Sub
|