2015-05-14 6 views
0

Надеюсь, это легко. У меня есть хранимая процедура, которая проверяет базу данных для разных таблиц, чтобы увидеть, есть ли товар на складе. Я пытаюсь повторно использовать ту же процедуру и извлекать только ее часть, чтобы проверить уровень запаса где-то еще на месте, но выход из процедуры переходит только к строке.SQL выводит строку из HTML-тегов?

Я пытался выводить эту строку в текстовое поле, чтобы увидеть, насколько полезно это было, и я закончил с этим неформатированным HTML кодом ниже в результате строки:

<div class="product-column-right-location">&nbsp;</div> 
<div class="product-column-right-stock"> 
<strong>Stock</strong></div> 
<div class="product-column-right-committed"> 
<strong>Committed</strong></div> 
<div class="product-column-right-on-order"> 
<strong>On Order</strong></div> 
<div class="product-column-right-available"><strong>Available</strong> </div><div class="product-column-right-location"> 
<a href="/contact-us.aspx" alt="Global PC Tower Junction contact information" Title="Global PC Tower Junction contact information">Tower Junction - Riccarton</a></div> 
<div class="product-column-right-stock">0</div><div class="product-column-right-committed">0</div><div class="product-column-right-on-order">0</div><div class="product-column-right-available">0</div><div class="product-column-right-location"><a href="/contact-us.aspx" alt="Global PC Homebase contact information" Title="Global PC Homebase contact information" >Homebase - Shirley</a></div><div class="product-column-right-stock">0</div><div class="product-column-right-committed">0</div><div class="product-column-right-on-order">0</div><div class="product-column-right-available">0</div><div class="product-column-right-location">In-Transit</div><div class="product-column-right-stock">0</div><div class="product-column-right-committed">0</div><div class="product-column-right-on-order">0</div> 

<div class="product-column-right-available">0</div> 

<div class="product-column-right-location">Warehouse</div><div class="product-column-right-stock">0</div><div class="product-column-right-committed">0</div><div class="product-column-right-on-order">0</div><div class="product-column-right-available">0</div> 

Часть меня интересует эта линия

<div class="product-column-right-available">0</div> 

Есть простой способ рубить и слэш и нарезать что Bigass строку вниз только фракции меня интересует? Или я могу легко преобразовать возвращаемый ASP-код в полезную таблицу данных?

Я пробовал разные запросы на SQL-сервер, чтобы узнать, могу ли я получить один столбец, а не все, но в нем такой беспорядок, и у меня нет достаточных прав доступа, чтобы начать его очищать.

+1

Там нет кода ASP.NET. Это все HTML. Я рекомендую вам повторно использовать эту хранимую процедуру; скорее найдите часть, которая получает нужные вам данные, и используйте ее. Если вы настоящий приверженец повторного использования, превратите общую часть в функцию и используйте ее в обоих местах. –

+0

У меня плохое по тегам, я очень устал. Я попробую еще кое-что извлечь из SQL-сервера. Спасибо – Wompguinea

+0

Несомненно, есть способ разобрать строку. Вы хотите «взломать и срубить и прервать эту цепочку» с кодом SQL? Или у вашего клиента (который на каком языке)? –

ответ

0

Проблема решена, после обнаружения двух процедур, которые были фактически за вызовом на сервер, мне удалось получить от нее правильные ответы. Основной вызов сервера был просто простым методом для запуска этих двух SQL-запросов.

SqlHelper.ExecuteScalar(System.Configuration.ConfigurationManager.AppSettings("dbConn").ToString, "xw_GetStockLevelInOut", "productID", "Location") 
SqlHelper.ExecuteScalar(System.Configuration.ConfigurationManager.AppSettings("dbConn").ToString, "xw_GetWarehouseStockLevelInOut", "productID", "Location") 

Он возвращает три строки, которые я просто сравниваю, используя базовый оператор If. Кажется странным использовать строки в качестве результата для базового счета, но, возможно, это только я?

например:

 Dim one As String = SqlHelper.ExecuteScalar(System.Configuration.ConfigurationManager.AppSettings("dbConn").ToString, "xw_GetStockLevelInOut", "sr08509", 4) 
     Dim two As String = SqlHelper.ExecuteScalar(System.Configuration.ConfigurationManager.AppSettings("dbConn").ToString, "xw_GetWarehouseStockLevelInOut", "sr08509", 11) 
     Dim three As String = SqlHelper.ExecuteScalar(System.Configuration.ConfigurationManager.AppSettings("dbConn").ToString, "xw_GetStockLevelInOut", "sr08509", 12) 

     If one = "Out of Stock." And two = "Out of Stock." And three = "Out of Stock." Then 
        oos = True 
        imgStock.ImageUrl = "images/oos-call-for-availability.png" 
        imgStock.AlternateText = "This item is out of stock" 
       Else 
        oos = False 
        imgStock.ImageUrl = "images/in-stock.png" 
        imgStock.AlternateText = "This item is in stock" 
       End If 

Там еще немного донастроить о том, где на странице, чтобы запустить этот код, чтобы заставить его работать независимо друг от друга для каждого продукта, но это дает мне информацию я искал.

Смежные вопросы