/
ivan
/
ModMas
Обзор
Документация
Войти
/
ivan
/
ModMas
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
ModuleMaster/viewtable.aspx.vb
225 строк
9 KB
i.krivokon
Initial commit
13 мар 2026, 13:49
13 мар 2026, 13:49
00d9fb6
Код
Авторство
О чём код?
Imports System.Data Imports System.Data.SqlClient 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 = "" If Not IsNothing(Request.QueryString("tableId")) Then tableId = Request.QueryString("tableId") End If If Not IsNothing(Request.QueryString("t")) Then tableId = Request.QueryString("t") End If If Not IsNothing(Request.QueryString("viewid")) Then viewId = Request.QueryString("viewid") End If If Not IsNothing(Request.QueryString("v")) Then viewId = Request.QueryString("v") End If 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 graphForTable.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 "Graph" messageBody &= graphForTable.GetHTMLGraph Case "Table" messageBody &= edTableToView.GetHTMLGrid Case "Table & Graph" messageBody &= edTableToView.GetHTMLGrid messageBody &= "<hr />" messageBody &= graphForTable.GetHTMLGraph 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 graphForTable.TableId = tableId Else edTableToView.TableId = -1 graphForTable.TableId = -1 End If If IsNumeric(viewId) Then edTableToView.ViewID = viewId Else edTableToView.ViewID = -1 End If graphForTable.SelectCondition = edTableToView.SelectConditionByFilters 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>") graphForTable.SelectCondition = edTableToView.SelectConditionByFilters graphForTable.Visible = graphForTable.DrawGraph() If (Request.QueryString("tableId") IsNot Nothing) And graphForTable.Visible Then lnkGraphView.Visible = True lnkGraphView.Text = "View graph in a new window" lnkGraphView.NavigateUrl = "~/viewgraph.aspx?tableid=" & Request.QueryString("tableId") Else lnkGraphView.Visible = False End If 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 GetGraphData(ByRef graphData As String) Handles edTableToView.RequestForGraphData graphData = graphForTable.GetHTMLGraph 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 End Class