/
ivan
/
ModMas
Обзор
Документация
Войти
/
ivan
/
ModMas
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
ModuleMaster/qc/get_sn_info.aspx.vb
233 строки
8 KB
i.krivokon
Initial commit
13 мар 2026, 13:49
13 мар 2026, 13:49
00d9fb6
Код
Авторство
О чём код?
Imports System.Data Imports System.Data.SqlClient Imports sharedClasses.dbFunctions Imports System.Net Imports System.IO Partial Class Xml_viewTable Inherits System.Web.UI.Page Private sqlf As New sharedClasses.dbFunctions.SqlFunctions Private a As sharedClasses.Auth.auth Private Sub authorize(mode As String) a = New sharedClasses.Auth.auth(mode, IIf(Request.UserHostAddress = "::1", "106.109.72.69", Request.UserHostAddress)) End Sub Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Dim userid As String = "" 'If Not IsNothing(Request.QueryString("OrchUserLogin")) Then ' userid = Request.QueryString("OrchUserLogin") 'End If 'If Not IsNothing(Request.QueryString("u")) Then ' userid = Request.QueryString("u") 'End If If userid = "" Then authorize("SSO") userid = a.userId edTableToView.Message = "By SSO: " & a.userId End If Dim tableId As String = "" Dim viewId As String = "" tableId = "1706" If Not IsNothing(Request.QueryString("debug")) Then edTableToView.debugMode = (Request.QueryString("debug") = "true") End If If Not IsPostBack Then If Not IsNothing(Request.QueryString("p")) Then If IsNumeric(Request.QueryString("p")) Then edTableToView.PageSize = Request.QueryString("p") End If End If End If edTableToView.IsReadOnly = True edTableToView.UserName = userid.ToUpper If Not IsNothing(Request.QueryString("viewonly")) Then If Request.QueryString("viewonly").ToString.ToUpper = "YES" Then edTableToView.UserName = "" End If End If Try If Not IsNothing(Request.QueryString("mailscheduleid")) Then Try Dim ScheduleParams As DataRow ScheduleParams = sqlf.GetData("SELECT * FROM UserModules.dbo.Mail_Schedule WHERE id = " & Request.QueryString("mailscheduleid") & " and enabled='Y'").Rows(0) tableId = ScheduleParams("table_id") edTableToView.TableId = tableId Dim mailRecepients As DataTable = sqlf.GetData("SELECT * from UserModules.dbo.Mail_Groups WHERE MAIL_GROUP_NAME = '" & ScheduleParams("MAIL_GROUP") & "' and enabled = 'Y'") If mailRecepients.Rows.Count > 0 Then UpdteMessageSendLog(Request.QueryString("mailscheduleid"), "OK", "START") For Each dr As DataRow In mailRecepients.Rows If dr("single_id") <> "" Then 'Dim UserTableName As String = (New SqlFunctions).GetScalar("SELECT tablename FROM UserModules.dbo.ModuleTables where id = " & tableId) Dim messageBody As String = ScheduleParams("body_text") & "<hr />" edTableToView.AuthorityCheck() edTableToView.BuildColumnsConfiguration() Select Case ScheduleParams("message_Type") Case "Table" messageBody &= edTableToView.GetHTMLGrid Case "Table & Graph" messageBody &= edTableToView.GetHTMLGrid messageBody &= "<hr />" End Select CommonFunctions.SendEmail(dr("single_id"), ScheduleParams("subject_text"), messageBody) UpdteMessageSendLog(Request.QueryString("mailscheduleid"), "OK", dr("single_id")) End If Next UpdteMessageSendLog(Request.QueryString("mailscheduleid"), "OK", "FINISH") End If Catch ex As Exception End Try Response.Write("Message send.") Response.End() End If If IsNumeric(tableId) Then edTableToView.TableId = tableId Else edTableToView.TableId = -1 End If If IsNumeric(viewId) Then edTableToView.ViewID = viewId Else edTableToView.ViewID = -1 End If Catch ex As Exception End Try End Sub Private Sub UpdteMessageSendLog(mailScheduleId As Integer, result As String, message As String) Dim sql As String = "INSERT Into UserModules.DBO.MAIL_SEND_LOG (MAIL_SCHEDULE_ID, LAST_RUN, RESULT,[MESSAGE]) VALUES (" & mailScheduleId & ",'" & DateTime.Now.ToString("yyyy-MM-dd HH:mm") & "','OK','" & message & "')" sqlf.NonQuery(sql) End Sub Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control) End Sub Protected Sub filterChanged() Handles edTableToView.GridFilterChanged End Sub Private Sub DataSelected(dt As DataTable) Handles edTableToView.DataSelected End Sub Protected Sub Page_PreRender(sender As Object, e As System.EventArgs) Handles Me.PreRender 'ClientScript.RegisterStartupScript(Me.GetType(), "CreateGridHeader", "<script>CreateGridHeader('DataDiv', 'editableGrid1_GridView1', 'HeaderDiv');</script>") If edTableToView.IsReadOnly Then edTableToView.CollectHeaderColumn(1) End If Title = edTableToView.TableDescription 'If edTableToView.copyFlag Then ' edTableToView.AddFormMode(edTableToView.copyId) 'End If edTableToView.SubReport.Controls.Add(createSubreport(edTableToView.TableId)) Dim script As String = sqlf.GetScalar("SELECT Gridcommand_handler FROM UserModules.dbo.ModuleTables WHERE id=" & edTableToView.TableId) If script <> "" Then gridcommandhandlerscript.Controls.Add(New Literal With {.Text = "<script type=""text/javascript"">" & script & "</script>"}) End If End Sub Private Function createSubreport(tid As String) As GridView Dim gv As New GridView Dim query As String = sqlf.GetScalar("SELECT isnull(SUBREPORT_QUERY,'') from usermodules.dbo.moduletables where id = " & tid) If query <> "" And Not (query.Contains("update") Or query.Contains("delete") Or query.Contains("exec") Or query.Contains("truncate") Or query.Contains("drop")) Then gv.DataSource = sqlf.GetData(query) Try gv.DataBind() Catch ex As Exception Return Nothing End Try End If Return gv End Function Protected Sub UpdateUserInfo(ByRef com As SqlCommand) Handles edTableToView.NewRecordSaving Try com.Parameters("@CHANGED_BY").Value = a.userId ' auth Request.QueryString("orchuserlogin") Catch ex As Exception End Try End Sub Protected Sub Page_SaveStateComplete(sender As Object, e As EventArgs) Handles Me.SaveStateComplete edTableToView.CreateGroupingText() End Sub Protected Sub edTableToView_PreRender(sender As Object, e As System.EventArgs) Handles edTableToView.PreRender End Sub Protected Sub Page_Unload(sender As Object, e As EventArgs) Handles Me.Unload End Sub Private Function orchestraSql(queryId As Integer, params As Hashtable) As DataTable Try Dim url As String = "http://serkweb.serk.lan:8080/modulemaster/Handlers/getsqldata.ashx?id=" & queryId Dim f As Boolean = True For Each k As DictionaryEntry In params url &= "&" url &= k.Key & "=" & k.Value Next Dim wb As WebRequest wb = WebRequest.Create(url) Dim res As WebResponse = wb.GetResponse Dim sr As New StreamReader(res.GetResponseStream) Return Newtonsoft.Json.JsonConvert.DeserializeObject(Of DataTable)(sr.ReadToEnd) Catch ex As Exception Return Nothing End Try End Function Protected Sub ActioRequest(sender As Object, e As EventArgs) Handles edTableToView.ActionRequest orchestraSql(2093, New Hashtable) edTableToView.RefreshData End Sub End Class