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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
  3. Begin VB.Form Oper_CheckOut 
  4.    BorderStyle     =   3  'Fixed Dialog
  5.    Caption         =   "月末结帐"
  6.    ClientHeight    =   2040
  7.    ClientLeft      =   45
  8.    ClientTop       =   330
  9.    ClientWidth     =   5370
  10.    HelpContextID   =   504004
  11.    Icon            =   "月末结帐.frx":0000
  12.    LinkTopic       =   "Form1"
  13.    LockControls    =   -1  'True
  14.    MaxButton       =   0   'False
  15.    MinButton       =   0   'False
  16.    ScaleHeight     =   2040
  17.    ScaleWidth      =   5370
  18.    ShowInTaskbar   =   0   'False
  19.    StartUpPosition =   2  '屏幕中心
  20.    Begin VB.Frame Frame1 
  21.       Height          =   2025
  22.       Left            =   0
  23.       TabIndex        =   0
  24.       Top             =   0
  25.       Width           =   5355
  26.       Begin VB.CommandButton QxCommand 
  27.          Cancel          =   -1  'True
  28.          Caption         =   "取消(&C)"
  29.          Height          =   300
  30.          Left            =   3360
  31.          TabIndex        =   2
  32.          Top             =   1470
  33.          Width           =   1120
  34.       End
  35.       Begin VB.CommandButton QdCommand 
  36.          Caption         =   "确定(&O)"
  37.          Height          =   300
  38.          Left            =   2100
  39.          TabIndex        =   1
  40.          Top             =   1470
  41.          Width           =   1120
  42.       End
  43.       Begin MSComctlLib.ProgressBar Bar_Depr 
  44.          Height          =   225
  45.          Left            =   90
  46.          TabIndex        =   3
  47.          Top             =   1140
  48.          Visible         =   0   'False
  49.          Width           =   5145
  50.          _ExtentX        =   9075
  51.          _ExtentY        =   397
  52.          _Version        =   393216
  53.          Appearance      =   1
  54.       End
  55.       Begin VB.Label Lbl_Clew 
  56.          Alignment       =   2  'Center
  57.          ForeColor       =   &H00404040&
  58.          Height          =   315
  59.          Left            =   330
  60.          TabIndex        =   4
  61.          Top             =   570
  62.          Width           =   4695
  63.       End
  64.    End
  65. End
  66. Attribute VB_Name = "Oper_CheckOut"
  67. Attribute VB_GlobalNameSpace = False
  68. Attribute VB_Creatable = False
  69. Attribute VB_PredeclaredId = True
  70. Attribute VB_Exposed = False
  71. '**********************************************
  72. '*    模 块 名 称 :固定资产计提折旧
  73. '*    功 能 描 述 :
  74. '*    程序员姓名  : 徐衍民
  75. '*    最后修改人  : 徐衍民
  76. '*    最后修改时间:2001/12/08
  77. '*    备        注:
  78. '**********************************************
  79. Dim DeprM As Double              '月折旧额
  80. Dim CardCode As String           '卡片编号
  81. Dim Rs_Temp As ADODB.Recordset   '打开数据集变量
  82. Dim rstemp As ADODB.Recordset    '打开数据集变量
  83. Dim RecTemp As ADODB.Recordset   '打开数据集变量
  84. Dim Sqlstr As String             '字符串变量
  85. Dim Card_Str As String           '字符串变量
  86. Dim YearTemp As Integer          '会计年度
  87. Dim PeriodTemp As Integer        '会计期间
  88. Dim FASortCode As String         '资产类别编号
  89. Dim DeptCode As String           '部门编号
  90. Dim FAValue As Double            '资产原值
  91. Dim DeprSum As Double            '资产累计折旧
  92. Dim MaxCode As Integer           '最大变动单号
  93. Dim FAStateCode As String        '资产使用状况编号
  94. Dim DeprMethod As String         '折旧方法
  95. Dim Job As Double                '工作总量
  96. Dim SalValue As Double           '净残值
  97. Dim Quantity As Double           '资产数量
  98. Dim Useyears As Double           '使用年限
  99. Dim Tsxx As String               '提示信息
  100. Private Sub Form_Load()          '窗体装入
  101.     
  102.     '显示提示内容
  103.     Set rstemp = New ADODB.Recordset
  104.     rstemp.Open "select top 1 * from gy_kjrlb where gdzcjzbz='0' ", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  105.     If Not rstemp.EOF Then
  106.         YearTemp = rstemp!KjYear
  107.         PeriodTemp = rstemp!Period
  108.         Tsxx = "请确认是否开始" + Trim(YearTemp) + "年" + Mid(Trim(str(100 + PeriodTemp)), 2, 2) + "月月末结帐?"
  109.         Lbl_Clew.Caption = Tsxx
  110.     End If
  111.     rstemp.Close
  112.     Set rstemp = Nothing
  113.     
  114. End Sub
  115. Private Sub QdCommand_Click()   '确定
  116.     
  117.     Dim i As Integer
  118.     
  119.     '本月未折旧不能月末结帐
  120.     Set Rs_Temp = New ADODB.Recordset
  121.     Rs_Temp.Open "select * from gdzc_card where DeprFlag='0' and [Check-outFlag]='0'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  122.     If Not Rs_Temp.EOF Then
  123.         Tsxx = "本月还未进行固定资产计提折旧,不能执行月末结帐!"
  124.         Call Xtxxts(Tsxx, 0, 4)
  125.         Unload Me
  126.         Exit Sub
  127.     End If
  128.     Rs_Temp.Close
  129.     Set Rs_Temp = Nothing
  130.     
  131.     On Error GoTo Cwcl
  132.     Cw_DataEnvi.DataConnect.BeginTrans
  133.     
  134.     '结帐部分
  135.     Lbl_Clew.Caption = "正在进行月末结帐,请稍候... "
  136.     Lbl_Clew.FontSize = 15
  137.     Lbl_Clew.ForeColor = &HC0&
  138.     Lbl_Clew.FontName = "隶书"
  139.     
  140.     '追加资产资产明细表
  141.     Set Rs_Temp = New ADODB.Recordset
  142.     Sqlstr = "select * from Gdzc_DetailedForm where year=" & YearTemp & " and period=" & PeriodTemp
  143.     Rs_Temp.Open Sqlstr, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  144.     While Not Rs_Temp.EOF
  145.         Set rstemp = New ADODB.Recordset
  146.         rstemp.Open "select * from Gdzc_DetailedForm where 1=2", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  147.         With rstemp
  148.             .AddNew
  149.             !CardCode = Rs_Temp!CardCode
  150.             !FASortCode = Rs_Temp!FASortCode
  151.             If Val(Rs_Temp!Period) = 12 Then
  152.                 !Year = Val(Rs_Temp!Year) + 1
  153.                 !Period = 1
  154.             Else
  155.                 !Year = Val(Rs_Temp!Year)
  156.                 !Period = Val(Rs_Temp!Period) + 1
  157.             End If
  158.             !FAValuestart = Rs_Temp!FAValueEnd
  159.             !DeprSumStart = Rs_Temp!DeprSumEnd
  160.             !DeprDate = Xtrq
  161.             .Update
  162.         End With
  163.         rstemp.Close
  164.         Set rstemp = Nothing
  165.         Rs_Temp.MoveNext
  166.     Wend
  167.     Rs_Temp.Close
  168.     Set Rs_Temp = Nothing
  169.     
  170.     '追加资产汇总表
  171.     Set Rs_Temp = New ADODB.Recordset
  172.     Sqlstr = "select * from Gdzc_total where year=" & YearTemp & " and period=" & PeriodTemp
  173.     Rs_Temp.Open Sqlstr, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  174.     While Not Rs_Temp.EOF
  175.         Set rstemp = New ADODB.Recordset
  176.         rstemp.Open "select * from Gdzc_total where 1=2", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  177.         With rstemp
  178.             .AddNew
  179.             !DeptCode = Rs_Temp!DeptCode
  180.             !FASortCode = Rs_Temp!FASortCode
  181.             If Val(Rs_Temp!Period) = 12 Then
  182.                 !Year = Val(Rs_Temp!Year) + 1
  183.                 !Period = 1
  184.                 !FAValueStartY = Rs_Temp!FAvalueEndM
  185.                 !DeprSumStartY = Rs_Temp!DeprSumEndM
  186.             Else
  187.                 !Year = Val(Rs_Temp!Year)
  188.                 !Period = Val(Rs_Temp!Period) + 1
  189.             End If
  190.             !FAValueStartY = Val(Rs_Temp!FAValueStartY & "")
  191.             !DeprSumStartY = Val(Rs_Temp!DeprSumStartY & "")
  192.             !FAValueStartM = Rs_Temp!FAvalueEndM
  193.             !DeprSumStartM = Rs_Temp!DeprSumEndM
  194.             !FAvalueEndM = !FAValueStartM
  195.             !DeprSumEndM = !DeprSumStartM
  196.             .Update
  197.         End With
  198.         rstemp.Close
  199.         Set rstemp = Nothing
  200.         Rs_Temp.MoveNext
  201.     Wend
  202.     Rs_Temp.Close
  203.     Set Rs_Temp = Nothing
  204.     
  205.     '追加工作量表记录
  206.     Set Rs_Temp = New ADODB.Recordset
  207.     Sqlstr = "select * from Gdzc_JobQuantity where year=" & YearTemp & " and period=" & PeriodTemp
  208.     Rs_Temp.Open Sqlstr, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  209.     While Not Rs_Temp.EOF
  210.         Set rstemp = New ADODB.Recordset
  211.         rstemp.Open "select * from Gdzc_JobQuantity where 1=2", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  212.         With rstemp
  213.             .AddNew
  214.             !CardCode = Rs_Temp!CardCode
  215.             If Val(Rs_Temp!Period) = 12 Then
  216.                 !Year = Val(Rs_Temp!Year) + 1
  217.                 !Period = 1
  218.             Else
  219.                 !Year = Val(Rs_Temp!Year)
  220.                 !Period = Val(Rs_Temp!Period) + 1
  221.             End If
  222.             !ActivitiesStart = Rs_Temp!AcivitiesAEnd
  223.             !AcivitiesAEnd = Rs_Temp!AcivitiesAEnd
  224.             !AcivitiesUnit = Rs_Temp!AcivitiesUnit
  225.             .Update
  226.         End With
  227.         rstemp.Close
  228.         Set rstemp = Nothing
  229.         Rs_Temp.MoveNext
  230.     Wend
  231.     Rs_Temp.Close
  232.     Set Rs_Temp = Nothing
  233.     
  234.     '将固定资产月末结帐标志赋成已结帐
  235.     Set rstemp = New ADODB.Recordset
  236.     rstemp.Open "select top 1 * from gy_kjrlb where gdzcjzbz='0'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  237.     If Not rstemp.EOF Then
  238.         rstemp.Fields("gdzcjzbz") = True
  239.         rstemp.Update
  240.     End If
  241.     rstemp.Close
  242.     Set rstemp = Nothing
  243.     
  244.     '将资产卡片的结帐标志赋成未折旧和未结帐
  245.     Cw_DataEnvi.DataConnect.Execute ("update gdzc_card set deprflag='0' where deprflag='1'")
  246.     
  247.     Cw_DataEnvi.DataConnect.CommitTrans
  248.     Tsxx = "本月月末结帐完毕!"
  249.     Call Xtxxts(Tsxx, 0, 4)
  250.     Unload Me
  251.     Exit Sub
  252. Cwcl:
  253.     Cw_DataEnvi.DataConnect.RollbackTrans
  254.     Tsxx = "计提折旧过程中出现未知错误,程序自动恢复折旧前状态!"
  255.     Call Xtxxts(Tsxx, 0, 1)
  256.     Exit Sub
  257.     
  258. End Sub
  259. Private Sub QxCommand_Click()   '取消
  260.     Unload Me
  261. End Sub