public ActionResult DeleteConfirmed(string id) { TSOL tSOL = db.TSOLs.Find(id); db.TSOLs.Remove(tSOL); db.SaveChanges(); return(RedirectToAction("Index")); }
// GET: TSOL/Create public ActionResult Create() { TSOL tsol = new TSOL(); var rangos = db.RANGOes.Select(x => new { x.ID, DESCRIPCION = x.INICIO + "-" + x.FIN }); ViewBag.RANGO_ID = new SelectList(rangos, "ID", "DESCRIPCION"); int pagina_id = 791;//ID EN BASE DE DATOS FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller); ViewBag.SPRAS = db.SPRAS.ToList(); return(View(tsol)); }
public ActionResult Create([Bind(Include = "ID,DESCRIPCION,TSOLR,RANGO_ID,ESTATUS")] TSOL tSOL) { if (ModelState.IsValid) { db.TSOLs.Add(tSOL); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.RANGO_ID = new SelectList(db.RANGOes, "ID", "ID", tSOL.RANGO_ID); ViewBag.TSOLR = new SelectList(db.TSOLs, "ID", "DESCRIPCION", tSOL.TSOLR); return(View(tSOL)); }
// GET: TSOL/Delete/5 public ActionResult Delete(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TSOL tSOL = db.TSOLs.Find(id); if (tSOL == null) { return(HttpNotFound()); } return(View(tSOL)); }
// GET: TSOL/Edit/5 public ActionResult Edit(string id) { int pagina = 792; //ID EN BASE DE DATOS using (TAT001Entities db = new TAT001Entities()) { string u = User.Identity.Name; //string u = "admin"; var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault(); ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList(); ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList(); ViewBag.usuario = user; ViewBag.returnUrl = Request.Url.PathAndQuery;; ViewBag.rol = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50; ViewBag.Title = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50; ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList(); ViewBag.textos = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(791) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList(); try { string p = Session["pais"].ToString(); ViewBag.pais = p + ".svg"; } catch { //ViewBag.pais = "mx.svg"; //return RedirectToAction("Pais", "Home"); } Session["spras"] = user.SPRAS_ID; } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TSOL tSOL = db.TSOLs.Find(id); if (tSOL == null) { return(HttpNotFound()); } ViewBag.SPRAS = db.SPRAS.ToList(); var rangos = db.RANGOes.Select(x => new { x.ID, DESCRIPCION = x.INICIO + "-" + x.FIN }); ViewBag.RANGO_ID = new SelectList(rangos, "ID", "DESCRIPCION", tSOL.RANGO_ID); //ViewBag.RANGO_ID = new SelectList(db.RANGOes, "ID", "ID", tSOL.RANGO_ID); //ViewBag.TSOLR = new SelectList(db.TSOLs, "ID", "DESCRIPCION", tSOL.TSOLR); return(View(tSOL)); }
public ActionResult Edit([Bind(Include = "ID,ACTIVO,CARTA,NEGO,ADICIONA")] TSOL tSOL, FormCollection collection, string[] txval) { if (ModelState.IsValid) { List <SPRA> ss = db.SPRAS.ToList(); List <TSOLT> lstc = db.TSOLTs.Where(i => i.TSOL_ID == tSOL.ID).ToList(); var TSOL = db.TSOLs.Where(t => t.ID == tSOL.ID).SingleOrDefault(); if (lstc.Count == 0) { var j = 0; foreach (SPRA s in ss) { try { TSOLT p = new TSOLT(); p.TSOL_ID = tSOL.ID; p.SPRAS_ID = s.ID; //p.TXT020 = txval[j].ToString(); p.TXT50 = txval[j].ToString(); db.Entry(p).State = EntityState.Added; db.SaveChanges(); j++; } catch (Exception e) { var x = e.ToString(); } } } else { var j = 0; foreach (var texto in lstc) { try { //texto.TXT020 = txval[j].ToString(); texto.TXT50 = txval[j].ToString(); db.Entry(texto).State = EntityState.Modified; db.SaveChanges(); j++; } catch (Exception e) { var x = e.ToString(); } } } TSOL.ACTIVO = tSOL.ACTIVO; TSOL.CARTA = tSOL.CARTA; TSOL.NEGO = tSOL.NEGO; TSOL.ADICIONA = tSOL.ADICIONA; db.SaveChanges(); //if (txval != null) //{ // //Posterior a lo ingresado // List<TSOLT> lstc = db.TSOLTs.Where(i => i.TSOL_ID == tSOL.ID).ToList(); // //si el arreglo solo incluye 1 dato, significa que ya hay 2 lenguajes // if (txval.Length == 1) // { // var x1 = lstc[0].SPRAS_ID; // var x2 = lstc[1].SPRAS_ID; // if (lstc[0].SPRAS_ID == "EN") // { // if (lstc[1].SPRAS_ID == "ES") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "PT"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // } // if (lstc[1].SPRAS_ID == "PT") // { //Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "ES"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // } // } // if (lstc[0].SPRAS_ID == "ES") // { // if (lstc[1].SPRAS_ID == "PT") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "EN"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // } // } // } // //si el arreglo incluye 2 datos, significa que ya hay 1 lenguaje // else if (txval.Length == 2) // { // if (lstc[0].SPRAS_ID == "ES") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "EN"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "PT"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // else if (lstc[0].SPRAS_ID == "EN") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "ES"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "PT"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // else if (lstc[0].SPRAS_ID == "PT") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "ES"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "EN"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // } // else if (txval.Length == 3) // { // if (lstc[0].SPRAS_ID == "ES") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "EN"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "PT"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // else if (lstc[0].SPRAS_ID == "EN") // { // // Lleno el primer objeto // //TSOLT trvt = new TSOLT(); // //trvt.SPRAS_ID = "ES"; // //trvt.TSOL_ID = tSOL.ID; // lstc[0].TXT020 = txval[0]; // lstc[0].TXT50 = txval[0]; // db.Entry(lstc[0]).State = EntityState.Modified; // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "PT"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // else if (lstc[0].SPRAS_ID == "PT") // { // // Lleno el primer objeto // TSOLT trvt = new TSOLT(); // trvt.SPRAS_ID = "ES"; // trvt.TSOL_ID = tSOL.ID; // trvt.TXT020 = txval[0]; // trvt.TXT50 = txval[0]; // db.TSOLTs.Add(trvt); // db.SaveChanges(); // //Lleno el segundo objeto // TSOLT trvt2 = new TSOLT(); // trvt2.SPRAS_ID = "EN"; // trvt2.TSOL_ID = tSOL.ID; // trvt2.TXT020 = txval[1]; // trvt2.TXT50 = txval[1]; // db.TSOLTs.Add(trvt2); // db.SaveChanges(); // } // } //} return(RedirectToAction("Index")); } int pagina = 793; //ID EN BASE DE DATOS using (TAT001Entities db = new TAT001Entities()) { string u = User.Identity.Name; //string u = "admin"; var user = db.USUARIOs.Where(a => a.ID.Equals(u)).FirstOrDefault(); ViewBag.permisos = db.PAGINAVs.Where(a => a.ID.Equals(user.ID)).ToList(); ViewBag.carpetas = db.CARPETAVs.Where(a => a.USUARIO_ID.Equals(user.ID)).ToList(); ViewBag.usuario = user; ViewBag.returnUrl = Request.Url.PathAndQuery;; ViewBag.rol = user.PUESTO.PUESTOTs.Where(a => a.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50; ViewBag.Title = db.PAGINAs.Where(a => a.ID.Equals(pagina)).FirstOrDefault().PAGINATs.Where(b => b.SPRAS_ID.Equals(user.SPRAS_ID)).FirstOrDefault().TXT50; ViewBag.warnings = db.WARNINGVs.Where(a => (a.PAGINA_ID.Equals(pagina) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList(); ViewBag.textos = db.TEXTOes.Where(a => (a.PAGINA_ID.Equals(790) || a.PAGINA_ID.Equals(0)) && a.SPRAS_ID.Equals(user.SPRAS_ID)).ToList(); try { string p = Session["pais"].ToString(); ViewBag.pais = p + ".svg"; } catch { //ViewBag.pais = "mx.svg"; return(RedirectToAction("Pais", "Home")); } Session["spras"] = user.SPRAS_ID; } ViewBag.RANGO_ID = new SelectList(db.RANGOes, "ID", "ID", tSOL.RANGO_ID); ViewBag.TSOLR = new SelectList(db.TSOLs, "ID", "DESCRIPCION", tSOL.TSOLR); return(View(tSOL)); }
public ActionResult Create([Bind(Include = "ID,DESCRIPCION,RANGO_ID,ESTATUS,FACTURA,PADRE,REVERSO,NEGO,CARTA,ADICIONA")] TSOL tSOL, FormCollection collection, string[] txval) { if (ModelState.IsValid) { if (!existeTSOL(tSOL.ID)) { if (Convert.ToBoolean(tSOL.ESTATUS)) { tSOL.ESTATUS = "M"; } else { tSOL.ESTATUS = "X"; } var radio = collection["group1"]; if (radio == "FACTURA") { tSOL.FACTURA = true; } if (radio == "PADRE") { tSOL.PADRE = true; } if (radio == "REVERSO") { tSOL.REVERSO = true; } db.TSOLs.Add(tSOL); db.SaveChanges(); List <SPRA> ss = db.SPRAS.ToList(); List <TSOLT> lstc = db.TSOLTs.Where(i => i.TSOL_ID == tSOL.ID).ToList(); if (lstc.Count == 0) { var j = 0; foreach (SPRA s in ss) { try { TSOLT p = new TSOLT(); p.TSOL_ID = tSOL.ID; p.SPRAS_ID = s.ID; //p.TXT020 = txval[j].ToString(); p.TXT50 = txval[j].ToString(); db.Entry(p).State = EntityState.Added; db.SaveChanges(); j++; } catch (Exception e) { var x = e.ToString(); } } } return(RedirectToAction("Index")); } else { int pagina_id = 791;//ID EN BASE DE DATOS FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller); ViewBag.RANGO_ID = new SelectList(db.RANGOes, "ID", "ID", tSOL.RANGO_ID); return(View(tSOL)); } } ViewBag.RANGO_ID = new SelectList(db.RANGOes, "ID", "ID", tSOL.RANGO_ID); return(View(tSOL)); }
public void generarExcelHome(List <FACTURASCONF> lst, string ruta) { string spras_id = FnCommon.ObtenerSprasId(db, User.Identity.Name); var workbook = new XLWorkbook(); var worksheet = workbook.Worksheets.Add("Sheet 1"); try { //Creamos el encabezado worksheet.Cell("A1").Value = new[] { new { COL = "CO. CODE" } }; worksheet.Cell("B1").Value = new[] { new { COL = "PAÍS" } }; worksheet.Cell("C1").Value = new[] { new { COL = "TIPO SOLICITUD" } }; worksheet.Cell("D1").Value = new[] { new { COL = "FACTURA" } }; worksheet.Cell("E1").Value = new[] { new { COL = "FECHA" } }; worksheet.Cell("F1").Value = new[] { new { COL = "PROVEEDOR" } }; worksheet.Cell("G1").Value = new[] { new { COL = "CONTROL" } }; worksheet.Cell("H1").Value = new[] { new { COL = "AUTORIZACIÓN" } }; worksheet.Cell("I1").Value = new[] { new { COL = "VENCIMIENTO" } }; worksheet.Cell("J1").Value = new[] { new { COL = "FACTURA KELLOGG" } }; worksheet.Cell("K1").Value = new[] { new { COL = "AÑO" } }; worksheet.Cell("L1").Value = new[] { new { COL = "DOC. FACTURA" } }; worksheet.Cell("M1").Value = new[] { new { COL = "FOLIO" } }; worksheet.Cell("N1").Value = new[] { new { COL = "IMPORTE" } }; worksheet.Cell("O1").Value = new[] { new { COL = "CLIENTE" } }; worksheet.Cell("P1").Value = new[] { new { COL = "DESCRIPCIÓN" } }; worksheet.Cell("Q1").Value = new[] { new { COL = "CO. CODE" } }; worksheet.Cell("R1").Value = new[] { new { COL = "ACTIVO" } }; for (int i = 2; i <= (lst.Count + 1); i++) { string sociedad_id = lst[i - 2].SOCIEDAD_ID; string tsol_id = lst[i - 2].TSOL; SOCIEDAD sociedad = db.SOCIEDADs.First(x => x.BUKRS == sociedad_id); TSOL tSol = db.TSOLs.Include(x => x.TSOLTs).First(x => x.ID == tsol_id); worksheet.Cell("A" + i).Value = new[] { new { COL = (sociedad.BUKRS + " - " + sociedad.BUTXT) } }; worksheet.Cell("B" + i).Value = new[] { new { COL = lst[i - 2].PAIS_ID } }; worksheet.Cell("C" + i).Value = new[] { new { COL = (tSol.ID + " - " + (tSol.TSOLTs.Any(x => x.SPRAS_ID == spras_id)?tSol.TSOLTs.First(x => x.SPRAS_ID == spras_id).TXT50:tSol.DESCRIPCION)) } }; worksheet.Cell("D" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].FACTURA) } }; worksheet.Cell("E" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].FECHA) } }; worksheet.Cell("F" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].PROVEEDOR) } }; worksheet.Cell("G" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].CONTROL) } }; worksheet.Cell("H" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].AUTORIZACION) } }; worksheet.Cell("I" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].VENCIMIENTO) } }; worksheet.Cell("J" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].FACTURAK) } }; worksheet.Cell("K" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].EJERCICIOK) } }; worksheet.Cell("L" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].BILL_DOC) } }; worksheet.Cell("M" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].IMPORTE_FAC) } }; worksheet.Cell("N" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].BELNR) } }; worksheet.Cell("O" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].DESCRIPCION) } }; worksheet.Cell("P" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].BELNR) } }; worksheet.Cell("Q" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].SOCIEDAD) } }; worksheet.Cell("R" + i).Value = new[] { new { COL = ObtenerTextoSINO(lst[i - 2].ACTIVO) } }; } var rt = ruta + @"\DocRel" + DateTime.Now.ToShortDateString() + ".xlsx"; workbook.SaveAs(rt); } catch (Exception e) { Log.ErrorLogApp(e, "DocRelacion", "generarExcelHome"); } }
public string generarArchivo(decimal docum, string accion, string fechacon)//MGC-14-12-2018 Modificación fechacon { string errorMessage = ""; try { string dirFile = ""; DOCUMENTO doc = db.DOCUMENTOes.Where(x => x.NUM_DOC == docum).Single(); TSOL ts = db.TSOLs.Where(tsi => tsi.ID == doc.TSOL_ID).FirstOrDefault(); string txt = ""; string msj = ""; string[] cc; string cta = ""; string carpeta = "in";//MGC 22-10-2018 Archivo local en servidor //Obtener la configuración de la url desde app setting string url_prel = ""; try { //url_prel = db.APPSETTINGs.Where(aps => aps.NOMBRE.Equals("URL_PREL") && aps.ACTIVO == true).FirstOrDefault().VALUE.ToString();//MGC 22-10-2018 Archivo local en servidor //url_prel += @"POSTING";//MGC 22-10-2018 Archivo local en servidor url_prel = getDirPrel(carpeta); dirFile = url_prel; } catch (Exception e) { dirFile = ConfigurationManager.AppSettings["URL_PREL"].ToString() + @"in"; } //MGC 22-10-2018 Archivo local en servidor //Verificar si el directorio existe y si hay permiso bool existd = ValidateIOPermission(dirFile); //El direcorio existe if (existd) { //dirFile = ConfigurationManager.AppSettings["URL_PREL"].ToString() + @"POSTING"; string docname = dirFile + @"\INBOUND_PREL" + ts.ID.Substring(0, 3) + docum.ToString().PadLeft(10, '0') + "-1"; //MGC 11-10-2018 Acciones para el encabezado --> string variable = ""; string accionhead = ""; //Preliminar if (accion == "P") { variable = "ACCION_CREAR"; fechacon = "";//MGC-14-12-2018 Modificación fechacon } else if (accion == "R") { variable = "ACCION_BC"; fechacon = "";//MGC-14-12-2018 Modificación fechacon } else if (accion == "A") { variable = "ACCION_CONTABILIZAR"; } //Obtener el nombre de la acción desde la bd en APPSETTING try { accionhead = db.APPSETTINGs.Where(aps => aps.NOMBRE.Equals(variable) && aps.ACTIVO == true).FirstOrDefault().VALUE.ToString(); } catch (Exception e) { } //MGC 11-10-2018 Acciones para el encabezado <-- doc.FECHAC = Fecha("D", Convert.ToDateTime(doc.FECHAC)); List <DetalleContab> det = new List <DetalleContab>(); //MemoryStream stIn = new MemoryStream(); string user = ""; string pass = ""; string dom = ""; user = getUserPrel(); pass = getPassPrel(); dom = getDomPrel(); //using (Impersonation.LogonUser(dom, user, pass, LogonType.NewCredentials)) //{ try { FileStream fs = null; fs = new FileStream(docname, FileMode.CreateNew); using (StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.ASCII)) { string belnr = ""; string bjahr = ""; string bukrs = ""; if (accion == "R") { belnr = doc.NUM_PRE + ""; bjahr = doc.EJERCICIO_PRE + ""; bukrs = doc.SOCIEDAD_PRE + ""; } //MGC 26-12-2018.4 Factura y cuenta de pago----------> string factura = ""; if (ts.TIPO_DOCFILE.Trim().Equals("REEMBOLSO")) { factura = "Reembolso"; } else { try { factura = doc.NO_FACTURA.Trim(); } catch (Exception) { } } //MGC 26-12-2018.4 Factura y cuenta de pago----------< //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado --> sw.WriteLine( "1" + "|" + ts.TIPO_DOCFILE.Trim() + "|" + doc.NUM_DOC + "|" + accionhead.Trim() + "|" + belnr + "|" + bjahr + "|" + bukrs //MGC 19-10-2018 Cambio en archivo ); //sw.WriteLine(""); //MGC 17-10-2018.2 Adaptación a archivo //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado <-- //Formato a fecha mes, día, año sw.WriteLine( "2" + "|" + doc.DOCUMENTO_SAP + "|" + doc.SOCIEDAD_ID.Trim() + "|" + String.Format("{0:dd.MM.yyyy}", doc.FECHAC).Replace(".", "") + "|" + //Formato MGC doc.MONEDA_ID.Trim() + "|" + //+ "|" + //MGC 11-10-2018 Acciones para el encabezado //doc.REFERENCIA.Trim() + "|" +//MGC 26-12-2018.4 Factura y cuenta de pago factura + "|" + //MGC 26-12-2018.4 Factura y cuenta de pago doc.CONCEPTO + "|" + //MGC 11-10-2018 Acciones para el encabezado "" + "|" + "" + "|" + doc.TIPO_CAMBIO //MGC 11-10-2018 Acciones para el encabezado + "|" + fechacon //MGC-14-12-2018 Modificación fechacon//MGC 13-10-2018 Modificaión fecha + "|" + "|" //+ doc.CUENTA_ID.Trim() //MGC 26-12-2018.4 Factura y cuenta de pago + "P-" + doc.NUM_DOC //MGC 26-12-2018.4 Factura y cuenta de pago ); //sw.WriteLine("");//MGC 17-10-2018.2 Adaptación a archivo //for (int i = 0; i < det.Count; i++) //Obtener los rows H List <DOCUMENTOP> lh = doc.DOCUMENTOPs.Where(docl => docl.ACCION == "H").ToList(); List <DOCUMENTOP> ld = doc.DOCUMENTOPs.Where(docl => docl.ACCION == "D").ToList(); //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------> List <CLAVES_CONTA> cls = new List <CLAVES_CONTA>(); //MGC 30-10-2018 Obtener las claves a partir del tipo de solicitud cls = db.CLAVES_CONTA.Where(clsi => clsi.TSOL == doc.TSOL_ID).ToList(); //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------< //MGC 30-10-2018 Valores en el renglón H for (int i = 0; i < lh.Count; i++) { string post = ""; string postk = ""; //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------> CLAVES_CONTA clsi = cls.Where(c => c.DH == lh[i].ACCION).FirstOrDefault(); if (clsi != null) { post = clsi.BSCHLL; postk = clsi.BSCHL; } //if (lh[i].ACCION == "H") //{ // post = "P"; // if (doc.TSOL_ID == "NCC" | doc.TSOL_ID == "NCS") // { // postk = "50"; // } // else // { // postk = "31"; // } //} //else if (lh[i].ACCION == "D") //{ // post = "G"; // if (doc.TSOL_ID == "NCC" | doc.TSOL_ID == "NCS") // { // postk = "21"; // } // else // { // postk = "40"; // } //} //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------< string cuenta = lh[i].CUENTA + ""; string ccosto = lh[i].CCOSTO + ""; string imputacion = lh[i].IMPUTACION + ""; sw.WriteLine( //det[i].POS_TYPE + "|" + "3" + "|" + post + "|" + doc.SOCIEDAD_ID.Trim() + "|" + //det[i].COMP_CODE + "|" + // //det[i].BUS_AREA + "|" + "|" + //det[i].POST_KEY + "|" + postk + "|" + cuenta.Trim() + "|" + //det[i].ACCOUNT + "|" + ccosto.Trim() + "|" + //det[i].COST_CENTER + "|" + imputacion.Trim() + "|" + lh[i].MONTO + "|" + //det[i].BALANCE + "|" + lh[i].TEXTO + "|" + //det[i].TEXT + "|" + //det[i].SALES_ORG + "|" + //det[i].DIST_CHANEL + "|" + "|" + "|" + //det[i].DIVISION + "|" + "|" + //"|" + //"|" + //"|" + //"|" + //"|" + //det[i].INV_REF + "|" + //det[i].PAY_TERM + "|" + //det[i].JURIS_CODE + "|" + "|" + "|" + "|" + //"|" + //det[i].CUSTOMER + "|" + //det[i].PRODUCT + "|" + "|" + "|" + lh[i].MWSKZ + "|" + //det[i].TAX_CODE + "|" + //det[i].PLANT + "|" + //det[i].REF_KEY1 + "|" + //det[i].REF_KEY3 + "|" + //det[i].ASSIGNMENT + "|" + //det[i].QTY + "|" + //det[i].BASE_UNIT + "|" + //det[i].AMOUNT_LC + "|" + //det[i].RETENCION_ID + "|" "|" + "|" + "|" + "|" + "|" + "|" + "|" + "|" ); } //MGC 30-10-2018 Valores en el renglón D for (int i = 0; i < ld.Count; i++) { string post = ""; string postk = ""; //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------> CLAVES_CONTA clsi = cls.Where(c => c.DH == ld[i].ACCION).FirstOrDefault(); if (clsi != null) { post = clsi.BSCHLL; postk = clsi.BSCHL; } //if (ld[i].ACCION == "H") //{ // post = "P"; // if (doc.TSOL_ID == "NCC" | doc.TSOL_ID == "NCS") // { // postk = "50"; // } // else // { // postk = "31"; // } //} //else if (ld[i].ACCION == "D") //{ // post = "G"; // if (doc.TSOL_ID == "NCC" | doc.TSOL_ID == "NCS") // { // postk = "21"; // } // else // { // postk = "40"; // } //} //MGC 30-10-2018 Obtener las claves de contabilización ------------------------------------------------< string cuenta = ld[i].CUENTA + ""; string ccosto = ld[i].CCOSTO + ""; string imputacion = ld[i].IMPUTACION + ""; sw.WriteLine( //det[i].POS_TYPE + "|" + "3" + "|" + post + "|" + doc.SOCIEDAD_ID.Trim() + "|" + //det[i].COMP_CODE + "|" + // //det[i].BUS_AREA + "|" + "|" + //det[i].POST_KEY + "|" + postk + "|" + cuenta.Trim() + "|" + //det[i].ACCOUNT + "|" + ccosto.Trim() + "|" + //det[i].COST_CENTER + "|" + imputacion.Trim() + "|" + ld[i].MONTO + "|" + //det[i].BALANCE + "|" + ld[i].TEXTO + "|" + //det[i].TEXT + "|" + //det[i].SALES_ORG + "|" + //det[i].DIST_CHANEL + "|" + "|" + "|" + //det[i].DIVISION + "|" + "|" + //"|" + //"|" + //"|" + //"|" + //"|" + //det[i].INV_REF + "|" + //det[i].PAY_TERM + "|" + //det[i].JURIS_CODE + "|" + "|" + "|" + "|" + //"|" + //det[i].CUSTOMER + "|" + //det[i].PRODUCT + "|" + "|" + "|" + ld[i].MWSKZ + "|" + //det[i].TAX_CODE + "|" + //det[i].PLANT + "|" + //det[i].REF_KEY1 + "|" + //det[i].REF_KEY3 + "|" + //det[i].ASSIGNMENT + "|" + //det[i].QTY + "|" + //det[i].BASE_UNIT + "|" + //det[i].AMOUNT_LC + "|" + //det[i].RETENCION_ID + "|" "|" + "|" + "|" + "|" + "|" + "|" + "|" + "|" ); } //MGC 11-10-2018 Acciones para el encabezado RETENCIONES --> for (int i = 0; i < doc.DOCUMENTORs.Count; i++) { sw.WriteLine( "4" + "|" + "W" + "|" + doc.DOCUMENTORs.ElementAt(i).WITHT + "|" + doc.DOCUMENTORs.ElementAt(i).WT_WITHCD + "|" + doc.DOCUMENTORs.ElementAt(i).BIMPONIBLE + "|" + doc.DOCUMENTORs.ElementAt(i).IMPORTE_RET //+ "|" //MGC 17-10-2018.2 Adaptación a archivo ); } //MGC 11-10-2018 Acciones para el encabezado RETENCIONES <-- //sw.Close(); sw.Close(); //using (Stream stOut = reqFTP.GetRequestStream()) //{ // stOut.Write(stIn.GetBuffer(), 0, (int)stIn.Length); //} } } catch (Exception e) { errorMessage = "Error al generar el archivo txt preliminar " + e.Message; } //} } else { errorMessage = "Error con el directorio para crear archivo"; } ////MGC 11-10-2018 Acciones para el encabezado --> //string variable = ""; //string accionhead = ""; ////Preliminar //if(accion == "P") //{ // variable = "ACCION_CREAR"; //}else if(accion == "R") //{ // variable = "ACCION_BC"; //} //else if (accion == "A") //{ // variable = "ACCION_CONTABILIZAR"; //} ////Obtener el nombre de la acción desde la bd en APPSETTING //try //{ // accionhead = db.APPSETTINGs.Where(aps => aps.NOMBRE.Equals(variable) && aps.ACTIVO == true).FirstOrDefault().VALUE.ToString(); //}catch(Exception e) //{ //} ////MGC 11-10-2018 Acciones para el encabezado <-- //doc.FECHAC = Fecha("D", Convert.ToDateTime(doc.FECHAC)); //List<DetalleContab> det = new List<DetalleContab>(); //var dir = new Files().createDir(dirFile);//RSG 01.08.2018 ////Evaluar que se creo el directorio //if (dir.Equals("")) //{ // using (StreamWriter sw = new StreamWriter(docname)) // { // string belnr = ""; // string bjahr = ""; // string bukrs = ""; // if (accion == "R") // { // belnr = doc.NUM_PRE + ""; // bjahr = doc.EJERCICIO_PRE + ""; // bukrs = doc.SOCIEDAD_PRE + ""; // } // //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado --> // sw.WriteLine( // "1"+ "|" + // ts.TIPO_DOCFILE.Trim() + "|" + // doc.NUM_DOC+"|" + // accionhead.Trim() + "|"+ // belnr + "|"+ // bjahr + "|"+ // bukrs + "|" // ); // sw.WriteLine(""); // //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado <-- // //Formato a fecha mes, día, año // sw.WriteLine( // "2" + "|" + // doc.DOCUMENTO_SAP + "|" + // doc.SOCIEDAD_ID.Trim() + "|" + // String.Format("{0:MM.dd.yyyy}", doc.FECHAC).Replace(".", "") + "|"+ // doc.MONEDA_ID.Trim() + "|" + // //+ "|" + //MGC 11-10-2018 Acciones para el encabezado // doc.REFERENCIA + "|"+ // doc.CONCEPTO + "|" + //MGC 11-10-2018 Acciones para el encabezado // "X" + "|"+ // doc.TIPO_CAMBIO + "|" //MGC 11-10-2018 Acciones para el encabezado // + "" // ); // sw.WriteLine(""); // //for (int i = 0; i < det.Count; i++) // for (int i = 0; i < doc.DOCUMENTOPs.Count; i++) // { // string post = ""; // string postk = ""; // if (doc.DOCUMENTOPs.ElementAt(i).ACCION == "H") // { // post = "P"; // postk = "31"; // } // else if (doc.DOCUMENTOPs.ElementAt(i).ACCION == "D") // { // post = "G"; // postk = "40"; // } // sw.WriteLine( // //det[i].POS_TYPE + "|" + // "3" + "|" + // post + "|" + // doc.SOCIEDAD_ID.Trim() + "|" + //det[i].COMP_CODE + "|" + // // //det[i].BUS_AREA + "|" + // "|" + // //det[i].POST_KEY + "|" + // postk + "|" + // doc.DOCUMENTOPs.ElementAt(i).CUENTA + "|" +//det[i].ACCOUNT + "|" + // doc.DOCUMENTOPs.ElementAt(i).CCOSTO + "|" +//det[i].COST_CENTER + "|" + // doc.DOCUMENTOPs.ElementAt(i).IMPUTACION + "|" + // doc.DOCUMENTOPs.ElementAt(i).MONTO + "|" +//det[i].BALANCE + "|" + // doc.DOCUMENTOPs.ElementAt(i).TEXTO + "|" + //det[i].TEXT + "|" + // //det[i].SALES_ORG + "|" + // //det[i].DIST_CHANEL + "|" + // "|" + // "|" + // //det[i].DIVISION + "|" + // "|" + // //"|" + // //"|" + // //"|" + // //"|" + // //"|" + // //det[i].INV_REF + "|" + // //det[i].PAY_TERM + "|" + // //det[i].JURIS_CODE + "|" + // "|" + // "|" + // "|" + // //"|" + // //det[i].CUSTOMER + "|" + // //det[i].PRODUCT + "|" + // "|" + // "|" + // doc.DOCUMENTOPs.ElementAt(i).MWSKZ + "|" +//det[i].TAX_CODE + "|" + // //det[i].PLANT + "|" + // //det[i].REF_KEY1 + "|" + // //det[i].REF_KEY3 + "|" + // //det[i].ASSIGNMENT + "|" + // //det[i].QTY + "|" + // //det[i].BASE_UNIT + "|" + // //det[i].AMOUNT_LC + "|" + // //det[i].RETENCION_ID + "|" // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" // ); // } // //MGC 11-10-2018 Acciones para el encabezado RETENCIONES --> // for (int i = 0; i < doc.DOCUMENTORs.Count; i++) // { // sw.WriteLine( // "4" + "|" + // "W" + "|" + // doc.DOCUMENTORs.ElementAt(i).WITHT + "|" + // doc.DOCUMENTORs.ElementAt(i).WT_WITHCD + "|" + // doc.DOCUMENTORs.ElementAt(i).BIMPONIBLE + "|" + // doc.DOCUMENTORs.ElementAt(i).IMPORTE_RET + "|" + // "" // ); // } // //MGC 11-10-2018 Acciones para el encabezado RETENCIONES <-- // sw.Close(); // } //} //else //{ // errorMessage = dir; //} //MGC prueba FTP----------------------------------------------------------------------------------------------------------------------------------------> //Obtener la configuración de la url desde app setting //string ftpServerIP = ""; //try //{ // ftpServerIP = db.APPSETTINGs.Where(aps => aps.NOMBRE.Equals("URL_FTP_PRELIMINAR") && aps.ACTIVO == true).FirstOrDefault().VALUE.ToString(); // url_prel += @"POSTING"; // dirFile = url_prel; //} //catch (Exception e) //{ //} //string targetFileName = "/SAP/POSTING/INBOUND_PREL" + ts.ID.Substring(0, 2) + docum.ToString().PadLeft(10, '0') + "-1.txt"; ////string ftpServerIP = "192.168.32.207:21"; ////string targetFileName = "/SAP/POSTING/prueba.txt"; //string username = "******"; //string password = "******"; //Uri uri = new Uri(String.Format("ftp://{0}/{1}", ftpServerIP, targetFileName)); //FtpWebRequest reqFTP = (FtpWebRequest)FtpWebRequest.Create(uri); //reqFTP.Credentials = new NetworkCredential(username, password); //reqFTP.Method = WebRequestMethods.Ftp.UploadFile; //reqFTP.KeepAlive = false; //reqFTP.UsePassive = false; //MemoryStream stIn = new MemoryStream(); //using (StreamWriter sw = new StreamWriter(stIn)) //{ // string belnr = ""; // string bjahr = ""; // string bukrs = ""; // if (accion == "R") // { // belnr = doc.NUM_PRE + ""; // bjahr = doc.EJERCICIO_PRE + ""; // bukrs = doc.SOCIEDAD_PRE + ""; // } // //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado --> // sw.WriteLine( // "1" + "|" + // ts.TIPO_DOCFILE.Trim() + "|" + // doc.NUM_DOC + "|" + // accionhead.Trim() + "|" + // belnr + "|" + // bjahr + "|" + // bukrs //MGC 19-10-2018 Cambio en archivo // ); // //sw.WriteLine(""); //MGC 17-10-2018.2 Adaptación a archivo // //DETDOC |TIPODOC|ACCION|BELNR|GJAHR|BUKRS DETDOC EJE FACSINOC|CONTABILIZAR|10000000|2018|1010| //MGC 11-10-2018 Acciones para el encabezado <-- // //Formato a fecha mes, día, año // sw.WriteLine( // "2" + "|" + // doc.DOCUMENTO_SAP + "|" + // doc.SOCIEDAD_ID.Trim() + "|" + // String.Format("{0:dd.MM.yyyy}", doc.FECHAC).Replace(".", "") + "|" + //Formato MGC // doc.MONEDA_ID.Trim() + "|" + // //+ "|" + //MGC 11-10-2018 Acciones para el encabezado // doc.REFERENCIA.Trim() + "|" + // doc.CONCEPTO + "|" + //MGC 11-10-2018 Acciones para el encabezado // "" + "|" + // "" + "|" + // doc.TIPO_CAMBIO //MGC 11-10-2018 Acciones para el encabezado // ); // //sw.WriteLine("");//MGC 17-10-2018.2 Adaptación a archivo // //for (int i = 0; i < det.Count; i++) // //Obtener los rows H // List<DOCUMENTOP> lh = doc.DOCUMENTOPs.Where(docl => docl.ACCION == "H").ToList(); // List<DOCUMENTOP> ld = doc.DOCUMENTOPs.Where(docl => docl.ACCION == "D").ToList(); // for (int i = 0; i < lh.Count; i++) // { // string post = ""; // string postk = ""; // if (lh[i].ACCION == "H") // { // post = "P"; // postk = "31"; // } // else if (lh[i].ACCION == "D") // { // post = "G"; // postk = "40"; // } // string cuenta = lh[i].CUENTA+""; // string ccosto = lh[i].CCOSTO + ""; // string imputacion = lh[i].IMPUTACION + ""; // sw.WriteLine( // //det[i].POS_TYPE + "|" + // "3" + "|" + // post + "|" + // doc.SOCIEDAD_ID.Trim() + "|" + //det[i].COMP_CODE + "|" + // // //det[i].BUS_AREA + "|" + // "|" + // //det[i].POST_KEY + "|" + // postk + "|" + // cuenta.Trim() + "|" +//det[i].ACCOUNT + "|" + // ccosto.Trim() + "|" +//det[i].COST_CENTER + "|" + // imputacion.Trim() + "|" + // lh[i].MONTO + "|" +//det[i].BALANCE + "|" + // lh[i].TEXTO + "|" + //det[i].TEXT + "|" + // //det[i].SALES_ORG + "|" + // //det[i].DIST_CHANEL + "|" + // "|" + // "|" + // //det[i].DIVISION + "|" + // "|" + // //"|" + // //"|" + // //"|" + // //"|" + // //"|" + // //det[i].INV_REF + "|" + // //det[i].PAY_TERM + "|" + // //det[i].JURIS_CODE + "|" + // "|" + // "|" + // "|" + // //"|" + // //det[i].CUSTOMER + "|" + // //det[i].PRODUCT + "|" + // "|" + // "|" + // lh[i].MWSKZ + "|" +//det[i].TAX_CODE + "|" + // //det[i].PLANT + "|" + // //det[i].REF_KEY1 + "|" + // //det[i].REF_KEY3 + "|" + // //det[i].ASSIGNMENT + "|" + // //det[i].QTY + "|" + // //det[i].BASE_UNIT + "|" + // //det[i].AMOUNT_LC + "|" + // //det[i].RETENCION_ID + "|" // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" // ); // } // for (int i = 0; i < ld.Count; i++) // { // string post = ""; // string postk = ""; // if (ld[i].ACCION == "H") // { // post = "P"; // postk = "31"; // } // else if (ld[i].ACCION == "D") // { // post = "G"; // postk = "40"; // } // string cuenta = ld[i].CUENTA + ""; // string ccosto = ld[i].CCOSTO + ""; // string imputacion = ld[i].IMPUTACION + ""; // sw.WriteLine( // //det[i].POS_TYPE + "|" + // "3" + "|" + // post + "|" + // doc.SOCIEDAD_ID.Trim() + "|" + //det[i].COMP_CODE + "|" + // // //det[i].BUS_AREA + "|" + // "|" + // //det[i].POST_KEY + "|" + // postk + "|" + // cuenta.Trim() + "|" +//det[i].ACCOUNT + "|" + // ccosto.Trim() + "|" +//det[i].COST_CENTER + "|" + // imputacion.Trim() + "|" + // ld[i].MONTO + "|" +//det[i].BALANCE + "|" + // ld[i].TEXTO + "|" + //det[i].TEXT + "|" + // //det[i].SALES_ORG + "|" + // //det[i].DIST_CHANEL + "|" + // "|" + // "|" + // //det[i].DIVISION + "|" + // "|" + // //"|" + // //"|" + // //"|" + // //"|" + // //"|" + // //det[i].INV_REF + "|" + // //det[i].PAY_TERM + "|" + // //det[i].JURIS_CODE + "|" + // "|" + // "|" + // "|" + // //"|" + // //det[i].CUSTOMER + "|" + // //det[i].PRODUCT + "|" + // "|" + // "|" + // ld[i].MWSKZ + "|" +//det[i].TAX_CODE + "|" + // //det[i].PLANT + "|" + // //det[i].REF_KEY1 + "|" + // //det[i].REF_KEY3 + "|" + // //det[i].ASSIGNMENT + "|" + // //det[i].QTY + "|" + // //det[i].BASE_UNIT + "|" + // //det[i].AMOUNT_LC + "|" + // //det[i].RETENCION_ID + "|" // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" + // "|" // ); // } // //MGC 11-10-2018 Acciones para el encabezado RETENCIONES --> // for (int i = 0; i < doc.DOCUMENTORs.Count; i++) // { // sw.WriteLine( // "4" + "|" + // "W" + "|" + // doc.DOCUMENTORs.ElementAt(i).WITHT + "|" + // doc.DOCUMENTORs.ElementAt(i).WT_WITHCD + "|" + // doc.DOCUMENTORs.ElementAt(i).BIMPONIBLE + "|" + // doc.DOCUMENTORs.ElementAt(i).IMPORTE_RET //+ "|" //MGC 17-10-2018.2 Adaptación a archivo // ); // } // //MGC 11-10-2018 Acciones para el encabezado RETENCIONES <-- // //sw.Close(); // sw.Flush(); // using (Stream stOut = reqFTP.GetRequestStream()) // { // stOut.Write(stIn.GetBuffer(), 0, (int)stIn.Length); // } //} //FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse(); //response.Close(); //MGC prueba FTP----------------------------------------------------------------------------------------------------------------------------------------< //if (tab.RELACION != 0 && tab.RELACION != null) //{ // return generarArchivo(docum, Convert.ToInt32(tab.RELACION)); //} //else //{ //return ""; //} } catch (Exception e) { //return "Error al generar el documento contable " + e.Message; errorMessage = "Error al generar el archivo txt preliminar " + e.Message; } return(errorMessage); }
public decimal creaReversa(string id_d, string tsol) { string dates = DateTime.Now.ToString("dd/MM/yyyy"); DateTime theTime = DateTime.ParseExact(dates, //"06/04/2018 12:00:00 a.m." "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); var relacionada_neg = ""; var relacionada_dis = ""; DOCUMENTO dOCUMENTO = new DOCUMENTO(); DOCUMENTO dOCpADRE = new DOCUMENTO(); string errorString = ""; TAT001Entities db = new TAT001Entities(); string p = ""; List <TREVERSAT> ldocr = new List <TREVERSAT>(); decimal rel = 0; try { if (id_d == null || id_d.Equals("")) { throw new Exception(); } rel = Convert.ToDecimal(id_d); } catch { rel = 0; } //--- //Obtener los valores de tsols List <TSOL> tsols_val = new List <TSOL>(); //List<TSOLT_MODBD> tsols_valbd = new List<TSOLT_MODBD>();//RSG 13.06.2018 try { tsols_val = db.TSOLs.ToList(); //tsols_valbd = tsols_val.Select(tsv => new TSOLT_MODBD //{ // ID = tsv.ID, // FACTURA = tsv.FACTURA //}).ToList(); } catch (Exception e) { } //Validar si es una reversa string isrn = ""; string isr = ""; var freversa = (dynamic)null; try { if (tsol == null || tsol.Equals("")) { throw new Exception(); } TSOL ts = tsols_val.Where(tsb => tsb.TSOLR == tsol).FirstOrDefault(); if (ts != null) { isrn = "X"; isr = "preversa"; freversa = theTime.ToString("yyyy-MM-dd");; //Obtener los tipos de reversas try { ldocr = db.TREVERSATs.Where(a => a.TREVERSA.ACTIVO == true && a.SPRAS_ID == dOCpADRE.USUARIO.SPRAS_ID).ToList(); } catch (Exception e) { } } } catch (Exception e) { isrn = ""; isr = ""; freversa = ""; } //--- //Obtener los documentos relacionados List <DOCUMENTO> docsrel = new List <DOCUMENTO>(); SOCIEDAD id_bukrs = new SOCIEDAD(); var id_pais = new PAI(); var id_waers = db.MONEDAs.Where(m => m.ACTIVO == true).ToList(); if (rel > 0) { dOCpADRE = db.DOCUMENTOes.Where(doc => doc.NUM_DOC == rel).FirstOrDefault(); ////if (dOCpADRE.TIPO_RECURRENTE == null)//RSG 28.05.2018---------------------------------------------- //// return 0; ////if (!((dOCpADRE.TIPO_RECURRENTE.Equals("M") | dOCpADRE.TIPO_RECURRENTE.Equals("P")) & dOCpADRE.ESTATUS.Equals("A") & dOCpADRE.ESTATUS_WF.Equals("A")))//RSG 28.05.2018 ////{ //// return 0; ////} //////List<DOCUMENTOREC> ddrec = new List<DOCUMENTOREC>(); ////DOCUMENTOREC drec = dOCpADRE.DOCUMENTORECs.Where(a => a.ESTATUS == "A").FirstOrDefault(); ////if (drec == null) //// return 0; ////else ////{ //// DateTime hoy = (DateTime)drec.FECHAF; //// var primer = new DateTime(hoy.Year, hoy.Month, 1); //// var ultimo = primer.AddMonths(1).AddDays(-1); //// dOCUMENTO.FECHAI_VIG = primer; //// dOCUMENTO.FECHAF_VIG = ultimo; //// dOCUMENTO.MONTO_DOC_MD = (decimal)drec.MONTO_BASE; ////} ////if (tsol != dOCpADRE.TSOL_ID) //// return 0; //////RSG 28.05.2018---------------------------------------------- docsrel = db.DOCUMENTOes.Where(docr => docr.DOCUMENTO_REF == rel).ToList(); id_bukrs = db.SOCIEDADs.Where(soc => soc.BUKRS == dOCpADRE.SOCIEDAD_ID && soc.ACTIVO == true).FirstOrDefault(); id_pais = db.PAIS.Where(pais => pais.LAND.Equals(dOCpADRE.PAIS_ID)).FirstOrDefault();//RSG 15.05.2018 dOCUMENTO.DOCUMENTO_REF = rel; relacionada_neg = dOCpADRE.TIPO_TECNICO; ////ViewBag.TSOL_ANT = dOCUMENTO.TSOL_ID; if (dOCUMENTO != null) { dOCUMENTO.TSOL_ID = tsol; dOCUMENTO.NUM_DOC = 0; ////foreach (DOCUMENTOP pos in dOCpADRE.DOCUMENTOPs) ////{ ////} List <DOCUMENTOP> docpl = db.DOCUMENTOPs.Where(docp => docp.NUM_DOC == dOCpADRE.NUM_DOC).ToList();//Documentos que se obtienen de la provisión List <DOCUMENTOP> docsrelp = new List <DOCUMENTOP>(); if (docsrel.Count > 0) { docsrelp = docsrel .Join( db.DOCUMENTOPs, docsl => docsl.NUM_DOC, docspl => docspl.NUM_DOC, (docsl, docspl) => new DOCUMENTOP { NUM_DOC = docspl.NUM_DOC, POS = docspl.POS, MATNR = docspl.MATNR, MATKL = docspl.MATKL, CANTIDAD = docspl.CANTIDAD, MONTO = docspl.MONTO, PORC_APOYO = docspl.PORC_APOYO, MONTO_APOYO = docspl.MONTO_APOYO, PRECIO_SUG = docspl.PRECIO_SUG, VOLUMEN_EST = docspl.VOLUMEN_EST, VOLUMEN_REAL = docspl.VOLUMEN_REAL, APOYO_REAL = docspl.APOYO_REAL, APOYO_EST = docspl.APOYO_EST, VIGENCIA_DE = docspl.VIGENCIA_DE, VIGENCIA_AL = docspl.VIGENCIA_AL }).ToList(); } List <TAT001.Models.DOCUMENTOP_MOD> docsp = new List <DOCUMENTOP_MOD>(); var dis = ""; for (int j = 0; j < docpl.Count; j++) { try { //Documentos de la provisión DOCUMENTOP_MOD docP = new DOCUMENTOP_MOD(); docP.NUM_DOC = dOCpADRE.NUM_DOC; docP.POS = docpl[j].POS; docP.MATNR = docpl[j].MATNR; if (j == 0 && docP.MATNR == "") { relacionada_dis = "C"; } docP.MATKL = docpl[j].MATKL; docP.MATKL_ID = docpl[j].MATKL; docP.CANTIDAD = 1; docP.MONTO = docpl[j].MONTO; docP.PORC_APOYO = docpl[j].PORC_APOYO; docP.MONTO_APOYO = docpl[j].MONTO_APOYO; docP.PRECIO_SUG = docpl[j].PRECIO_SUG; docP.VOLUMEN_EST = docpl[j].VOLUMEN_EST; docP.VIGENCIA_DE = docpl[j].VIGENCIA_DE; docP.VIGENCIA_AL = docpl[j].VIGENCIA_AL; docP.APOYO_EST = docpl[j].APOYO_EST; docP.APOYO_REAL = docpl[j].APOYO_REAL; //Verificar si hay materiales en las relacionadas if (docsrelp.Count > 0) { List <DOCUMENTOP> docrel = new List <DOCUMENTOP>(); if (docP.MATNR != null && docP.MATNR != "") { docrel = docsrelp.Where(docrell => docrell.MATNR == docP.MATNR).ToList(); } else { docrel = docsrelp.Where(docrell => docrell.MATKL == docP.MATKL_ID).ToList(); dis = "C"; } for (int k = 0; k < docrel.Count; k++) { //Relacionada se obtiene el decimal docr_vr = Convert.ToDecimal(docrel[k].VOLUMEN_REAL); decimal docr_ar = Convert.ToDecimal(docrel[k].APOYO_REAL); docP.VOLUMEN_EST -= docr_vr; docP.APOYO_EST -= docr_ar; if (dis == "C") { //decimal docr_vr = Convert.ToDecimal(docrel[k].); //decimal docr_ar = Convert.ToDecimal(docrel[k].APOYO_REAL); } } } //Siempre tiene que ser igual a 0 if (docP.VOLUMEN_EST < 0) { docP.VOLUMEN_EST = 0; } if (docP.APOYO_EST < 0) { docP.APOYO_EST = 0; } docP.MATNR = docpl[j].MATNR.TrimStart('0');//RSG 07.06.2018 docsp.Add(docP); } catch (Exception e) { } } dOCUMENTO.DOCUMENTOP = docsp; } } else { } dOCUMENTO.SOCIEDAD_ID = id_bukrs.BUKRS; dOCUMENTO.PAIS_ID = id_pais.LAND;//RSG 18.05.2018 dOCUMENTO.MONEDA_ID = id_bukrs.WAERS; dOCUMENTO.PERIODO = Convert.ToInt32(DateTime.Now.ToString("MM")); dOCUMENTO.EJERCICIO = Convert.ToString(DateTime.Now.Year); dOCUMENTO.FECHAD = theTime; //----------------------------RSG 18.05.2018 //dOCUMENTO.SOCIEDAD = db.SOCIEDADs.Find(dOCUMENTO.SOCIEDAD_ID); //----------------------------RSG 18.05.2018 dOCUMENTO.MONTO_DOC_MD = decimal.Parse("0.00"); foreach (DOCUMENTOP_MOD dpm in dOCUMENTO.DOCUMENTOP) { DOCUMENTOP ddp = new DOCUMENTOP(); ddp.MATKL = dpm.MATKL_ID; ddp.MATNR = new Cadena().completaMaterial(dpm.MATNR); ddp.MONTO = dpm.MONTO; ddp.MONTO_APOYO = dpm.MONTO_APOYO; ddp.PORC_APOYO = dpm.PORC_APOYO; ddp.POS = dpm.POS; ddp.PRECIO_SUG = dpm.PRECIO_SUG; ddp.VIGENCIA_AL = dpm.VIGENCIA_AL; ddp.VIGENCIA_DE = dpm.VIGENCIA_DE; ddp.VOLUMEN_EST = dpm.VOLUMEN_EST; ddp.VOLUMEN_REAL = dpm.VOLUMEN_REAL; ddp.APOYO_EST = dpm.APOYO_EST; ddp.APOYO_REAL = dpm.APOYO_REAL; ddp.CANTIDAD = dpm.CANTIDAD; DOCUMENTOP dpp = dOCpADRE.DOCUMENTOPs.Where(x => x.POS == ddp.POS).FirstOrDefault(); foreach (DOCUMENTOM dm in dpp.DOCUMENTOMs) { DOCUMENTOM dmm = new DOCUMENTOM(); dmm.APOYO_EST = dm.APOYO_EST; dmm.APOYO_REAL = dm.APOYO_REAL; dmm.MATNR = dm.MATNR; //dmm.NUM_DOC = dm.NUM_DOC; dmm.PORC_APOYO = dm.PORC_APOYO; dmm.POS = dm.POS; dmm.POS_ID = dm.POS_ID; dmm.VALORH = dm.VALORH; dmm.VIGENCIA_A = dm.VIGENCIA_A; dmm.VIGENCIA_DE = dm.VIGENCIA_DE; ddp.DOCUMENTOMs.Add(dmm); } dOCUMENTO.DOCUMENTOPs.Add(ddp); dOCUMENTO.MONTO_DOC_MD += ddp.APOYO_EST; } foreach (DOCUMENTOP dpp in dOCpADRE.DOCUMENTOPs) { } ////HTTPPOST DOCUMENTO d = new DOCUMENTO(); if (dOCUMENTO.DOCUMENTO_REF > 0) { d = db.DOCUMENTOes.Where(doc => doc.NUM_DOC == dOCUMENTO.DOCUMENTO_REF).FirstOrDefault(); //dOCUMENTO.TSOL_ID = d.TSOL_ID; id_bukrs = db.SOCIEDADs.Where(soc => soc.BUKRS == d.SOCIEDAD_ID).FirstOrDefault(); dOCUMENTO.ESTADO = d.ESTADO; dOCUMENTO.CIUDAD = d.CIUDAD; dOCUMENTO.PAYER_ID = d.PAYER_ID; dOCUMENTO.CONCEPTO = d.CONCEPTO; dOCUMENTO.NOTAS = d.NOTAS; dOCUMENTO.FECHAI_VIG = d.FECHAI_VIG; dOCUMENTO.FECHAF_VIG = d.FECHAF_VIG; dOCUMENTO.PAYER_NOMBRE = d.PAYER_NOMBRE; dOCUMENTO.PAYER_EMAIL = d.PAYER_EMAIL; dOCUMENTO.TIPO_CAMBIO = d.TIPO_CAMBIO; dOCUMENTO.GALL_ID = d.GALL_ID; dOCUMENTO.TALL_ID = d.TALL_ID; //Obtener el país dOCUMENTO.PAIS_ID = d.PAIS_ID;//RSG 15.05.2018 //dOCUMENTO.TSOL_ID = d.TSOL_ID; } //Tipo técnico dOCUMENTO.TIPO_TECNICO = ""; USUARIO u = db.USUARIOs.Find(d.USUARIOC_ID); //RSG 02/05/2018 Rangos rangos = new Rangos(); //RSG 01.08.2018 //Obtener el número de documento decimal N_DOC = rangos.getSolID(dOCUMENTO.TSOL_ID); dOCUMENTO.NUM_DOC = N_DOC; //Obtener SOCIEDAD_ID dOCUMENTO.SOCIEDAD_ID = id_bukrs.BUKRS; ////Obtener el país //dOCUMENTO.PAIS_ID = p.ToUpper(); //CANTIDAD_EV > 1 si son recurrentes dOCUMENTO.CANTIDAD_EV = 1; //Obtener usuarioc dOCUMENTO.PUESTO_ID = u.PUESTO_ID;//RSG 02/05/2018 dOCUMENTO.USUARIOC_ID = u.ID; dOCUMENTO.USUARIOD_ID = u.ID; //Fechac dOCUMENTO.FECHAC = DateTime.Now; //Horac dOCUMENTO.HORAC = DateTime.Now.TimeOfDay; //FECHAC_PLAN dOCUMENTO.FECHAC_PLAN = DateTime.Now.Date; //FECHAC_USER dOCUMENTO.FECHAC_USER = DateTime.Now.Date; //HORAC_USER dOCUMENTO.HORAC_USER = DateTime.Now.TimeOfDay; //Estatus dOCUMENTO.ESTATUS = "N"; //Estatus wf dOCUMENTO.ESTATUS_WF = "P"; ///////////////////Montos //MONTO_DOC_MD var MONTO_DOC_MD = dOCUMENTO.MONTO_DOC_MD; dOCUMENTO.MONTO_DOC_MD = Convert.ToDecimal(MONTO_DOC_MD); TCambio tcambio = new TCambio();//RSG 01.08.2018 //Obtener el monto de la sociedad dOCUMENTO.MONTO_DOC_ML = tcambio.getValSoc(id_bukrs.WAERS, dOCUMENTO.MONEDA_ID, Convert.ToDecimal(dOCUMENTO.MONTO_DOC_MD), out errorString); if (!errorString.Equals("")) { throw new Exception(); } //MONTO_DOC_ML2 var MONTO_DOC_ML2 = dOCUMENTO.MONTO_DOC_ML2; dOCUMENTO.MONTO_DOC_ML2 = Convert.ToDecimal(MONTO_DOC_ML2); //MONEDAL_ID moneda de la sociedad dOCUMENTO.MONEDAL_ID = id_bukrs.WAERS; //MONEDAL2_ID moneda en USD dOCUMENTO.MONEDAL2_ID = "USD"; //Tipo cambio de la moneda de la sociedad TIPO_CAMBIOL dOCUMENTO.TIPO_CAMBIOL = tcambio.getUkurs(id_bukrs.WAERS, dOCUMENTO.MONEDA_ID, out errorString); //Tipo cambio dolares TIPO_CAMBIOL2 dOCUMENTO.TIPO_CAMBIOL2 = tcambio.getUkursUSD(dOCUMENTO.MONEDA_ID, "USD", out errorString); if (!errorString.Equals("")) { throw new Exception(); } //Obtener datos del payer CLIENTE payer = getCliente(dOCUMENTO.PAYER_ID); dOCUMENTO.VKORG = payer.VKORG; dOCUMENTO.VTWEG = payer.VTWEG; dOCUMENTO.SPART = payer.SPART; //dOCUMENTO.DOCUMENTO_REF = null; dOCUMENTO.TSOL_ID = tsol; //Guardar el documento db.DOCUMENTOes.Add(dOCUMENTO); db.SaveChanges(); //Actualizar el rango rangos.updateRango(dOCUMENTO.TSOL_ID, dOCUMENTO.NUM_DOC); DOCUMENTO referencia = db.DOCUMENTOes.Find(dOCUMENTO.DOCUMENTO_REF); referencia.ESTATUS = "R"; db.Entry(referencia).State = EntityState.Modified; db.SaveChanges(); //Guardar los documentos p para el documento guardado ProcesaFlujo2 pf = new ProcesaFlujo2(); //db.DOCUMENTOes.Add(dOCUMENTO); //db.SaveChanges(); USUARIO user = db.USUARIOs.Where(a => a.ID.Equals(d.USUARIOC_ID)).FirstOrDefault(); int rol = user.MIEMBROS.FirstOrDefault().ROL_ID; try { //WORKFV wf = db.WORKFHs.Where(a => a.BUKRS.Equals(dOCUMENTO.SOCIEDAD_ID) & a.ROL_ID == rol).FirstOrDefault().WORKFVs.OrderByDescending(a => a.VERSION).FirstOrDefault(); WORKFV wf = db.WORKFHs.Where(a => a.TSOL_ID.Equals(dOCUMENTO.TSOL_ID)).FirstOrDefault().WORKFVs.OrderByDescending(a => a.VERSION).FirstOrDefault(); if (wf != null) { WORKFP wp = wf.WORKFPs.OrderBy(a => a.POS).FirstOrDefault(); FLUJO f = new FLUJO(); f.WORKF_ID = wf.ID; f.WF_VERSION = wf.VERSION; f.WF_POS = wp.POS; f.NUM_DOC = dOCUMENTO.NUM_DOC; f.POS = 1; f.LOOP = 1; f.USUARIOA_ID = dOCUMENTO.USUARIOC_ID; f.ESTATUS = "I"; f.FECHAC = DateTime.Now; f.FECHAM = DateTime.Now; string c = pf.procesa(f, ""); //RSG 28.05.2018 ----------------------------------- //if (c == "1") //{ // Email em = new Email(); // em.enviaMail(f.NUM_DOC, true); //} ////FLUJO conta = db.FLUJOes.Where(a => a.NUM_DOC.Equals(f.NUM_DOC)).OrderByDescending(a => a.POS).FirstOrDefault(); ////conta.USUARIOA_ID = user.ID; ////conta.ESTATUS = "A"; ////conta.FECHAM = DateTime.Now; ////pf.procesa(conta, ""); //RSG 28.05.2018 ----------------------------------- } } catch (Exception ee) { if (errorString == "") { errorString = ee.Message.ToString(); return(0); } //ViewBag.error = errorString; } return(dOCUMENTO.NUM_DOC); }
public DOCUMENTBORR llenaDuplicado(TruequeEntities db1, decimal num_doc, string user) { DOCUMENTBORR docb = new DOCUMENTBORR(); DOCUMENTO docPadre = db1.DOCUMENTOes.Find(num_doc); docb.AGENTE_ACTUAL = docPadre.AGENTE_ACTUAL; docb.CANAL_ID = docPadre.CANAL_ID; docb.CANTIDAD_EV = docPadre.CANTIDAD_EV; docb.CIUDAD = docPadre.CIUDAD; docb.CONCEPTO = docPadre.CONCEPTO; docb.DOCUMENTO_REF = docPadre.DOCUMENTO_REF; docb.EJERCICIO = docPadre.EJERCICIO; docb.ESTADO = docPadre.ESTADO; docb.ESTATUS = docPadre.ESTATUS; docb.ESTATUS_C = docPadre.ESTATUS_C; docb.ESTATUS_EXT = docPadre.ESTATUS_EXT; docb.ESTATUS_SAP = docPadre.ESTATUS_SAP; docb.ESTATUS_WF = docPadre.ESTATUS_WF; docb.FECHAC = docPadre.FECHAC; docb.FECHAC_PLAN = docPadre.FECHAC_PLAN; docb.FECHAC_USER = docPadre.FECHAC_USER; docb.FECHAD = docPadre.FECHAD; docb.FECHAD_SOPORTE = docPadre.FECHAD_SOPORTE; docb.FECHAF_VIG = docPadre.FECHAF_VIG; docb.FECHAI_VIG = docPadre.FECHAI_VIG; docb.FECHA_PASO_ACTUAL = docPadre.FECHA_PASO_ACTUAL; docb.GRUPO_CTE_ID = docPadre.GRUPO_CTE_ID; docb.HORAC = docPadre.HORAC; docb.HORAC_USER = docPadre.HORAC_USER; docb.IMPUESTO = docPadre.IMPUESTO; docb.LIGADA = ""; if (docPadre.LIGADA == true) { docb.LIGADA = "X"; } docb.METODO_PAGO = docPadre.METODO_PAGO; docb.MONEDAL2_ID = docPadre.MONEDAL2_ID; docb.MONEDAL_ID = docPadre.MONEDAL_ID; docb.MONEDA_ID = docPadre.MONEDA_ID; docb.MONEDA_DIS = docPadre.MONEDA_ID; docb.MONTO_BASE_GS_PCT_MD = docPadre.MONTO_BASE_GS_PCT_MD; docb.MONTO_BASE_GS_PCT_ML = docPadre.MONTO_BASE_GS_PCT_ML; docb.MONTO_BASE_GS_PCT_ML2 = docPadre.MONTO_BASE_GS_PCT_ML2; docb.MONTO_BASE_NS_PCT_MD = docPadre.MONTO_BASE_NS_PCT_MD; docb.MONTO_BASE_NS_PCT_ML = docPadre.MONTO_BASE_NS_PCT_ML; docb.MONTO_BASE_NS_PCT_ML2 = docPadre.MONTO_BASE_NS_PCT_ML2; docb.MONTO_DOC_MD = docPadre.MONTO_DOC_MD; docb.MONTO_DOC_ML = docPadre.MONTO_DOC_ML; docb.MONTO_DOC_ML2 = docPadre.MONTO_DOC_ML2; docb.MONTO_FIJO_MD = docPadre.MONTO_FIJO_MD; docb.MONTO_FIJO_ML = docPadre.MONTO_FIJO_ML; docb.MONTO_FIJO_ML2 = docPadre.MONTO_FIJO_ML2; docb.NOTAS = docPadre.NOTAS; docb.NO_FACTURA = docPadre.NO_FACTURA; docb.NO_PROVEEDOR = docPadre.NO_PROVEEDOR; docb.PAIS_ID = docPadre.PAIS_ID; docb.PASO_ACTUAL = docPadre.PASO_ACTUAL; docb.PAYER_EMAIL = docPadre.PAYER_EMAIL; docb.PAYER_ID = docPadre.PAYER_ID; docb.PAYER_NOMBRE = docPadre.PAYER_NOMBRE; docb.PERIODO = docPadre.PERIODO; docb.PORC_ADICIONAL = docPadre.PORC_ADICIONAL; docb.PORC_APOYO = docPadre.PORC_APOYO; docb.SOCIEDAD_ID = docPadre.SOCIEDAD_ID; docb.SOLD_TO_ID = docPadre.SOLD_TO_ID; docb.SPART = docPadre.SPART; docb.TALL_ID = docPadre.TALL_ID; docb.TIPO_CAMBIO = docPadre.TIPO_CAMBIO; docb.TIPO_CAMBIOL = docPadre.TIPO_CAMBIOL; docb.TIPO_CAMBIOL2 = docPadre.TIPO_CAMBIOL2; docb.TIPO_RECURRENTE = docPadre.TIPO_RECURRENTE; docb.TIPO_TECNICO = docPadre.TIPO_TECNICO; TSOL tsol = db1.TSOLs.Where(x => x.TSOLM == docPadre.TSOL_ID).FirstOrDefault(); if (tsol == null) { docb.TSOL_ID = docPadre.TSOL_ID; } else { docb.TSOL_ID = tsol.ID; } docb.USUARIOC_ID = docPadre.USUARIOC_ID; docb.VKORG = docPadre.VKORG; docb.VTWEG = docPadre.VTWEG; if (docPadre.DOCUMENTOPs != null) { foreach (DOCUMENTOP dp in docPadre.DOCUMENTOPs.ToList()) { DOCUMENTOBORRP docBp = new DOCUMENTOBORRP(); docBp.APOYO_EST = dp.APOYO_EST; docBp.APOYO_REAL = dp.APOYO_REAL; docBp.CANTIDAD = dp.CANTIDAD; docBp.MATKL = dp.MATKL; docBp.MATNR = dp.MATNR.TrimStart('0'); docBp.MONTO = dp.MONTO; docBp.MONTO_APOYO = dp.MONTO_APOYO; docBp.PORC_APOYO = dp.PORC_APOYO; docBp.POS = dp.POS; docBp.PRECIO_SUG = dp.PRECIO_SUG; docBp.VIGENCIA_AL = dp.VIGENCIA_AL; docBp.VIGENCIA_DE = dp.VIGENCIA_DE; docBp.VOLUMEN_EST = dp.VOLUMEN_EST; docBp.VOLUMEN_REAL = dp.VOLUMEN_REAL; docb.DOCUMENTOBORRPs.Add(docBp); } } if (docPadre.DOCUMENTOFs != null) { foreach (DOCUMENTOF df in docPadre.DOCUMENTOFs) { DOCUMENTOBORRF docBf = new DOCUMENTOBORRF(); docBf.ACTIVO = true; docBf.AUTORIZACION = df.AUTORIZACION; docBf.BELNR = df.BELNR; docBf.BILL_DOC = df.BILL_DOC; docBf.CONTROL = df.CONTROL; docBf.EJERCICIOK = df.EJERCICIOK; docBf.FACTURA = df.FACTURA; docBf.FACTURAK = df.FACTURAK; docBf.FECHA = df.FECHA; docBf.IMPORTE_FAC = df.IMPORTE_FAC; docBf.PAYER = df.PAYER; docBf.POS = df.POS; docBf.PROVEEDOR = df.PROVEEDOR; docBf.SOCIEDAD = df.SOCIEDAD; docBf.VENCIMIENTO = df.VENCIMIENTO; docb.DOCUMENTOBORRFs.Add(docBf); } } if (docPadre.DOCUMENTORECs != null) { foreach (DOCUMENTOREC dre in docPadre.DOCUMENTORECs) { DOCUMENTOBORRREC docRe = new DOCUMENTOBORRREC(); docRe.DOC_REF = dre.DOC_REF; docRe.EJERCICIO = dre.EJERCICIO; docRe.ESTATUS = dre.ESTATUS; docRe.FECHAF = dre.FECHAV; docRe.FECHAV = dre.FECHAV; docRe.MONTO_BASE = dre.MONTO_BASE; docRe.MONTO_FIJO = dre.MONTO_FIJO; docRe.MONTO_GRS = dre.MONTO_GRS; docRe.MONTO_NET = dre.MONTO_NET; docRe.PERIODO = dre.PERIODO; docRe.PORC = dre.PORC; docRe.POS = dre.POS; docb.DOCUMENTOBORRRECs.Add(docRe); } } return(docb); }