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

企业管理

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "mscomctl.ocx"
  3. Begin VB.Form Stand_FrmLimit 
  4.    Appearance      =   0  'Flat
  5.    BackColor       =   &H80000004&
  6.    BorderStyle     =   3  'Fixed Dialog
  7.    Caption         =   "标准表限定条件"
  8.    ClientHeight    =   6165
  9.    ClientLeft      =   45
  10.    ClientTop       =   330
  11.    ClientWidth     =   10110
  12.    HelpContextID   =   221201202
  13.    Icon            =   "基础设置_标准表限定条件.frx":0000
  14.    LinkTopic       =   "Form1"
  15.    LockControls    =   -1  'True
  16.    MaxButton       =   0   'False
  17.    MinButton       =   0   'False
  18.    ScaleHeight     =   6165
  19.    ScaleWidth      =   10110
  20.    ShowInTaskbar   =   0   'False
  21.    StartUpPosition =   2  '屏幕中心
  22.    Begin MSComctlLib.ProgressBar PB_CheckStatus 
  23.       Height          =   420
  24.       Left            =   150
  25.       TabIndex        =   25
  26.       Top             =   5685
  27.       Visible         =   0   'False
  28.       Width           =   7440
  29.       _ExtentX        =   13123
  30.       _ExtentY        =   741
  31.       _Version        =   393216
  32.       BorderStyle     =   1
  33.       Appearance      =   1
  34.       Scrolling       =   1
  35.    End
  36.    Begin VB.CommandButton Cmd_Cancel 
  37.       Caption         =   "取消(&C)"
  38.       Height          =   300
  39.       Left            =   8880
  40.       TabIndex        =   24
  41.       Top             =   5760
  42.       Width           =   1120
  43.    End
  44.    Begin VB.CommandButton Cmd_Save 
  45.       Caption         =   "保存(&S)"
  46.       Height          =   300
  47.       Left            =   7650
  48.       TabIndex        =   23
  49.       Top             =   5760
  50.       Width           =   1120
  51.    End
  52.    Begin VB.Frame Frame3 
  53.       Caption         =   "标准表限定条件输入参照:"
  54.       Height          =   3180
  55.       Left            =   90
  56.       TabIndex        =   1
  57.       Top             =   2475
  58.       Width           =   9900
  59.       Begin VB.Frame Fm_Number 
  60.          Caption         =   "数字符号:"
  61.          Height          =   2790
  62.          Left            =   105
  63.          TabIndex        =   2
  64.          Top             =   285
  65.          Width           =   2010
  66.          Begin VB.CommandButton Cmd_Change 
  67.             Caption         =   "切换"
  68.             Height          =   300
  69.             Left            =   90
  70.             TabIndex        =   18
  71.             Top             =   315
  72.             Width           =   1830
  73.          End
  74.          Begin VB.CommandButton Cmd_Number 
  75.             Caption         =   "."
  76.             Height          =   300
  77.             Index           =   11
  78.             Left            =   1500
  79.             TabIndex        =   17
  80.             Top             =   1545
  81.             Width           =   420
  82.          End
  83.          Begin VB.CommandButton Cmd_Number 
  84.             Caption         =   "%"
  85.             Height          =   300
  86.             Index           =   10
  87.             Left            =   1035
  88.             TabIndex        =   16
  89.             Top             =   1545
  90.             Width           =   420
  91.          End
  92.          Begin VB.CommandButton Cmd_Number 
  93.             Caption         =   "0"
  94.             Height          =   315
  95.             Index           =   9
  96.             Left            =   555
  97.             TabIndex        =   15
  98.             Top             =   1545
  99.             Width           =   420
  100.          End
  101.          Begin VB.CommandButton Cmd_Number 
  102.             Caption         =   "9"
  103.             Height          =   315
  104.             Index           =   8
  105.             Left            =   90
  106.             TabIndex        =   14
  107.             Top             =   1545
  108.             Width           =   420
  109.          End
  110.          Begin VB.CommandButton Cmd_Number 
  111.             Caption         =   "8"
  112.             Height          =   300
  113.             Index           =   7
  114.             Left            =   1500
  115.             TabIndex        =   13
  116.             Top             =   1140
  117.             Width           =   420
  118.          End
  119.          Begin VB.CommandButton Cmd_Number 
  120.             Caption         =   "7"
  121.             Height          =   300
  122.             Index           =   6
  123.             Left            =   1035
  124.             TabIndex        =   12
  125.             Top             =   1140
  126.             Width           =   420
  127.          End
  128.          Begin VB.CommandButton Cmd_Number 
  129.             Caption         =   "6"
  130.             Height          =   315
  131.             Index           =   5
  132.             Left            =   555
  133.             TabIndex        =   11
  134.             Top             =   1140
  135.             Width           =   420
  136.          End
  137.          Begin VB.CommandButton Cmd_Number 
  138.             Caption         =   "5"
  139.             Height          =   315
  140.             Index           =   4
  141.             Left            =   90
  142.             TabIndex        =   10
  143.             Top             =   1140
  144.             Width           =   420
  145.          End
  146.          Begin VB.CommandButton Cmd_Number 
  147.             Caption         =   "4"
  148.             Height          =   300
  149.             Index           =   3
  150.             Left            =   1500
  151.             TabIndex        =   9
  152.             Top             =   735
  153.             Width           =   420
  154.          End
  155.          Begin VB.CommandButton Cmd_Number 
  156.             Caption         =   "3"
  157.             Height          =   300
  158.             Index           =   2
  159.             Left            =   1035
  160.             TabIndex        =   8
  161.             Top             =   750
  162.             Width           =   420
  163.          End
  164.          Begin VB.CommandButton Cmd_Number 
  165.             Caption         =   "2"
  166.             Height          =   315
  167.             Index           =   1
  168.             Left            =   555
  169.             TabIndex        =   7
  170.             Top             =   735
  171.             Width           =   420
  172.          End
  173.          Begin VB.CommandButton Cmd_Number 
  174.             Caption         =   "1"
  175.             Height          =   315
  176.             Index           =   0
  177.             Left            =   90
  178.             TabIndex        =   6
  179.             Top             =   735
  180.             Width           =   420
  181.          End
  182.          Begin VB.CommandButton Cmd_Number 
  183.             Caption         =   " AND "
  184.             Height          =   300
  185.             Index           =   12
  186.             Left            =   75
  187.             TabIndex        =   5
  188.             Top             =   1965
  189.             Width           =   900
  190.          End
  191.          Begin VB.CommandButton Cmd_Guide 
  192.             Caption         =   "函数向导"
  193.             Height          =   300
  194.             Left            =   75
  195.             TabIndex        =   4
  196.             Top             =   2355
  197.             Width           =   1815
  198.          End
  199.          Begin VB.CommandButton Cmd_Number 
  200.             Caption         =   " LIKE"
  201.             Height          =   300
  202.             Index           =   13
  203.             Left            =   1035
  204.             TabIndex        =   3
  205.             Top             =   1965
  206.             Width           =   870
  207.          End
  208.       End
  209.       Begin MSComctlLib.TreeView TV_PreField 
  210.          Height          =   2640
  211.          Left            =   2205
  212.          TabIndex        =   19
  213.          Top             =   420
  214.          Width           =   3795
  215.          _ExtentX        =   6694
  216.          _ExtentY        =   4657
  217.          _Version        =   393217
  218.          LabelEdit       =   1
  219.          LineStyle       =   1
  220.          Style           =   7
  221.          Appearance      =   1
  222.       End
  223.       Begin MSComctlLib.TreeView TV_FieldValue 
  224.          Height          =   2655
  225.          Left            =   6075
  226.          TabIndex        =   20
  227.          Top             =   405
  228.          Width           =   3690
  229.          _ExtentX        =   6509
  230.          _ExtentY        =   4683
  231.          _Version        =   393217
  232.          LabelEdit       =   1
  233.          LineStyle       =   1
  234.          Style           =   7
  235.          Appearance      =   1
  236.       End
  237.       Begin VB.Label Lab_Mark 
  238.          Caption         =   "关联项:"
  239.          Height          =   195
  240.          Index           =   4
  241.          Left            =   6075
  242.          TabIndex        =   22
  243.          Top             =   210
  244.          Width           =   915
  245.       End
  246.       Begin VB.Label Lab_Mark 
  247.          Caption         =   "待选项目:"
  248.          Height          =   165
  249.          Index           =   3
  250.          Left            =   2220
  251.          TabIndex        =   21
  252.          Top             =   195
  253.          Width           =   825
  254.       End
  255.    End
  256.    Begin VB.TextBox Txt_FLimit 
  257.       Height          =   2295
  258.       Left            =   105
  259.       MultiLine       =   -1  'True
  260.       ScrollBars      =   2  'Vertical
  261.       TabIndex        =   0
  262.       Top             =   90
  263.       Width           =   9885
  264.    End
  265. End
  266. Attribute VB_Name = "Stand_FrmLimit"
  267. Attribute VB_GlobalNameSpace = False
  268. Attribute VB_Creatable = False
  269. Attribute VB_PredeclaredId = True
  270. Attribute VB_Exposed = False
  271. '*******************************************************
  272. '*    模 块 名 称 :标准表限定条件
  273. '*    功 能 描 述 :设置标准表的限定条件。
  274. '*    程序员姓名  :田建秀
  275. '*    最后修改人  :田建秀
  276. '*    最后修改时间:2002/01/04
  277. '*    备        注:
  278. '*******************************************************
  279. Option Explicit
  280. Const STATUS_VIEW As Integer = 0
  281. Const STATUS_ADD As Integer = 1
  282. Const STATUS_EDIT As Integer = 2
  283. Dim cn As Connection
  284. Dim sFieldOld As String
  285. Dim iNowState As Integer
  286. Dim Sql As String
  287. Dim Rsc As New ADODB.Recordset
  288. Private Sub Cmd_Save_Click()
  289.     Dim cQuerys As New CQuery
  290.     Dim sSqlWhere As String
  291.     '验证限定条件
  292.     Set cQuerys.PB_CheckStatus = Me.PB_CheckStatus
  293.     If cQuerys.CheckFormula(Trim(Me.Txt_FLimit.Text)) = True Then
  294.         sSqlWhere = cQuerys.FormulaSQL
  295.         Me.Txt_FLimit.Text = cQuerys.FormulaOld
  296.         '存储限定条件
  297.         If Rsc.State = 1 Then Rsc.Close
  298.         Sql = "select * from PM_StandTbl where BzbNO=" & _
  299.             Stand_FrmFirst.CzxsGrid.TextMatrix(Stand_FrmFirst.CzxsGrid.Row, 0)
  300.         Rsc.Open Sql, Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
  301.         With Rsc
  302.             !BzbConUser = Trim(Txt_FLimit.Text)
  303.             !BzbCond = sSqlWhere
  304.             .Update
  305.         End With
  306.      
  307.         On Error GoTo Err1
  308.         With Cw_DataEnvi.DataConnect
  309.             .BeginTrans
  310.             .Execute Sql
  311.             .CommitTrans
  312.         End With
  313.         Call Xtxxts("保存成功!", 0, 4)
  314.         Unload Me
  315.         Exit Sub
  316.     Else
  317.         Exit Sub
  318.     End If
  319. Err1:
  320.     Cw_DataEnvi.DataConnect.RollbackTrans
  321.     Call Xtxxts("保存不成功!", 0, 1)
  322. End Sub
  323. Private Sub Cmd_Cancel_Click()
  324.     Unload Me
  325. End Sub
  326. Private Sub Form_Load()
  327.     InitView Me.TV_PreField, " ltrim(rtrim(TableName))= 'rs_basicInfo' or ltrim(rtrim(TableName))= 'rs_ExtendInfo'" '填充字段树
  328.     If Rsc.State = 1 Then Rsc.Close
  329.     Sql = "select * from PM_StandTbl where BzbNO=" & _
  330.         Stand_FrmFirst.CzxsGrid.TextMatrix(Stand_FrmFirst.CzxsGrid.Row, 0)
  331.     Set Rsc = Cw_DataEnvi.DataConnect.Execute(Sql)
  332.     If Not Rsc.EOF Then
  333.         Me.Txt_FLimit.Text = Trim(Rsc!BzbConUser & "")
  334.     Else
  335.        Call Xtxxts("这一标准表已被删除!", 0, 1)
  336.        Unload Me
  337.     End If
  338. End Sub
  339. Private Sub Cmd_Change_Click()
  340.     '交换数字和操作符
  341.     With Me.Fm_Number
  342.     If Trim(.Caption) = "数字符号:" Then
  343.         Cmd_Number(0).Caption = " +"
  344.         Cmd_Number(1).Caption = " -"
  345.         Cmd_Number(2).Caption = " *"
  346.         Cmd_Number(3).Caption = " /"
  347.         Cmd_Number(4).Caption = " ="
  348.         Cmd_Number(5).Caption = " <>"
  349.         Cmd_Number(6).Caption = " >"
  350.         Cmd_Number(7).Caption = " >="
  351.         Cmd_Number(8).Caption = " <"
  352.         Cmd_Number(9).Caption = " <="
  353.         Cmd_Number(10).Caption = " ("
  354.         Cmd_Number(11).Caption = " )"
  355.         Cmd_Number(12).Caption = " OR"
  356.         .Caption = "运算符号:"
  357.     Else
  358.         Cmd_Number(0).Caption = "1"
  359.         Cmd_Number(1).Caption = "2"
  360.         Cmd_Number(2).Caption = "3"
  361.         Cmd_Number(3).Caption = "4"
  362.         Cmd_Number(4).Caption = "5"
  363.         Cmd_Number(5).Caption = "6"
  364.         Cmd_Number(6).Caption = "7"
  365.         Cmd_Number(7).Caption = "8"
  366.         Cmd_Number(8).Caption = "9"
  367.         Cmd_Number(9).Caption = "0"
  368.         Cmd_Number(10).Caption = "%"
  369.         Cmd_Number(11).Caption = "."
  370.         Cmd_Number(12).Caption = " AND"
  371.         .Caption = "数字符号:"
  372.       End If
  373.     End With
  374. End Sub
  375. Private Sub Cmd_Number_Click(Index As Integer)
  376.     '向本框中添加数字或操作符
  377.     Dim s As String
  378.     s = Me.Cmd_Number(Index).Caption
  379. '        添加限定条件
  380.     With Me.Txt_FLimit
  381.         If .SelLength <> 0 Then
  382.             .Text = ReplByPos(.Text, s, .SelStart + 1, .SelStart + .SelLength + 1)
  383.         Else
  384.             .Text = .Text & s
  385.         End If
  386.     End With
  387.     
  388. End Sub
  389. Private Sub Form_Unload(Cancel As Integer)
  390.     Set Rsc = Nothing
  391. End Sub
  392. Private Sub TV_PreField_BeforeLabelEdit(Cancel As Integer)
  393.     Cancel = 1
  394. End Sub
  395. Private Sub TV_PreField_DblClick()
  396.     '添加此字段到相应位置
  397.     Dim nod As Node
  398.     With Me.TV_PreField
  399.         '如果当前没有选中接点,退出
  400.         Set nod = .SelectedItem
  401.         If nod Is Nothing Then
  402.             Exit Sub
  403.         End If
  404.         '如果不是字段.退出
  405.         If nod.Children <> 0 Then
  406.             Set nod = Nothing
  407.             Exit Sub
  408.         End If
  409.         '如果是根结点,推出
  410.         If nod.Parent Is Nothing Then
  411.             Exit Sub
  412.         End If
  413.         '添加节点到相应位置
  414.         Me.Txt_FLimit.Text = Me.Txt_FLimit.Text & " " & nod.Parent.Text & "." & nod.Text
  415.     End With
  416.     '如果当前节点有相关帮助,并且不是上一次选中的节点,填充相关帮助
  417.     If sFieldOld <> nod.Key Then
  418.         FillValue2TV nod.Tag, Me.TV_FieldValue
  419.         sFieldOld = nod.Key
  420.     End If
  421.     Set nod = Nothing
  422. End Sub
  423. Private Sub TV_FieldValue_BeforeLabelEdit(Cancel As Integer)
  424.     Cancel = 1
  425. End Sub
  426. Private Sub TV_FieldValue_NodeClick(ByVal Node As MSComctlLib.Node)
  427.     '添加字段到相应位置
  428.     Dim nod As Node
  429.     With Me.TV_FieldValue
  430.         Set nod = .SelectedItem
  431.         If nod Is Nothing Then
  432.             Exit Sub
  433.         End If
  434.         If nod.Parent Is Nothing Then
  435.             Set nod = Nothing
  436.             Exit Sub
  437.         End If
  438.         Me.Txt_FLimit.Text = Me.Txt_FLimit.Text & " " & nod.Text
  439.     End With
  440.     Set nod = Nothing
  441.     
  442. End Sub
  443. Private Sub Cmd_Guide_Click()
  444.     Dim s As String
  445.     Dim frm As New Formula_Guide_Frm
  446.     
  447.     With frm
  448.         .Show 1
  449.         s = .sFunction
  450.     End With
  451.     
  452.     
  453.     '向文本框中添加函数
  454.     If s <> "" Then
  455.         '添加限定条件
  456.         With Me.Txt_FLimit
  457.             If .SelLength <> 0 Then
  458.                 .Text = ReplByPos(.Text, s, .SelStart + 1, .SelStart + .SelLength + 1)
  459.             Else
  460.                 .Text = .Text & " " & s
  461.             End If
  462.         End With
  463.     End If
  464.     Set frm = Nothing
  465. End Sub