/
ivan
/
ModMas
Обзор
Документация
Войти
/
ivan
/
ModMas
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
ModuleMaster/sj_vend/getbom.ashx
98 строк
4 KB
i.krivokon
Initial commit
13 мар 2026, 13:49
13 мар 2026, 13:49
00d9fb6
Код
Авторство
О чём код?
<%@ WebHandler Language="VB" Class="getbom" %> Imports System Imports System.Web Imports System.IO Public Class getbom : Implements IHttpHandler Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest context.Response.ContentType = "text/plain" context.Response.Write(drawTable(context.Request.QueryString("partno"))) End Sub Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable Get Return False End Get End Property Private Function getData(partno As String) As System.Data.DataTable Dim sql As New StringBuilder Dim sqlf As New sharedClasses.dbFunctions.SqlFunctions 'sql.AppendLine("SELECT ") 'sql.AppendLine("SEQ_NO, MODEL_NUMBER as [Model number] ") 'sql.AppendLine(", PARENT_ITEM as [Parent item] ") 'sql.AppendLine(", CHILD_ITEM as [Child item] ") 'sql.AppendLine(", QTY as [Quantity] ") 'sql.AppendLine(", PART_NAME as [Part name] ") 'sql.AppendLine(", DESCRIPTION as [Description] ") 'sql.AppendLine(", BOM_LEVEL as [BOM Level] ") 'sql.AppendLine(", TOP_DOWN as [Part type] ") 'sql.AppendLine(" FROM OPENQUERY(GMES20,' ") 'sql.AppendLine("SELECT CODE_SORT_PRIOR AS SEQ_NO, ") 'sql.AppendLine(" A.MODEL_MATR_CODE AS MODEL_NUMBER, ") 'sql.AppendLine(" A.HRNK_MATR_CODE AS PARENT_ITEM, ") 'sql.AppendLine(" A.LRNK_MATR_CODE AS CHILD_ITEM, ") 'sql.AppendLine(" A.STAND_QTY AS QTY, ") 'sql.AppendLine(" B.MATR_DESC AS PART_NAME, ") 'sql.AppendLine(" B.MATR_DESC || '';'' || B.MATR_SPEC_CONT AS DESCRIPTION, ") 'sql.AppendLine(" TO_NUMBER (A.BOM_LVL_ID) AS BOM_LEVEL, ") 'sql.AppendLine(" UPPER (A.MATR_TYPE_CODE) AS TOP_DOWN ") 'sql.AppendLine(" FROM TBM_MD_MFG_BOM A, TBM_MD_MATR B ") 'sql.AppendLine(" WHERE A.MODEL_MATR_CODE = ''" & partno & "'' ") 'sql.AppendLine(" AND A.LRNK_MATR_CODE = B.MATR_CODE(+) ") 'sql.AppendLine(" AND A.DEL_YN = ''N'' ") 'sql.AppendLine(" AND A.USE_YN = ''Y'' ") 'sql.AppendLine(" ORDER BY CODE_SORT_PRIOR') ") sql.AppendLine("select MAIN_MODEL ") sql.AppendLine(", seq ") sql.AppendLine(", ASSY ") sql.AppendLine(", PARENT_ITEM ") sql.AppendLine(", CHILD_ITEM ") sql.AppendLine(", QUANTITY ") sql.AppendLine(", PART_NAME ") sql.AppendLine(", DESCRIPTION ") sql.AppendLine(", BOM_LEVEL ") sql.AppendLine(", PART_TYPE ") sql.AppendLine(", USE_Y_N ") sql.AppendLine(" from usermodules.[user].assy_bom WHERE assy = '" & partno & "'") Return sqlf.GetData(sql.ToString) End Function Private Function drawTable(partno As String) As String If Not IsNothing(partno) Then Dim gv As New GridView gv.DataSource = getData(partno) gv.DataBind() If gv.Rows.Count > 0 Then For Each r As GridViewRow In gv.Rows If r.Cells(8).Text = "ASSY" Then r.CssClass = "highlight" End If If r.Cells(10).Text = "N" Then r.CssClass = "gray" End If ' r.Cells(2).Visible = False ' r.Cells(3).Visible = False Next 'gv.HeaderRow.Cells(0).Text = "Line" 'gv.HeaderRow.Cells(1).Text = futureWorkingDates.Tables(0).Rows(0)("min_date").ToString.Substring(6, 2) & "/" & futureWorkingDates.Tables(0).Rows(0)("min_date").ToString.Substring(4, 2) 'gv.HeaderRow.Cells(2).Visible = False 'gv.HeaderRow.Cells(3).Visible = False Dim myCItrad As System.Globalization.CultureInfo = New System.Globalization.CultureInfo("EN-US", True) Dim sw As StringWriter = New StringWriter(myCItrad) Dim hw As HtmlTextWriter = New HtmlTextWriter(sw) 'gv.CssClass = "detailTable" gv.RenderControl(hw) Return sw.ToString End If End If Return "No data found" End Function End Class