/
ivan
/
ModMas
Обзор
Документация
Войти
/
ivan
/
ModMas
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
ModuleMaster/fi/giformbymaterial.aspx.vb
52 строки
3 KB
i.krivokon
Initial commit
13 мар 2026, 13:49
13 мар 2026, 13:49
00d9fb6
Код
Авторство
О чём код?
Imports System.Data Imports sharedClasses.dbFunctions Partial Class FI_prnt Inherits System.Web.UI.Page Private sqlf As New SqlFunctions Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load docNumber.Text = IIf(IsNothing(Request.QueryString("dn")), "", Request.QueryString("dn")) Dim dt As DataTable = buildList(docNumber.Text) Dim first As Boolean = True If Not IsNothing(dt) Then For Each dr As DataRow In dt.Rows Dim tr As New HtmlTableRow For c As Integer = 1 To 10 Dim tc As New HtmlTableCell tc.InnerHtml = templateRow.Cells(c - 1).InnerHtml tc.InnerHtml = tc.InnerHtml.Replace("MATERIAL", dr("matnr")) tc.InnerHtml = tc.InnerHtml.Replace("GTD", dr("maktx")) tc.InnerHtml = tc.InnerHtml.Replace("QTY", dr("menge")) tc.InnerHtml = tc.InnerHtml.Replace("MAP", dr("price").ToString) tc.InnerHtml = tc.InnerHtml.Replace("AMNT", dr("amnt").ToString) tc.InnerHtml = tc.InnerHtml.Replace("MODEL", dr("model")) tc.Attributes("style") = templateRow.Cells(c - 1).Attributes("style") tr.Cells.Add(tc) If first Then docDate.Text = dr("budat").ToString.Insert(4, "-").Insert(7, "-") first = False End If Next data.Rows.Add(tr) Next End If End Sub Private Function buildList(documentNumber As String) As DataTable Dim sql As New StringBuilder sql.AppendLine("select t.*, cast(t.map as decimal(18,2)) as price, cast(t.menge * t.map as decimal(18,2)) as amnt from (") sql.AppendLine("select gl.mblnr, gl.budat, gl.xblnr, gl.matnr, gl.lgort, cast(gl.menge as decimal(18,0)) as menge, ") sql.AppendLine("lr.reqno, lr.dispo, lr.aufnr, lr.MAKTX, lr.werks, ") sql.AppendLine("(select model_code from GMESDATA.DBO.TBM_PM_PO_PLAN where po_no collate Cyrillic_General_CI_AI = lr.aufnr collate Cyrillic_General_CI_AI) as model, ") sql.AppendLine("(SELECT cast(replace(replace(MOVING_PRICE,' ' ,''),',','.') as money) / PRICE_UNIT FROM UserModules.[user].[MATERIAL_PRICE] where material collate Cyrillic_General_CI_AI = gl.matnr collate Cyrillic_General_CI_AI ) as map ") sql.AppendLine("from USerModules.[user].WMS_GR_LIST gl ") sql.AppendLine("LEFT JOIN USerModules.[user].WMS_LTS_REQUEST lr ") sql.AppendLine("on gl.xblnr = lr.VBELN ") sql.AppendLine("and gl.matnr = lr.matnr ") sql.AppendLine("where gl.mblnr = '" & documentNumber & "' ) t") Return sqlf.GetData(sql.ToString) End Function End Class