private void cmdCancelarNFe_Click(object sender, EventArgs e) { DataRowView row = (DataRowView)BindingSource[MainTabela].Current; IList <Dados_Arquivo_NFe> ilNotas = new List <Dados_Arquivo_NFe>(); Dados_Arquivo_NFe daNFe = new Dados_Arquivo_NFe(); daNFe.Carregar_Dados(Convert.ToInt32(row["Nota_Fiscal_Lote"])); ilNotas.Add(daNFe); ERP.NFe.NFe nfe = new ERP.NFe.NFe(); nfe.Cancelar_NFe(ilNotas); Atualizar_Query_Atual(); //-- Atualiza //-- Exclui o titulo a receber. Funcoes func; if (!string.IsNullOrEmpty(txtProtocoloCancelamento.Text) && Convert.ToBoolean(func.Busca_Propriedade("Gera_Consiliacao_Automatica"))) { Financeiro.ConsiliacaoFinanceira cf = new Financeiro.ConsiliacaoFinanceira(); cf.Excluir_ContaReceber(daNFe.Nota_Fiscal); } }
private void f0005_user_AfterSave() { //-- Em caso de cancelamento de nota fiscal if (this.chkNFCancelada.Checked) { //clsControleEstoque ceEstoque = new clsControleEstoque(); int iNumero_Pedido = 0, iCodigo_mov_estoque = 0; string sQuery = string.Empty, sDescricao = string.Empty; DataRowView rVnf = (DataRowView)this.BindingSource[this.MainTabela].Current; iNumero_Pedido = Convert.ToInt32(rVnf["Pedido"]); //-- cancelamento de pedido sQuery = string.Format("UPDATE pedidos SET cancelado = 1 WHERE pedido = {0}", iNumero_Pedido); SQL.Execute(sQuery); //-- Gravacao de movimento estoque capa sDescricao = string.Format("Cancelamento Nota fiscal ", rVnf["Numero_Nota"]); iCodigo_mov_estoque = this.ceEstoque.Registra_Movimento_Estoque( (int)clsControleEstoque.Tipo_Movimento_Estoque.Entrada, Convert.ToInt32(rVnf["Empresa"]), Convert.ToInt32(rVnf["Cliente"]), Convert.ToString(rVnf["Numero_Nota"]), sDescricao, DateTime.Now, Convert.ToDecimal(rVnf["Valor_Total_Nota"])); sQuery = string.Format("nota_fiscal = {0}", Convert.ToString(rVnf["Numero_Nota"])); //-- Filtra itens da nota fiscal atual DataView dvinf = new DataView(this.DataSetLocal.Tables["Notas_Fiscais_Itens"] , sQuery , "nota_fiscal_item" , DataViewRowState.CurrentRows); foreach (DataRowView datarowviewinf in dvinf) { //-- Gravacao de movimento estoque item this.ceEstoque.Registra_Movimento_Estoque_Item( iCodigo_mov_estoque, Convert.ToInt32(datarowviewinf["Produto"]), Convert.ToDecimal(datarowviewinf["Valor_Unitario"]), Convert.ToInt32(datarowviewinf["Quantidade"]), Convert.ToDecimal(datarowviewinf["Valor_Total_Item"])); if (clsControleEstoque.Baixa_estoque_manual) { //-- Reinsercao do item do estoque this.ceEstoque.Cancelamento_Item_Nota_Fiscal( Convert.ToInt32(rVnf["Empresa"]), Convert.ToInt32(datarowviewinf["Produto"]), Convert.ToInt32(datarowviewinf["Quantidade"])); } } if (this.chkNFExportada.Checked) { sQuery = string.Empty; sQuery += "select nfl.Nota_Fiscal_Lote"; sQuery += " from notas_fiscais_lotes_itens nfli"; sQuery += " inner join notas_fiscais nf on nf.nota_fiscal = nfli.nota_fiscal"; sQuery += " inner join notas_fiscais_lotes nfl on nfl.nota_fiscal_lote = nfli.nota_fiscal_lote"; sQuery += " where "; sQuery += " nfl.tipo_nfe = 1"; sQuery += " and nfl.codigo_mensagem_retorno_nfe = 100"; sQuery += " and nf.nota_fiscal = " + rVnf["Nota_Fiscal"].ToString(); object oValor = SQL.ExecuteScalar(sQuery); if (oValor != DBNull.Value) { //-- Cancela NF-e. IList <CompSoft.NFe.Dados_Arquivo_NFe> ilNotas = new List <CompSoft.NFe.Dados_Arquivo_NFe>(); CompSoft.NFe.Dados_Arquivo_NFe daNFe = new CompSoft.NFe.Dados_Arquivo_NFe(); ERP.NFe.NFe nfe = new ERP.NFe.NFe(); daNFe.Carregar_Dados(Convert.ToInt32(oValor)); ilNotas.Add(daNFe); nfe.Cancelar_NFe(ilNotas); } } //-- Exclui o titulo a receber. Funcoes func; if (Convert.ToBoolean(func.Busca_Propriedade("Gera_Consiliacao_Automatica"))) { Financeiro.ConsiliacaoFinanceira cf = new Financeiro.ConsiliacaoFinanceira(); cf.Excluir_ContaReceber(Convert.ToInt32(rVnf["Nota_Fiscal"])); } } }