Пример #1
0
        private void tsBB_Salvar_Click(object sender, EventArgs e)
        {
            if (pDadosFiltro.validarCampoObrigatorio())
            {
                List <TRegistro_Lan_Originacao_x_Faturamento> listaValida = new List <TRegistro_Lan_Originacao_x_Faturamento>();

                if (BS_Originacao_x_Faturamento.Count > 1)
                {
                    TList_Lan_Originacao_x_Faturamento lista = (BS_ItensNota.Current as TRegistro_LanFaturamento_Item).lOriginacao_x_Faturamento;
                    //lista.Remove(BS_Originacao_x_Faturamento.Current as TRegistro_Lan_Originacao_x_Faturamento);
                    listaValida = lista.Where(p => (p.Nr_LanctoFiscalstr == Nr_NotaFiscal.Text)).ToList <TRegistro_Lan_Originacao_x_Faturamento>();
                }

                if (listaValida.Count <= 1)
                {
                    tsBB_Salvar.Visible   = false;
                    tsBB_Cancelar.Visible = false;
                    tsBB_Add.Visible      = true;
                    tsBB_Remover.Visible  = true;
                    habilitarControls(false);
                    BS_Originacao_x_Faturamento.ResetCurrentItem();
                    buscaHeadge();
                }
                else
                {
                    MessageBox.Show("Atenção, já existe um lançamento de originação desta nota fiscal!");
                }
            }
        }
Пример #2
0
        public TList_Lan_Originacao_x_Faturamento Select(TpBusca[] vBusca, Int32 vTop, string vNM_Campo)
        {
            TList_Lan_Originacao_x_Faturamento lista = new TList_Lan_Originacao_x_Faturamento();
            SqlDataReader reader        = null;
            bool          podeFecharBco = false;

            if (Banco_Dados == null)
            {
                this.CriarBanco_Dados(false);
                podeFecharBco = true;
            }

            try
            {
                reader = this.ExecutarBusca(this.SqlCodeBusca(vBusca, Convert.ToInt16(vTop), vNM_Campo));
                while (reader.Read())
                {
                    TRegistro_Lan_Originacao_x_Faturamento reg = new TRegistro_Lan_Originacao_x_Faturamento();

                    if (!reader.IsDBNull(reader.GetOrdinal("ID_Originacao")))
                    {
                        reg.ID_Originacao = reader.GetDecimal(reader.GetOrdinal("ID_Originacao"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("CD_Empresa")))
                    {
                        reg.CD_Empresa = reader.GetString(reader.GetOrdinal("CD_Empresa"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("Nr_LanctoFiscal")))
                    {
                        reg.Nr_LanctoFiscal = reader.GetDecimal(reader.GetOrdinal("Nr_LanctoFiscal"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ID_NFItem")))
                    {
                        reg.ID_NFItem = reader.GetDecimal(reader.GetOrdinal("ID_NFItem"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("QTD_Origem")))
                    {
                        reg.QTD_Origem = reader.GetDecimal(reader.GetOrdinal("QTD_Origem"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("VL_Origem")))
                    {
                        reg.VL_Origem = reader.GetDecimal(reader.GetOrdinal("VL_Origem"));
                    }

                    lista.Add(reg);
                }
            }
            finally
            {
                reader.Close();
                reader.Dispose();
                if (podeFecharBco)
                {
                    this.deletarBanco_Dados();
                }
            }
            return(lista);
        }
Пример #3
0
        private void Nr_NotaFiscal_Leave(object sender, EventArgs e)
        {
            string vColunas = "c.Tp_Movimento|=|'E';c.Nr_NotaFiscal|=|'" + Nr_NotaFiscal.Text.Trim() + "';c.st_registro|<>|'C'";

            if (cd_clifor.Text.Trim() != "")
            {
                vColunas += ";c.cd_clifor|=|'" + cd_clifor.Text.Trim() + "'";
            }
            DataRow linha = UtilPesquisa.EDIT_LEAVE(vColunas, new Componentes.EditDefault[] { Nr_NotaFiscal, Nr_LanctoFiscal, ID_NFItem },
                                                    new TCD_Lan_SaldoNotasOriginacao());

            if (linha != null)
            {
                VL_SubtotalNF.Value = Convert.ToDecimal(linha["VL_Subtotal"].ToString());
                decimal qtd    = Convert.ToDecimal(linha["QTD_Disponivel"].ToString());
                decimal vl     = Convert.ToDecimal(linha["VL_Disponivel"].ToString());
                decimal totqtd = 0;
                decimal totvl  = 0;
                QTD_NFCurrent = Convert.ToDecimal(linha["Quantidade"].ToString());
                TList_Lan_Originacao_x_Faturamento listaValidaTotalLancto = (BS_ItensNota.Current as TRegistro_LanFaturamento_Item).lOriginacao_x_Faturamento;

                //VERIFICAR SE EXISTE LANÇAMENTO BS ORIG
                if (listaValidaTotalLancto != null)
                {
                    totqtd = ((BS_ItensNota.Current as TRegistro_LanFaturamento_Item).Quantidade - Convert.ToDecimal(listaValidaTotalLancto.Sum(p => p.QTD_Origem)));
                    totvl  = ((BS_ItensNota.Current as TRegistro_LanFaturamento_Item).Vl_subtotal - Convert.ToDecimal(listaValidaTotalLancto.Sum(p => p.VL_Origem)));

                    //VERIFICA se jah existe um lançamento para esta nota fiscal
                    if (listaValidaTotalLancto.Count(p => (p.Nr_LanctoFiscal == Convert.ToDecimal(Nr_LanctoFiscal.Text)) && (p.ID_NFItem == Convert.ToDecimal(ID_NFItem.Text))) > 1)
                    {
                        Nr_LanctoFiscal.Text = "";
                        Nr_NotaFiscal.Text   = "";
                        ID_NFItem.Text       = "";
                        qtd    = 0;
                        vl     = 0;
                        totqtd = 0;
                        totvl  = 0;
                        MessageBox.Show("Atenção, já existe um lançamento para esta nota fiscal!");
                    }
                }


                //VERIRICA A QTD DE PRODUTO
                if (qtd > totqtd)
                {
                    qtd = totqtd;
                }

                //VERIRICA A QTD DE PRODUTO
                if (vl > totvl)
                {
                    vl = totvl;
                }

                Quantidade.Maximum = qtd;
                Quantidade.Value   = qtd;
                //Quantidade_Leave(this, e);
                VL_Subtotal.Maximum = vl;
                //VL_Subtotal.Value = vl;
                decimal valor = 0;
                if (QTD_NFCurrent > 0)
                {
                    valor = Math.Round(((Quantidade.Value) * (VL_SubtotalNF.Value / QTD_NFCurrent)), 2);
                }
                VL_Subtotal.Maximum = valor;
                VL_Subtotal.Value   = valor;
            }
            else
            {
                Nr_LanctoFiscal.Text = "";
                Nr_NotaFiscal.Text   = "";
                ID_NFItem.Text       = "";
                VL_SubtotalNF.Value  = 0;
                Quantidade.Value     = 0;
                Quantidade.Maximum   = 0;
                VL_Subtotal.Value    = 0;
                VL_Subtotal.Maximum  = 0;
            }
        }