private void buttonPrikazi_Click(object sender, RoutedEventArgs e) { if (datePickerDatumOd.SelectedDate != null || datePickerDatumDo.SelectedDate != null) { ObservableCollection<StampaBrojIzdatihPonuda> _lista = dBProksi.DajBrojIzdatihPonudaPoRadnicima((DateTime)datePickerDatumOd.SelectedDate, (DateTime)datePickerDatumDo.SelectedDate); List<StampaBrojIzdatihPonuda> _s = new List<StampaBrojIzdatihPonuda>(); switch (((ComboBoxItem)comboBoxSortirajPo.SelectedItem).Content.ToString()) { case "Šifra": _s = _lista.OrderBy(o => o.Sifra).ToList(); break; case "Nadimak": _s = _lista.OrderBy(o => o.Nadimak).ToList(); break; case "Broj ponuda": _s = _lista.OrderByDescending(o => o.BrojPonuda).ToList(); break; } reportViewerIzvestaj.LocalReport.ReportEmbeddedResource = "Servis.Izvestaji.BrojIzdatihPonudaStampa.rdlc"; reportViewerIzvestaj.ProcessingMode = ProcessingMode.Local; ReportDataSource _reportDataSource = new ReportDataSource("DS_StampaBrojIzdatihPonuda", (bool)checkBoxVeceOdNule.IsChecked ? _s.Where(f => f.BrojPonuda > 0) : _s); reportViewerIzvestaj.LocalReport.DataSources.Clear(); reportViewerIzvestaj.LocalReport.DataSources.Add(_reportDataSource); reportViewerIzvestaj.SetDisplayMode(DisplayMode.PrintLayout); reportViewerIzvestaj.ZoomMode = ZoomMode.PageWidth; reportViewerIzvestaj.RefreshReport(); } else { Dijalog _dialog = new Dijalog("Obavezan podatak", "Odaberi vremenski opseg."); //_dialog.WindowStyle = WindowStyle.ToolWindow; _dialog.Owner = Window.GetWindow(this); _dialog.WindowStartupLocation = WindowStartupLocation.CenterOwner; _dialog.ShowDialog(); return; } }
//Djora 19.05.21 public void KreirajPDF(string imefajla, string kojiprint, string ParamZaStampu) { string adresaFrom = ""; string lozinka = ""; // Pretvara pravi password u skremblovani. Ove dve linije mi treba samo u debug modu radi testa //clsPasswords pom = new clsPasswords(); //lozinka = pom.EncodePasswordToBase64("62+Wt9#H*v"); //Djora 07.09.21 pocetak ----------------------------------- DataBaseBroker db = new DataBaseBroker(); DataTable dt = new DataTable(); string sql = " SELECT DISTINCT dbo.Radnik.E_mail, dbo.Radnik.EmailPass FROM dbo.Radnik INNER JOIN " + " dbo.KadrovskaEvidencija ON dbo.Radnik.id_kadrovskaevidencija = dbo.KadrovskaEvidencija.ID_KadrovskaEvidencija " + " WHERE(dbo.Radnik.id_kadrovskaevidencija <> 1) AND (dbo.KadrovskaEvidencija.ID_KadrovskaEvidencija = @param0)"; dt = db.ParamsQueryDT(sql, Program.idkadar); if (dt.Rows.Count != 0) { foreach (DataRow row in dt.Rows) { adresaFrom = row["E_mail"].ToString().Trim(); //lozinka = row["EmailPass"].ToString().Trim(); clsPasswords ps = new clsPasswords(); lozinka = ps.DecodeFrom64(row["EmailPass"].ToString().Trim()); } } else { MessageBox.Show("Mail nije poslat. Trazite od IT sluzbe da vam otvori mail !", "UPOZORENJE", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } //Djora 07.09.21 kraj --------------------------------------- //Izvlaci iz connestionstring-a user name i password string[] niz0 = Program.connectionString.Split(';'); string DatabaseUsername = niz0[2].Split('=')[1]; string DatabasePassword = niz0[3].Split('=')[1]; //Djora 22.10.21 30.08.21 Inicijacija Vrednosti //Djora 07.09.21 //string[,] niz = { { "Ko salje", "*****@*****.**", "t", "" }, { "Password", "@R01d1969S", "t", "" }, { "Kome se salje", "*****@*****.**", "t", "" }, { "Tema", "Ovo je Subject", "t", "" }, { "Poruka", "Ovo je Body", "t", "" } }; string[,] niz = { { "Ko šalje", adresaFrom, "t", "" }, { "Password", lozinka, "t", "" }, { "Kome se šalje", "", "t", "" }, { "Naslov", "", "t", "" }, { "Poruka", "", "t", "" } }; //Djora 22.10.21 Prikaz forme za unos mag.polja, lota i kolicine sa njihovim inicijalnim vrednostima string[,] niz2 = { }; //ivana 19.10.2021. //niz2 = Dijalog.Prikazi(niz); niz2 = Dijalog.Prikazi(niz, "Mail"); //Djora 30.08.21 if (niz2.Length == 0) { return; } //string URL = ""; //string RS = "http://sql2019/ReportServer/Pages/ReportViewer.aspx?%2fPlate%2fPlatnaKartica"; //string Command = "Render"; //string Format = "PDF"; ////Parametri koji se predaju //string mbr = "1"; //Inicijalno //string mes = "0320k"; //Zadaje se //string idfirma = "5"; //Zadaje se //string server = "server"; //Zadaje se //string database = "BankomVeza"; //Zadaje se //string username = "******"; //Zadaje se //string password = "******"; //Zadaje se //string URL = " "; ////URL = "http://" + LoginForm.ReportServer + "/ReportServer/Pages/ReportViewer.aspx?%2fIzvestaji%2f" + kojiprint + imefajla + "&rs:Command=Render&rs:Format=PDF" + "&database=" + Program.NazivBaze + "&Firma=" + Program.imeFirme + "&slike=" + LoginForm.ReportSlike; //+ "&rs:ParameterLanguage=" + culture.ToString() + ParamZaStampu; //URL = RS + "&rs:Command=" + Command + "&rs:Format=" + Format + "&mbr=" + mbr + "&mes=" + mes + "&idfirma=" + idfirma + "&server=" + server + "&database=" + database + "&username="******"&password="******"http://sql2019/ReportServer/Pages/ReportViewer.aspx?%2fIzvestaji%2fprnKonacniUlazniRacun&rs:Command=Render&rs:Format=PDF&database="BankomTest&server=server&username=sa&password=password&Firma=Bankom&slike=\\sql2016\\D\\logo\\&id=1564246"; //Djora 03.06.21 //string URL = @"http://" + LoginForm.ReportServer + "/ReportServer/Pages/ReportViewer.aspx?%2fIzvestaji%2f" + kojiprint + imefajla + "&rs:Command=Render&rs:Format=PDF&database=" + Program.NazivBaze + "&server=server&username=sa&password=password&Firma=" + Program.imeFirme + "&slike=\\sql2016\\D\\logo\\" + ParamZaStampu; //Djora 30.08.21 //string URL = @"http://" + LoginForm.ReportServer + "/ReportServer/Pages/ReportViewer.aspx?%2fIzvestaji%2f" + kojiprint + imefajla + "&rs:Command=Render&rs:Format=PDF&database=BankomTest&server=server&username=sa&password=password&Firma=" + Program.imeFirme + "&slike=\\sql2016\\D\\logo\\" + ParamZaStampu; string URL = @"http://" + LoginForm.ReportServer + "/ReportServer/Pages/ReportViewer.aspx?%2fIzvestaji%2f" + kojiprint + imefajla + "&rs:Command=Render&rs:Format=PDF&database=" + Program.NazivBaze + "&server=" + LoginForm.ImeServera + "&username="******"&password="******"&Firma=" + Program.imeFirme + "&slike=" + LoginForm.ReportSlike + ParamZaStampu; URL = URL.Replace("#", "%23").Replace("+", "%2b");//prilagodi specijalne karaktere kod passworda (znak + i # prave probleme) System.Diagnostics.Debug.WriteLine(ParamZaStampu); System.Net.HttpWebRequest Req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(URL); Req.Credentials = System.Net.CredentialCache.DefaultCredentials; Req.Method = "GET"; //Folder gde je aplikacija pokrenuta string directory = AppDomain.CurrentDomain.BaseDirectory; //Djora 18.10.21 poc -------------------------- string mailDir = directory + "mail"; if (!Directory.Exists(mailDir)) { System.IO.Directory.CreateDirectory(mailDir); } else { System.IO.DirectoryInfo di = new DirectoryInfo(mailDir); foreach (FileInfo file in di.GetFiles()) { file.Delete(); } } //Djora 18.10.21 kraj -------------------------- //Putanja gde ce biti snimljen fajl. //Djora 18.10.21 //string path = directory + @"mail\" + imefajla + ".pdf"; //@"D:\xxxx.pdf"; string path = mailDir + @"\" + imefajla + ".pdf"; //@"D:\xxxx.pdf"; System.Net.WebResponse objResponse = Req.GetResponse(); System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Create); System.IO.Stream stream = objResponse.GetResponseStream(); byte[] buf = new byte[1024]; int len = stream.Read(buf, 0, 1024); while (len > 0) { fs.Write(buf, 0, len); len = stream.Read(buf, 0, 1024); } stream.Close(); fs.Close(); //Djora 30.08.21 clsMail pismo = new clsMail(); //pismo.KonekcijaNaSmtp("*****@*****.**", "@R01d1969S", "*****@*****.**","Dokument", "Ovo je proba", path, "mail.bankom.rs"); pismo.KonekcijaNaSmtp(niz2[0, 1], niz2[1, 1], niz2[2, 1], niz2[3, 1], niz2[4, 1], path, "mail.bankom.rs"); //--------------------------------------------------------------------------------------------------- //Djora 30.08.21 //////newFileName = directory + @"mail\mail_lista.csv"; //////File.WriteAllText(newFileName, String.Empty); //////createCSV(niz[1, 1], "Hello C#", "Ovo je napisano u C#", directory +@"mail\", "xxxx.pdf"); ////////createCSV("*****@*****.**", "Hello C#", "Ovo je napisano u C#", "proba.txt"); //////string putanja = directory + @"mail\start.bat"; ////////Process.Start(putanja); //////Process.Start(@".\mail\start.bat"); //////MessageBox.Show("Gotovo !"); //////// //Slanje maila //////// //posaljiMail("@R01d1969S", "*****@*****.**", "Plata " + mes, "Plata za mesec mart", path, "Luka Djoric <*****@*****.**>", row["Ime"].ToString(), row["E_Mail"].ToString()); }