public static void PrepararImpressão(EtiquetaSedexCrystal relatório, List<Entidades.EtiquetaSedex> listaEtiquetas) { DataSetEtiquetaSedex ds = new DataSetEtiquetaSedex(); DataTable tabelaEtiqueta = ds.Tables["Etiqueta"]; // Preencher itens do relacionamento foreach (Entidades.EtiquetaSedex s in listaEtiquetas) { for (int x = 0; x < s.Quantidade; x++) { DataRow linha = tabelaEtiqueta.NewRow(); linha["nome"] = s.Pessoa.Nome; linha["código"] = s.Pessoa.Código.ToString(); linha["endereço"] = s.Endereço.Logradouro + " " + s.Endereço.Número + " " + (s.Endereço.Complemento == null ? "" : s.Endereço.Complemento); linha["bairro"] = s.Endereço.Bairro; linha["cidade"] = s.Endereço.Localidade.Nome; linha["estado"] = s.Endereço.Localidade.Estado.Sigla; linha["pais"] = s.Endereço.Localidade.Estado.País.Nome; linha["cep"] = s.Endereço.CEP; tabelaEtiqueta.Rows.Add(linha); if (s.Tipo == EtiquetaSedex.TipoEndereco.Destinatário) linha["título"] = "DESTINATÁRIO"; else linha["título"] = "REMETENTE"; } } relatório.SetDataSource(ds); }
public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport() { EtiquetaSedexCrystal rpt = new EtiquetaSedexCrystal(); rpt.Site = this.Site; return rpt; }
private void btnImprimir_Click(object sender, EventArgs e) { if (hashItens.Count > 0) { JanelaImpressão janela = new JanelaImpressão(); janela.Título = "Etiquetas de sedex"; janela.Descrição = "Visualização de impressão para etiquetas de sedex"; EtiquetaSedexCrystal relatório = new EtiquetaSedexCrystal(); List<Entidades.EtiquetaSedex> lista = new List<Entidades.EtiquetaSedex>(); foreach (KeyValuePair<ListViewItem, Entidades.EtiquetaSedex> par in hashItens) { lista.Add(par.Value); } ControleImpressãoSedex.PrepararImpressão(relatório, lista); janela.InserirDocumento(relatório, "Etiquetas"); janela.Abrir(this); } }