Hello,
i have a datagridview, has set a bindingsorce set.
works fine wen my datasource has rows, if is emty, i have a emty row im my datagrid but i whant my datagridvie with no row.
retrive data from database:
internal static ProduseStoc[] ProduseVanzare()
{
Program.Connection.CommandText = "select NirProduse.*, ProdusID, NirID, IdProdus, Nume, NirProduseAmanet.Descriere AS DescriereNir, Cantitatea, UnitateMasura, SerialProdus, PretIntrare, PretPropusVanzare, PretVanzare, IdProdusVandut, GrProdusIesire, IIF(CatProdus Is Null, 0, CatProdus) AS CatProdus, Observatii, GrProdusIesire, IdNotaContabila, IdScadereGramaj "
+ "from NirProduseAmanet LEFT JOIN NirProduse ON NirProduseAmanet.NirID = NirProduse.ProdusNirId "
+ "WHERE NirProduseAmanet.IdProdusVandut=@IdProdusVandut AND NirProduseAmanet.IdNotaContabila=@IdNotaContabila AND NirProduseAmanet.IdScadereGramaj=@IdScadereGramaj ORDER BY contractSursa";
Program.Connection.AddParameter("@IdProdusVandut", 0);
Program.Connection.AddParameter("@IdNotaContabila", 0);
Program.Connection.AddParameter("@IdScadereGramaj", 0);
DataTable dataFI = new DataTable();
Program.Connection.FillDataTable(dataFI, true);
return Lista<ProduseStoc>(dataFI, delegate(DataRow rezultatTB)
{
return new ProduseStoc(rezultatTB);
});
}
public static T[] Lista<T>(DataTable table, Converter<DataRow, T> conversion)
{
List<T> retval = new List<T>();
if (table != null)
{
foreach (DataRow dr in table.Rows)
retval.Add(conversion(dr));
}
return retval.ToArray();
}
namespace Amanet.Amanet.Core
{
public class ProduseStoc
{
public int nirID { get; set; }
public DateTime dataIntrare { get; set; }
public int clientID { get; set; }
public int contractID { get; set; }
public int produsTransfer { get; set; }
public string locatieTransfer { get; set; }
public int produsID { get; set; }
public int produsIDContract { get; set; }
public string descriereProdus { get; set; }
public string observatiiProdus { get; set; }
public decimal cantitateaProdus { get; set; }
public string unitateMasura { get; set; }
public string serialProdus { get; set; }
public decimal pretIntrare { get; set; }
public decimal pretPropusVanzare { get; set; }
public decimal pretVanzare { get; set; }
public int idProdusVandut { get; set; }
public int catProdus { get; set; }
public string observatiiVanzare { get; set; }
public decimal grIesireAur { get; set; }
public int idNotaContabila { get; set; }
public int idNotaScadere { get; set; }
public ProduseStoc(DataRow ProdusVanzare)
{
this.nirID = (int)ProdusVanzare["ProdusNirID"];
this.dataIntrare = (DateTime)ProdusVanzare["DataIntrare"];
this.clientID = (int)ProdusVanzare["clientID"];
this.contractID = (int)ProdusVanzare["contractSursa"];
this.produsTransfer = (int)ProdusVanzare["produsTransfer"];
this.locatieTransfer = InterogariDB.GetValue<string>(ProdusVanzare, "locatieTransfer", null);
this.produsID = (int)ProdusVanzare["ProdusID"];
this.produsIDContract = (int)ProdusVanzare["IdProdus"];
this.descriereProdus = (string)ProdusVanzare["Nume"];
this.observatiiProdus = (string)ProdusVanzare["DescriereNir"];
this.cantitateaProdus = (decimal)ProdusVanzare["Cantitatea"];
this.unitateMasura = (string)ProdusVanzare["UnitateMasura"];
this.serialProdus = (string)ProdusVanzare["SerialProdus"];
this.pretIntrare = (decimal)ProdusVanzare["PretIntrare"];
this.pretPropusVanzare = (decimal)ProdusVanzare["PretPropusVanzare"];
this.pretVanzare = (decimal)ProdusVanzare["PretVanzare"];
this.idProdusVandut = (int)ProdusVanzare["IdProdusVandut"];
this.catProdus = (int)ProdusVanzare["CatProdus"];
this.observatiiVanzare = (string)ProdusVanzare["observatii"];
this.grIesireAur = (decimal)ProdusVanzare["GrProdusIesire"];
this.idNotaContabila = (int)ProdusVanzare["IdNotaContabila"];
this.idNotaScadere = (int)ProdusVanzare["IdScadereGramaj"];
}
}
}
in my form:
ProduseStoc[] produsVanzare = InterogariDB.ProduseVanzare();
bindingsource.DataSource = produsVanzare;