public string rechazar(string banfn, string user, string url, string comm) { string[] ur = url.Split('/'); string u = ""; for (int i = 0; i < ur.Length - 1; i++) { u += ur[i] + "/"; } List <ZEBAN_P_BE> requ = ZEBAN_P_BLL.GET(banfn); if (requ.Count > 0) { int status = 0; status = rol(USUARIO_BLL.GET(user)[0]); if (status == 4 & !requ[0].STATUS.Trim().Equals("0") & !requ[0].STATUS.Trim().Equals("1")) { requ[0].STATUS = "2"; int i = ZEBAN_P_BLL.UPDATE(requ[0]); List <ZEBAN_BE> pos = ZEBAN_BLL.GET(Int16.Parse(banfn)); foreach (ZEBAN_BE p in pos) { List <ZEBAN_I_BE> imp = ZEBAN_I_BLL.GET(p.BANFN, p.BNFPO); foreach (ZEBAN_I_BE im in imp) { im.COSTCENTER = ""; im.GL_ACCOUNT = ""; } ZEBAN_I_BLL.UPDATE(imp); } ZEBAN_H_BE his = new ZEBAN_H_BE(); his.BANFN = banfn; his.FECHA = DateTime.Now; his.NIPLOGIN = user; ZEBAN_H_BLL.INSERT(his); ZEBAN_C_BE com = new ZEBAN_C_BE(); com.BANFN = Int32.Parse(banfn); com.FK_USUARIO = user; com.TEXTO = comm; ZEBAN_C_BLL.INSERT(com); //ENVIAR CORREO A CONTABILIDAD. enviarConta(Int32.Parse(banfn), u, comm); return("Se ha rechazado la requisición"); } else { requ[0].STATUS = "-1"; requ[0].COMPRADOR = ""; int i = ZEBAN_P_BLL.UPDATE(requ[0]); if (i > 0) { ZEBAN_H_BE his = new ZEBAN_H_BE(); his.BANFN = banfn; his.FECHA = DateTime.Now; his.NIPLOGIN = user; ZEBAN_H_BLL.INSERT(his); ZEBAN_C_BE com = new ZEBAN_C_BE(); com.BANFN = Int32.Parse(banfn); com.FK_USUARIO = user; com.TEXTO = comm; ZEBAN_C_BLL.INSERT(com); enviarR(user, Int32.Parse(banfn), u, comm); return("Se ha rechazado la requisición"); } } } return("Hubo un error al rechazar la requisición"); }
public string aprobar(string banfn, string user, string url) { string[] ur = url.Split('/'); string u = ""; for (int i = 0; i < ur.Length - 1; i++) { u += ur[i] + "/"; } List <ZEBAN_P_BE> requ = ZEBAN_P_BLL.GET(banfn); string referencia = "";//27.01.2017 if (requ.Count > 0) { referencia = requ[0].REFERENCIA;//27.01.2017 requ[0].STATUS = rol(USUARIO_BLL.GET(user)[0]) + ""; if (requ[0].STATUS.Equals("5") | requ[0].STATUS.Equals("6")) { Conexion con = new Conexion(); List <ZEBAN_BE> Items = ZEBAN_BLL.GET(Int32.Parse(banfn)); List <ZEBAN_I_BE> imps = new List <ZEBAN_I_BE>(); List <ZEBAN_S_BE> servs = new List <ZEBAN_S_BE>(); foreach (ZEBAN_BE z in Items) { List <ZEBAN_I_BE> ii = ZEBAN_I_BLL.GET(z.BANFN, z.BNFPO.Trim()); List <ZEBAN_S_BE> ss = ZEBAN_S_BLL.GET(z.BANFN, z.BNFPO.Trim()); foreach (ZEBAN_I_BE i in ii) { imps.Add(i); if (z.TIPO.Trim() != "F") { ZEBAN_S_BE t = new ZEBAN_S_BE(); t.ASSET_NUM = i.ASSET_NUM.Trim(); t.COSTCENTER = i.COSTCENTER.Trim(); t.BANFN = i.BANFN; t.BNFPO = i.BNFPO.Trim(); t.GL_ACCOUNT = i.GL_ACCOUNT.Trim(); t.SERIAL = i.SERIAL; //t. servs.Add(t); } } if (z.TIPO.Trim() == "F") { foreach (ZEBAN_S_BE s in ss) { s.SERVICIO = completa(s.SERVICIO.Trim(), 18); servs.Add(s); } } } string[] ret = con.bapi_pr_create2(Items, imps, servs, user, u, referencia); //Crea requisición//27.01.2017 string status; // = "E"; if (!ret[0].Equals("")) { status = "B"; requ[0].APROBO = user; requ[0].SAP_BANFN = ret[0]; requ[0].STATUS = "6"; int i = ZEBAN_P_BLL.UPDATE(requ[0]); if (i > 0) { ZEBAN_H_BE his = new ZEBAN_H_BE(); his.BANFN = banfn; his.FECHA = DateTime.Now; his.NIPLOGIN = user; ZEBAN_H_BLL.INSERT(his); List <ZEBAN_D_BE> docs = ZEBAN_D_BLL.GET(Int32.Parse(banfn)); for (int y = 0; y < docs.Count; y++) { byte[] bytes = docs[y].INFO; string name = docs[y].NOMBRE + "." + docs[y].EXT; ret[i] = con.rfcFuncionAdjuntar(ret[0], "BUS2105", name, bytes); } enviarF(user, Int32.Parse(banfn), u, ret[0]); //return "Se ha aprobado la requisición"; } ret[1] = "Se ha creado la requisición " + ret[0] + " en SAP"; } else { status = "Hubieron errores al crear la requisición:"; } return("\n" + ret[1]); } else { requ[0].APROBO = user; int i = ZEBAN_P_BLL.UPDATE(requ[0]); if (i > 0) { ZEBAN_H_BE his = new ZEBAN_H_BE(); his.BANFN = banfn; his.FECHA = DateTime.Now; his.NIPLOGIN = user; ZEBAN_H_BLL.INSERT(his); enviar(user, Int32.Parse(banfn), u); return("Se ha aprobado la requisición"); } } } return("Hubo un error al aprobar la requisición"); }