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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form frm_new_bbmbfromfile 
  3.    AutoRedraw      =   -1  'True
  4.    Caption         =   "文件存为模板"
  5.    ClientHeight    =   2070
  6.    ClientLeft      =   60
  7.    ClientTop       =   345
  8.    ClientWidth     =   4200
  9.    Icon            =   "新建模板from文件.frx":0000
  10.    KeyPreview      =   -1  'True
  11.    LinkTopic       =   "Form1"
  12.    MaxButton       =   0   'False
  13.    MinButton       =   0   'False
  14.    ScaleHeight     =   2070
  15.    ScaleWidth      =   4200
  16.    StartUpPosition =   1  '所有者中心
  17.    Begin VB.Frame Frame1 
  18.       Height          =   1515
  19.       Left            =   60
  20.       TabIndex        =   2
  21.       Top             =   90
  22.       Width           =   4065
  23.       Begin VB.TextBox Text3 
  24.          Enabled         =   0   'False
  25.          Height          =   300
  26.          Left            =   1080
  27.          TabIndex        =   5
  28.          Top             =   270
  29.          Width           =   2865
  30.       End
  31.       Begin VB.TextBox Text1 
  32.          BeginProperty DataFormat 
  33.             Type            =   1
  34.             Format          =   "99999"
  35.             HaveTrueFalseNull=   0
  36.             FirstDayOfWeek  =   0
  37.             FirstWeekOfYear =   0
  38.             LCID            =   2052
  39.             SubFormatType   =   0
  40.          EndProperty
  41.          Height          =   300
  42.          Left            =   1080
  43.          MaxLength       =   5
  44.          TabIndex        =   4
  45.          Top             =   690
  46.          Width           =   2865
  47.       End
  48.       Begin VB.TextBox Text2 
  49.          Height          =   300
  50.          Left            =   1080
  51.          MaxLength       =   20
  52.          TabIndex        =   3
  53.          Top             =   1095
  54.          Width           =   2865
  55.       End
  56.       Begin VB.Label Label2 
  57.          Caption         =   "报表编号:"
  58.          Height          =   225
  59.          Left            =   120
  60.          TabIndex        =   8
  61.          Top             =   750
  62.          Width           =   825
  63.       End
  64.       Begin VB.Label Label3 
  65.          Caption         =   "报表名称:"
  66.          Height          =   225
  67.          Left            =   120
  68.          TabIndex        =   7
  69.          Top             =   1140
  70.          Width           =   825
  71.       End
  72.       Begin VB.Label Label1 
  73.          Caption         =   "系统编号:"
  74.          Height          =   210
  75.          Left            =   120
  76.          TabIndex        =   6
  77.          Top             =   315
  78.          Width           =   825
  79.       End
  80.    End
  81.    Begin VB.CommandButton Command1 
  82.       Caption         =   "确定(&O)"
  83.       Height          =   300
  84.       Left            =   1800
  85.       TabIndex        =   1
  86.       Top             =   1695
  87.       Width           =   1120
  88.    End
  89.    Begin VB.CommandButton Command2 
  90.       Cancel          =   -1  'True
  91.       Caption         =   "取消(&C)"
  92.       Height          =   300
  93.       Left            =   3000
  94.       TabIndex        =   0
  95.       Top             =   1695
  96.       Width           =   1120
  97.    End
  98. End
  99. Attribute VB_Name = "frm_new_bbmbfromfile"
  100. Attribute VB_GlobalNameSpace = False
  101. Attribute VB_Creatable = False
  102. Attribute VB_PredeclaredId = True
  103. Attribute VB_Exposed = False
  104. '***********************************************
  105. '*    模 块 名 称 :新建模板(From文件)
  106. '*    功 能 描 述 :
  107. '*    程序员姓名  :奚俊峰
  108. '*    最后修改人  :奚俊峰
  109. '*    最后修改时间:2002/01/21
  110. '***********************************************
  111. Option Explicit
  112. Private Sub Command1_Click() '检查并保存
  113.     Dim lrst_select As New ADODB.Recordset
  114.     Dim ls_select As String
  115.     If Len(Trim(ls_xtbm)) = 0 Then
  116.         MsgBox "请输入系统编码!", vbOKOnly, "百利/ERP5.0-电子报表"
  117.         ls_xtbm.SetFocus
  118.         Exit Sub
  119.     End If
  120.     If Len(Trim(Text1.Text)) = 0 Then
  121.         MsgBox "请输入报表模板号!", vbOKOnly, "百利/ERP5.0-电子报表"
  122.         Text1.SetFocus
  123.         Exit Sub
  124.     End If
  125.     If Len(Trim(Text2.Text)) = 0 Then
  126.         MsgBox "请输入报表模板名称!", vbOKOnly, "百利/ERP5.0-电子报表"
  127.         Text2.SetFocus
  128.         Exit Sub
  129.     End If
  130.     If Not IsNumeric(Text1) Then
  131.         MsgBox "请输入报表模板号!" & vbCrLf & "模板号必须为数字!", vbOKOnly, "百利/ERP5.0-电子报表"
  132.         Text1.SetFocus
  133.         Exit Sub
  134.     End If
  135.     Text1.Text = Right("000000" & Text1, 5)
  136.     ls_select = "select report_model_id from dzbb_bbmb where system_code='" & Left(ls_xtbm, 2) _
  137.     & "' and report_model_id='" & Text1.Text & "'"
  138.     lrst_select.Open ls_select, Cw_DataEnvi.dataconnect, adOpenDynamic, adLockOptimistic
  139.     If lrst_select.RecordCount > 0 Then
  140.         lrst_select.Close
  141.         Set lrst_select = Nothing
  142.         MsgBox "您输入的报表模板号已存在!", vbOKOnly, "百利/ERP5.0-电子报表"
  143.         Text1.SetFocus
  144.         Exit Sub
  145.     End If
  146.     lrst_select.Close
  147.     ls_select = "select report_model_id from dzbb_bbmb where system_code='" & Left(ls_xtbm, 2) _
  148.     & "' and report_model_name='" & Trim(Text2.Text) & "'"
  149.     lrst_select.Open ls_select, Cw_DataEnvi.dataconnect, adOpenDynamic, adLockOptimistic
  150.     If lrst_select.RecordCount > 0 Then
  151.         lrst_select.Close
  152.         Set lrst_select = Nothing
  153.         MsgBox "您输入的报表模板名称已存在!", vbOKOnly, "百利/ERP5.0-电子报表"
  154.         Text2.SetFocus
  155.         Exit Sub
  156.     End If
  157.     lrst_select.Close
  158.     '******************************************************************
  159.     '将文件保存为模板
  160.     Dim ls_path As String
  161.     Dim ls_filename As String
  162.     Dim ll_filenumber As Long
  163.     Dim laby_cell() As Byte
  164.     Dim ll_filelen
  165.     Dim i As Integer
  166.     ls_path = App.Path
  167.     If Right(ls_path, 1) <> "" Then
  168.         ls_path = ls_path & ""
  169.     End If
  170.     ls_filename = ls_path + "dzbb_temp.cll"
  171.     If Dir(ls_filename) <> "" Then
  172.         Kill ls_filename
  173.     End If
  174.     If MDI_frame.ActiveForm.Cell1.DoSaveFile(ls_filename) <= 0 Then
  175.         MsgBox "保存到临时文件失败,报表模板保存失败!", vbOKOnly + vbExclamation, "百利/ERP5.0-电子报表"
  176.         Exit Sub
  177.     End If
  178.     ll_filenumber = FreeFile()
  179.     Open ls_filename For Binary As #ll_filenumber
  180.     ll_filelen = LOF(ll_filenumber)
  181.     ReDim laby_cell(ll_filelen)
  182.     Get #ll_filenumber, 1, laby_cell
  183.     Close #ll_filenumber
  184.     '设置权限
  185.     frm_user_right.Show vbModal, MDI_frame
  186.     
  187.     '保存模板
  188.     ls_select = "select * from dzbb_bbmb where system_code='" & Left(ls_xtbm, 2) & "'"
  189.     lrst_select.Open ls_select, Cw_DataEnvi.dataconnect, adOpenDynamic, adLockOptimistic, 8
  190.     With lrst_select
  191.         .AddNew
  192.         .Fields("system_code") = Left(ls_xtbm, 2)
  193.         .Fields("report_model_id") = Text1.Text
  194.         .Fields("report_model_name") = Text2.Text
  195.         .Fields("user_id") = Xtczybm
  196.         .Fields("report_model_nr").AppendChunk laby_cell
  197.         .Fields("canmakdate") = frm_user_right.Combo1.Text
  198.         .Update
  199.     End With
  200.     lrst_select.Close
  201.     ls_select = "select * from dzbb_right"
  202.     lrst_select.Open ls_select, Cw_DataEnvi.dataconnect, adOpenDynamic, adLockOptimistic, 8
  203.     With lrst_select
  204.         For i = 0 To frm_user_right.vs1.Rows - 1
  205.             If frm_user_right.vs1.TextMatrix(i, 2) = "√" Or frm_user_right.vs1.TextMatrix(i, 3) = "√" Then
  206.                 .AddNew
  207.                 .Fields("system_code") = Left(ls_xtbm, 2)
  208.                 .Fields("report_model_id") = Text1.Text
  209.                 .Fields("user_id") = Xtczybm
  210.                 .Fields("bbuser_id") = Trim(frm_user_right.vs1.TextMatrix(i, 0))
  211.                 If frm_user_right.vs1.TextMatrix(i, 2) = "√" Then
  212.                     .Fields("editflag") = 1
  213.                 Else
  214.                     .Fields("editflag") = 0
  215.                 End If
  216.                 .Update
  217.             End If
  218.         Next i
  219.     End With
  220.     If Dir(ls_filename) <> "" Then Kill ls_filename
  221.     Unload frm_user_right
  222.     MsgBox "报表模板保存成功!!!", vbInformation + vbOKOnly, "百利/ERP5.0-电子报表"
  223.     Unload Me
  224.     
  225.     
  226. End Sub
  227. Private Sub command2_Click()
  228.     MDI_frame.mb_new_report_model = False
  229.     Unload Me
  230. End Sub
  231. Private Sub Form_KeyPress(KeyAscii As Integer)
  232.     Select Case KeyAscii
  233.     Case vbKeyReturn
  234.         SendKeys "{tab}"
  235.     Case 39           '屏蔽"'"
  236.         KeyAscii = 0
  237.     End Select
  238. End Sub
  239. Private Sub Form_Load() '初始化
  240.     Dim lrst_xtbm As ADODB.Recordset
  241.     Dim ls_select As String
  242.     Set lrst_xtbm = New ADODB.Recordset
  243.     Dim k As Long
  244.     ls_select = "select system_code,report_model_id  from dzbb_bbmb order by system_code , report_model_id"
  245.     lrst_xtbm.Open ls_select, Cw_DataEnvi.dataconnect, adOpenStatic, adLockReadOnly, adCmdText
  246.     
  247.     If lrst_xtbm.RecordCount = 0 Then
  248.         Text1.Text = "00001"
  249.     Else
  250.         k = 1
  251.         With lrst_xtbm
  252.             Do While Not .EOF
  253.                 If k <> Val(.Fields("report_model_id")) Then
  254.                     Text1.Text = Right("00000" & Trim(Str(k)), 5)
  255.                     Exit Do
  256.                 End If
  257.                 k = k + 1
  258.                 Text1.Text = Right("00000" & Trim(Str(k)), 5)
  259.                 .MoveNext
  260.             Loop
  261.         End With
  262.         lrst_xtbm.Close
  263.     End If
  264.     Set lrst_xtbm = Nothing
  265.     Text3.Text = ls_xtbm
  266. End Sub