public ArticoloInfo GetArticoloInfo(string CodiceArticolo, string CodiceColore, string CodiceTaglia) { ArticoloInfo articolo = new ArticoloInfo(); var query = "SELECT * FROM [" + schema_info + "].[dbo].[ARTICOLI] WHERE " + "CodiceArticolo = @CodiceArticolo AND " + "CodiceColore = @CodiceColore AND " + "CodiceTaglia = @CodiceTaglia"; SqlCommand command = new SqlCommand(query, connection); command.Parameters.AddWithValue("CodiceArticolo", CodiceArticolo); command.Parameters.AddWithValue("CodiceColore", CodiceColore); command.Parameters.AddWithValue("CodiceTaglia", CodiceTaglia); SqlDataReader reader = command.ExecuteReader(); articolo.CodiceArticolo = CodiceArticolo; articolo.CodiceColore = CodiceColore; articolo.CodiceTaglia = CodiceTaglia; articolo.FuoriProduzione = false; articolo.Numerata = ""; if (reader.Read()) { articolo.Numerata = reader["Numerata"].ToString().Trim(); articolo.FuoriProduzione = (bool)reader["FuoriProduzione"]; } return(articolo); }
public static void Save(ArticoloInfo articolo) { if (!connection.CheckExists("ARTICOLI", new string[] { "CodiceArticolo", "CodiceTaglia", "CodiceColore" }, new string[] { articolo.CodiceArticolo, articolo.CodiceTaglia, articolo.CodiceColore }, schema_info)) { string sql = "INSERT INTO [" + schema_info + "].[dbo].[ARTICOLI] (CodiceArticolo, CodiceTaglia, CodiceColore, Numerata, FuoriProduzione) VALUES (@CodiceArticolo, @CodiceTaglia, @CodiceColore, @Numerata, @FuoriProduzione)"; SqlCommand command = new SqlCommand(sql, connection.connection); command.Parameters.AddWithValue("CodiceArticolo", articolo.CodiceArticolo); command.Parameters.AddWithValue("CodiceTaglia", articolo.CodiceTaglia); command.Parameters.AddWithValue("CodiceColore", articolo.CodiceColore); command.Parameters.AddWithValue("Numerata", articolo.Numerata); command.Parameters.AddWithValue("FuoriProduzione", articolo.FuoriProduzione); command.ExecuteNonQuery(); command.Dispose(); } else { string sql = "UPDATE [" + schema_info + "].[dbo].[ARTICOLI] SET " + "Numerata = @Numerata, " + "FuoriProduzione = @FuoriProduzione " + "WHERE " + "CodiceArticolo = @CodiceArticolo AND " + "CodiceTaglia = @CodiceTaglia AND " + "CodiceColore = @CodiceColore"; SqlCommand command = new SqlCommand(sql, connection.connection); command.Parameters.AddWithValue("CodiceArticolo", articolo.CodiceArticolo); command.Parameters.AddWithValue("CodiceTaglia", articolo.CodiceTaglia); command.Parameters.AddWithValue("CodiceColore", articolo.CodiceColore); command.Parameters.AddWithValue("Numerata", articolo.Numerata); command.Parameters.AddWithValue("FuoriProduzione", articolo.FuoriProduzione); command.ExecuteNonQuery(); command.Dispose(); } }
public DataTable GetCodici( string codiceArticolo, string codiceColore = null, string codiceTaglia = null, string codiceFornitore = null, string codiceMarca = null, string tipoBarcode = null, string codificaBarcode = null ) { DataTable codici = new DataTable { TableName = "Codici" }; codici.Columns.Add("Barcode"); codici.Columns.Add("CodiceArticolo"); codici.Columns.Add("DescrizioneArticolo"); codici.Columns.Add("DescrizioneSupplementareArticolo"); codici.Columns.Add("CodiceColore"); codici.Columns.Add("DescrizioneColore"); codici.Columns.Add("CodiceNumerata"); codici.Columns.Add("DescrizioneNumerata"); codici.Columns.Add("CodiceTaglia"); codici.Columns.Add("Prezzo"); codici.Columns.Add("TipoBarcode"); codici.Columns.Add("CodificaBarcode"); codici.Columns.Add("Quantita"); codici.Columns.Add("CodiceMadeIn"); codici.Columns.Add("CodiceMarca"); codici.Columns.Add("CodiceStagione"); codici.Columns.Add("CodiceGenere"); codici.Columns.Add("CodiceGruppoMerceologico"); codici.Columns.Add("CodiceCategoriaOmogenea"); codici.Columns.Add("CodiceFornitore"); codici.Columns.Add("NomenclaturaCombinata"); codici.Columns.Add("FuoriProduzione"); codici.Columns.Add("CodiceFamiglia"); string query = "SELECT " + "" + azienda + "KEY_ARTI.CACODICE AS Barcode, " + "" + azienda + "ART_ICOL.ARCODART AS CodiceArticolo, " + "" + azienda + "ART_ICOL.ARDESART AS DescrizioneArticolo, " + "" + azienda + "ART_ICOL.ARDESSUP AS DescrizioneSupplementareArticolo, " + "" + azienda + "KEY_ARTI.TCCOLORE AS CodiceColore, " + "" + azienda + "TCCOLORI.CODESCOL AS DescrizioneColore, " + "" + azienda + "TCNUMERA.NUCODNUM AS CodiceNumerata, " + "" + azienda + "TCNUMERA.NUDESNUM AS DescrizioneNumerata, " + "" + azienda + "KEY_ARTI.TCTAGLIA AS CodiceTaglia, " + "" + azienda + "ART_ICOL.TCMADEIN AS CodiceMadeIn, " + "" + azienda + "ART_ICOL.ARCODMAR AS CodiceMarca, " + "" + azienda + "ART_ICOL.ARSTAGIO AS CodiceStagione, " + "" + azienda + "ART_ICOL.TCGENERE AS CodiceGenere, " + "" + azienda + "ART_ICOL.ARGRUMER AS CodiceGruppoMerceologico, " + "" + azienda + "ART_ICOL.ARCATOMO AS CodiceCategoriaOmogenea, " + "" + azienda + "TCSCHMAS.STCODFOR AS CodiceFornitore, " + "" + azienda + "TCSCHMAS.STNOMENC AS NomenclaturaCombinata, " + "" + azienda + "TCSCHMAS.STCODFAM AS CodiceFamiglia, " + "" + azienda + "KEY_ARTI.CATIPBAR AS CodificaBarcode, " + "" + azienda + "KEY_ARTI.CATIPCON AS TipoBarcode " + "FROM [" + schema + "].[dbo].[" + azienda + "KEY_ARTI] " + "INNER JOIN [" + schema + "].[dbo].[" + azienda + "ART_ICOL] ON " + azienda + "KEY_ARTI.CACODART = " + azienda + "ART_ICOL.ARCODART " + "INNER JOIN [" + schema + "].[dbo].[" + azienda + "TCCOLORI] ON " + azienda + "TCCOLORI.COCODCOL = " + azienda + "KEY_ARTI.TCCOLORE " + "INNER JOIN [" + schema + "].[dbo].[" + azienda + "TCSCHMAS] ON " + azienda + "TCSCHMAS.STCODART = " + azienda + "KEY_ARTI.CACODART " + "INNER JOIN [" + schema + "].[dbo].[" + azienda + "TCNUMERA] ON " + azienda + "TCNUMERA.NUCODNUM = " + azienda + "TCSCHMAS.STCODNUM " + "WHERE CACODART LIKE '" + codiceArticolo + "'"; if (!string.IsNullOrEmpty(codiceColore)) { query += " AND TCCOLORE = '" + codiceColore + "'"; } if (!string.IsNullOrEmpty(codiceTaglia)) { query += " AND TCTAGLIA = '" + codiceTaglia + "'"; } if (!string.IsNullOrEmpty(codiceFornitore)) { query += " AND STCODFOR = '" + codiceFornitore + "'"; } if (!string.IsNullOrEmpty(codiceMarca)) { query += " AND ARCODMAR = '" + codiceMarca + "'"; } if (!string.IsNullOrEmpty(tipoBarcode)) { query += " AND CATIPCON = '" + tipoBarcode + "'"; } if (!string.IsNullOrEmpty(codificaBarcode)) { query += " AND CATIPBAR = '" + codificaBarcode + "'"; } SqlCommand command = new SqlCommand(query, connection); using (SqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { string CodiceArticolo = reader["CodiceArticolo"].ToString().Trim(); string CodiceNumerata = reader["CodiceNumerata"].ToString().Trim(); string CodiceTaglia = reader["CodiceTaglia"].ToString().Trim(); string CodiceColore = reader["CodiceColore"].ToString().Trim(); if (CodiceNumerata == "TU" && CodiceTaglia == "TU") { continue; } ArticoloInfo articoloInfo = GetArticoloInfo(CodiceArticolo, CodiceColore, CodiceTaglia); List <string> Taglie = GetTaglie(CodiceNumerata); string IndiceTaglia = (Taglie.IndexOf(CodiceTaglia) + 1).ToString().PadLeft(2, '0'); var row = codici.NewRow(); row["Barcode"] = reader["Barcode"].ToString().Trim(); row["CodiceArticolo"] = CodiceArticolo; row["DescrizioneArticolo"] = reader["DescrizioneArticolo"].ToString().Trim(); row["DescrizioneSupplementareArticolo"] = reader["DescrizioneSupplementareArticolo"].ToString().Trim(); row["CodiceColore"] = CodiceColore; row["DescrizioneColore"] = reader["DescrizioneColore"].ToString().Trim(); row["CodiceNumerata"] = CodiceNumerata; row["DescrizioneNumerata"] = reader["DescrizioneNumerata"].ToString().Trim(); row["CodiceTaglia"] = CodiceTaglia; row["Prezzo"] = GetPrezzo(CodiceArticolo, "VENP"); row["Quantita"] = GetQuantita(CodiceArticolo, CodiceColore, IndiceTaglia).ToString(); row["CodificaBarcode"] = reader["CodificaBarcode"].ToString().Trim(); row["TipoBarcode"] = reader["TipoBarcode"].ToString().Trim(); row["CodiceMadeIn"] = reader["CodiceMadeIn"].ToString().Trim(); row["CodiceMarca"] = reader["CodiceMarca"].ToString().Trim(); row["CodiceStagione"] = reader["CodiceStagione"].ToString().Trim(); row["CodiceGenere"] = reader["CodiceGenere"].ToString().Trim(); row["CodiceGruppoMerceologico"] = reader["CodiceGruppoMerceologico"].ToString().Trim(); row["CodiceCategoriaOmogenea"] = reader["CodiceCategoriaOmogenea"].ToString().Trim(); row["CodiceFornitore"] = reader["CodiceFornitore"].ToString().Trim(); row["NomenclaturaCombinata"] = reader["CodiceFornitore"].ToString().Trim(); row["FuoriProduzione"] = articoloInfo.FuoriProduzione ? "Si" : "No"; row["CodiceFamiglia"] = reader["CodiceFamiglia"].ToString().Trim(); codici.Rows.Add(row); } reader.Close(); } command.Dispose(); return(codici); }