public JsonResult Agregar(PDM_PARTE_DIARIO_MAQUINARIA PDM_PARTE_DIARIO_MAQUINARIA) { PDM_PARTE_DIARIO_MAQUINARIA_SERV objServ = new PDM_PARTE_DIARIO_MAQUINARIA_SERV(); objServ.SaveOK(PDM_PARTE_DIARIO_MAQUINARIA); return(Json(PDM_PARTE_DIARIO_MAQUINARIA, JsonRequestBehavior.AllowGet)); }
public PDM_PARTE_DIARIO_MAQUINARIA SaveOK(PDM_PARTE_DIARIO_MAQUINARIA entidad) { using (DBContextPDM db = new DBContextPDM()) { using (var ctxTrans = db.Database.BeginTransaction()) { try { var IdParteParameter = new SqlParameter(); var TablaDiarioParameter = new SqlParameter(); var IdUsuarioParameter = new SqlParameter(); IdParteParameter.ParameterName = "@IdParte"; IdParteParameter.Direction = ParameterDirection.Input; IdParteParameter.SqlDbType = SqlDbType.Int; IdParteParameter.Value = entidad.IdParte; //DataTable DataTable pdm = new DataTable(); pdm.Columns.Add(new DataColumn("IdParteDiario", typeof(int))); pdm.Columns.Add(new DataColumn("IdConsumidor", typeof(string))); pdm.Columns.Add(new DataColumn("HoraInicio", typeof(DateTime))); pdm.Columns.Add(new DataColumn("HoraFin", typeof(DateTime))); pdm.Columns.Add(new DataColumn("IdActividad", typeof(string))); pdm.Columns.Add(new DataColumn("IdLabor", typeof(string))); pdm.Columns.Add(new DataColumn("HorometroInicio", typeof(double))); pdm.Columns.Add(new DataColumn("HorometroFinal", typeof(double))); foreach (var item in entidad.TablaDiario) { DataRow row = pdm.NewRow(); row["IdParteDiario"] = item.IdParte; row["IdConsumidor"] = item.IdConsumidor; row["HoraInicio"] = item.HoraInicio; row["HoraFin"] = item.HoraFin; row["IdActividad"] = item.IdActividad; row["IdLabor"] = item.IdLabor; row["HorometroInicio"] = item.HorometroInicio; row["HorometroFinal"] = item.HorometroFinal; pdm.Rows.Add(row); } TablaDiarioParameter.ParameterName = "@TablaDiario"; TablaDiarioParameter.Direction = ParameterDirection.Input; TablaDiarioParameter.SqlDbType = SqlDbType.Structured; TablaDiarioParameter.Value = pdm; TablaDiarioParameter.TypeName = "TY_PARTEDIARIO"; IdUsuarioParameter.ParameterName = "@IdUsuario"; IdUsuarioParameter.Direction = ParameterDirection.Input; IdUsuarioParameter.SqlDbType = SqlDbType.SmallInt; IdUsuarioParameter.Value = entidad.IdUsuario; var obj = db.Database.SqlQuery <PDM_PARTE_DIARIO_MAQUINARIA>("dbo.[PR_PDM_PARTE_DIARIO_UPD] @IdParte, @TablaDiario, @IdUsuario", IdParteParameter, TablaDiarioParameter, IdUsuarioParameter ).FirstOrDefault(); ctxTrans.Commit(); // OK return(obj); } catch (NullReferenceException ex) { ctxTrans.Rollback(); // ERROR throw ex; } catch (SqlException ex) { ctxTrans.Rollback(); // ERROR throw ex; } catch (Exception ex) { ctxTrans.Rollback(); // ERROR throw ex; } } } }