Example #1
0
        private void cmdImprimir_Click(object sender, EventArgs e)
        {
            DataTable dt      = this.grdItens.BindingSource.DataSource as DataTable;
            DataView  dv      = new DataView(dt, "sel = 1", "", DataViewRowState.CurrentRows);
            int       iQtdeDV = dv.Count;

            if (iQtdeDV == 0)
            {
                MsgBox.Show("Não foram encontrados registros para esta pesquisa."
                            , "Pesquisa"
                            , MessageBoxButtons.OK
                            , MessageBoxIcon.Information);
            }
            else
            {
                string sMensage = string.Empty;
                if (iQtdeDV == 1)
                {
                    sMensage += "Será impresso um documento, você confirma?";
                }
                else
                {
                    sMensage += string.Format("Serão impressos {0} documentos, você confirma?", iQtdeDV);
                }

                DialogResult dr = MsgBox.Show(sMensage
                                              , "Impressão de Duplicatas"
                                              , MessageBoxButtons.YesNo
                                              , MessageBoxIcon.Question);

                if (dr == DialogResult.Yes)
                {
                    bool bPreview = this.optTela.Checked;

                    foreach (DataRowView row in dv)
                    {
                        Funcoes func;
                        func.Executar_ObjetoEntrada("EmissaoBoleto"
                                                    , new object[] { bPreview }
                                                    , new object[] { Convert.ToInt32(row["Nota_Fiscal"]), Convert.ToInt32(row["Numero_Parcela"]) }
                                                    , new string[] { "iCodigoNF", "iNumero_Parcela" });

                        /*ERP.NotaFiscal.EmissaoNotaFiscal enf = new ERP.NotaFiscal.EmissaoNotaFiscal(bPreview);
                         * enf.Emitir_Boleto(Convert.ToInt32(row["Nota_Fiscal"]), Convert.ToInt32(row["Numero_Parcela"]));*/
                    }

                    //-- Visualiza ou imprime em papel
                    if (bPreview)
                    {
                        CompSoft.Reports.Preview_Matricial pm = new CompSoft.Reports.Preview_Matricial();
                        pm.Visualizar();
                    }
                    else
                    {
                        ((DataTable)this.grdItens.BindingSource.DataSource).Clear();
                        this.cmdImprimir.Visible = false;
                    }
                }
            }
        }
Example #2
0
        private void cmdImprimir_Click(object sender, EventArgs e)
        {
            DataTable dt      = this.grdItens.BindingSource.DataSource as DataTable;
            DataView  dv      = new DataView(dt, "sel = 1", "", DataViewRowState.CurrentRows);
            int       iQtdeDV = dv.Count;

            if (iQtdeDV == 0)
            {
                MsgBox.Show("Não foram encontrados registros para esta pesquisa."
                            , "Pesquisa"
                            , MessageBoxButtons.OK
                            , MessageBoxIcon.Information);
            }
            else
            {
                string sMensage = string.Empty;
                if (iQtdeDV == 1)
                {
                    sMensage += "Será impresso um documento, você confirma?";
                }
                else
                {
                    sMensage += string.Format("Serão impressos {0} documentos, você confirma?", iQtdeDV);
                }

                DialogResult dr = MsgBox.Show(sMensage
                                              , "Impressão de Duplicatas"
                                              , MessageBoxButtons.YesNo
                                              , MessageBoxIcon.Question);

                if (dr == DialogResult.Yes)
                {
                    bool    bPreview = this.optTela.Checked;
                    Funcoes func;

                    string sfileImpressao = Application.StartupPath + @"\Impressao.txt";
                    string sPorta         = func.Busca_Propriedade("Porta_Padrao_Matricial");

                    foreach (DataRowView row in dv)
                    {
                        if (File.Exists(sfileImpressao))
                        {
                            File.Delete(sfileImpressao);
                        }

                        ERP.NotaFiscal.EmissaoNotaFiscal enf = new ERP.NotaFiscal.EmissaoNotaFiscal(true);
                        enf.Emitir_Duplicata(Convert.ToInt32(row["Nota_Fiscal"]), Convert.ToInt32(row["Numero_Parcela"]), !bPreview);

                        if (!bPreview)
                        {
                            using (StreamReader sr = new StreamReader(sfileImpressao))
                            {
                                RawPrinterHelper.SendStringToPrinter(sPorta, sr.ReadToEnd());
                            }
                        }
                    }

                    //-- Visualiza ou imprime em papel
                    if (bPreview)
                    {
                        CompSoft.Reports.Preview_Matricial pm = new CompSoft.Reports.Preview_Matricial();
                        pm.Visualizar();
                    }
                    else
                    {
                        ((DataTable)this.grdItens.BindingSource.DataSource).Clear();
                        this.cmdImprimir.Visible = false;
                    }
                }
            }
        }