using Net.Business.Entities.ServicesLayer.Items; using Sap.Data.Hana; using System; using System.Collections.Generic; using System.Data; namespace Net.Data.HelperData.Stock { public class HelperStock { public static List Get(string ItemCode, string FromWarehouseCode) { List ListaStock = new List(); DataTable dt = new DataTable(); using (HanaConnection con = new HanaConnection(LocalData.ConnectionString)) { con.Open(); HanaCommand cmd = new HanaCommand($"CALL\"{LocalData.Schema}\".\"ITCA_WMS_SAP_GetStock\"(?, ?)", con); cmd.Parameters.Add("ItemCode", HanaDbType.VarChar).Value = ItemCode ?? ""; cmd.Parameters.Add("FromWarehouseCode", HanaDbType.VarChar).Value = FromWarehouseCode ?? ""; HanaDataAdapter da = new HanaDataAdapter(cmd); if (da != null) { da.Fill(dt); } con.Close(); } for (int x = 0; x < dt.Rows.Count; x++) { ListaStock.Add(new BE_ItemStock() { BinCode = (dt.Rows[x]["BinCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["BinCode"]) : string.Empty, DistNumber = (dt.Rows[x]["DistNumber"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["DistNumber"]) : string.Empty, ExpDate = (dt.Rows[x]["ExpDate"] != DBNull.Value) ? Convert.ToDateTime(dt.Rows[x]["ExpDate"]) : DateTime.Now, ItemCode = (dt.Rows[x]["ItemCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemCode"]) : string.Empty, ItemName = (dt.Rows[x]["ItemName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemName"]) : string.Empty, OnHandQty = (dt.Rows[x]["OnHandQty"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["OnHandQty"]) : 0, WhsCode = (dt.Rows[x]["WhsCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsCode"]) : string.Empty, WhsName = (dt.Rows[x]["WhsName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsName"]) : string.Empty, }); } return ListaStock; } public static List GetConsolidado(string ItemCode, string FromWarehouseCode) { List ListaStock = new List(); DataTable dt = new DataTable(); using (HanaConnection con = new HanaConnection(LocalData.ConnectionString)) { con.Open(); HanaCommand cmd = new HanaCommand($"CALL\"{LocalData.Schema}\".\"ITCA_WMS_SAP_GetStockConsolidado\"(?, ?)", con); cmd.Parameters.Add("ItemCode", HanaDbType.VarChar).Value = ItemCode ?? ""; cmd.Parameters.Add("FromWarehouseCode", HanaDbType.VarChar).Value = FromWarehouseCode ?? ""; HanaDataAdapter da = new HanaDataAdapter(cmd); if (da != null) { da.Fill(dt); } con.Close(); } for (int x = 0; x < dt.Rows.Count; x++) { ListaStock.Add(new BE_ItemStock() { BinCode = (dt.Rows[x]["BinCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["BinCode"]) : string.Empty, DistNumber = (dt.Rows[x]["DistNumber"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["DistNumber"]) : string.Empty, ExpDate = (dt.Rows[x]["ExpDate"] != DBNull.Value) ? Convert.ToDateTime(dt.Rows[x]["ExpDate"]) : DateTime.Now, ItemCode = (dt.Rows[x]["ItemCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemCode"]) : string.Empty, ItemName = (dt.Rows[x]["ItemName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["ItemName"]) : string.Empty, OnHandQty = (dt.Rows[x]["OnHandQty"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["OnHandQty"]) : 0, WhsCode = (dt.Rows[x]["WhsCode"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsCode"]) : string.Empty, WhsName = (dt.Rows[x]["WhsName"] != DBNull.Value) ? Convert.ToString(dt.Rows[x]["WhsName"]) : string.Empty, AvgPrice = (dt.Rows[x]["AvgPrice"] != DBNull.Value) ? Convert.ToDouble(dt.Rows[x]["AvgPrice"]) : 0, }); } return ListaStock; } } }