public void Enlaza_fra() { try { int asiento = 0; char t_cte = ' '; if (rb_cte_lrg.Checked == true) { t_cte = 'C'; } else { if (rb_titular_lrg.Checked == true) { t_cte = 'T'; } else if (rb_colab_lrg.Checked == true) { t_cte = 'B'; } } /* * char deleg = ' '; * if (rb_y_lrg.Checked == true) * deleg = 'Y'; * else * { * if (rb_m_lrg.Checked == true) * deleg = 'M'; * else if (rb_a_lrg.Checked == true) * deleg = 'A'; * } */ //secc_int = cb_secc_lrg.Text.Trim(); //estado = cb_estado_lrg.Text.Trim(); _registros.Clear(); _registros.AddRange(Reg_Opera.Buscar_rfra(deleg, Convert.ToInt32(tb_d_fra.Text), Convert.ToInt32(tb_h_fra.Text), dtp_d_ffra.Value, dtp_h_ffra.Value, t_cte, Convert.ToInt32(tb_d_cte.Text), Convert.ToInt32(tb_h_cte.Text), 'Z', 1)); if (_registros.Count == 0) { MessageBox.Show("No se obtuvo ningún registro.", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { //filePath = = "@\"" + tb_pdf.Text + "\""; fichero_asi = File.CreateText(tb_ruta.Text + "enlace.txt"); //"c:\\temp\\csharp\\enlace.txt" fichero_fra = File.CreateText(tb_ruta.Text + "enlace_fra.txt"); fichero_cte = File.CreateText(tb_ruta.Text + "enlace_cte.txt"); asiento = Convert.ToInt32(tb_n_asi.Text); while (pos_reg < _registros.Count) { if (_registros.ElementAt(pos_reg).t_cte_fra == 'C') { //facturar a cte. //cta_cte = Reg_Opera.Sacar_cta_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_cte), 'C'); //nom_cte = Reg_Opera.Calcular_nom_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_cte), 'C'); //dnicif = Reg_Opera.Sacar_dnicif_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_cte), 'C'); Cte_a_enlazar = Ctes_Opera.ObtenerCliente(_registros.ElementAt(pos_reg).id_cte); } else { if (_registros.ElementAt(pos_reg).t_cte_fra == 'T') //facturar a titular. { //cta_cte = Reg_Opera.Sacar_cta_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_titular), 'T'); //nom_cte = Reg_Opera.Calcular_nom_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_titular), 'T'); //dnicif = Reg_Opera.Sacar_dnicif_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_titular), 'T'); Cte_a_enlazar = Ctes_Opera.ObtenerCliente(_registros.ElementAt(pos_reg).id_titular); } else //facturar a colaborador. { //cta_cte = Reg_Opera.Sacar_cta_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_colabora), 'B'); //nom_cte = Reg_Opera.Calcular_nom_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_colabora), 'B'); //dnicif = Reg_Opera.Sacar_dnicif_cte(Convert.ToString(_registros.ElementAt(pos_reg).id_colabora), 'B'); Cte_a_enlazar = Ctes_Opera.ObtenerCliente(_registros.ElementAt(pos_reg).id_colabora); } } //Ctas cliente line = "'" + Cte_a_enlazar.cta_cble.Trim() + "';'" + Cte_a_enlazar.Nombre.Trim() + "';'S';'" + Cte_a_enlazar.Documento.Trim() + Cte_a_enlazar.Letra + "';'" + Cte_a_enlazar.Direccion.Trim() + "';'" + Cte_a_enlazar.Cpostal.Trim() + "';'" + Cte_a_enlazar.Ciudad.Trim() + "';'" + Cte_a_enlazar.Telf1.Trim() + "';'','','" + Cte_a_enlazar.Pers_cont.Trim() + "';'" + Cte_a_enlazar.Email.Trim() + "';"; fichero_cte.WriteLine(line.Replace("'", "\"")); base_imp = 0; imp_iva = 0; tot_fra = 0; imp_tasa = 0; imp_det = 0; importes[0] = 0; importes[1] = 0; //sacamos los importes con iva de linfac a simpor1; los sin iva ya estan acumulados en campo tasa. importes = Linfac_Opera.Calcular_importes_linfac(_registros.ElementAt(pos_reg).factura); base_imp = _registros.ElementAt(pos_reg).dcho_col + _registros.ElementAt(pos_reg).honorarios + importes[1]; imp_iva = ((base_imp * _registros.ElementAt(pos_reg).p_iva) / 100); imp_tasa = _registros.ElementAt(pos_reg).tasa - importes[0]; //le quitamos impor sin iva de detalles tot_fra = base_imp + imp_iva + _registros.ElementAt(pos_reg).tasa; //creamos fichero de fras. line = "'E';'" + string.Format("{0:000000}", asiento) + "';'" + string.Format("{0:000000}", _registros.ElementAt(pos_reg).factura) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMMyyyy") + "';'" + Cte_a_enlazar.cta_cble.Trim() + "';'" + Cte_a_enlazar.Nombre.Trim() + "';'" + Cte_a_enlazar.Documento.Trim() + Cte_a_enlazar.Letra + "';'" + string.Format("{0:###,##0.00}", base_imp) + "';'" + string.Format("{0:##0}", _registros.ElementAt(pos_reg).p_iva) + "';'" + string.Format("{0:###,##0.00}", imp_iva) + "';'Varias';'" + string.Format("{0:###,##0.00}", _registros.ElementAt(pos_reg).tasa) + "';'0';'0';'705000011';'S';'00';'N';'N';"; fichero_fra.WriteLine(line.Replace("'", "\"")); //Sacamos ctas de detalle _cuentas = Linfac_Opera.Saca_ctas_x_impor(_registros.ElementAt(pos_reg).factura); concepto = "N/FRA. " + _registros.ElementAt(pos_reg).factura + " - " + Cte_a_enlazar.Nombre.Trim().Trim(); line = "'D';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + Cte_a_enlazar.cta_cble.Trim() + "';'" + string.Format("{0:###,##0.00}", tot_fra) + "';'" + concepto.Trim() + "';'FE';'N';'';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\""));//deben ser comillas dobles //buscamos el importe de la cta de tasa en detalles imp_det = Busca_cta_det(tb_ctasa.Text.Trim()); if (_registros.ElementAt(pos_reg).tasa > 0 | imp_det > 0) { line = "'H';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + tb_ctasa.Text.Trim() + "';'" + string.Format("{0:###,##0.00}", imp_tasa + imp_det) + "';'" + concepto.Trim() + "';'FE';'N';'" + Cte_a_enlazar.cta_cble.Trim() + "';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\"")); } imp_det = Busca_cta_det(tb_cdcol.Text.Trim()); if (_registros.ElementAt(pos_reg).dcho_col > 0 | imp_det > 0) { line = "'H';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + tb_cdcol.Text.Trim() + "';'" + string.Format("{0:###,##0.00}", _registros.ElementAt(pos_reg).dcho_col + imp_det) + "';'" + concepto.Trim() + "';'FE';'N';'" + Cte_a_enlazar.cta_cble.Trim() + "';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\"")); } imp_det = Busca_cta_det(tb_chono.Text.Trim()); if (_registros.ElementAt(pos_reg).honorarios > 0 | imp_det > 0) { line = "'H';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + tb_chono.Text.Trim() + "';'" + string.Format("{0:###,##0.00}", _registros.ElementAt(pos_reg).honorarios + imp_det) + "';'" + concepto.Trim() + "';'FE';'N';'" + Cte_a_enlazar.cta_cble.Trim() + "';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\"")); } if (imp_iva > 0) { line = "'H';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + tb_civa.Text.Trim() + "';'" + string.Format("{0:###,##0.00}", imp_iva) + "';'" + concepto.Trim() + "';'FE';'N';'" + Cte_a_enlazar.cta_cble.Trim() + "';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\"")); } //Ver ctas de detalle: cta_suplido if (_cuentas.Count > 0) { foreach (Cuentas pcuenta in _cuentas) { line = "'H';'" + string.Format("{0:000000}", asiento) + "';'" + _registros.ElementAt(pos_reg).fec_fra.ToString("ddMM") + "';'" + pcuenta.cta_cble.Trim() + "';'" + string.Format("{0:###,##0.00}", pcuenta.importe_acu) + "';'" + concepto.Trim() + "';'FE';'N';'" + Cte_a_enlazar.cta_cble.Trim() + "';'N';'';"; fichero_asi.WriteLine(line.Replace("'", "\"")); } } //updateo facturas a enlazado if (_registros.ElementAt(pos_reg).estado_fac == 'L' & Reg_Opera.Fra_listada_enlazada(_registros.ElementAt(pos_reg).factura, 1) > 0) { //actualiza estado factura a enlazada } pos_reg++; //incremento n_asi asiento++; //tb_n_asi.Text = Convert.ToString(asiento); } fichero_cte.Close(); fichero_asi.Close(); fichero_fra.Close(); MessageBox.Show("Fras. enlazadas con éxito.", "Muy bien!!", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception e1) { MessageBox.Show("No se seleccionó ningún registro.", e1.Message, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void lanza_lfra() { try { char t_cte = ' '; if (rb_cte_lrg.Checked == true) { t_cte = 'C'; } else { if (rb_titular_lrg.Checked == true) { t_cte = 'T'; } else if (rb_colab_lrg.Checked == true) { t_cte = 'B'; } } char deleg = ' '; if (rb_y_lrg.Checked == true) { deleg = 'Y'; } else { if (rb_m_lrg.Checked == true) { deleg = 'M'; } else if (rb_a_lrg.Checked == true) { deleg = 'A'; } } char accion = 'Z'; switch (cb_est_fra.Text.Trim()) { case "SIN LISTAR": accion = ' '; break; case "LISTADAS": accion = 'L'; break; case "ENLAZADAS": accion = 'E'; break; } //secc_int = cb_secc_lrg.Text.Trim(); //estado = cb_estado_lrg.Text.Trim(); _registros.Clear(); _registros.AddRange(Reg_Opera.Buscar_rfra(deleg, Convert.ToInt32(tb_d_fra.Text), Convert.ToInt32(tb_h_fra.Text), dtp_d_ffra.Value, dtp_h_ffra.Value, t_cte, Convert.ToInt32(tb_d_cte.Text), Convert.ToInt32(tb_h_cte.Text), accion, 0)); if (_registros.Count == 0) { MessageBox.Show("No se obtuvo ningún registro.", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { printDocument1.DefaultPageSettings.Landscape = true; printDocument1.PrintPage -= new PrintPageEventHandler(printDocument1_PrintPage); printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage); printPreviewDialog1.Document = printDocument1; printPreviewDialog1.PrintPreviewControl.Zoom = 1.0; printPreviewDialog1.WindowState = FormWindowState.Maximized; DialogResult respuesta = MessageBox.Show("¿Desea entrar en la vista previa del impreso?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (respuesta == DialogResult.Yes) { printPreviewDialog1.ShowDialog(); } else { PrintDialog printDialog1 = new PrintDialog(); printDialog1.Document = printDocument1; if (printDialog1.ShowDialog().Equals(DialogResult.OK)) { printDialog1.Document.Print(); } } } } catch (Exception e1) { MessageBox.Show("No se seleccionó ningún registro.", e1.Message, MessageBoxButtons.OK, MessageBoxIcon.Error); } }