home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 5_2007-2008.ISO / data / Zips / VB6ProAppl2043501202007.psc / VB6ProApplicationCreato / VB6ProApplicationCreator.bas < prev    next >
BASIC Source File  |  2007-01-20  |  9KB  |  333 lines

  1. Attribute VB_Name = "modProsubs"
  2. '------------------------------------------------------------
  3. ' modProsubs.BAS
  4. '   DAO (Data Access Objects) in Visual Basic 6.0.
  5. '
  6. '------------------------------------------------------------
  7. Option Explicit
  8. 'Public database variables
  9.  
  10. Public gdbCurrentDB  As Database    'main database object
  11. Public gsAppName As String
  12.  
  13. 'Public constants
  14.  
  15. Public Const APP_CATEGORY = "Visual Basic Program"
  16. Public sDatabaseName As String
  17. Public gsAppPath As String
  18. Public gsMDBPath As String
  19. Public cnn    As ADODB.Connection
  20. Public dbpathe    As String              'Database Path
  21.  
  22. Public ErrGen As Boolean
  23. Public Sub Connect()
  24.  
  25.   On Error GoTo CnnError
  26.  
  27. Dim strCnn As String
  28. Dim psw    As String
  29.  
  30.     strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;"
  31.     strCnn = strCnn & "Data Source=" & Chr$(34) & sDatabaseName & Chr$(34) & ";"
  32.     strCnn = strCnn & "Jet OLEDB:Engine Type=5;"
  33.  
  34.     Set cnn = New ADODB.Connection
  35.     cnn.Open strCnn
  36.  
  37. Exit Sub
  38. CnnError:
  39.  
  40.     Select Case Err
  41.     Case Is = -2147217843 'Database password incorrect
  42.         '      psw = ObtainPassword
  43.         strCnn = vbNullString
  44.         strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;"
  45.         strCnn = strCnn & "Data Source=" & Chr$(34) & sDatabaseName & Chr$(34) & ";"
  46.         strCnn = strCnn & "Jet OLEDB:Engine Type=5;"
  47.         strCnn = strCnn & psw
  48.         If LenB(psw) = 0 Then
  49.             Resume Next
  50.         Else
  51.             Resume
  52.         End If
  53.     Case Else
  54.         MsgBox "Error Number : " & Err & Error, vbCritical, Err.Source
  55.         End
  56.     End Select
  57.  
  58. End Sub
  59.  
  60. 'Copy the Access database file to project directory,
  61. 'This will create sub directory in the app's location
  62. 'and put all files (.frm, .bas, vbp, mdb,
  63.  
  64. Public Function AddBrackets(rObjName As String) As String
  65.  
  66. '------------------------------------------------------------
  67. 'this functions adds [] to object names that might need
  68. 'them because they have spaces in them
  69. '------------------------------------------------------------
  70.  
  71. 'add brackets to object names w/ spaces in them
  72.  
  73.     If InStr(rObjName, " ") > 0 And Mid$(rObjName, 1, 1) <> "[" Then
  74.         AddBrackets = "[" & rObjName & "]"
  75.     Else
  76.         AddBrackets = rObjName
  77.     End If
  78.  
  79. End Function
  80.  
  81. Public Sub CreateProjectDirectory()
  82.  
  83.  
  84. Dim fso As FileSystemObject
  85.  
  86.     Set fso = CreateObject("Scripting.FileSystemObject")
  87.     gsAppPath = App.Path & "\" & gsAppName
  88.  
  89.     If Not (fso.FolderExists(gsAppPath)) Then
  90.         fso.CreateFolder (gsAppPath)
  91.     End If
  92.  
  93.     frmPAWndc.lblAppPath = gsAppPath
  94.  
  95. End Sub
  96.  
  97. Public Function FileExists(ByVal sPathName As String) As Integer
  98.  
  99. '-----------------------------------------------------------
  100. ' Returns: True if file exists, False otherwise
  101. '-----------------------------------------------------------
  102. Dim intFileNum As Integer
  103.  
  104.     On Error Resume Next
  105.     '
  106.     'Remove trailing directory separator character
  107.     '
  108.     If Right$(sPathName, 1) = "\" Then
  109.         sPathName = Left$(sPathName, Len(sPathName) - 1)
  110.     End If
  111.     '
  112.     'Attempt to open the file, return value of this function is False
  113.     'if an error occurs on open, True otherwise
  114.     '
  115.     intFileNum = FreeFile
  116.     Open sPathName For Input As intFileNum
  117.     FileExists = IIf(Err, False, True)
  118.     Close intFileNum
  119.     Err = 0
  120.  
  121. End Function
  122.  
  123. Private Function GetINIString(ByVal vsItem As String, ByVal vsDefault As String) As String
  124.  
  125. '------------------------------------------------------------
  126. 'this function returns the INI file setting for the
  127. 'passed in item and section
  128. '------------------------------------------------------------
  129.  
  130.     GetINIString = GetSetting(APP_CATEGORY, App.Title, vsItem, vsDefault)
  131.  
  132. End Function
  133.  
  134. Public Function RemoveCRLF(ByVal rvntVal As String) As String
  135.  
  136. ' the function removes CR and LF from a string
  137. '
  138. Dim i    As Integer
  139. Dim sTmp As String
  140.  
  141.     For i = 1 To Len(rvntVal)
  142.  
  143.         If Asc(Mid$(rvntVal, i, 1)) = 10 Then
  144.             sTmp = sTmp & " "
  145.         ElseIf Asc(Mid$(rvntVal, i, 1)) = 13 Then
  146.         Else
  147.             sTmp = sTmp & Mid$(rvntVal, i, 1)
  148.         End If
  149.  
  150.     Next i
  151.     RemoveCRLF = sTmp
  152.  
  153. End Function
  154.  
  155. Public Function RemoveSpace(ByVal rvntVal As Variant) As String
  156.  
  157. '--------------------------------------------------------------------------
  158. ' function remove all spaces from string
  159. '--------------------------------------------------------------------------
  160. Dim i    As Integer
  161. Dim sTmp As String
  162.  
  163.     For i = 1 To Len(rvntVal)
  164.  
  165.         If Asc(Mid$(rvntVal, i, 1)) = 32 Or Mid$(rvntVal, i, 1) = "-" Then
  166.             'skip
  167.         Else
  168.             sTmp = sTmp & Mid$(rvntVal, i, 1)
  169.         End If
  170.  
  171.     Next i
  172.     RemoveSpace = sTmp
  173.  
  174. End Function
  175.  
  176. Private Function StripBrackets(rsObjName As String) As String
  177.  
  178. '------------------------------------------------------------
  179. 'this function strips the [] off of data objects
  180. '------------------------------------------------------------
  181.  
  182. 'add brackets to object names w/ spaces in them
  183.  
  184.     If Mid$(rsObjName, 1, 1) = "[" Then
  185.         StripBrackets = Mid$(rsObjName, 2, Len(rsObjName) - 2)
  186.     Else
  187.         StripBrackets = rsObjName
  188.     End If
  189.  
  190. End Function
  191.  
  192. Private Function StripConnect(rsTblName As String) As String
  193.  
  194. '------------------------------------------------------------
  195. 'this function strips the attached table connect string off
  196. '------------------------------------------------------------
  197.  
  198.     If InStr(rsTblName, "->") > 0 Then
  199.         StripConnect = Left$(rsTblName, InStr(rsTblName, "->") - 2)
  200.     Else
  201.         StripConnect = rsTblName
  202.     End If
  203.  
  204. End Function
  205.  
  206. Public Function Stripext(ByVal rsTblName As String) As String
  207.  
  208. '------------------------------------------------------------
  209. 'strips the owner off of ODBC table names
  210. '------------------------------------------------------------
  211.  
  212.     If InStr(rsTblName, ".") > 0 Then
  213.         rsTblName = Left$(rsTblName, InStr(rsTblName, ".") - 1)
  214.     End If
  215.  
  216.     Stripext = rsTblName
  217.  
  218. End Function
  219.  
  220. Private Function StripFileName(ByVal rsFileName As String) As String
  221.  
  222. '------------------------------------------------------------
  223. 'this function strips the file name from a path\file string
  224. '------------------------------------------------------------
  225. Dim i As Integer
  226.  
  227.     On Error Resume Next
  228.  
  229.     For i = Len(rsFileName) To 1 Step -1
  230.  
  231.         If Mid$(rsFileName, i, 1) = "\" Then
  232.             Exit For
  233.         End If
  234.  
  235.     Next i
  236.     StripFileName = Mid$(rsFileName, 1, i - 1)
  237.  
  238. End Function
  239.  
  240. Private Function StripNonAscii(rvntVal As Variant) As String
  241.  
  242. '------------------------------------------------------------
  243. 'this function strips the non ACSII chars off memo field
  244. 'data before displaying it (not sure this is always needed)
  245. '------------------------------------------------------------
  246. Dim i    As Integer
  247. Dim sTmp As String
  248.  
  249.     'stubbed out to enable DBCS chars
  250.     StripNonAscii = rvntVal
  251.  
  252. Exit Function
  253.  
  254.     For i = 1 To Len(rvntVal)
  255.  
  256.         If Asc(Mid$(rvntVal, i, 1)) < 32 Or Asc(Mid$(rvntVal, i, 1)) > 126 Then
  257.             sTmp = sTmp & " "
  258.         Else
  259.             sTmp = sTmp & Mid$(rvntVal, i, 1)
  260.         End If
  261.  
  262.     Next i
  263.     StripNonAscii = sTmp
  264.  
  265. End Function
  266.  
  267. Private Function StripOwner(ByVal rsTblName As String) As String
  268.  
  269. '------------------------------------------------------------
  270. 'strips the owner off of ODBC table names
  271. '------------------------------------------------------------
  272.  
  273.     If InStr(rsTblName, ".") > 0 Then
  274.         rsTblName = Mid$(rsTblName, InStr(rsTblName, ".") + 1, Len(rsTblName))
  275.     End If
  276.  
  277.     StripOwner = rsTblName
  278.  
  279. End Function
  280.  
  281. Public Function StripPath(ByVal T As String) As String
  282.  
  283. '--------------------------------------------------------------------------
  284. 'This will get only name of file from a complete
  285. 'file name with its directory
  286. '--------------------------------------------------------------------------
  287. Dim x  As Integer
  288. Dim ct As Integer
  289.  
  290.     StripPath$ = T$
  291.     x% = InStr(T$, "\")
  292.  
  293.     Do While x%
  294.         ct% = x%
  295.         x% = InStr(ct% + 1, T$, "\")
  296.     Loop
  297.  
  298.     If ct% > 0 Then StripPath$ = Mid$(T$, ct% + 1)
  299.  
  300. End Function
  301.  
  302. Private Function stTrueFalse(rvntTF As Variant) As String
  303.  
  304. '------------------------------------------------------------
  305. 'returns the true or false string
  306. '------------------------------------------------------------
  307.  
  308.     If rvntTF Then
  309.         stTrueFalse = "True"
  310.     Else
  311.         stTrueFalse = "False"
  312.     End If
  313.  
  314. End Function
  315.  
  316. Private Sub UnloadAllForms()
  317.  
  318. '------------------------------------------------------------
  319. 'this sub unloads all forms except for the
  320. 'SQL, Tables and MDI form
  321. '------------------------------------------------------------
  322. Dim i As Integer
  323.  
  324.     On Error Resume Next
  325.  
  326.     'close all forms except for the Tables and SQL forms
  327.     For i = Forms.Count - 1 To 1 Step -1
  328.         Unload Forms(i)
  329.     Next i
  330.  
  331. End Sub
  332.  
  333.