-
上传用户:zhpu1995
上传日期:2013-09-06
资源大小:61151k
文件大小:6k
源码类别:

企业管理

开发平台:

Visual Basic

  1. Attribute VB_Name = "XtsyModule"
  2. Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
  3. '系统私有模块用来放置一些子系统独有的过程与函数
  4. Public str_Code As String                               '存储列内容参数
  5. Public Const MoneyType = 0
  6. Public Const NumberType = 1
  7. Public Const ValueType = 2
  8. Public Sub Drxtztcs()                                   '读入系统帐套参数
  9.    
  10.     Dim Ztcsbrec As New ADODB.Recordset
  11.     Dim Rectemp As New ADODB.Recordset
  12.     Dim Sqlstr As String
  13.   
  14.     With Ztcsbrec
  15.         '金额总位数
  16.         .Open "Select * From Gy_AccInformation Where SystemCode='Cwzz'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  17.         .MoveFirst
  18.         .Find "itemcode='cwjezws'"
  19.         If Not Ztcsbrec.EOF Then
  20.             Xtjezws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  21.         End If
  22.         
  23.         '数量总位数
  24.         .MoveFirst
  25.         .Find "itemcode='cwslzws'"
  26.         If Not Ztcsbrec.EOF Then
  27.             Xtslzws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  28.         End If
  29.    
  30.         '单价总位数
  31.         .MoveFirst
  32.         .Find "itemcode='cwdjzws'"
  33.         If Not Ztcsbrec.EOF Then
  34.             Xtdjzws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  35.         End If
  36.         
  37.         '金额小数位数
  38.         .MoveFirst
  39.         .Find "itemcode='cwjexsws'"
  40.         If Not Ztcsbrec.EOF Then
  41.             Xtjexsws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  42.         End If
  43.    
  44.         '数量小数位数
  45.         .MoveFirst
  46.         .Find "itemcode='cwslxsws'"
  47.         If Not Ztcsbrec.EOF Then
  48.             Xtslxsws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  49.         End If
  50.         
  51.         '单价小数位数
  52.         .MoveFirst
  53.         .Find "itemcode='cwdjxsws'"
  54.         If Not Ztcsbrec.EOF Then
  55.             Xtdjxsws = Val(Trim(Ztcsbrec.Fields("itemvalue")))
  56.         End If
  57.         .Close
  58.     End With
  59.   
  60. End Sub
  61. Public Function HaveChinese(sTest As String) As Boolean
  62.     If LenB(StrConv(Trim(sTest), vbFromUnicode)) <> Len(Trim(sTest)) Then
  63.         HaveChinese = True
  64.     Else
  65.         HaveChinese = False
  66.     End If
  67. End Function
  68. Public Function Fun_ConvDec(DataType As Variant, CheckData As Variant) As String
  69.     If IsMissing(CheckData) Or IsNull(CheckData) Then
  70.         CheckData = 0
  71.     End If
  72.     Select Case DataType
  73.         Case 0                                      '金额类型
  74.             Fun_ConvDec = Format(CheckData, Fun_ConvStr(Xtjezws - Xtjexsws, Xtjexsws))
  75.         Case 1                                      '数量类型
  76.             Fun_ConvDec = Format(CheckData, Fun_ConvStr(Xtslzws - Xtslxsws, Xtslxsws))
  77.         Case 2                                      '单价类型
  78.             Fun_ConvDec = Format(CheckData, Fun_ConvStr(Xtdjzws - Xtdjxsws, Xtdjxsws))
  79.     End Select
  80.     
  81. End Function
  82. Private Function Fun_ConvStr(IntNum As Integer, DecNum As Integer) As String
  83.     Dim FormatStr As String
  84.     For i = 1 To IIf(IntNum - 1 >= 1, IntNum - 1, 1)
  85.         FormatStr = FormatStr + "#"
  86.     Next i
  87.     FormatStr = FormatStr + "0."
  88.     For i = 1 To DecNum
  89.         FormatStr = FormatStr + "0"
  90.     Next i
  91.     Fun_ConvStr = FormatStr
  92. End Function
  93. Public Function Fun_Ceiling(CeilingData As Double) As Double
  94.     If Int(CeilingData) = CeilingData Then
  95.         Fun_Ceiling = CeilingData
  96.     Else
  97.         Fun_Ceiling = Int(CeilingData) + 1
  98.     End If
  99. End Function
  100. 'Functoin :返回一个月的起始日期
  101. Public Function Fn_GetMonthBeginDate(sYear As Integer, sMonth As Integer) As String
  102.     Dim sBeginDate As String, Rect As New ADODB.Recordset, Sql As String
  103.     
  104.     Sql = "Select * from gy_kjrlb Where kjYear='" & sYear & "' And Period='" & sMonth & "'"
  105.     Set Rect = Cw_DataEnvi.DataConnect.Execute(Sql)
  106.     If Not Rect.EOF Then
  107.         Fn_GetMonthBeginDate = Format(Rect!Qsrq, "yyyy-mm-dd")
  108.     Else
  109.         sBeginDate = Str(sYear) + "-" + Str(sMonth) + "-01"
  110.         Fn_GetMonthBeginDate = Format(sBeginDate, "yyyy-mm-dd")
  111.     End If
  112.     
  113.     Set Rect = Nothing
  114. End Function
  115. 'Functoin :返回一个月的结束日期
  116. Public Function Fn_GetMonthEndDate(sYear As Integer, sMonth As Integer) As String
  117.     Dim sEndDate As String, Rect As New ADODB.Recordset, Sql As String
  118.     
  119.     Sql = "Select * from gy_kjrlb Where kjYear='" & sYear & "' And Period='" & sMonth & "'"
  120.     Set Rect = Cw_DataEnvi.DataConnect.Execute(Sql)
  121.     If Not Rect.EOF Then
  122.         Fn_GetMonthEndDate = Format(Rect!Zzrq, "yyyy-mm-dd")
  123.         
  124.     Else
  125.         If sMonth + 1 > 12 Then
  126.             sEndDate = Str(sYear) + "-12-31"
  127.         Else
  128.             sEndDate = Str(sYear) + Str(sMonth + 1) + "-01"
  129.             sEndDate = Format(CDate(sEndDate) - 1, "yyyy-mm-dd")
  130.         End If
  131.         Fn_GetMonthEndDate = Format(sEndDate, "yyyy-mm-dd")
  132.     End If
  133.     
  134. Set Rect = Nothing
  135. End Function
  136. '取得年开始日期
  137. Public Function Fn_GetYearBeginDate(sYear As Integer) As String
  138.     Dim sEndDate As String, Rect As New ADODB.Recordset, Sql As String
  139.     
  140.     Sql = "Select Qsrq  From gy_kjrlb  Where kjYear='" & sYear & "' And Period=1 "
  141.     Set Rect = Cw_DataEnvi.DataConnect.Execute(Sql)
  142.     If Not Rect.EOF Then
  143.         Fn_GetYearBeginDate = Format(Trim(Rect!Qsrq & ""), "yyyy-mm-dd")
  144.     Else
  145.         Fn_GetYearBeginDate = Format(Trim(Str(sYear)) + "-01-01", "yyyy-mm-dd")
  146.     End If
  147.     Set Rect = Nothing
  148. End Function
  149. '判断当前用户是否对某个部门有操作权限
  150. Public Function Fn_DeptQueryRight(Czybm As String, DeptCode As String) As Boolean
  151.     Dim Rectemp As New ADODB.Recordset, Sqlstr As String
  152.     
  153.     Sqlstr = "Select Admin From MRP_DeptAdmin Where  Czybm='" & Czybm & "' "
  154.     Set Rectemp = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  155.     If Not Rectemp.EOF Then
  156.         If Rectemp.Fields("Admin") = True Then
  157.             Fn_DeptQueryRight = True: Set Rectemp = Nothing: Exit Function
  158.         End If
  159.     End If
  160.     
  161.     Sqlstr = "Select Admin From MRP_DeptAdmin Where DeptCode='" & DeptCode & "' And Czybm='" & Czybm & "' "
  162.     Set Rectemp = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
  163.     If Rectemp.EOF Then
  164.         Fn_DeptQueryRight = False
  165.     Else
  166.         Fn_DeptQueryRight = True
  167.     End If
  168.     Set Rectemp = Nothing:
  169. End Function