Select Case psCommand
Case "NEW"
If Not Me.pnl1Edit.Visible Then
lstFltQueryType.Focus()
lsJS = vbCrLf & "<SCRIPT TYPE=""text/javascript"">"
lsJS &= vbCrLf & " document.all." & Me.lstFltQueryType.ClientID & "_" & QuerybyTypeEnum.File & ".checked=true;" '这里check=true默认选中
lsJS &= vbCrLf & " document.all." & Me.pnl1File.ClientID & ".style.display=""block"";" '这里是panel控件,上传文件功能
lsJS &= vbCrLf & " document.all." & Me.pnl1MACSecurityKey.ClientID & ".style.display=""none"";"
lsJS &= vbCrLf & "</SCRIPT>"
Me.RegisterStartupScript("SetDefaultQueryType", lsJS)
Try
If GetMessage() = "" Then
If Me.cmdMACSecurityKeySave.Text = "SAVE NEW" Then 'New Save
If Me.lstFltQueryType.SelectedIndex = QuerybyTypeEnum.MACSecurityKey Then
If Not loOleDb.Open(GetConfigValue("DatabaseSFC" & ddlFltMfgType.SelectedValue)) Then
SetMessage(loOleDb.Message, messageType.Failure)
End If
lsSQL = "SELECT MAC"
lsSQL &= " FROM JOLLA_MACSCYKEYMAP "
lsSQL &= " WHERE MAC = '" & Me.txtMAC.Text.Replace("'", "''").ToUpper() & "'"
loDataTable = New DataTable
If Not loOleDb.FillDataTable(lsSQL, loDataTable) Then SetMessage(loOleDb.Message & "<br>" & lsSQL, messageType.Failure)
If GetMessage() = "" Then
If loDataTable.Rows.Count > 0 Then
SetMessage("The MAC already exist!", messageType.Warning)
End If
End If
If GetMessage().Equals("") Then
lsSQL = "INSERT INTO JOLLA_MACSCYKEYMAP (MAC,SCYKEY,USERID,TRNDATE) VALUES"
lsSQL &= "('" & Me.txtMAC.Text.Trim.Replace("'", "''").ToUpper() & "'"
lsSQL &= ",'" & Me.txtSKey.Text.Trim.Replace("'", "''") & "'"
lsSQL &= ",'" & m_strUserID & "'"
lsSQL &= ",sysdate"
lsSQL &= ")"
loOleDb.Close()
If Not loOleDb.ExecuteNonQuery(lsSQL) Then SetMessage(loOleDb.Message & "<br>" & lsSQL, messageType.Failure)
End If
ElseIf Me.lstFltQueryType.SelectedIndex = QuerybyTypeEnum.File Then
txtUploadFilename.Text = Request.Form(txtUploadFilename.ClientID).ToString 'no need
Dim lsFilename As String = Server.MapPath(loMICUI.GetApKeyValue("uploadPath")) & txtUploadFilename.Text
Dim lsExcelandColumnName As String = loMICUI.GetApKeyValue("MACExcelSheet", "Sheet1")
'for test
'Dim lsFilename As String = "D:\test.xls"
'Dim lsExcelandColumnName As String = loMICUI.GetApKeyValue("MACExcelSheet", "A")
loFileInfo = New FileInfo(lsFilename)
If Not loFileInfo.Exists() Then
SetMessage("The upload file was not found, please upload again.", clsMICUI.MessageTypeEnum.Failure)
ElseIf Not loOleDb.Open(String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;HDR=YES;IMEX=1;""", lsFilename)) Then
SetMessage("Fail to open upload file.<br>" & loOleDb.Message, clsMICUI.MessageTypeEnum.Failure)
Else
strUploadColName = GetConfigValue("UploadColumn").Split(",")
If strUploadColName.Length > 0 Then
strUploadColNum = Chr(65 - 1 + strUploadColName.Length) 'A,B,....列
End If
lsSQL = "SELECT * FROM" & _
" [" & lsExcelandColumnName & "$" & "A" & ":" & strUploadColNum & "]"
'lsSQL = "SELECT * FROM [Sheet1]"
loDataTable = New DataTable
If Not loOleDb.FillDataTable(lsSQL, loDataTable) Then
SetMessage(loOleDb.Message & "<br>" & lsSQL, clsMICUI.MessageTypeEnum.Failure)
Else
If loDataTable.Rows.Count > 0 Then
' Response.Write(loDataTable.Rows.Count)
loOleDb.Close()
If Not loOleDb.Open(GetConfigValue("DatabaseSFC" & ddlFltMfgType.SelectedValue)) Then
SetMessage(loOleDb.Message, messageType.Failure)
Else
loOleDb.BeginTrans()
For Each tempDataRow As DataRow In loDataTable.Rows
loDTTable = New DataTable
lotDTTable = New DataTable
lsSQLF = "SELECT *"
lsSQLF &= " FROM JOLLA_MACSCYKEYMAP"
lsSQLF &= " WHERE MAC = '" & tempDataRow(0).ToString.Trim.ToUpper & "'"
If Not loOleDb.FillDataTable(lsSQLF, loDTTable) Then SetMessage(loOleDb.Message & "<br>" & lsSQLF, messageType.Failure)
'If Not loOleDb.FillDataTable(lstSQLF, lotDTTable) Then SetMessage(loOleDb.Message & "<br>" & lsSQLF, messageType.Failure)
If loDTTable.Rows.Count > 0 Then
SetMessage("The MAC " + tempDataRow(0).ToString.Trim.ToUpper + " already exist !", messageType.Warning)
Exit For
Else
If Not IsDBNull(tempDataRow(0)) AndAlso Not IsDBNull(tempDataRow(1)) Then
lsSQLG = "INSERT INTO JOLLA_MACSCYKEYMAP( " & GetConfigValue("UploadColumn") & ",USERID,TRNDATE) VALUES"
lsSQLG &= "('" & tempDataRow(0).ToString.Trim.ToUpper & "'"
lsSQLG &= ",'" & tempDataRow(1).ToString.Trim & "'"
lsSQLG &= ",'" & m_strUserID & "'"
lsSQLG &= ",SYSDATE"
lsSQLG &= ")"
If Not loOleDb.ExecuteNonQuery(lsSQLG) Then SetMessage(loOleDb.Message & "<br>" & lsSQLF, messageType.Failure)
End If
End If
Next
If GetMessage() = "" Then
loOleDb.CommitTrans()
Else
loOleDb.RollbackTrans()
End If
End If
Else
SetMessage("File is empty.", clsMICUI.MessageTypeEnum.Failure)
End If
End If
End If
End If
Else 'Edit Save
If GetMessage() = "" Then
If Not loOleDb.Open(GetConfigValue("DatabaseSFC" & ddlFltMfgType.SelectedValue)) Then
SetMessage(loOleDb.Message, messageType.Failure)
End If
lsSQL = "UPDATE JOLLA_MACSCYKEYMAP"
lsSQL &= " SET SCYKEY = '" & Me.txtSKey.Text.Trim.Replace("'", "''").ToUpper() & "'"
lsSQL &= ", USERID = '" & m_strUserID & "'"
lsSQL &= ", TRNDATE = SYSDATE"
lsSQL &= " WHERE MAC ='" & Me.txtMAC.Text.Trim.Replace("'", "''").ToUpper() & "'"
If Not loOleDb.ExecuteNonQuery(lsSQL) Then SetMessage(loOleDb.Message & "<br>" & lsSQL, messageType.Failure)
End If
End If
End If
If GetMessage() = "" Then
SetMessage("MAC SecurityKey saved ! ", messageType.Information)
If Me.cmdMACSecurityKeySave.Text = "SAVE NEW" And Me.chkMACSecurityKeyNew.Checked Then
renderMACSecurityKey("NEW")
DisplayPanel(tabName.MACSecurityKey, panelType.Edit)
Else
DisplayPanel(tabName.DataFilter, panelType.View)
DisplayPanel(tabName.MACSecurityKey, panelType.View)
bindMACSecurityKey(Me.txtMACSecurityKeySort.Text, 1)
End If
Else
javascriptMACSecurityKey(Me.cmdMACSecurityKeySave.Text.Substring(Me.cmdMACSecurityKeySave.Text.IndexOf(" ") + 1))
DisplayPanel(tabName.MACSecurityKey, panelType.Edit)
End If
DisplayMessagePanel()
Catch ex As Exception
DisplayMessagePanel()
DisplayPanel(tabName.MACSecurityKey, panelType.Edit)
SetMessage(ex.Message, messageType.Failure)
Finally
Me.txtUploadFilename.Text = ""
If Not loDataTable Is Nothing Then loDataTable.Dispose() 'Release source
If loOleDb.Open Then loOleDb.Close() 'Close DB link
'If Not loFileInfo Is Nothing Then loFileInfo.Delete()
End Try
js上传,修改
<add key="uploadPath" value="F:\CR\ROOT\UploadTemp" /> <!-- This key is required by SlickUpload for file upload, it is used for temporary storage -->
<add key="uploadPath" value="E:\BlueOcean\CIM2006\UploadTemp" /> 对比设置,这是在test server上
http://localhost/SMWZS835/SMWZS835.aspx '这里本地要把服务器上appliation 的URL设置成SMWZS835/SMWZS835.ASPX
http://10.41.21.91:808/SM08/SMWZS835.aspx
'===ItemDataBound,这里对整个列的权限管控
Private Sub grdMACSecurityKey_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgdMACSecurityKey.ItemDataBound
With CType(sender, DataGrid)
Select Case e.Item.ItemType
Case ListItemType.Header
iItemNum = IIf(pageMACSecurityKey.CurrentPage = 0, 0, (pageMACSecurityKey.CurrentPage - 1) * pageMACSecurityKey.PageSize)
Case ListItemType.Item, ListItemType.AlternatingItem
With e.Item
iItemNum += 1
.Cells(dgdMACSecurityKeyTable.ItemNum).Text = iItemNum.ToString()
.Cells(dgdMACSecurityKeyTable.EditButton).Enabled = False
End With
Dim loButton As Button = e.Item.Cells(dgdMACSecurityKeyTable.EditButton).FindControl("cmdMACSecurityKeyEdit")
If Not loButton Is Nothing Then loButton.Visible = IsAllow(Session(sAPID & "_Allow"), dataAllow.Edit)
Dim loButtonl As CheckBox = e.Item.FindControl("chkMACSecurityKeyDel")
Case ListItemType.Footer
.Columns(dgdMACSecurityKeyTable.EditButton).Visible = (loMICUI.ApAllowed(Session(sAPID & "_Allow"), clsMICUI.AllowEnum.Edit) OrElse loMICUI.ApAllowed(Session(sAPID & "_Allow"), clsMICUI.AllowEnum.Add))
.Columns(dgdMACSecurityKeyTable.DelButton).Visible = loMICUI.ApAllowed(Session(sAPID & "_Allow"), clsMICUI.AllowEnum.Delete) '===这里对整个列的权限管控
End Select
End With
End Sub