示例#1
0
        //Dados da Empresa
        public ModelEmpresa DadosEmpresa(string IDConex, int cencus)
        {
            string script = "";

            string nomempimprel = null;
            string nomfancencus = null;

            byte[] arqlogocencus = null;

            string fanemp  = null;
            string nomemp  = null;
            string verlogo = null;

            byte[] logoemp = null;

            SqlConnection conexao  = null;
            SqlCommand    cmd      = null;
            SqlDataReader rd       = null;
            ModelEmpresa  DadosEmp = new ModelEmpresa();

            var conERP = LeConfTXT(IDConex);

            try
            {
                //Primeiro Pega os dados do Centro de Custo
                script = "SELECT nomempimprel, nomfancencus, arqlogocencus FROM CENCUS WHERE codcencus = " + cencus;

                conexao = new SqlConnection(conERP.StringConexao);
                cmd     = new SqlCommand(script, conexao);
                conexao.Open();
                rd = cmd.ExecuteReader();

                while (rd.Read())
                {
                    nomempimprel = rd.GetString(0);
                    nomfancencus = rd.GetString(1);

                    if (!string.IsNullOrEmpty(rd.GetValue(2).ToString()))
                    {
                        arqlogocencus = (byte[])rd.GetValue(2);
                    }
                }
                conexao.Close();

                //Segundo Pega os dados da Empresa Padrão
                script = "SELECT fanemp, nomemp, logorelemp, logoemp FROM EMPRESA WHERE codemp = 1";

                conexao = new SqlConnection(conERP.StringConexao);
                cmd     = new SqlCommand(script, conexao);
                conexao.Open();
                rd = cmd.ExecuteReader();

                while (rd.Read())
                {
                    fanemp  = rd.GetString(0);
                    nomemp  = rd.GetString(1);
                    verlogo = rd.GetString(2);
                    logoemp = (byte[])rd.GetValue(3);
                }
                conexao.Close();

                //Verifica o nome do centro de Custo
                if (!string.IsNullOrEmpty(nomempimprel))
                {
                    DadosEmp.nomeEmp = nomempimprel;
                }
                else
                {
                    if (!string.IsNullOrEmpty(nomfancencus))
                    {
                        DadosEmp.nomeEmp = nomfancencus;
                    }
                }

                //Se não achou pega o Nome Padrão da Empresa
                if (string.IsNullOrEmpty(DadosEmp.nomeEmp))
                {
                    if (!string.IsNullOrEmpty(fanemp))
                    {
                        DadosEmp.nomeEmp = fanemp;
                    }
                    else
                    {
                        DadosEmp.nomeEmp = nomemp;
                    }
                }

                //Verifica a Logo
                DadosEmp.logoOk = false;

                if (arqlogocencus.Length > 0)
                {
                    DadosEmp.logoEmp = arqlogocencus;
                    DadosEmp.logoOk  = true;
                }

                if (!DadosEmp.logoOk)   //Não Achou no Centro de Custo
                {
                    if (verlogo != "N") //Ou pega o da Empresa Padrão e se não tiver pega da pasta do Usuário.
                    {
                        DadosEmp.logoOk = true;
                        if (logoemp != null)
                        {
                            DadosEmp.logoEmp = logoemp;
                        }
                    }
                }

                return(DadosEmp);
            }
            catch (Exception erro)
            {
                GravaErro(erro.Message);
                return(null);
            }
        }
示例#2
0
        private void CabecalhoGeral()
        {
            string       dataAtual = DateTime.Now.ToShortDateString();
            string       horaAtual = DateTime.Now.ToShortTimeString();
            ModelEmpresa dadosRel  = new ModelEmpresa();

            dadosRel = DadosEmpRel();

            FileInfo ExCab = new FileInfo(ArqExcel);

            using (ExcelPackage pakCab = new ExcelPackage(ExCab))
            {
                ExcelWorksheet ws = pakCab.Workbook.Worksheets.Add("Grid Notas");
                OfficeOpenXml.Style.ExcelHorizontalAlignment HCentro = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center;
                OfficeOpenXml.Style.ExcelVerticalAlignment   VCentro = OfficeOpenXml.Style.ExcelVerticalAlignment.Center;
                OfficeOpenXml.Style.ExcelHorizontalAlignment HLeft   = OfficeOpenXml.Style.ExcelHorizontalAlignment.Left;

                lnIni = 1;
                if (GeraCab)
                {
                    if (dadosRel.logoOk) //Adiciona a Logo
                    {
                        Image LogoEmp = GetImagem(dadosRel.logoEmp);

                        ws.Cells["A1:A5"].Merge = true;
                        OfficeOpenXml.Drawing.ExcelPicture picture = ws.Drawings.AddPicture("0", LogoEmp);
                        picture.From.Column = 0;
                        picture.SetPosition(3, 3);
                        picture.SetSize(205, 105);
                    }

                    //Controller
                    ws.Cells["B1:Q2"].Merge = true;
                    ws.Cells["B1"].Value    = "CONTROLLER ERP";
                    ws.Cells["B1"].Style.HorizontalAlignment = HCentro;
                    ws.Cells["B1"].Style.VerticalAlignment   = VCentro;
                    ws.Cells["B1"].Style.Font.Size           = 18;
                    ws.Cells["B1"].Style.Font.Bold           = true;
                    ws.Cells["B1"].Style.Font.Name           = "Calibri";

                    //Data
                    ws.Cells["R1"].Value                     = "Data: " + dataAtual;
                    ws.Cells["R1"].Style.Font.Bold           = true;
                    ws.Cells["R1"].Style.HorizontalAlignment = HCentro;

                    //Hora
                    ws.Cells["R2"].Value                     = "Hora: " + horaAtual;
                    ws.Cells["R2"].Style.Font.Bold           = true;
                    ws.Cells["R2"].Style.HorizontalAlignment = HCentro;

                    //Nome da Empresa
                    ws.Cells["B3:Q3"].Merge = true;
                    ws.Cells["B3"].Value    = dadosRel.nomeEmp.ToUpper();
                    ws.Cells["B3"].Style.HorizontalAlignment = HCentro;
                    ws.Cells["B3"].Style.VerticalAlignment   = VCentro;
                    ws.Cells["B3"].Style.Font.Size           = 16;
                    ws.Cells["B3"].Style.Font.Bold           = true;
                    ws.Cells["B3"].Style.Font.Name           = "Calibri";

                    //Nome do Relatório
                    ws.Cells["B4:Q4"].Merge = true;
                    ws.Cells["B4"].Value    = NomeRelat.ToUpper();
                    ws.Cells["B4"].Style.HorizontalAlignment = HCentro;
                    ws.Cells["B4"].Style.VerticalAlignment   = VCentro;
                    ws.Cells["B4"].Style.Font.Size           = 14;
                    ws.Cells["B4"].Style.Font.Bold           = true;
                    ws.Cells["B4"].Style.Font.Name           = "Calibri";

                    lnIni = 6;
                }

                //Nome e Tamanho das Colunas do Cabeçalho
                cel1 = "A" + lnIni;
                ws.Cells[cel1].Value = "Desc. Tipo de Nota";
                ws.Column(1).Width   = 30.00D;

                cel1 = "B" + lnIni;
                ws.Cells[cel1].Value = "Sequência";
                ws.Column(2).Width   = 10.00D;

                cel1 = "C" + lnIni;
                ws.Cells[cel1].Value = "Emissão";
                ws.Column(3).Width   = 12.00D;

                cel1 = "D" + lnIni;
                ws.Cells[cel1].Value = "Série";
                ws.Column(4).Width   = 6.00D;

                cel1 = "E" + lnIni;
                ws.Cells[cel1].Value = "Número";
                ws.Column(5).Width   = 12.00D;

                cel1 = "F" + lnIni;
                ws.Cells[cel1].Value = "Código";
                ws.Column(6).Width   = 7.00D;

                cel1 = "G" + lnIni;
                ws.Cells[cel1].Value = "Nome";
                ws.Column(7).Width   = 40.00D;

                cel1 = "H" + lnIni;
                ws.Cells[cel1].Value = "Valor";
                ws.Column(8).Width   = 15.00D;

                cel1 = "I" + lnIni;
                ws.Cells[cel1].Value = "Status";
                ws.Column(9).Width   = 10.00D;

                cel1 = "J" + lnIni;
                ws.Cells[cel1].Value = "NF Vinculada";
                ws.Column(10).Width  = 12.00D;

                cel1 = "K" + lnIni;
                ws.Cells[cel1].Value          = "Num. RPS";
                ws.Cells[cel1].Style.WrapText = true;
                ws.Column(11).Width           = 12.00D;

                cel1 = "L" + lnIni;
                ws.Cells[cel1].Value = "Num. Pedido";
                ws.Column(12).Width  = 15.00D;

                cel1 = "M" + lnIni;
                ws.Cells[cel1].Value = "Data Pedido";
                ws.Column(13).Width  = 12.00D;

                cel1 = "N" + lnIni;
                ws.Cells[cel1].Value = "Placa";
                ws.Column(14).Width  = 9.00D;

                cel1 = "O" + lnIni;
                ws.Cells[cel1].Value = "UF";
                ws.Column(15).Width  = 4.00D;

                cel1 = "P" + lnIni;
                ws.Cells[cel1].Value = "Código";
                ws.Column(16).Width  = 7.00D;

                cel1 = "Q" + lnIni;
                ws.Cells[cel1].Value = "Transportadora";
                ws.Column(17).Width  = 30.00D;

                cel1 = "R" + lnIni;
                ws.Cells[cel1].Value = "Observações";
                ws.Column(18).Width  = 60.00D;
                //Fim dos Campos do Cabeçalho

                //Faz a Formatação do Cabeçalho
                ln   = lnIni;
                cel1 = "A" + lnIni;
                cel2 = "R" + lnIni;
                ws.Row(lnIni).Height = 30.00D;
                ws.Cells[cel1 + ":" + cel2].Style.Font.Bold           = true;
                ws.Cells[cel1 + ":" + cel2].Style.VerticalAlignment   = VCentro;
                ws.Cells[cel1 + ":" + cel2].Style.HorizontalAlignment = HLeft;
                ws.Cells[cel1 + ":" + cel2].Style.Fill.PatternType    = OfficeOpenXml.Style.ExcelFillStyle.Solid;
                ws.Cells[cel1 + ":" + cel2].Style.Fill.BackgroundColor.SetColor(Color.LightGray);
                ws.Cells[cel1 + ":" + cel2].Style.Border.Left.Style = OfficeOpenXml.Style.ExcelBorderStyle.Thin;
                ws.Cells[cel1 + ":" + cel2].Style.Border.BorderAround(OfficeOpenXml.Style.ExcelBorderStyle.Thick);

                //Alinha os Campos diferentes:
                cel1 = "C" + lnIni; //Emissão e Série
                cel2 = "D" + lnIni;
                ws.Cells[cel1 + ":" + cel2].Style.HorizontalAlignment = HCentro;

                cel1 = "F" + lnIni; //Código
                ws.Cells[cel1].Style.HorizontalAlignment = HCentro;

                cel1 = "I" + lnIni; //Status
                ws.Cells[cel1].Style.HorizontalAlignment = HCentro;

                cel1 = "M" + lnIni; //Data Pedido, Placa e UF
                cel2 = "O" + lnIni;
                ws.Cells[cel1 + ":" + cel2].Style.HorizontalAlignment = HCentro;

                cel1 = "P" + lnIni; //Código
                ws.Cells[cel1].Style.HorizontalAlignment = HCentro;

                //Termina Formatação Cabeçalho

                // Save to file
                pakCab.Save();
            }
        }